http://www.forexfactory.com/ff_calendar_thisweek.xml - пусто !

 

друзья, а что это такое ?

http://www.forexfactory.com/ff_calendar_thisweek.xml   - читаю а там пусто !

 

У меня он не пустой, но нормально "прочесть" не могу - нет экселя.
OpenOffice не выводит инфу нормально, и онлайновый Google Sheets - тоже.


Google Таблицы: бесплатно создавайте и редактируйте таблицы в Интернете.
  • www.google.com
Создавайте таблицы вместе с друзьями и коллегами – на компьютере, телефоне или планшете. Редактируйте файлы даже без подключения к Интернету. Работайте с таблицами MS Excel. И все это совершенно бесплатно!
 

адрес поменяли

https://cdn-nfs.faireconomy.media/ff_calendar_thisweek.xml

 
Sergey Golubev:

У меня он не пустой, но нормально "прочесть" не могу - нет экселя.
OpenOffice не выводит инфу нормально, и онлайновый Google Sheets - тоже.


я читаю with help of WinInet, страница реально пустая

 
Taras Slobodyanik:

адрес поменяли

https://cdn-nfs.faireconomy.media/ff_calendar_thisweek.xml

вот бл..., точно !

спасибо друг !

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

 
В МТ5 штатный рилтаймовый календарь с доступом из MQL5.

Оттуда штатно можно брать данные
 
Renat Fatkhullin:
В МТ5 штатный рилтаймовый календарь с доступом из MQL5.

Оттуда штатно можно брать данные

Уже можно? Дайте ссылку на документацию или название функций. Спасибо.

Нашел: https://www.mql5.com/ru/docs/calendar

Документация по MQL5: Экономический календарь
Документация по MQL5: Экономический календарь
  • www.mql5.com
В этом разделе описываются функции для работы с Экономическим календарем, который доступен прямо в платформе MetaTrader. Экономический календарь является готовой энциклопедией с описанием макроэкономических индикаторов, даты их выхода и степени важности. Актуальные значения макроэкономических показателей поступают в платформу MetaTrader...
 
Denis Sartakov:

вот бл..., точно !

спасибо друг !

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

У меня все по старому. Сайт парсится, таймер работает. Адрес старый.


 
Evgeny Belyaev:

Уже можно? Дайте ссылку на документацию или название функций. Спасибо.

Тоже присоединяюсь к просьбе, дайте ссылку на документацию.

 
Renat Fatkhullin:
В МТ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
*/  
//+------------------------------------------------------------------+

New MetaTrader 5 Platform build 2005: Economic Calendar, MQL5 applications as services and R language API
New MetaTrader 5 Platform build 2005: Economic Calendar, MQL5 applications as services and R language API
  • 2019.02.20
  • www.mql5.com
The MetaTrader 5 platform update will be released on February 21, 2019...
Причина обращения: