в программе не работает индикатор Bands (линии Болинджера)

 

 Помогите, пожалуйста! 

Может быть кто сталкивался с такой проблемой:

Использую в программе индикатор Bands. В терминале сам по себе он работает и отображается нормально. Когда использую его в программе, у меня все три линии совпадают. 

Ниже привожу вырезку из программы. Подскажите где что не так делаю. третий день не могу разобраться. Заранее благодарю.

 

   Bb0 = iBands(NULL,0,Per_BB,0,2,PRICE_CLOSE,0,1);
   Bb1 = iBands(NULL,0,Per_BB,0,2,PRICE_CLOSE,1,1);

   Bb2 = iBands(NULL,0,Per_BB,0,2,PRICE_CLOSE,2,1);

 

 if(total<1)

  {                                                                                    

  if (EMA>Bb1 && RSI1<RSI2 && RSI1>max)                                                  //Условие продажи                                              

     {

     Print("Усл_прод ок!");Print("Bb1 =",Bb1);Print("Bb2 =",Bb2);

     OrderSend(Symbol(),OP_SELL,Lots,Bid,30,Ask+Stoploss1*Point,Ask-200*Point,"Продаем",55555,0,Red);      

     err=GetLastError();

     Print(err);

     }

  if (EMA < Bb2 && RSI1>RSI2 && RSI1<min)                                                                                                            

     {

     Print("Усл_пок ок!");Print("Bb0 =",Bb0);Print("Bb1 =",Bb1);Print("Bb2 =",Bb2);

     OrderSend(Symbol(),OP_BUY,Lots,Ask,30,Bid-Stoploss*Point,Bid+200*Point,"Покупаем",333,0,Green);   

     err=GetLastError();

     Print(err);     

     }

  }  


 
bablo:

 Помогите, пожалуйста! 

Может быть кто сталкивался с такой проблемой:

Использую в программе индикатор Bands. В терминале сам по себе он работает и отображается нормально. Когда использую его в программе, у меня все три линии совпадают. 

Ниже привожу вырезку из программы. Подскажите где что не так делаю. третий день не могу разобраться. Заранее благодарю.

 

   Bb0 = iBands(NULL,0,Per_BB,0,2,PRICE_CLOSE,0,1);
   Bb1 = iBands(NULL,0,Per_BB,0,2,PRICE_CLOSE,1,1);

   Bb2 = iBands(NULL,0,Per_BB,0,2,PRICE_CLOSE,2,1);

 

 if(total<1)

  {                                                                                    

  if (EMA>Bb1 && RSI1<RSI2 && RSI1>max)                                                  //Условие продажи                                              

     {

     Print("Усл_прод ок!");Print("Bb1 =",Bb1);Print("Bb2 =",Bb2);

     OrderSend(Symbol(),OP_SELL,Lots,Bid,30,Ask+Stoploss1*Point,Ask-200*Point,"Продаем",55555,0,Red);      

     err=GetLastError();

     Print(err);

     }

  if (EMA < Bb2 && RSI1>RSI2 && RSI1<min)                                                                                                            

     {

     Print("Усл_пок ок!");Print("Bb0 =",Bb0);Print("Bb1 =",Bb1);Print("Bb2 =",Bb2);

     OrderSend(Symbol(),OP_BUY,Lots,Ask,30,Bid-Stoploss*Point,Bid+200*Point,"Покупаем",333,0,Green);   

     err=GetLastError();

     Print(err);     

     }

  }  


Пробуй

double Upper=iBands(NULL,0,20,2,0,PRICE_LOW,MODE_UPPER,1);
double Lower=iBands(NULL,0,20,2,0,PRICE_LOW,MODE_LOWER,1);
 
bablo:

 Помогите, пожалуйста! 

Может быть кто сталкивался с такой проблемой:

Использую в программе индикатор Bands. В терминале сам по себе он работает и отображается нормально. Когда использую его в программе, у меня все три линии совпадают. 

Ниже привожу вырезку из программы. Подскажите где что не так делаю. третий день не могу разобраться. Заранее благодарю.

 

   Bb0 = iBands(NULL,0,Per_BB,0,2,PRICE_CLOSE,0,1);
   Bb1 = iBands(NULL,0,Per_BB,0,2,PRICE_CLOSE,1,1);

   Bb2 = iBands(NULL,0,Per_BB,0,2,PRICE_CLOSE,2,1);


Никогда не работал с Bollinger Bands, но это мне кажется странным:  iBands(NULL,0,Per_BB,     0,       2,PRICE_CLOSE,0,1); . Единица как минимум помоему должна быть..
 
r772ra:

Пробуй

double Upper=iBands(NULL,0,20,2,0,PRICE_HIGH,MODE_UPPER,1);
double Lower=iBands(NULL,0,20,2,0,PRICE_LOW,MODE_LOWER,1);
 

Спасибо, получилось! Только теперь почему-то рисует 2 средних линии.

Причина обращения: