Скачать MetaTrader 5

закрыть сделку за пять минут до закрытия дневной свечи ?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Roman Kutemov
1909
Roman Kutemov  

добрый день.

посоветуйте пожалуйста код или ссылку, что почитать, как закрыть сделку за пять минут до закрытия дневной свечи ?

Boris
3943
Boris  
Поиск: Закрытие сделки по времени, в 23:55. 
Victor Nikolaev
Модератор
15803
Victor Nikolaev  
Stells:

добрый день.

посоветуйте пожалуйста код или ссылку, что почитать, как закрыть сделку за пять минут до закрытия дневной свечи ?

Самое главное - что бы еще и тики в это время были. Иначе не судьба
Roman Kutemov
1909
Roman Kutemov  

я хочу пробовать закрыться в 23-55, ну а если уж не получится то после нуля пробуем закрыться в любое время.


этот вариант для пятницы, чтобы на гэп не нарваться.

Farkhat Guzairov
924
Farkhat Guzairov  
Stells:

я хочу пробовать закрыться в 23-55, ну а если уж не получится то после нуля пробуем закрыться в любое время.


этот вариант для пятницы, чтобы на гэп не нарваться.

Смотрите ниже!

 

int OnInit(){
   ...
   //выставляет флаг в нужное значение
   Event_Not_Close = false;
   ...
}

if((TimeMinute(time[0]) == 55 && TimeHour(time[0]) == 23 && TimeDayOfWeek(time[0]) == 5)||(Event_Not_Close)){
   //Тут делаете то что планировали!!!
   ...
   //Если получилось, выставляет флаг в нужное значение
   Event_Not_Close = false;
   //Если не получилось, выставляет флаг в нужное значение
   Event_Not_Close = true;
}
Roman Kutemov
1909
Roman Kutemov  
спасибо
Vasyl Nosal
19655
Vasyl Nosal  
Только через OnCalculate() проверка каждую секунду. И в функции не зубудь проверять IsTradeAllowed() чтобы в выходные не пробовал закрыть.
Ihor Herasko
15932
Ihor Herasko  

eevviill:
Только через OnCalculate() проверка каждую секунду.

Торгующий индикатор? С OnTick, видимо, перепутали, который в советниках.

 И в функции не зубудь проверять IsTradeAllowed() чтобы в выходные не пробовал закрыть.

IsTradeAllowed() в выходные стабильно возвращает true. Не для этого она. Тот факт, что рынок закрыт, можно определить только по результату выполнения торговой операции - любая попытка торговли приведет к получению ошибки 132 (ERR_MARKET_CLOSED).
Vasyl Nosal
19655
Vasyl Nosal  
Scriptong:

Торгующий индикатор? С OnTick, видимо, перепутали, который в советниках.

IsTradeAllowed() в выходные стабильно возвращает true. Не для этого она. Тот факт, что рынок закрыт, можно определить только по результату выполнения торговой операции - любая попытка торговли приведет к получению ошибки 132 (ERR_MARKET_CLOSED).

Перепутал с OnTimer()

Не правда. 

Ihor Herasko
15932
Ihor Herasko  
eevviill:

Перепутал с OnTimer()

К сожалению, не поможет. Ведь индикатор не может выполнять торговые операции. Поэтому речь должна идти только о советнике. А там уже OnTick() или OnTimer().

Не правда. 

Еще раз: IsTradeAllowed() не отслеживает состояние рынка. В документации четко написано: Возвращает true, если эксперту разрешено торговать и поток для выполнения торговых операций свободен, иначе возвращает false. Есть здесь упоминание о том, что осуществляется проверка состояния рынка?
Farkhat Guzairov
924
Farkhat Guzairov  

))) Вообще я невнимательно прочитал пост, сорри!!!!

Из кода уберите  TimeDayOfWeek(time[0]) == 5, тогда будет работать как хотел Stells

12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий