Все о вкладке Календарь и макроэкономические события. - страница 2

 
Экономический календарь

Начало:

  1. Индикаторы/ЭА для новостей и торговых сигналов - поток
  2. Советник "Экономический календарь" - поток
  3. Советник по экономическому календарю - второй поток
  4. Поток советников News Trader EA (MT4)
  5. AvoidTheNews.mqh для краткосрочных систем - поток с файлами
  6. Индикатор чтения новостей! - поток (MT4)
  7. Индикатор календаря FF для MT - поток (MT4)

После

  1. Все о вкладке Календарь и макроэкономических событиях - ключевая тема
  2. MQL5 Cookbook - Экономический календарь - статья
  3. FFC - Forex Factory Calendar - индикатор для MetaTrader 4 (и исправленная версия в посте )
  4. Конвертер HTML-файлов для экономического календаря - скрипт для MetaTrader 5
  5. News VLine - скрипт для MetaTrader 5
  6. Календарь - скрипт для MetaTrader 5
  7. NewsReleaseEA - эксперт для MetaTrader 4
  8. Можно ли использовать экономический календарь MQL5 в тестере стратегий? - тема с некоторыми созданными инструментами
  9. Nonfarm Payrolls - эксперт для MetaTrader 5
  10. Изучение класса CCanvas. Как рисовать прозрачные объекты - статья
  11. Регрессионный анализ влияния макроэкономических данных на колебания валютных цен - статья
  12. Построение автоматического новостного трейдера - статья
All about Calendar tab and Macro Economic Events.
All about Calendar tab and Macro Economic Events.
  • 2013.03.17
  • www.mql5.com
For traders MT5 user interface If you can't view the calendar tab, probably it's a choice a your broker : Video : How to delete Calendar Event...
 

950 сайтов транслируют Экономический календарь от MetaQuotes

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

950 сайтов транслируют Экономический календарь от MetaQuotes

Предложение MetaQuotes действительно для владельцев и веб-мастеров любых ресурсов. Чтобы добавить календарь, просто нажмите кнопку"Добавить на сайт" на веб-странице сервиса. После указания ширины/высоты и периода отображения для вас будет сгенерирован код. Скопируйте и вставьте его на нужную веб-страницу. Теперь у ваших посетителей есть готовый инструмент для мониторинга финансовых новостей.

 

Доступ к данным экономического календаря из MQL5-программ - читайте первое сообщение этой темы о HowTo

----------------

    MQL5: Implemented access to economic calendar data from MQL5 programs.

    New functions

    CalendarCountryById — gets country description by identifier.
    bool CalendarCountryById(
       const long           country_id,    // country ID
       MqlCalendarCountry&  country        // country description
       );
    CalendarEventById — gets event description by identifier.
    bool CalendarEventById(
       const long           event_id,      // event ID
       MqlCalendarEvent&    event          // event description
       );
    CalendarValueById — gets event value description by identifier.
    bool CalendarValueById(
       const long           value_id,      // value ID
       MqlCalendarValue&    value          // value description
       );
    CalendarEventByCountry — gets the array of available events for the country.
    bool CalendarEventByCountry(
       string               country_code,  // country code
       MqlCalendarEvent&    events[]       // array of events
       );
    CalendarEventByCurrency — gets the array of available events for the affected currency.
    bool CalendarEventByCurrency(
       string               currency,      // currency
       MqlCalendarEvent&    events[]       // array of events
       );
    CalendarValueHistoryByEvent — gets the array of values for the specified time period, by event identifier.
    bool CalendarValueHistoryByEvent(
       ulong                event_id,      // event ID
       MqlCalendarValue&    values[],      // array of values
       datetime             datetime_from, // period beginning date
       datetime             datetime_to=0  // period end date
       );
    CalendarValueHistory — gets the array of values for the specified time period for all events, filtered by country and/or currency.
    bool CalendarValueHistory(
       MqlCalendarValue&    values[],          // array of values
       datetime             datetime_from,     // beginning of period
       datetime             datetime_to=0,     // end of period
       string               country_code=NULL, // country code
       string               currency=NULL      // currency
       );
    CalendarValueLastByEvent — gets an array of last event values by identifier. This function enables the request of the values which have appeared since the previous request. The in/out parameter "change_id" is additionally used for this operation.

    Every time the calendar database changes, the "change_id" property (the last change identifier) is updated. During data request, you specify "change_id" and the terminal returns events which appeared after that time, as well as the current "change_id" value, which can be used for the next request. During the first function call, specify the zero "change_id": the function will not return any events, but will return the current "change_id" for further requests.
    bool CalendarValueHistory(
       ulong                event_id,          // event ID
       ulong&               change_id,         // last calendar change ID
       MqlCalendarValue&    values[]           // array of values
       );
    CalendarValueLast — gets the array of last values for all events, filtered by country and/or currency. This function enables the request of the values which have appeared since the previous request. Similarly to CalendarValueLastByEvent, the "change_id" property is used for the request.
    bool CalendarValueHistory(
       ulong                event_id,          // event ID
       ulong&               change_id,         // last calendar change ID
       MqlCalendarValue&    values[],          // array of values
       string               country_code=NULL, // country code
       string currency=NULL                    // currency
       );

    New structures

    MqlCalendarCountry — country description.
    struct MqlCalendarCountry
      {
       ulong             id;                        // country ID in ISO 3166-1
       string            name;                      // text name of the country
       string            code;                      // code name of the country in ISO 3166-1 alpha-2
       string            currency;                  // country currency code
       string            currency_symbol;           // country currency symbol/sign
       string            url_name;                  // country name used in URL on mql5.com
      };
    MqlCalendarEvent — event description.
    struct MqlCalendarEvent
      {
       ulong                          id;           // event ID
       ENUM_CALENDAR_EVENT_TYPE       type;         // event type
       ENUM_CALENDAR_EVENT_SECTOR     sector;       // sector to which the event belongs
       ENUM_CALENDAR_EVENT_FREQUENCY  frequency;    // event release frequency
       ENUM_CALENDAR_EVENT_TIMEMODE   time_mode;    // event release time mode
       ulong                          country_id;   // country ID
       ENUM_CALENDAR_EVENT_UNIT       unit;         // unit for the event values
       ENUM_CALENDAR_EVENT_IMPORTANCE importance;   // event importance
       ENUM_CALENDAR_EVENT_MULTIPLIER multiplier;   // event importance multiplier
       uint                           digits;       // number of decimal places in the event value
       string                         source_url;   // source URL
       string                         event_code;   // event code
       string                         name;         // text name of the event in the terminal language
      };
    MqlCalendarValue — event value description.
    struct MqlCalendarValue
      {
       ulong             id;                        // value ID
       ulong             event_id;                  // event ID
       datetime          time;                      // event date and time
       datetime          period;                    // period, for which the event is published
       int               revision;                  // published indicator revision in relation to the reported period
       long              actual_value;              // current event value
       long              prev_value;                // previous event value
       long              revised_prev_value;        // revised previous event value
       long              forecast_value;            // forecast event value
       ENUM_CALENDAR_EVENT_IMPACRT impact_type;     // potential impact on the currency rate
      };

    New enumerations

    enum ENUM_CALENDAR_EVENT_FREQUENCY
      {
       CALENDAR_FREQUENCY_NONE            =0,   // not used
       CALENDAR_FREQUENCY_WEEK            =1,   // weekly
       CALENDAR_FREQUENCY_MONTH           =2,   // monthly
       CALENDAR_FREQUENCY_QUARTER         =3,   // quarterly
       CALENDAR_FREQUENCY_YEAR            =4,   // yearly
       CALENDAR_FREQUENCY_DAY             =5,   // daily
      };
    
    enum ENUM_CALENDAR_EVENT_TYPE
      {
       CALENDAR_TYPE_EVENT                =0,   // event (meeting, speech, etc.)
       CALENDAR_TYPE_INDICATOR            =1,   // indicator
       CALENDAR_TYPE_HOLIDAY              =2,   // holiday
      };
    
    enum ENUM_CALENDAR_EVENT_SECTOR
      {
       CALENDAR_SECTOR_NONE               =0,   // no
       CALENDAR_SECTOR_MARKET             =1,   // market
       CALENDAR_SECTOR_GDP                =2,   // GDP
       CALENDAR_SECTOR_JOBS               =3,   // jobs
       CALENDAR_SECTOR_PRICES             =4,   // prices
       CALENDAR_SECTOR_MONEY              =5,   // money
       CALENDAR_SECTOR_TRADE              =6,   // trade
       CALENDAR_SECTOR_GOVERNMENT         =7,   // government
       CALENDAR_SECTOR_BUSINESS           =8,   // business
       CALENDAR_SECTOR_CONSUMER           =9,   // consumer
       CALENDAR_SECTOR_HOUSING            =10,  // housing
       CALENDAR_SECTOR_TAXES              =11,  // taxes
       CALENDAR_SECTOR_HOLIDAYS           =12,  // holidays
      };
      
    enum ENUM_CALENDAR_EVENT_IMPORTANCE
      {
       CALENDAR_IMPORTANCE_LOW            =0,   // no
       CALENDAR_IMPORTANCE_NONE           =1,   // low
       CALENDAR_IMPORTANCE_MODERATE       =2,   // moderate
       CALENDAR_IMPORTANCE_HIGH           =3,   // high
      };
    
    enum ENUM_CALENDAR_EVENT_UNIT
      {
       CALENDAR_UNIT_NONE                 =0,   // no
       CALENDAR_UNIT_PERCENT              =1,   // percent
       CALENDAR_UNIT_CURRENCY             =2,   // national currency
       CALENDAR_UNIT_HOUR                 =3,   // number of hours
       CALENDAR_UNIT_JOB                  =4,   // number of jobs
       CALENDAR_UNIT_RIG                  =5,   // number of rigs
       CALENDAR_UNIT_USD                  =6,   // US dollar
       CALENDAR_UNIT_PEOPLE               =7,   // number of people
       CALENDAR_UNIT_MORTGAGE             =8,   // number of mortgages
       CALENDAR_UNIT_VOTE                 =9,   // number of votes
       CALENDAR_UNIT_BARREL               =10,  // number of barrels
       CALENDAR_UNIT_CUBICFEET            =11,  // volume in cubic feet
       CALENDAR_UNIT_POSITION             =12,  // number of job positions
       CALENDAR_UNIT_BUILDING             =13   // number of buildings
      };
      
    enum ENUM_CALENDAR_EVENT_MULTIPLIER
      {
       CALENDAR_MULTIPLIER_NONE           =0,   // no    
       CALENDAR_MULTIPLIER_THOUSANDS      =1,   // thousands
       CALENDAR_MULTIPLIER_MILLIONS       =2,   // millions
       CALENDAR_MULTIPLIER_BILLIONS       =3,   // billions
       CALENDAR_MULTIPLIER_TRILLIONS      =4,   // trillions
      };
      
    enum ENUM_CALENDAR_EVENT_IMPACRT
      {
       CALENDAR_IMPACT_NA                 =0,   // not available
       CALENDAR_IMPACT_POSITIVE           =1,   // positive
       CALENDAR_IMPACT_NEGATIVE           =2,   // negative
      };
    
    enum ENUM_CALENDAR_EVENT_TIMEMODE
      {
       CALENDAR_TIMEMODE_DATETIME         =0,   // the source publishes the exact time
       CALENDAR_TIMEMODE_DATE             =1,   // the event takes the whole day
       CALENDAR_TIMEMODE_NOTIME           =2,   // the source does not publish the event time
       CALENDAR_TIMEMODE_TENTATIVE        =3,   // the source provides only date, but does not publish the exact time in advance, exact time is added when event occurs
      };

    New error codes

    ERR_CALENDAR_MORE_DATA             =5400,   // the array is small for the whole result (values which fit in the array were passed)
    ERR_CALENDAR_TIMEOUT               =5401,   // timed out waiting for a response to the calendar data request
    ERR_CALENDAR_NO_DATA               =5402,   // data not found

 

Пример экономического календаря событий listenter -.

Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий

Новая функция экономического календаря на MQL5

Рашид Умаров, 2019.03.20 17:10

Возможно, это не тот баг, который связан с вашим кодом. Запустите этот пример экономического календаря событий listenter. Извините за русские комментарии - не было времени на перевод

//+------------------------------------------------------------------+
//|                                       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
*/  
//+------------------------------------------------------------------+

Файлы:
 

Форум о трейдинге, автоматизированных торговых системах и тестировании торговых стратегий

Бесплатный экономический календарь Tradays для WordPress сайтов

MetaQuotes Software Corp., 2019.04.23 09:35

Мы выпустили плагин интеграции Tradays для WordPress. Теперь вы можете добавить популярный экономический календарь на свой сайт прямо из консоли WordPress, помимо использования ранее доступного виджета.

Цель сервиса Tradays - дать трейдерам возможность проводить фундаментальный анализ финансового рынка. В календаре представлено более 900 индикаторов и событий, связанных с 15 крупнейшими мировыми экономиками. Текущие значения представлены наряду с историческими данными и прогнозами на будущее. Показания соответствующих индикаторов автоматически собираются и обновляются в режиме реального времени непосредственно из открытых источников.

Плагин Tradays для WordPress

Плагин Tradays WordPress Plugin доступен бесплатно и не содержит принудительной рекламы. Сервис переведен на 9 языков и продолжает расширяться, а улучшения и обновления выходят постоянно. Использование календаря абсолютно необременительно.

Календарь можно легко добавить на ваш сайт:

  1. Установите плагин прямо из раздела WordPress Plugins или скачайте файлы плагина в папку "/wp-content/plugins/tradays-economic-calendar".
  2. Активируйте его в разделе "Плагины" панели управления
  3. Добавьте виджет на страницу с помощью раздела Виджеты на странице Внешний вид

Установите плагин Tradays и предоставьте посетителям вашего сайта эффективный инструмент для оценки и прогнозирования котировок финансовых активов. Ваша аудитория будет своевременно получать информацию о состоянии мировой экономики и сможет отслеживать ключевые финансовые новости прямо с вашего сайта.

Установить Tradays для WordPress


 

Форум о трейдинге, автоматизированных торговых системах и тестировании торговых стратегий

Самый быстрый экономический календарь.

Ренат Фатхуллин, 201.09.05.14 06:48

Календарь доставляется на терминал автоматически и в push-режиме. История календаря автоматически синхронизируется при запуске терминала.

Запросы с MQL5 не вызывают повторных запросов к серверу, а работают с постоянно обновляющейся локальной базой данных.


 

Форум о трейдинге, автоматизированных торговых системах и тестировании торговых стратегий

Мексика теперь представлена в экономическом календаре Tradays

MetaQuotes Software Corp., 2019.09.18 09:34

В приложение для фундаментального анализа рынка добавлены 32 индикатора мексиканской экономики. Информация собирается непосредственно из открытых источников, таких как Банк Мексики, Министерство финансов и государственного кредита, Национальный институт географии, статистики и информатики (INEGI).

Регулярно проверяя приложение, трейдеры остаются в курсе выхода всех основных показателей мексиканской экономики, от решения Банка Мексики по процентной ставке до валовых инвестиций в основной капитал.


Мексика теперь представлена в экономическом календаре Tradays

Календарь доступен в виде онлайн-версии на сайте и в виде мобильного приложения:

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

Установить календарь >>


 
Alain Verleyen:

Для трейдеров

Пользовательский интерфейс MT5

  • Если вы не можете просмотреть вкладку с календарем, возможно, это выбор вашего брокера:

Анализ

Для разработчиков

  • Хорошая демонстрация использования экономических событий календаря из кода.
  • Документация по использованию объектов в календаре (см. OBJ_EVENT).

Большое спасибо за обзор! Однако, к сожалению, я не могу заставить видео воспроизводиться. Подскажите, пожалуйста, как показать на графике только выбранные события календаря?

All about Calendar tab and Macro Economic Events.
All about Calendar tab and Macro Economic Events.
  • 2013.03.17
  • www.mql5.com
For traders MT5 user interface If you can't view the calendar tab, probably it's a choice a your broker : Video : How to delete Calendar Events fro...
 

Календарь - скрипт для MetaTrader 5

Для чего можно применить. Например, для последующей загрузки в массив дат и отключения/включения торговли перед выходом новостей. Код написан для себя и предоставлен в образовательных целях. Поэтому особых удобств не ждите. Но вы всегда можете посмотреть на код и понять, как получаются время и важность события.

От автора -

Форум о трейдинге, автоматических торговых системах и тестировании торговых стратегий

Новостной индикатор для MT5

Дмитрий Ананьев, 2020/01/11 00:36

Теперь индикаторы не нужны. Встроенный календарь можно запихнуть прямо в советник. Недавно я выложил скрипт ( https://www.mql5.com/en/code/27416). Он пишет в файл даты новостей силой 2 и 3. Для одного символа. Символ можно задать в виде EU, US, AU и т.д. Где-то должен быть полный список валют. Справка должна быть прочитана.