Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вопрос: почему, если сделка попадает в этот интервал, она не видна через Python?
Проверка истории при помощи MQL5:
результат:
Для начала нужно убедиться, что в обоих случаях запрашиваются одинаковые интервалы.
В Python по умолчанию даты приводятся к таймзоне локального компьютера.
Нужно явно выбрать эту сделку и вывести её время.
Для начала нужно убедиться, что в обоих случаях запрашиваются одинаковые интервалы.
В Python по умолчанию даты приводятся к таймзоне локального компьютера.
Нужно явно выбрать эту сделку и вывести её время.
В скрипте Python расширил диапазон:
и торговая история захватилась:
Время 16:35:26 такое же как и торговой истории терминала.
Выбрал принудительно сделку по тикету:
результат
То есть если расширить (сильно дату "ДО") или выбрать сделку напрямую по тикету видим одно и тоже время 16:35:26.
Остаётся вопрос
запрос от '2021-07-26 11:37:12.317743' сделка прошла в '2021-07-26 16:35:26' запрос до '2021-07-26 16:38:12.317743'
то есть сделка попадает между двумя датами, но эта сделка не выдаётся терминалом.
Как я вижу: модуль Python показывает нам одно время (от '2021-07-26 11:37:12.317743' до '2021-07-26 16:38:12.317743'), но в терминал пересылается совершенно другое время.
Все таки нужно читать справку, неловко даже отвечать
https://www.mql5.com/ru/docs/integration/python_metatrader5/mt5copyticksrange_py
Все таки нужно читать справку, неловко даже отвечать
https://www.mql5.com/ru/docs/integration/python_metatrader5/mt5copyticksrange_py
Справку читал,
так работает.
Просто у меня был вопрос: ПОЧЕМУ если я вижу распечатку от ... до ... на самом деле в терминал отправляется совершенно другое время?
Сейчас от 15:55:08 до 16:26:08 дл
распечатывает время. ТАк почему в терминал отсылается СОВЕРШЕННО чужое время? Что там внутри Python и какое там у него внутри представление времени - это никого не волнует, но если Python сам выдаёт распечатку от 15:55:08 до 16:26:08 , то почему в терминал отсылается совершенно другое время и ловится сделка от 19:23:27?
Это вся равно, что результат 2*2 распечатать как 4, но в переменную записать 6.
Я правильно понимаю: смещение все время будет? ( Документация по MQL5: Интеграция / MetaTrader для Python / copy_ticks_range )
Примечание
Да, применения смещения времени работает!
Сейчас открыл демо на Just2Trade-MT5 - последнее время на нём 18 часов 19 минут (на MetaQuotes-Demo 21 час 19 минут).
На Just2Trade-MT5 сделка была в 18:17 (это время торгового сервера)
Скрипт
выдал результат
- последняя сделка (в течении текущей минуты-двух) была отловлена!
Спасибо за наводку на справку.
Желающие могут ставить какие-то вопросы, как сделать что-то на Python в плане общения с терминалом МТ5 через библиотеку metatrader5, могу помочь, сам использую такое как основной способ торговли.
Нужно не забывать снимать галочку 'Disable automatic trading through the external Python API'
y
Если не снять эту галочку, то торговый python скрипт будет возвращать ошибку 10027
10027
TRADE_RETCODE_CLIENT_DISABLES_AT
Автотрейдинг запрещен клиентским терминалом