Grupo de usuarios de MetaTrader 5 Python - cómo utilizar Python en Metatrader - página 21

 

https://www.mql5.com/ru/docs/integration/python_metatrader5/mt5copyratesrange_py

El ejemplo utiliza una función diferente, un error:

# obtener barras con USDJPY M5 a partir del 01.04.2019 en la zona horaria UTC
rates=MT5CopyRatesFrom("USDJPY",MT5_TIMEFRAME_M5,utc_from, utc_to)

esperado: MT5CopyRatesRange()

Документация по MQL5: Интеграция / MetaTrader для Python / MT5CopyRatesRange
Документация по MQL5: Интеграция / MetaTrader для Python / MT5CopyRatesRange
  • www.mql5.com
# создадим объекты datetime в таймзоне UTC, чтобы не применялось смещение локальной таймзоны                             MT5Rate(time=datetime.datetime(2019, 4, 1, 0, 0),  open=110.994, low=110.994, high=110.966, close=110.966, tick_volume=12, spread=22, real_volume=0...
 

Para convertir la fecha-hora a una zona horaria específica, la ayuda sugiere utilizar la fecha-hora UTC

Sin embargo, esto no afecta a nada. Al establecer cualquier zona horaria, se toma la hora del terminal (en mi caso es GMT+2)

 
Rashid Umarov:
¿Cuál es el número de construcción?

pip install --upgrade MetaTrader5

Requisito ya actualizado: MetaTrader5 en c:\works\mt_websocket_server\\\m env\lib\site-packages (5.0.8)



 
¿podemos trasladar todo a un solo lugar?
MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
  • 2019.11.25
  • www.mql5.com
Мы готовим модуль MetaTrader 5 для Python, аналогичную R...
 
Maxim Dmitrievsky:
¿Podemos trasladarlo todo a un solo lugar?

¿Cuál es? ¿Todo el hilo de discusión?

 
Дмитрий Прокопьев:

¿Cuál es? ¿Todo el hilo de discusión?

Sí, para tener todo el asunto del pitón en un solo lugar.

Los moderadores lo moverán.

 
Maxim Dmitrievsky:

Sí, para tener todo sobre python en un solo lugar.

Los moderadores lo moverán.

Bien, si pueden moverlo, que lo muevan. Re-crear, no realmente ...
 

Foro sobre trading, sistemas de trading automatizados y pruebas de estrategias de trading

MetaTrader5 python lib y MT5CopyRatesFrom - ¿extrañeza o error?

Dmitry Prokopyev, 2019.11.30 10:59

Hola a todos.

Me encontré con esta rareza en los datos devueltos por MT5CopyRatesRange y otras funciones.

from datetime import datetime
from MetaTrader5 import *
import pandas as pd
import json

from pytz import timezone
utc_tz = timezone('Etc/UTC')
 
MT5Initialize()
MT5WaitForTerminal()

# rates = MT5CopyRatesRange("EURUSD", MT5_TIMEFRAME_H1, datetime(2018,4,3), datetime(2018,4,4))
rates = MT5CopyRatesFrom("EURUSD", MT5_TIMEFRAME_H1, datetime(2018,4,3,17, tzinfo=utc_tz), 5)

MT5Shutdown()
rates_frame = pd.DataFrame(rates, columns=['time', 'open', 'low', 'high', 'close', 'tick_volume', 'spread', 'real_volume'])
print(rates_frame)
print(rates)

Todo es trivial, pero la salida que tenemos:

                 time     open      low     high    close  tick_volume  spread  real_volume
0 2018-04-03 13:00:00  1.23073  1.23154  1.22861  1.22882         5090       1            0
1 2018-04-03 14:00:00  1.22882  1.23057  1.22863  1.23018         6112       1            0
2 2018-04-03 15:00:00  1.23018  1.23149  1.22919  1.22957         6691       1            0
3 2018-04-03 16:00:00  1.22957  1.22989  1.22557  1.22580        11956       1            0
4 2018-04-03 17:00:00  1.22580  1.22746  1.22536  1.22730        10275       1            0
(MT5Rate(time=datetime.datetime(2018, 4, 3, 13, 0), open=1.2307299999999999, low=1.23154, high=1.22861, close=1.22882, tick_volume=5090, spread=1, real_volume=0), 
MT5Rate(time=datetime.datetime(2018, 4, 3, 14, 0), open=1.22882, low=1.23057, high=1.2286299999999999, close=1.23018, tick_volume=6112, spread=1, real_volume=0), 
MT5Rate(time=datetime.datetime(2018, 4, 3, 15, 0), open=1.23018, low=1.23149, high=1.22919, close=1.22957, tick_volume=6691, spread=1, real_volume=0), 
MT5Rate(time=datetime.datetime(2018,4, 3, 16, 0), open=1.22957, low=1.22989, high=1.22557, close=1.2258, tick_volume=11956, spread=1, real_volume=0), 
MT5Rate(time=datetime.datetime(2018, 4, 3, 17, 0), open=1.2258, low=1.22746, high=1.22536, close=1.2273, tick_volume=10275, spread=1, real_volume=0))

Quiero llamar su atención sobre:

MT5Rate(time=datetime.datetime(2018,4, 3, 16, 0), open=1.22957, low=1.22989, high=1.22557, close=1.2258, tick_volume=11956, spread=1, real_volume=0)

ir a la terminal, ver baja/alta para este marco:

Vemos quebajo=1.22557,alto=1.22989

¿La pregunta es un error o las teclas de la MT5Rate son de alguna manera configurables?


MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
  • 2019.11.25
  • www.mql5.com
Мы готовим модуль MetaTrader 5 для Python, аналогичную R...
 
Movido ahora a este hilo.
Razón de la queja: