Помогите с советником!

[Deleted]  

Как создать советник который работает по ценам открытия баров? По истории - все класс (как всегда), а в реале сливает депо за час :).

При тесте по открытию баров - хороший результат, хочу дописать и попробовать на демо. Помогите плз, давно уже ничо не писал... Что нужно добавить в тело функции start(), чтоб советник работал только по ценам открытия баров?

[Deleted]  
KONDOR >>:

наверно так

в функции старт


помоему эту функции будет срабатывать постоянно так как цена открытия бара всегда будет одинаковой, вмысле цена открытия = цене открытия. при этом у двух баров подряд тоже могут быть одинаковые цены открытия. сравнивать с ценами Ask или Bid - неэффективно, так как иногда бывают резкие скачки сразу после открытия бара

 
cloud666 писал(а) >>

помоему эту функции будет срабатывать постоянно так как цена открытия бара всегда будет одинаковой

По идее должно работать нормально. Только вот сравнивать действительные числа

[Deleted]  
переменная откуда берет значение? она нулю равна по умолчанию. или я чо-то не понимаю
Open_
 
cloud666 писал(а) >>
переменная откуда берет значение? она нулю равна по умолчанию. или я чо-то не понимаю

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

Просто действительные числа не стоит использовать.

[Deleted]  
спасибо за помощь! но все-таки два бара подряд могут открыться по однойс цене, хотя другого выхода из ситуации разработчики пока не сделали, только прогон в тестере по ценам открытий - быстро и много зарабатывать))))))
 
cloud666 писал(а) >>
спасибо за помощь! но все-таки два бара подряд могут открыться по однойс цене, хотя другого выхода из ситуации разработчики пока не сделали, только прогон в тестере по ценам открытий - быстро и много зарабатывать))))))

Лучше использовать немного другую конструкицю для работы по ценам открытия

int start() { 
   if (!NevBar()) return(0);

/// Ваш код

   return(0);
} 

bool NevBar() {
   static int PrevBar=0;
   int NevBar=Time[0];
   if (PrevBar==NevBar) return(false);
   PrevBar=NevBar;
   return(true);
}