TimeTradeServer аналог для МТ4 - страница 8

 
Alexandr Gavrilin:

ну на валюте это работает в торговый день, а в неторговый будет работать?

Если принять за работающее то, что в принципе работать не может, то тогда без разницы, в торговый день или в выходные))

 
Алексей Тарабанов:

Ну, вы, мужики, даете. 

Некоторые мужики, а некоторые дают))

 
Alexandr Gavrilin:

Идея конечно может помочь, хотелось бы без лишних ошибок узнавать о закрытии рынка. Надо подумать.

Битва за одну ошибку, при том что в день при копировании случаются десятки  ошибок.

 

А почему именно -3? Потому что в одном месте так вдруг случайно совпало? Да?

 
Dmitry Fedoseev:

А почему именно -3? Потому что в одном месте так вдруг случайно совпало? Да?

Если правильно помню, то форекс-символы котируются ровно до полуночи с пятницы на субботу по GMT+3 летом (+2 - зимой).

 
Alexandr Gavrilin:

Хорошо, задам глупый вопрос.

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


Если есть толковые решение будет интересно. 

Время брокера не всегда может совпадать с временем gmt :-)

Вы слишком узко мыслите сейчас, не у всех есть золото, чтобы привязаться к его времени и узнать gmt к примеру как вы предложили. Нужно более универсальное решение.

Если нужно знать когда - то берем все что угодно от TimeLocal().

Если нужно знать что рынок закрыт, то:

if(IsTradeAllowed(Symbol(),TimeCurrent()+10)==false)Print("Рынок закрыт!");

И то и другое вешаем в OnTimer().

---

Именно суббота Вам не поможет, т.к., например, рублик ночером не торгуется, а биткоин торгуется и сегодня.

Так что вместо Symbol(), подставляйте торгуемую пару, в случае мультивалютника.

Не пытайтесь вычислить начало/окончание торговли, это бесполезно

т.к. бывают временные изменения в расписаниях торговли и в разных ДЦ все устроено  по разному.

----

Хотяяяя...

Хозяин-барин:

TimeDayOfWeek(TimeLocal())==6 - это суббота

;)

 
Renat Akhtyamov:

Если нужно знать когда - то берем все что угодно от TimeLocal().

Если нужно знать что рынок закрыт, то:

if(IsTradeAllowed(Symbol(),TimeCurrent()+10)==false)Print("Рынок закрыт!");

И то и другое вешаем в OnTimer().

---

Именно суббота Вам не поможет, т.к., например, рублик ночером не торгуется, а биткоин торгуется и сегодня.

Так что вместо Symbol(), подставляйте торгуемую пару, в случае мультивалютника.

Не пытайтесь вычислить начало/окончание торговли, это бесполезно

т.к. бывают временные изменения в расписаниях торговли и в разных ДЦ все устроено  по разному.

----

Хотяяяя...

Хозяин-барин:

TimeDayOfWeek(TimeLocal())==6 - это суббота

;)

TimeDayOfWeek(TimeLocal())==6 - это суббота

ага а еще пятница у брокера...и приехали. 

Все эти решения для копировщиков , арбитражников не подходят. 

 
Alexandr Gavrilin:

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

Проверили?

 
fxsaber:

Проверили?

забыл проверить

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