У меня он не пустой, но нормально "прочесть" не могу - нет экселя.
OpenOffice не выводит инфу нормально, и онлайновый Google Sheets - тоже.
- www.google.com
адрес поменяли
https://cdn-nfs.faireconomy.media/ff_calendar_thisweek.xml
У меня он не пустой, но нормально "прочесть" не могу - нет экселя.
OpenOffice не выводит инфу нормально, и онлайновый Google Sheets - тоже.
я читаю with help of WinInet, страница реально пустая
адрес поменяли
https://cdn-nfs.faireconomy.media/ff_calendar_thisweek.xml
вот бл..., точно !
спасибо друг !
а ты не проверял случайно, структура сохранилась ?
В МТ5 штатный рилтаймовый календарь с доступом из MQL5.
Уже можно? Дайте ссылку на документацию или название функций. Спасибо.
Нашел: https://www.mql5.com/ru/docs/calendar

- www.mql5.com
Уже можно? Дайте ссылку на документацию или название функций. Спасибо.
Тоже присоединяюсь к просьбе, дайте ссылку на документацию.
В МТ5 штатный рилтаймовый календарь с доступом из MQL5.
В каком разделе искать? В доке к ME не нашел. Через поиск в документации тоже не нашел? Может надо обновиться?
В первом посте этой ветки есть кодами - https://www.mql5.com/en/forum/304240
И здесь https://www.mql5.com/ru/docs/calendar
А тут - пример от Рашида в англ части (код) - пост #6 :
Forum on trading, automated trading systems and testing trading strategies
New MQL5 Economic Calendar function
Rashid Umarov, 2019.03.20 17:10
May it is not that bug that coonects with your code. Run this sample of Economic calendar events listenter. Sorry for Russian comments - didn't have time for translation
//+------------------------------------------------------------------+ //| Demo_CalendarValueLast.mq5 | //| Copyright 2018, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2018, MetaQuotes Software Corp." #property link "https://www.mql5.com" #property version "1.00" #property description "Пример использования функции CalendarValueLast" #property description " для отлавливания выхода отчета по событию Nonfarm Payrolls." #property description "Для этого необходимо получить текущий идентификатор изменения" #property description " базы Календаря. И затем по этому идентификатору получать" #property description " только новые события для через опрос в таймере" //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { //--- create timer EventSetTimer(60); //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- destroy timer EventKillTimer(); } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { //--- } //+------------------------------------------------------------------+ //| Timer function | //+------------------------------------------------------------------+ void OnTimer() { //--- идентификатор изменения базы Календаря static ulong calendar_change_id=0; //--- признак первого запуска static bool first=true; //--- массив значений событий MqlCalendarValue values[]; //--- проведем инициализацию - получим текущий calendar_change_id if(first) { //--- получим идентификатор изменения базы Календаря if(CalendarValueLast(calendar_change_id,values)>0) { //--- этот блок кода не может выполниться при первом запуске, но мы его все равно пропишем PrintFormat("%s: Получен текущий идентификатор базы Календаря: change_id=%d", __FUNCTION__,calendar_change_id); //--- выставим флаг и выйдем до следущего события таймера first=false; return; } else { //--- данные не получены (для первого запуска это нормально), проверим наличие ошибки int error_code=GetLastError(); if(error_code==0) { PrintFormat("%s: Получен текущий идентификатор базы Календаря: change_id=%d", __FUNCTION__,calendar_change_id); //--- выставим флаг и выйдем до следущего события таймера first=false; //--- теперь у нас есть значение calendar_change_id return; } else { //--- а вот это действительно ошибка PrintFormat("%s: Не удалось получить события в CalendarValueLast. Код ошибки: %d", __FUNCTION__,error_code); //--- неудачное завершение работы, попробуем заново при следующем вызове таймера return; } } } //--- у нас есть последнее известное значение идентификатора изменения Календаря (change_id) ulong old_change_id=calendar_change_id; //--- проверим - не появилось ли новое значение события "Nonfarm Payrolls" if(CalendarValueLast(calendar_change_id,values)>0) { PrintFormat("%s: Получены новые события для Календаря: %d", __FUNCTION__,ArraySize(values)); //--- выведем в Журнал информацию из массива values ArrayPrint(values); //--- выведем в Журнал значения предыдущего и нового идентификатора Календаря PrintFormat("%s: Предыдущий change_id=%d, новый change_id=%d", __FUNCTION__,old_change_id,calendar_change_id); //--- выведем в Журнал новые события ArrayPrint(values); /* пропишите здесь свой код, который будет обрабатывать появление событий */ } //--- } /* Пример работы слушателя: OnTimer: Получен текущий идентификатор базы Календаря: change_id=33281792 OnTimer: Получены новые события для Календаря: 1 [id] [event_id] [time] [period] [revision] [actual_value] [prev_value] [revised_prev_value] [forecast_value] [impact_type] [reserved] [0] 91040 76020013 2019.03.20 15:30:00 1970.01.01 00:00:00 0 -5077000 -1913000 -9223372036854775808 -4077000 2 0 OnTimer: Предыдущий change_id=33281792, новый change_id=33282048 [id] [event_id] [time] [period] [revision] [actual_value] [prev_value] [revised_prev_value] [forecast_value] [impact_type] [reserved] [0] 91040 76020013 2019.03.20 15:30:00 1970.01.01 00:00:00 0 -5077000 -1913000 -9223372036854775808 -4077000 2 0 OnTimer: Получены новые события для Календаря: 1 [id] [event_id] [time] [period] [revision] [actual_value] [prev_value] [revised_prev_value] [forecast_value] [impact_type] [reserved] [0] 91041 76020013 2019.03.27 15:30:00 1970.01.01 00:00:00 0 -9223372036854775808 -5077000 -9223372036854775808 -7292000 0 0 OnTimer: Предыдущий change_id=33282048, новый change_id=33282560 [id] [event_id] [time] [period] [revision] [actual_value] [prev_value] [revised_prev_value] [forecast_value] [impact_type] [reserved] [0] 91041 76020013 2019.03.27 15:30:00 1970.01.01 00:00:00 0 -9223372036854775808 -5077000 -9223372036854775808 -7292000 0 0 */ //+------------------------------------------------------------------+

- 2019.02.20
- www.mql5.com

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
друзья, а что это такое ?
http://www.forexfactory.com/ff_calendar_thisweek.xml - читаю а там пусто !