@Almaz При первом запуске функций copy_xxx_xxx, когда терминал не запускался какое то время, функции сразу возвращают имеющийся результат с пропуском истории, не дожидаясь синхронизации подкачки истории. То есть первый вызов функций возвращает результат с пропущенной историей. Только на последующих вызовах будет возвращён корректный результат, когда история подкачается. Возможно ли подправить этот момент? И функции copy_xxx_xxx дожидались подкачки истории при первом вызове.
@Almaz При первом запуске функций copy_xxx_xxx, когда терминал не запускался какое то время, функции сразу возвращают имеющийся результат с пропуском истории, не дожидаясь синхронизации подкачки истории. То есть первый вызов функций возвращает результат с пропущенной историей. Только на последующих вызовах будет возвращён корректный результат, когда история подкачается. Возможно ли подправить этот момент? И функции copy_xxx_xxx дожидались подкачки истории при первом вызове.
Почитайте раздел Организация доступа к данным, библиотека Python здесь не причем. Это стандартное поведение, вам нужно обрабатывать такие ситуации и запрашивать повтороно историю после того, как терминал подкачает её.
Это разовый случай, поэтому не является критически значимым. Вы всегда можете поддерживать имеющуюся историю в актуальном состоянии, если работаете с терминалом из скрипта постоянно.
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
Почитайте раздел Организация доступа к данным, библиотека Python здесь не причем. Это стандартное поведение, вам нужно обрабатывать такие ситуации и запрашивать повтороно историю после того, как терминал подкачает её.
Это разовый случай, поэтому не является критически значимым. Вы всегда можете поддерживать имеющуюся историю в актуальном состоянии, если работаете с терминалом из скрипта постоянно.
Я читал этот раздел, он относится к Mql5. Или вы намекаете, что нужно организовать CheckLoadHistory потому же принципу? Почему не ввести эту функцию как штатную? Для Mql и Py библиотеки.
А вообще странно, что вы допускаете в Copy функции получение некорректных данных, не дожидаясь подкачки истории, отдаёте результат.
Я читал этот раздел, он относится к Mql5. Или вы намекаете, что нужно организовать CheckLoadHistory потому же принципу? Почему не ввести эту функцию как штатную? Для Mql и Py библиотеки.
А вообще странно, что вы допускаете в Copy функции получение некорректных данных, не дожидаясь подкачки истории, отдаёте результат.
У тех кто работает в MQL5 вопросы раздела Организация доступа к данным, не являются чем-то особенным. Мы этот раздел изучили вдоль и поперёк. И используем.
Почему Вы думаете, что для Python должно быть по другому?
Всё таки основное ядро - это MQL5 и его нужно знать. И только потом применять Python.
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
Я читал этот раздел, он относится к Mql5. Или вы намекаете, что нужно организовать CheckLoadHistory потому же принципу? Почему не ввести эту функцию как штатную? Для Mql и Py библиотеки.
А вообще странно, что вы допускаете в Copy функции получение некорректных данных, не дожидаясь подкачки истории, отдаёте результат.
Библиотека Python позволяет запрашивать данные из терминала MetaTrader 5 на общих основаниях, независимо от того, как прозошел запрос — вручную, через MQL5 или скриптом из Python.
Вся логика и организации работы с данными ложиться на разработчика MQL5-программ и скриптов на Python.
Подключил библиотеки, связь python с Mt5 есть, получаю информацию о счете но котировки никак не подгружаются. Подскажите кто знает.
Версия Python 3.7.6
from datetime import datetime
import MetaTrader5 as mt5
# выведем информацию о версии MetaTrader 5
print(mt5.version())
# установим подключение к терминалу MetaTrader 5if not mt5.initialize():
print("initialize() failed, error code =",mt5.last_error())
quit()
# подключимся к торговому счету без указания пароля и сервера
account=17245465
authorized=mt5.login(account) # пароль будет взят из базы терминала, если указано помнить данные для подключения
if authorized:
# выведем данные о торговом счете как есть
print(mt5.account_info())
# выведем данные о торговом счете в виде списка
print("Show account_info()._asdict():")
account_info_dict = mt5.account_info()._asdict()
for prop in account_info_dict:
print(" {}={}".format(prop, account_info_dict[prop]))
else:
print("failed to connect at account #{}, error code: {}".format(account, mt5.last_error()))
# запросим статус и параметры подключения
print(mt5.terminal_info())
# получим информацию о версии MetaTrader 5
print(mt5.version())
x= mt5.symbols_total()
print('количество всех финансовых инструментов в терминале MetaTrader 5=', x)
# получим все символы
symbols=mt5.symbols_get()
print('symbols=', symbols)
# получим бары с разных инструментов разными способами
eurusd_rates = mt5.copy_rates_from("EURUSD", mt5.TIMEFRAME_M30, datetime(2020, 1, 28, 13), 1000)
# DATA
print('eurusd_rates', eurusd_rates )
# завершим подключение к MetaTrader 5
mt5.shutdown()
Признак отрисовки ценового графика. Если установлено значение false, то отключается отрисовка любых атрибутов ценового графика и устраняются все отступы по краям графика: шкалы времени и цены, строка быстрой навигации, метки событий Календаря, значки сделок, тултипы индикаторов и баров, подокна индикаторов, гистограммы объёмов и т.д. Значение...
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
@Almaz
При первом запуске функций copy_xxx_xxx, когда терминал не запускался какое то время,
функции сразу возвращают имеющийся результат с пропуском истории, не дожидаясь синхронизации подкачки истории.
То есть первый вызов функций возвращает результат с пропущенной историей.
Только на последующих вызовах будет возвращён корректный результат, когда история подкачается.
Возможно ли подправить этот момент? И функции copy_xxx_xxx дожидались подкачки истории при первом вызове.
copy_ticks или copy_rates? какой билд терминала?
@Almaz
При первом запуске функций copy_xxx_xxx, когда терминал не запускался какое то время,
функции сразу возвращают имеющийся результат с пропуском истории, не дожидаясь синхронизации подкачки истории.
То есть первый вызов функций возвращает результат с пропущенной историей.
Только на последующих вызовах будет возвращён корректный результат, когда история подкачается.
Возможно ли подправить этот момент? И функции copy_xxx_xxx дожидались подкачки истории при первом вызове.
Почитайте раздел Организация доступа к данным, библиотека Python здесь не причем. Это стандартное поведение, вам нужно обрабатывать такие ситуации и запрашивать повтороно историю после того, как терминал подкачает её.
Это разовый случай, поэтому не является критически значимым. Вы всегда можете поддерживать имеющуюся историю в актуальном состоянии, если работаете с терминалом из скрипта постоянно.
copy_ticks или copy_rates? какой билд терминала?
Использовал copy_rates, но думаю что с copy_ticks то же самое будет, но не проверял.
Билд 2470
Почитайте раздел Организация доступа к данным, библиотека Python здесь не причем. Это стандартное поведение, вам нужно обрабатывать такие ситуации и запрашивать повтороно историю после того, как терминал подкачает её.
Это разовый случай, поэтому не является критически значимым. Вы всегда можете поддерживать имеющуюся историю в актуальном состоянии, если работаете с терминалом из скрипта постоянно.
Я читал этот раздел, он относится к Mql5.
А вообще странно, что вы допускаете в Copy функции получение некорректных данных, не дожидаясь подкачки истории, отдаёте результат.Или вы намекаете, что нужно организовать CheckLoadHistory потому же принципу?
Почему не ввести эту функцию как штатную? Для Mql и Py библиотеки.
Я читал этот раздел, он относится к Mql5.
А вообще странно, что вы допускаете в Copy функции получение некорректных данных, не дожидаясь подкачки истории, отдаёте результат.Или вы намекаете, что нужно организовать CheckLoadHistory потому же принципу?
Почему не ввести эту функцию как штатную? Для Mql и Py библиотеки.
У тех кто работает в MQL5 вопросы раздела Организация доступа к данным, не являются чем-то особенным. Мы этот раздел изучили вдоль и поперёк. И используем.
Почему Вы думаете, что для Python должно быть по другому?
Всё таки основное ядро - это MQL5 и его нужно знать. И только потом применять Python.
Я читал этот раздел, он относится к Mql5.
А вообще странно, что вы допускаете в Copy функции получение некорректных данных, не дожидаясь подкачки истории, отдаёте результат.Или вы намекаете, что нужно организовать CheckLoadHistory потому же принципу?
Почему не ввести эту функцию как штатную? Для Mql и Py библиотеки.
Библиотека Python позволяет запрашивать данные из терминала MetaTrader 5 на общих основаниях, независимо от того, как прозошел запрос — вручную, через MQL5 или скриптом из Python.
Вся логика и организации работы с данными ложиться на разработчика MQL5-программ и скриптов на Python.
Добрый день
А есть вариант подключиться к терминалу через PowerShell? если кто знает как, буду благодарен за информацию
Опыта с питоном нет, поэтому хотелось бы использовать то, что лучше знаю))
Доброго дня!
Подключил библиотеки, связь python с Mt5 есть, получаю информацию о счете но котировки никак не подгружаются. Подскажите кто знает.
Версия Python 3.7.6
Результат:
Доброго дня!
Подключил библиотеки, связь python с Mt5 есть, получаю информацию о счете но котировки никак не подгружаются. Подскажите кто знает.
Версия Python 3.7.6
Результат:
Пожалуйста вставляйте код правильно (используйте кнопку
)
Пожалуйста вставляйте код правильно (используйте кнопку )
Спасибо за оформление, учту.