SymbolInfoSessionQuote и SymbolInfoSessionTrade на форексе кто использует?

 

Вот такая появилась необходимость, в связи с тем, что не в одно время заканчивается торговля по пятницам. Не хотелось-бы тупо ставить завершение в 22:00 для тех пятниц когда торговля идёт до 23:59

SymbolInfoSessionTrade правильно показывает начало в 00:02 у робо и завершение в 23:59 но в те дни когда торговля заканчивается в 22:59 функция не видит этого. Т.е. по прежнему показывает 23:59

SymbolInfoSessionQuote так-же. Только начало в 00:00 и всё остальное повторяет как SymbolInfoSessionTrade.

Других вариантов что-то я не нахожу. Может кто подскажет где искать? Как определить время завершения торговли в пятницу или в указанный день?

На MetaQuotes-Demo тоже такой косяк наблюдается.

 
bool checkWorkSymbolTime(string ssmb)
  {
   datetime dtm_from=0,dtm_to=0;
   datetime dtm_start=iTime(ssmb,PERIOD_D1,0);
   datetime dtm_current=TimeCurrent();

   for(int i=0;i<10;i++)
     {
      if(SymbolInfoSessionTrade(ssmb,DayOfWeek(),i,dtm_from,dtm_to))
        {
         if(dtm_current>=(datetime)(dtm_start+dtm_from) && dtm_current<(datetime)(dtm_start+dtm_to)) return true;
        }
     }
   return false;
  }

для проверки работы по символу использую вот такую функцию.

можете модифицировать под свои нужды.

 
Alexey Viktorov:

Как определить время завершения торговли в пятницу или в указанный день?

Посмотреть, как завершилась неделю назад.
 
Никак не определить. Ведь существует расписание торгов, а существуют локальные коррекции этого расписания, которые в большинстве случаев никак не отображаются в расписании.
 
Alexandr Gavrilin:

для проверки работы по символу использую вот такую функцию.

можете модифицировать под свои нужды.

Спасибо за заботу, но это не работает, о чём я и сказал изначально. Одна неделя заканчивается в 23:59 а другая в 22:59 и никакой цикличности...

 
Ihor Herasko:
Никак не определить. Ведь существует расписание торгов, а существуют локальные коррекции этого расписания, которые в большинстве случаев никак не отображаются в расписании.
По русски говоря, хреново...
 
Alexey Viktorov:
По русски говоря, хреново...

Когда продавец стоит на базаре, то он никогда не может наперед знать, во сколько именно совершит последнюю на сегодня продажу. Так что все закономерно.
 
Ihor Herasko:

Когда продавец стоит на базаре, то он никогда не может наперед знать, во сколько именно совершит последнюю на сегодня продажу. Так что все закономерно.
Но он знает, когда обычно закрывается базар.
 
Ihor Herasko:

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

Нет Игорь. Неудачное сравнение. У продавца на базаре либо ограниченное количество товара, либо ограниченное количество спиртного. В зависимости от того, что раньше закончится зависит время закрытия. А у ДЦ или брокера совсем не так.

Я уже пытался найти новости по изменению расписания чтобы можно было хотя-бы вручную переключать, но тщетно. Есть информация по нерабочим дням, переводу на летнее\зимнее время, а по досрочному закрытию торгов нету. Или я просто не так и не там искал. Либо долго и упорно искать зависимость, может через сколько-то недель для профилактики закрывают на час раньше. Ведь даже MetaQuotes-Demo тоже в некоторые пятницы заканчивают торговлю на час раньше.

 
Andrey Khatimlianskii:
Но он знает, когда обычно закрывается базар.

Такое знание, к сожалению, не решает проблему. Если на рынке нет покупателя или продавца, то от этого сделка не состоится, даже если рынок будет "работать" вечно. С этой проблемой я сталкивался неоднократно, когда заказчики просили сделать так, чтобы советник закрывал все сделки в конце дня. Вот тут и возникал вопрос: а когда он, этот конец дня? Расписание сессий не решает проблемы, т. к. последний тик цены может прийти задолго до официального закрытия рынка. В итоге универсальным решением явилось создание специального настроечного параметра, при помощи которого трейдер сам указывал, в какое время дня следует совершить закрытие.Но теперь проблема перенесена на самого трейдера: ему приходится перестраховываться, устанавливая время закрытия сделок на полчаса, а то и на час ранее времени того закрытия рынка, которое указал его брокер в расписании или в новостях.
 
Alexey Viktorov:

Нет Игорь. Неудачное сравнение. У продавца на базаре либо ограниченное количество товара, либо ограниченное количество спиртного. В зависимости от того, что раньше закончится зависит время закрытия. А у ДЦ или брокера совсем не так.


Ликвидность тоже ограничена. Особенно в конце торговой сессии. Кухонный брокер, конечно, всегда нарисует такую ликвидность, а вот нормальный - в самом лучшем случае исполнит сделку с огромным проскальзыванием.

Я уже пытался найти новости по изменению расписания чтобы можно было хотя-бы вручную переключать, но тщетно. Есть информация по нерабочим дням, переводу на летнее\зимнее время, а по досрочному закрытию торгов нету. Или я просто не так и не там искал. Либо долго и упорно искать зависимость, может через сколько-то недель для профилактики закрывают на час раньше. Ведь даже MetaQuotes-Demo тоже в некоторые пятницы заканчивают торговлю на час раньше.

Тут нужно использовать два источника: расписание сессий и новости от брокера, в которых он сообщает об изменении в расписании. Автоматизировать чтение второго источника мне видится достаточно затруднительным.
Причина обращения: