Как быстро взять текущие цены 1000 инструментов у брокера.

 

1) Если у меня открыто 40 инструментов - код будет брать данные уже скачанные или каждый раз будет запрашивать данные с брокера. Эти команды:  SymbolInfoDouble и CopyRates

2) Если у меня открыто 40 инструментов, то я ведь смогу взять информацию по 1000 другим инструментам от брокера ?

3) Как можно быстро взять только текущие цены от 1000 инструментов ? Надо за минуту собрать их все хотя бы. Это реально ? И делать это всегда, каждую минуту. или брокеры заблочат ? 


Идея такая

1) Одна MT собирает постоянно историю 1000 инструментов - тут скорость не нужна. нужны только H1 данные. Поэтому с этим проблем нет.

2) Вторая МТ собирает постоянно текущие цены - за минуту надо собрать все 1000. Была бы какая-нибудь команда которая просто берет все последние цены всех инструментов брокера. Без 1000 выполнений SymbolInfoDouble .Потянет ли брокер за секунду 1000 SymbolInfoDouble  ?

3) Третья Python или PHP или Rust или всё что угодно, спокойно анализирует графики отдельно с приятным html интерфейсом и раздает команды MT на ордера и прочие . С этим проблем нет.


По уму конечно это всё можно делать через платные API тикеров. но они платные и Real time стоит дорого. Поэтому хочется делать через MT - бесплатно и real time .

Проблема не в скорости анализа, а в скорости скачивания кучи данных . 

 
andreysneg:

1) Если у меня открыто 40 инструментов - код будет брать данные уже скачанные или каждый раз будет запрашивать данные с брокера. Эти команды:  SymbolInfoDouble и CopyRates

2) Если у меня открыто 40 инструментов, то я ведь смогу взять информацию по 1000 другим инструментам от брокера ?

3) Как можно быстро взять только текущие цены от 1000 инструментов ? Надо за минуту собрать их все хотя бы. Это реально ? И делать это всегда, каждую минуту. или брокеры заблочат ? 


Идея такая

1) Одна MT собирает постоянно историю 1000 инструментов - тут скорость не нужна. нужны только H1 данные. Поэтому с этим проблем нет.

2) Вторая МТ собирает постоянно текущие цены - за минуту надо собрать все 1000. Была бы какая-нибудь команда которая просто берет все последние цены всех инструментов брокера. Без 1000 выполнений SymbolInfoDouble .Потянет ли брокер за секунду 1000 SymbolInfoDouble  ?

3) Третья Python или PHP или Rust или всё что угодно, спокойно анализирует графики отдельно с приятным html интерфейсом и раздает команды MT на ордера и прочие . С этим проблем нет.


По уму конечно это всё можно делать через платные API тикеров. но они платные и Real time стоит дорого. Поэтому хочется делать через MT - бесплатно и real time .

Проблема не в скорости анализа, а в скорости скачивания кучи данных . 

Думаю, за такое точно заблочат.

 

Почитайте тут . Там указано ограничение в 5000 инструментов.

  • Если символ скрыт в окне "Обзор рынка", данные по нему невозможно использовать в MQL5-программах и тестере стратегий.
  • В обзор рынка можно добавить не более 5000 торговых инструментов.

Чарты открывать ненужно - только добавить в обзор рынка и работать с приходящими ценами. Если нужна глубокая история, то её можно предварительно скачать.

Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Для разработки торговых систем в платформу встроен собственный язык программирования MetaQuotes Language 5 ( MQL5 ), среда разработки MetaEditor и...
 

Делал тесты.

Чтоб массово собирать текущие цены приходится делать так.

1) Добавить инструмент  

2) Sleep 100 - без этого ошибка . паралельно грузит чтоли ... 

3) Берем цену - SymbolInfoDouble(ticker, SYMBOL_BID) 

4) Удаляем инструмент

Добавляет и удаляет инструмент если он не подключен.

Итого 25 секунд на 250 инструментов вышло.  1000 значит минуты 2е.

У разных брокеров разные лимиты на одновременное подключение . 100 обычно ( из тех что я пользую ). 

Если инструменты уже подключены ( до 100 ) то мгновенное чтение цен.

Как изврат вариант - запустить 10 метатрейдеров, 10 аккаунтов, 10 IP. И  в каждом по 100 добавить ))) будет мгновенно 1000.  

Такое скорости стоят за 200 баксов в месяц если через API делать.