Скачать MetaTrader 5

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

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Нашел хорошего программиста? Ставь адресную заявку!
Roman Kutemov
1786
Roman Kutemov 2015.06.12 17:22 

добрый день.

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

Boris
3900
Boris 2015.06.12 17:31  
Поиск: Закрытие сделки по времени, в 23:55. 
Victor Nikolaev
Модератор
14523
Victor Nikolaev 2015.06.12 17:48  
Stells:

добрый день.

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

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

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


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

Farkhat Guzairov
909
Farkhat Guzairov 2015.06.12 18:15  
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
1786
Roman Kutemov 2015.06.14 12:58  
спасибо
Vasyl Nosal
18556
Vasyl Nosal 2015.06.14 20:31  
Только через OnCalculate() проверка каждую секунду. И в функции не зубудь проверять IsTradeAllowed() чтобы в выходные не пробовал закрыть.
Ihor Herasko
9064
Ihor Herasko 2015.06.14 20:53  

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

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

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

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

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

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

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

Не правда. 

Ihor Herasko
9064
Ihor Herasko 2015.06.15 10:57  
eevviill:

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

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

Не правда. 

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

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

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

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