В индикаторе через CopyTime() делаю запрос на получение данных с месячного таймфрейма. Если график открывается в первый раз, то получить менее 300 баров по символу GBPCHF заняло 117 секунд.
В справке есть такое упоминание, что данные любого ТФ подготавливаются независимо от данных других ТФ:
Непонятно, почему так много времени требуется для копирования 300 баров другого ТФ. Для индикатора в истории часто нужны только значения баров OLHC и не требуется внутренняя вложенность от других ТФ. Как-то можно ускорить этот момент? Этот же код в МТ4 выполняется менее чем за 0,05 сек.
Появился вопрос. Как программно инициировать загрузку/обновление встроенногоЭкономического календаряв терминале MT5 ?
Столкнулся с такой проблемой. При включении терминала, если на график заранее установлен советник использующий Экономический календарь, не всегда доступен список событий. Бывает что его вообще нет. Экономический календарь появляется и считывается советником только после того как физически открываешь вкладку "Календарь" в окне "Инструменты". И в момент открытия, списка событий Календаря там нет, или он крайне неполный. Он подгружается только после открытия вкладки, буквально на глазах.
В советнике я сделал постоянный запрос (на каждом тике) функций CalendarEventByCurrency и CalendarValueHistoryByEvent, пока список новостей пуст. И в процессе работы советника список появляется только тогда, когда открываешь вкладку "Календарь". То что я описал выше. Вот кусок кода:
...
RS 016:53:02.834 ePositiveNight (GBPAUD,M5) There are 0 news items on the GBPAUD
JS 016:53:02.843 ePositiveNight (USDCHF,M5) There are 0 news items on the USDCHF
LR 016:53:02.876 ePositiveNight (EURUSD,M5) There are 0 news items on the EURUSD
IR 016:53:02.934 ePositiveNight (EURAUD,M5) There are 0 news items on the EURAUD
PQ 016:53:02.951 ePositiveNight (NZDUSD,M5) There are 0 news items on the NZDUSD
FQ 016:53:02.957 ePositiveNight (GBPJPY,M5) There are 0 news items on the GBPJPY
QP 016:53:02.970 ePositiveNight (EURJPY,M5) There are 0 news items on the EURJPY
QP 016:53:03.106 ePositiveNight (GBPUSD,M5) There are 0 news items on the GBPUSD
MO 016:53:03.209 ePositiveNight (GBPCAD,M5) There are 0 news items on the GBPCAD
QO 016:53:03.241 ePositiveNight (USDCAD,M5) There are 0 news items on the USDCAD
KN 016:53:03.292 ePositiveNight (USDJPY,M5) There are 0 news items on the USDJPY
LN 016:53:03.312 ePositiveNight (EURGBP,M5) There are 0 news items on the EURGBP
FM 016:53:03.323 ePositiveNight (NZDCHF,M5) There are 0 news items on the NZDCHF
QM 016:53:03.403 ePositiveNight (AUDUSD,M5) There are 0 news items on the AUDUSD
JL 016:53:03.633 ePositiveNight (GBPAUD,M5) There are 0 news items on the GBPAUD
GL 016:53:03.638 ePositiveNight (USDCHF,M5) There are 0 news items on the USDCHF
FK 016:53:03.651 ePositiveNight (EURUSD,M5) There are 0 news items on the EURUSD
JK 016:53:03.718 ePositiveNight (GBPJPY,M5) There are 0 news items on the GBPJPY
EJ 016:53:03.726 ePositiveNight (EURJPY,M5) There are 0 news items on the EURJPY
MJ 016:53:03.740 ePositiveNight (EURAUD,M5) There are 0 news items on the EURAUD
GI 016:53:03.858 ePositiveNight (GBPUSD,M5) There are 0 news items on the GBPUSD
EI 016:53:03.957 ePositiveNight (GBPCAD,M5) There are 0 news items on the GBPCAD
FH 016:53:04.014 ePositiveNight (USDCAD,M5) There are 0 news items on the USDCAD
OH 016:53:04.064 ePositiveNight (USDJPY,M5) There are 0 news items on the USDJPY
IG 016:53:04.154 ePositiveNight (EURGBP,M5) There are 0 news items on the EURGBP
CG 016:53:04.169 ePositiveNight (NZDCHF,M5) There are 0 news items on the NZDCHF
RF 016:53:04.191 ePositiveNight (AUDUSD,M5) There are 0 news items on the AUDUSD
QE 016:53:04.472 ePositiveNight (GBPAUD,M5) There are 45 news items on the GBPAUD
ME 016:53:04.547 ePositiveNight (GBPJPY,M5) There are 31 news items on the GBPJPY
NS 016:53:04.547 ePositiveNight (NZDUSD,M5) There are 83 news items on the NZDUSD
OE 016:53:04.583 ePositiveNight (EURAUD,M5) There are 101 news items on the EURAUD
OH 016:53:04.586 ePositiveNight (EURJPY,M5) There are 87 news items on the EURJPY
EH 016:53:05.270 ePositiveNight (USDCAD,M5) There are 86 news items on the USDCAD
KF 016:53:05.270 ePositiveNight (GBPUSD,M5) There are 95 news items on the GBPUSD
IH 016:53:05.300 ePositiveNight (USDJPY,M5) There are 80 news items on the USDJPY
NP 016:53:05.364 ePositiveNight (EURGBP,M5) There are 102 news items on the EURGBP
IS 016:53:05.393 ePositiveNight (GBPCAD,M5) There are 37 news items on the GBPCAD
JI 016:53:05.393 ePositiveNight (AUDUSD,M5) There are 94 news items on the AUDUSD
RS 016:53:05.484 ePositiveNight (NZDCHF,M5) There are 19 news items on the NZDCHF
RE 016:53:05.980 ePositiveNight (EURUSD,M5) There are 151 news items on the EURUSD
NI 016:53:06.724 ePositiveNight (USDCHF,M5) There are 80 news items on the USDCHF
JQ 016:53:23.697 ePositiveNight (AUDNZD,M5) There are 33 news items on the AUDNZD
MI 016:53:43.891 ePositiveNight (AUDCAD,M5) There are 36 news items on the AUDCAD
Новости подгружаются только после того, как откроешь в терминале вкладку "Календарь".
Я надеюсь, что в следующем обновлении для мобильных устройств (ios) MT5 должен дать "магический номер" для информации о сделках и позициях.
Невозможно следить за сделками в мобильном, когда вы используете несколько советников с разными магическими номерами.
Попробуйте использовать комментарий для каждой сделки.
В индикаторе через CopyTime() делаю запрос на получение данных с месячного таймфрейма. Если график открывается в первый раз, то получить менее 300 баров по символу GBPCHF заняло 117 секунд.
Видео: https://drive.google.com/file/d/10KW5Usa1ZVONRghSZCHuji4h3CDQVma-/view?usp=sharing
В справке есть такое упоминание, что данные любого ТФ подготавливаются независимо от данных других ТФ:
Непонятно, почему так много времени требуется для копирования 300 баров другого ТФ. Для индикатора в истории часто нужны только значения баров OLHC и не требуется внутренняя вложенность от других ТФ. Как-то можно ускорить этот момент? Этот же код в МТ4 выполняется менее чем за 0,05 сек.
Копируем по времени:
Если начальное время попало на несуществующий бар - было позднее открытие сессии, а это часто бывает НЕ по форекс-символам,
то функция возвращает -1, что не совсем логично. Более правильно возвращать ближайший найденный.
Доброго времени.
А где скачать последний билд:
MetaTrader 5 build 3280
По ссылке только мартовский... 2361... :-(
Доброго времени.
А где скачать последний билд:
MetaTrader 5 build 3280
По ссылке только мартовский... 2361... :-(
Доброго времени.
А где скачать последний билд:
MetaTrader 5 build 3280
По ссылке только мартовский... 2361... :-(
32-разрядный уже давно не обновляется...
Спасибо за быстрый ответ.
Это засада...
Появился вопрос. Как программно инициировать загрузку/обновление встроенного Экономического календаря в терминале MT5 ?
Столкнулся с такой проблемой. При включении терминала, если на график заранее установлен советник использующий Экономический календарь, не всегда доступен список событий. Бывает что его вообще нет. Экономический календарь появляется и считывается советником только после того как физически открываешь вкладку "Календарь" в окне "Инструменты". И в момент открытия, списка событий Календаря там нет, или он крайне неполный. Он подгружается только после открытия вкладки, буквально на глазах.
В советнике я сделал постоянный запрос (на каждом тике) функций CalendarEventByCurrency и CalendarValueHistoryByEvent, пока список новостей пуст. И в процессе работы советника список появляется только тогда, когда открываешь вкладку "Календарь". То что я описал выше. Вот кусок кода:
При включении терминала получаю это:
Новости подгружаются только после того, как откроешь в терминале вкладку "Календарь".
Функция
Действие
CalendarCountryById
Получает описание страны по её идентификатору
CalendarEventById
Получает описание события по его идентификатору
CalendarValueById
Получает описание значения события по его идентификатору
CalendarCountries
Получает массив описаний стран, доступных в Календаре
CalendarEventByCountry
Получает массив описаний всех событий, доступных в Календаре, по указанному коду страны
CalendarEventByCurrency
Получает массив описаний всех событий, доступных в Календаре, по указанной валюте
CalendarValueHistoryByEvent
Получает массив значений по всем событиям на заданном диапазоне времени по идентификатору события
CalendarValueHistory
Получает массив значений по всем событиям на заданном диапазоне времени с фильтром по стране и/или валюте
CalendarValueLastByEvent
Получает массив значений события по его ID c момента состояния базы Календаря с заданным change_id
CalendarValueLast
Получает массив значений по всем событиям с фильтрацией по стране и/или валюте с момента состояния базы Календаря с заданным change_id
P.S. Хорошо бы добавить функцию типа CalendarUpdating, которая обновляет/загружает события в календаре.
mt4 1353 параметр scale при изменении мышью перестает работать. https://www.youtube.com/watch?v=CbxqyymZFys&feature=youtu.be