Here is my code:
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 = 1; // Disable this property for performance gains in Strategy Analyzer optimizations // See the Help Guide for additional information IsInstantiatedOnEachOptimizationIteration = true; Lot1 = 4; MinTickAway = 1; Profit=3; SL=650; TA=10; Bars=5; } else if (State == State.Configure) { AddDataSeries(BarsPeriodType.Minute, 120); //AddDataSeries(BarsPeriodType.Tick, 1); AddChartIndicator(AV()); } } private double line=0; private double entry1_price=0; protected override void OnBarUpdate() { /* if (State==State.Realtime && Position.MarketPosition==MarketPosition.Flat) { EnterLong(Lot1,"Entry1"); SetStopLoss("Entry1",CalculationMode.Ticks,100,tru e); SetProfitTarget("Entry1",CalculationMode.Ticks,100 ,true); } return; */ if (Profit==1) line=AV().Av1[0]; else if (Profit==2) line=AV().Av2[0]; else if (Profit==3) line=AV().Av3[0]; else if (Profit==4) line=AV().Av4[0]; else if (Profit==5) line=AV().Av5[0]; if (Position.MarketPosition==MarketPosition.Flat && BarsInProgress==0) { //ENTRY 1 if ((BarsSinceExitExecution("Stop loss") > Bars || BarsSinceExitExecution("Stop loss") == -1) && Close[0]+MinTickAway*TickSize<line) { //Print("The time and line are " + Time[0] + line); SetStopLoss("Entry1",CalculationMode.Ticks,SL,fals e); SetProfitTarget("Entry1",CalculationMode.Ticks,TA, false); EnterLong(Lot1,"Entry1");
Comment