GetHistoryAllSymbols

0

Накидываете данный советник на любой график и ждете (процесс будете видеть), пока история по всем символам из "Обзора рынка" будет закачана.

Входные параметры:

Pause - время в секундах на технические нужды (мог бы не выносить во входные параметры, но решил дать штатную возможность менять)

period - таймфрэйм, по которому будет загружена история.
FastMethod - выбор метода загрузки истории (подробности ниже).
Медленныйй метод загрузки истории ( FastMethod = FALSE ):

- закачивание истории происходит эмулированием нажатия клавиши "HOME".

Быстрый метод загрузки истории ( FastMethod = TRUE ):

- идея озвучена здесь. Добавляется бар со временем 1970.01.01 00:00 и запускается синхронизация текущей истории с торговым сервером (Menu->Charts->Refresh).

- Примерно в 15 (у меня) раз быстрее (время работы советника) медленного. Скорость закачивания зависит только от скорости соединения с торговым сервером. Закачивание всей доступной истории производится самим терминалом (не советником), поэтому закачка может продолжаться и после завершения работы советника.
Замечания:

- Необходимо разрешение на использование DLL.

- История закачивается непосредственно с торгового сервера, и ее глубина зависит только от его настроек (задается на стороне брокера/ДЦ).

- Быстрый метод будет работать корректно, если за текущую сессию терминала не было обращений к истории, которую собираетесь выкачивать. Поэтому рекомендуется применять данный метод на таймфрэймах, к которым не обращались за текущую сессиию открытого терминала (можно еще почистить папку deleted). Например, сразу после установки терминала.
- По окончании работы советника он сам себя выгружает.
- Если вы прерываете работу советника (штатно или нет), то для корректной его работы в будущем убедитесь, что среди глобальных переменных (F3) нет созвучных с названием советника.
P.S.
Для мультивалютного анализа необходим был инструмент, который бы мог быстро закачать историю по десяткам интересующих символов.

183

Комментарии

MQL4 - язык программирования торговых стратегий

Язык позволяет писать собственные программы-эксперты (Expert Advisors), автоматизирующие управление торговыми процессами и идеально подходящие для реализации собственных торговых стратегий. Кроме того, на MQL4 можно создавать собственные технические индикаторы (Custom Indicators), скрипты (Scripts) и библиотеки функций (Libraries).