thanks), forgot about the value of the price on the bar 0
it works like this):

//FIXED - "donch_10_dn"
Code:
function trade(){

   vars Close = series(priceClose());
   vars High = series(priceHigh());
   vars Low = series(priceLow());
   DChannel(10);
   vars donch_10_up = series(rRealUpperBand);
   vars donch_10_dn = series(rRealLowerBand);
   DChannel(20);
   vars donch_20_up = series(rRealUpperBand);
   vars donch_20_dn = series(rRealLowerBand);
   DChannel(55);
   vars donch_55_up = series(rRealUpperBand);
   vars donch_55_dn = series(rRealLowerBand);
   Stop = optimize(1,1,5,1)*ATR(optimize(10,10,100,5));

  if((NumOpenShort<1 and Low[0]<donch_20_dn[1])or(NumOpenShort<1 and Low[0]<donch_55_dn[1])or(NumOpenShort<1 and Low[0]<donch_10_dn[1])) {enterShort();exitLong();}
  if((NumOpenLong<1 and High[0]>donch_20_up[1])or(NumOpenLong<1 and High[0]>donch_55_up[1])or(NumOpenLong<1 and High[0]>donch_10_up[1])) {enterLong();exitShort();}
}
function run()
{
  StartDate = 20170301;
  Capital = 400;
  Lots = 1;
  
  if(Train) {Hedge = 2;LookBack = 400;NumWFOCycles = 5;}

    vars Price = series(price());	
	vars High = series(priceHigh());
	vars Low = series(priceLow());
	vars Open = series(priceOpen());
	set(PARAMETERS);

while(asset(loop("AUD/CAD","AUD/CHF","AUD/JPY","AUD/NZD","AUD/USD","CAD/CHF","CAD/JPY","CHF/JPY","EUR/AUD","EUR/CAD","EUR/CHF","EUR/GBP","EUR/JPY","EUR/NZD","EUR/USD","GBP/AUD","GBP/CAD","GBP/CHF","GBP/JPY","GBP/NZD","GBP/USD","NZD/CAD","NZD/CHF","NZD/JPY","NZD/USD","USD/CAD","USD/CHF","USD/JPY")))
{
trade();
}
}


Last edited by Sniv; 02/14/19 16:55.