Exemple #1
0
 protected override void OnStateChange()
 {
     if (State == State.SetDefaults)
     {
         Description         = NinjaTrader.Custom.Resource.NinjaScriptIndicatorDescriptionTrendLines;
         Name                = NinjaTrader.Custom.Resource.NinjaScriptIndicatorNameTrendLines;
         Calculate           = Calculate.OnBarClose;
         IsOverlay           = true;
         DisplayInDataBox    = false;
         DrawOnPricePanel    = false;
         PaintPriceMarkers   = false;
         Strength            = 5;
         NumberOfTrendLines  = 1;
         OldTrendsOpacity    = 25;
         AlertOnBreak        = false;
         AlertOnBreakSound   = System.IO.Path.Combine(NinjaTrader.Core.Globals.InstallDir, "sounds", "Alert2.wav");
         TrendLineHighStroke = new Stroke(Brushes.DarkCyan, 1f);
         TrendLineLowStroke  = new Stroke(Brushes.Goldenrod, 1f);
     }
     else if (State == State.Configure)
     {
         AddPlot(Brushes.White, NinjaTrader.Custom.Resource.TrendLinesCurrentTrendLine);
     }
     else if (State == State.DataLoaded)
     {
         swing      = Swing(Input, Strength);
         trendLines = new TrendQueue(this, NumberOfTrendLines);
     }
 }
Exemple #2
0
 protected override void OnStateChange()                 //Runs when strategy is initialized
 {
     if (State == State.SetDefaults)
     {
         Description                  = @"Algorithm that automatically plots trend channel";
         Name                         = "AutoTrendChannel";
         Calculate                    = Calculate.OnBarClose;
         Strength                     = 5;
         NumberOfTrendChannel         = 5;
         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          = 4;
         IsInstantiatedOnEachOptimizationIteration = true;
     }
     else if (State == State.Configure)                          //Runes when strategy is added onto the chart
     {
         AddDataSeries("ES 09-20", Data.BarsPeriodType.Tick, 2000);
     }
     else if (State == State.DataLoaded)                 //Called after data has been loaded
     {
         swing        = Swing(Input, Strength);
         trendChannel = new TrendQueue(this, NumberOfTrendChannel);
     }
 }