- Instalar Python y el paquete MetaTrader5
- Visión general de las funciones del paquete MetaTrader5 para Python
- Conectar un script Python al terminal y la cuenta
- Comprobación de errores: last_error
- Obtener información sobre una cuenta de trading
- Obtener información sobre el terminal
- Obtener información sobre instrumentos financieros
- Suscripción a los cambios en el libro de órdenes
- Leer cotizaciones
- Leer historial de ticks
- Calcular requisitos de margen y evaluar beneficios
- Comprobación y envío de una orden de trading
- Obtener el número y la lista de órdenes activas
- Obtener el número y la lista de posiciones vacantes
- Leer el historial de órdenes y transacciones
Leer historial de ticks
La API de Python incluye dos funciones para leer el historial de ticks reales: copy_ticks_from con una indicación del número de ticks a partir de la fecha especificada, y copy_ticks_range para todos los ticks del período especificado.
Ambas funciones tienen cuatro parámetros necesarios sin nombre, el primero de los cuales especifica el símbolo. El segundo parámetro especifica el tiempo inicial de los ticks solicitados. El tercer parámetro indica si se pasa el número requerido de ticks (en la función copy_ticks_from) o el tiempo final de ticks (en la función copy_ticks_range).
El último parámetro determina qué tipo de ticks se devolverán. Puede contener uno de los siguientes indicadores (COPY_TICKS):
Identificador |
Descripción |
---|---|
COPY_TICKS_ALL |
Todos los ticks |
COPY_TICKS_INFO |
Ticks que contienen cambios en los precios de compra y/o venta |
COPY_TICKS_TRADE |
Ticks que contienen cambios en el último precio y/o volumen (Volume) |
Ambas funciones devuelven los ticks como un array numpy.ndarray (del paquete numpy) con columnas nombradas time, bid, ask, last y flags. El valor del campo flags es una combinación de banderas de bits de la enumeración TICK_FLAG: cada bit significa un cambio en el campo correspondiente con la propiedad tick.
Identificador |
Propiedad tick modificada |
---|---|
TICK_FLAG_BID |
Precio de compra (Bid) |
TICK_FLAG_ASK |
Precio de venta (Ask) |
TICK_FLAG_LAST |
Último precio |
TICK_FLAG_VOLUME |
Volumen |
TICK_FLAG_BUY |
Último precio de compra |
TICK_FLAG_SELL |
Último precio de venta |
numpy.ndarray copy_ticks_from(symbol, date_from, count, flags)
La función copy_ticks_from solicita ticks a partir de la hora especificada (date_from) en la cantidad dada (count).
La función es un análogo de CopyTicks.
numpy.array copy_ticks_range(symbol, date_from, date_to, flags)
La función copy_ticks_range permite obtener los ticks para el intervalo de tiempo especificado.
La función es un análogo de CopyTicksRange.
En el siguiente ejemplo (MQL5/Scripts/MQL5Book/Python/copyticks.py), generamos una página web interactiva con un gráfico de tick (nota: aquí se utiliza el paquete plotly; para instalarlo en Python, ejecute el comando pip install plotly).
import MetaTrader5 as mt5
|
He aquí cuál podría ser el resultado:
Gráfico con ticks recibidos en un script Python
La página web copyticks.html se genera en el subdirectorio MQL5/Files/MQL5Book.