示例#1
0
        protected override void OnStateChange()
        {
            if (State == State.SetDefaults)
            {
                Description                  = @"Enter the description for your new custom Strategy here.";
                Name                         = "AcdSandbox";
                Calculate                    = Calculate.OnBarClose;
                EntriesPerDirection          = 1;
                EntryHandling                = EntryHandling.AllEntries;
                IsExitOnSessionCloseStrategy = false;
                ExitOnSessionCloseSeconds    = 30;
                IsFillLimitOnTouch           = false;
                MaximumBarsLookBack          = MaximumBarsLookBack.TwoHundredFiftySix;
                OrderFillResolution          = OrderFillResolution.Standard;
                Slippage                     = 0;
                StartBehavior                = StartBehavior.WaitUntilFlat;
                TimeInForce                  = TimeInForce.Gtc;
                TraceOrders                  = false;
                RealtimeErrorHandling        = RealtimeErrorHandling.StopCancelClose;
                StopTargetHandling           = StopTargetHandling.PerEntryExecution;
                BarsRequiredToTrade          = 20;
                // Disable this property for performance gains in Strategy Analyzer optimizations
                // See the Help Guide for additional information
                IsInstantiatedOnEachOptimizationIteration = true;

                ATicks        = 28;
                CTicks        = 16;
                ProjectHour   = 13;
                ProjectMinute = 0;
            }
            else if (State == State.Configure)
            {
                currentDate     = Core.Globals.MinDate;
                sessionIterator = null;

                AddDataSeries(Data.BarsPeriodType.Second, 30);
                AddDataSeries(Data.BarsPeriodType.Day, 1);

                guerillaAcdMasterIndicator = GuerillaAcdMasterIndicator(this.ATicks, this.CTicks, this.ProjectHour, this.ProjectMinute);
                AddChartIndicator(guerillaAcdMasterIndicator);

                greenBarIndicator = GuerillaStickIndicator(GuerillaChartPattern.GreenBar, false, false, false, 0);
                AddChartIndicator(greenBarIndicator);

                redBarIndicator = GuerillaStickIndicator(GuerillaChartPattern.RedBar, false, false, false, 0);
                AddChartIndicator(redBarIndicator);
            }
            else if (State == State.DataLoaded)
            {
                sessionIterator = new Data.SessionIterator(BarsArray[0]);
            }
        }
示例#2
0
        protected override void OnStateChange()
        {
            if (State == State.SetDefaults)
            {
                Description                  = @"Enter the description for your new custom Strategy here.";
                Name                         = "Distilled";
                Calculate                    = Calculate.OnBarClose;
                EntriesPerDirection          = 1;
                EntryHandling                = EntryHandling.AllEntries;
                IsExitOnSessionCloseStrategy = true;
                ExitOnSessionCloseSeconds    = 30;
                IsFillLimitOnTouch           = false;
                MaximumBarsLookBack          = MaximumBarsLookBack.TwoHundredFiftySix;
                OrderFillResolution          = OrderFillResolution.Standard;
                Slippage                     = 0;
                StartBehavior                = StartBehavior.WaitUntilFlat;
                TimeInForce                  = TimeInForce.Gtc;
                TraceOrders                  = false;
                RealtimeErrorHandling        = RealtimeErrorHandling.StopCancelClose;
                StopTargetHandling           = StopTargetHandling.PerEntryExecution;
                BarsRequiredToTrade          = 20;
                // Disable this property for performance gains in Strategy Analyzer optimizations
                // See the Help Guide for additional information
                IsInstantiatedOnEachOptimizationIteration = true;
            }
            else if (State == State.Configure)
            {
                sessionIterator = null;

                SetProfitTarget(CalculationMode.Ticks, 6);
                SetStopLoss(CalculationMode.Ticks, 16);

                //AddDataSeries(Data.BarsPeriodType.Second, 450);
            }
            else if (State == State.DataLoaded)
            {
                sessionIterator = new Data.SessionIterator(BarsArray[0]);

                fullGreenBarIndicator = GuerillaStickIndicator(BarsArray[0], GuerillaChartPattern.GreenBar, false, false, false, 0);
                fullRedBarIndicator   = GuerillaStickIndicator(BarsArray[0], GuerillaChartPattern.RedBar, false, false, false, 0);

                fullHammerBarIndicator       = GuerillaStickIndicator(BarsArray[0], GuerillaChartPattern.Hammer, false, false, false, 0);
                fullShootingStarBarIndicator = GuerillaStickIndicator(BarsArray[0], GuerillaChartPattern.ShootingStar, false, false, false, 0);

                fullBullishTrendBarIndicator = GuerillaStickIndicator(BarsArray[0], GuerillaChartPattern.BullishHalfBar, false, false, false, 0);
                fullBearishTrendBarIndicator = GuerillaStickIndicator(BarsArray[0], GuerillaChartPattern.BearishHalfBar, false, false, false, 0);

                //halfGreenBarIndicator = GuerillaStickIndicator(BarsArray[1], GuerillaChartPattern.GreenBar, false, false, false, 0);
                //halfRedBarIndicator = GuerillaStickIndicator(BarsArray[1], GuerillaChartPattern.RedBar, false, false, false, 0);
            }
        }
示例#3
0
        protected override void OnStateChange()
        {
            if (State == State.SetDefaults)
            {
                Description                  = @"Enter the description for your new custom Strategy here.";
                Name                         = "Fastigium";
                Calculate                    = Calculate.OnBarClose;
                EntriesPerDirection          = 1;
                EntryHandling                = EntryHandling.AllEntries;
                IsExitOnSessionCloseStrategy = true;
                ExitOnSessionCloseSeconds    = 30;
                IsFillLimitOnTouch           = false;
                MaximumBarsLookBack          = MaximumBarsLookBack.TwoHundredFiftySix;
                OrderFillResolution          = OrderFillResolution.Standard;
                Slippage                     = 0;
                StartBehavior                = StartBehavior.WaitUntilFlat;
                TimeInForce                  = TimeInForce.Gtc;
                TraceOrders                  = false;
                RealtimeErrorHandling        = RealtimeErrorHandling.StopCancelClose;
                StopTargetHandling           = StopTargetHandling.PerEntryExecution;
                BarsRequiredToTrade          = 20;

                RecordHistoricalTrades = false;
                TradingAccountId       = 0;
                Quantity          = 2;
                FireSns           = false;
                Contrarian        = false;
                StochasticsFilter = false;
                Conservative      = true;
                StopLossTicks     = 15;
                ProfitTakerTicks  = 10;

                // Disable this property for performance gains in Strategy Analyzer optimizations
                // See the Help Guide for additional information
                IsInstantiatedOnEachOptimizationIteration = true;
            }
            else if (State == State.Configure)
            {
                shootingStarIndicator = GuerillaStickIndicator(GuerillaChartPattern.ShootingStar, false, false, false, 0);
                AddChartIndicator(shootingStarIndicator);

                hammerIndicator = GuerillaStickIndicator(GuerillaChartPattern.Hammer, false, false, false, 0);
                AddChartIndicator(hammerIndicator);

                dojiIndicator = GuerillaStickIndicator(GuerillaChartPattern.Doji, false, false, false, 0);
                AddChartIndicator(dojiIndicator);

                indecisionBarIndicator = GuerillaStickIndicator(GuerillaChartPattern.IndecisionBar, false, false, false, 0);
                AddChartIndicator(indecisionBarIndicator);

                bullishTrendBarIndicator = GuerillaStickIndicator(GuerillaChartPattern.BullishTrendBar, false, false, false, 0);
                AddChartIndicator(bullishTrendBarIndicator);

                bearishTrendBarIndicator = GuerillaStickIndicator(GuerillaChartPattern.BearishTrendBar, false, false, false, 0);
                AddChartIndicator(bearishTrendBarIndicator);

                greenBarIndicator = GuerillaStickIndicator(GuerillaChartPattern.GreenBar, false, false, false, 0);
                AddChartIndicator(greenBarIndicator);

                redBarIndicator = GuerillaStickIndicator(GuerillaChartPattern.RedBar, false, false, false, 0);
                AddChartIndicator(redBarIndicator);

                stochastics = Stochastics(7, 14, 3);
                AddChartIndicator(stochastics);

                disableManager.AddRange(DayOfWeek.Sunday, 13, 30, 24, 0);
                disableManager.AddRange(DayOfWeek.Monday, 13, 30, 16, 40);
                disableManager.AddRange(DayOfWeek.Tuesday, 13, 30, 16, 40);
                disableManager.AddRange(DayOfWeek.Wednesday, 13, 30, 16, 40);
                disableManager.AddRange(DayOfWeek.Thursday, 13, 30, 16, 40);
                disableManager.AddRange(DayOfWeek.Friday, 13, 30, 16, 40);
            }
        }