Скачать MetaTrader 5

EURUSD vs CADJPY

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

берём мт5. демосервер метаквотов. Смотрим спецификации контрактов в сабже.
Интересует торговая сессия. Она у обоих контрактов одинаковая 00:00-24:00, те полные сутки контракты торгуются.
Далее берём функцию SymbolInfoSessionTrade() и получаем параметры from и to

Для евробакса значения: 0 и 86400 (количесвто секунд в сутках т.е. торгуется до 24:00)
Для канадца против йены получаем from = 0 и to = 0. Почему? в чём разница?

Скрипт для проверки чтобы не писать самому:

void OnStart()
  {
      Print("Торговая сессия: "+(string)fnSessionTrade(Symbol()));
  }

/******************************************************************************************************************
Проверка наличия и попадания в торговую сессию
******************************************************************************************************************/

bool fnSessionTrade(string smb)
   {      
         datetime from,to;
         MqlDateTime crnt;
         TimeToStruct(TimeTradeServer(),crnt);         
         
         //если не смогли получить время торговой сессии то сразу значит что с символов не работаем
         if (!SymbolInfoSessionTrade(smb,(ENUM_DAY_OF_WEEK)crnt.day_of_week,0,from,to)) return(false);
            
         Print("from: "+(string)(int)from);
         Print("to: "+(string)(int)to);
            
         crnt.hour=crnt.min=crnt.sec=0;         
         from+=StructToTime(crnt);
         to+=StructToTime(crnt);

         Print("from: "+(string)from);
         Print("to: "+(string)to);

         if (TimeTradeServer()>=from && TimeTradeServer()<to) return(true);
         return(false);
   }
Alexey Volchanskiy
21886
Alexey Volchanskiy  
Alexey Oreshkin:

берём мт5. демосервер метаквотов. Смотрим спецификации контрактов в сабже.
Интересует торговая сессия. Она у обоих контрактов одинаковая 00:00-24:00, те полные сутки контракты торгуются.
Далее берём функцию SymbolInfoSessionTrade() и получаем параметры from и to

Для евробакса значения: 0 и 86400 (количесвто секунд в сутках т.е. торгуется до 24:00)
Для канадца против йены получаем from = 0 и to = 0. Почему? в чём разница?

Скрипт для проверки чтобы не писать самому:

Вот проверил на робо ecn pro demo

2015.11.11 19:46:28.366 TestCADJPY (EURUSD.e,M5) Торговая сессия: true

2015.11.11 19:46:28.366 TestCADJPY (EURUSD.e,M5) to: 2015.11.11 23:59:00

2015.11.11 19:46:28.366 TestCADJPY (EURUSD.e,M5) from: 2015.11.11 00:02:00

2015.11.11 19:46:28.366 TestCADJPY (EURUSD.e,M5) to: 86340

2015.11.11 19:46:28.366 TestCADJPY (EURUSD.e,M5) from: 120

2015.11.11 19:46:02.324 TestCADJPY (CADJPY.e,M5) Торговая сессия: true

2015.11.11 19:46:02.324 TestCADJPY (CADJPY.e,M5) to: 2015.11.11 23:59:00

2015.11.11 19:46:02.324 TestCADJPY (CADJPY.e,M5) from: 2015.11.11 00:02:00

2015.11.11 19:46:02.324 TestCADJPY (CADJPY.e,M5) to: 86340

2015.11.11 19:46:02.322 TestCADJPY (CADJPY.e,M5) from: 120

Alexey Oreshkin
6424
Alexey Oreshkin  
Alexey Volchanskiy:

Вот проверил на робо ecn pro demo...

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