Python para el trading algorítmico - página 7

 

Configuración de MetaTrader 5 para Python



Configuración de MetaTrader 5 para Python

El video tutorial cubre el proceso de instalación de MetaTrader 5 para Python, que implica ingresar "pip install MetaTrader5" en el indicador de Anaconda y verificar la instalación ejecutando la función MT5Initialize() del paquete MT5 en Python.

MetaTrader 5 for Python setup
MetaTrader 5 for Python setup
  • 2019.04.21
  • www.youtube.com
MetaTrader 5 계좌만들기 : https://www.forextime.com/?form=JbbrANACONDA : https://www.youtube.com/watch?v=YGkps5nqpKk- in real, I prefer the Visual Studio Python...
 

Construyendo una aplicación web usando Python y Metatrader 5 con Streamlit




Construyendo una aplicación web usando Python y Metatrader 5 con Streamlit

Este video demuestra cómo crear un gráfico en tiempo real usando Python, Streamlit y Metatrader 5 que muestra las tasas de cambio de moneda y ofrece opciones de zoom y marco de tiempo. El presentador usa Pandas para importar marcos de datos y Plotly para trazar datos, agregando funciones para calcular los promedios móviles y el índice de fuerza relativa. El video incluye subprocesos para manejar el zoom y atajos de teclado para la interactividad. El presentador concluye el video explicando las diferentes funciones del código y agregando funcionalidad para dibujar objetos en gráficos, compartiendo el código en la descripción de la aplicación. El tutorial ofrece a los principiantes una introducción sencilla a la creación de gráficos financieros en tiempo real.

  • 00:00:00 En esta sección, el creador del video muestra un gráfico en tiempo real creado con MetaTrader 5, Python y Streamlit. El gráfico muestra los tipos de cambio de moneda y ofrece funciones para acercar, alejar y cambiar entre períodos de tiempo. El código de Python usa las bibliotecas Streamlit y MetaTrader 5, junto con Pandas para importar marcos de datos y Plotly para graficar. El gráfico incluye funciones para calcular la media móvil y el índice de fuerza relativa con parámetros ajustables para los usuarios. El creador también incluye subprocesos para manejar el zoom y atajos de teclado para la interactividad del usuario. En general, el tutorial ofrece una introducción para principiantes sobre el uso de estas bibliotecas para crear gráficos financieros en tiempo real.

  • 00:05:00 desea crear una aplicación web utilizando Python y MetaTrader 5 con Streamlit, deberá llamar a funciones específicas para proporcionar los datos necesarios. Para obtener los símbolos, puede usar la función "metatrader" para extraer sus nombres y luego devolverlos en formato de diccionario. La función de configuración del paquete conjunto le permite personalizar el diseño de la aplicación web, como el tamaño de la ventana y el título. Además, para calcular el lsi (índice de fuerza relativa), debe proporcionar a la función los datos y parámetros necesarios, como el marco de datos y el valor rsi, que luego se pueden trazar.

  • 00:10:00 En esta sección, el orador explica cómo creó variables globales y agregó el cálculo de LSI al marco de datos, y agregó el seguimiento para que los valores de RSI se puedan mostrar en el gráfico. También muestra cómo creó la función de bucle infinito, que actualiza el gráfico cada segundo, utilizando el marco de tiempo, el símbolo, las barras, la media móvil y los valores LSI. El marco de tiempo se obtiene de un diccionario y las barras se obtienen usando la función mt5.copy_rates_from_pos(). El gráfico no es una imagen sino una animación que se actualiza constantemente cada segundo.

  • 00:15:00 En esta sección, el presentador explica cómo convertir el marco de datos de barras para reducirlo más adelante y cómo convertir el tiempo en segundos para una mejor legibilidad. La sección también cubre el uso de un gráfico de dispersión y cómo calcular el promedio móvil para representarlo en el gráfico. El presentador actualiza el diseño de la figura con un rango fijo y un color de papel para fijar el gráfico en su lugar y presentar mejor los datos al usuario.

  • 00:20:00 En esta sección, el orador explica cómo hicieron ajustes en el tamaño de la ventana y el eje x para eliminar las brechas en el gráfico diario. También agregan una línea horizontal del último precio usando un simple
    línea de código. Luego, el orador demuestra la función de tecla al presionar que reduce o aumenta el gráfico cuando el usuario presiona la tecla menos o más. El código incluye múltiples funciones y marcadores de posición para mantener la aplicación simple y fácil de navegar.

  • 00:25:00 En esta sección, el orador explica el código para inicializar la conexión entre Metatrader5 y el gráfico, y el uso de un hilo de escucha de teclado para ajustar el tamaño del gráfico usando las teclas más y menos. También discuten el uso de la función `st.title` y la creación de dos columnas para los controles deslizantes y opciones a través de la función `st.connect`. El orador explica el uso de un marcador de posición para la columna uno y la selección de un promedio móvil a través de la función `sd.selectbox`. También mencionan la disponibilidad de opciones para elegir el símbolo o par de acciones, así como el marco de tiempo.

  • 00:30:00 En esta sección, el YouTuber concluye la demostración de creación de una aplicación web utilizando Python y MetaTrader 5 con Streamlit. Explicaron que la aplicación mostraba información sobre las señales comerciales y añadía funcionalidad para dibujar objetos en los gráficos. También señalaron las diferentes funciones y sus propósitos en el código, y terminaron compartiendo el código en la descripción de la aplicación. El YouTuber agradeció a sus espectadores por mirar y concluyó el video.
Building a web application using Python and Metatrader 5 with Streamlit
Building a web application using Python and Metatrader 5 with Streamlit
  • 2022.07.23
  • www.youtube.com
This is web application made with streamlit and metatrader 5 .************The code is here : https://github.com/azario0/metatrader5-streamlit************My l...
 

¡¡BOT COMERCIAL DE ÍNDICE SINTÉTICO DE PYTHON!! - RECIBIR DATOS DE VELAS DESDE MetaTrader 5



¡¡BOT COMERCIAL DE ÍNDICE SINTÉTICO DE PYTHON!! - RECIBIR DATOS DE VELAS DESDE MetaTrader 5

El video tutorial explica cómo crear un bot comercial de Python que recibe datos de velas de MetaTrader 5 (MT5). El presentador cubre el proceso paso a paso, incluida la configuración de MT5, la creación de una clase para el bot, la inicialización de variables, la creación de subprocesos y la definición de la estrategia comercial con parámetros simples de toma de ganancias y detención de pérdidas. El presentador también brinda instrucciones sobre el manejo de errores y la depuración del código, y concluye el video destacando la simplicidad del proceso y mencionando un próximo curso sobre el tema. El tutorial es perspicaz y fácil de usar para principiantes, lo que lo convierte en un excelente recurso para cualquier persona interesada en crear un bot comercial de Python.

  • 00:00:00 En esta sección del video, el presentador muestra cómo crear un bot de comercio de índices con Python explicando los pasos involucrados en el proceso. El primer paso es configurar la plataforma MetaTrader 5 habilitando el comercio algorítmico y permitiendo solicitudes web para el host local. Después de eso, el presentador abre Visual Studio Code y comienza a codificar creando una clase para el bot con un constructor que recibe parámetros para el borde del lote, el período de tiempo y el mercado. El bot funcionará con hilos que comparten información a través de un diccionario, por lo que el presentador inicializa una lista de hilos y un diccionario para almacenar los datos compartidos. Finalmente, se crea un evento para detener los hilos. El presentador proporciona más información y explicaciones en el repositorio de GitHub.

  • 00:05:00 En esta sección, el presentador inicializa todos los elementos necesarios, como variables de clase, constantes, colas, diccionarios y subprocesos para permitir que el bot comercial comparta datos entre subprocesos. El presentador también declara métodos para que el bot inicie y elimine los hilos. La función de eliminación de subprocesos establece el valor de la variable peel en 'matar' y luego llama a la función de unión para detener los subprocesos de forma segura. Finalmente, el presentador crea una función de espera que permite al usuario detener el bot presionando enter.

  • 00:10:00 En esta sección del video, el orador explica que crearán un programa Python para recibir datos de velas de MetaTrader 5 usando sockets. Comienzan creando un archivo llamado candles.py e importando las bibliotecas necesarias como socket y json para enviar y recibir datos a través de sockets. También definen la dirección y el puerto que se utilizará para la conexión del socket. Luego, el orador procede a crear una función para inicializar la conexión del socket utilizando sockets de servidor y cliente. Demuestran cómo vincular el socket a la dirección y el puerto especificados y escuchar las conexiones entrantes. La función luego acepta conexiones e imprime la dirección del cliente.

  • 00:15:00 En esta sección, el YouTuber explica cómo crear la función que tomará la información de las velas llamando a la función "thread_candles". Comienza creando una variable llamada "mensaje" para recibir información de MetaTrader5. Luego, se inicia el socket y se crea un bucle principal que funcionará hasta que el usuario presione enter, momento en el que se establece la píldora para matar. El ciclo comienza tomando el mensaje del socket de la conexión y decodificándolo. El código comprueba si el mensaje se puede imprimir y, si se puede, lo imprimirá. Después de mostrar cómo crear el archivo principal, el YouTuber pasa a explicar cómo crear un cliente dentro de MT5, pero enfatiza que no profundizarán, ya que no es un tutorial de MT5.

  • 00:20:00 En esta sección, el presentador brinda una guía paso a paso sobre cómo copiar el código de GitHub y usarlo para crear un bot comercial de Python que recibe datos de velas de MT5. El presentador explica que el código usa tokens para enviar información sobre cada tick y crea una cadena que contiene el formato JSON para los precios de apertura y cierre de cada vela. Para transformar la cadena en un diccionario, el presentador sugiere usar la función de carga json. El presentador también demuestra cómo iniciar y detener el bot y el cliente, y cómo eliminar el bot del menú del asesor experto.

  • 00:25:00 En esta sección, el videotutorial recorre la actualización de un diccionario con datos recibidos de MT5 y la creación de un hilo de pedidos. El diccionario actualizado se envía mediante la función self.data, que convierte los datos al formato correcto. El tutorial incluye la definición de macros para el bot, como el número de velas entre operaciones y parámetros de stop loss. La función de subproceso de órdenes recibe el evento de detención y los datos de negociación, y crea una estrategia de negociación básica con una simple toma de ganancias y detención de pérdidas. El tutorial también incluye el cierre de la conexión y el socket del servidor, seguido de la prueba del bot con un código de muestra.

  • 00:30:00 En esta sección, el YouTuber analiza los pasos necesarios para recibir datos de velas de MT5 y usarlos para abrir operaciones según ciertos criterios. El primer paso es declarar una variable llamada hora de la última operación y establecer su valor inicial en cero, que luego se usará para rastrear cuándo se abrió una operación. Luego, se declara una época usando la función de fecha y hora que luego usaremos para convertir la hora actual en segundos. A continuación, esperamos a que se inicie el hilo de la vela para evitar errores. Una vez finalizada, entramos en un bucle donde comprobamos si se cumplen las condiciones para abrir una operación. Si la vela anterior es un auge (cerrar > abrir) y el tiempo actual es mayor que el tiempo de la última operación más el período de tiempo de los datos comerciales, se abre una operación. Se actualiza el tiempo de la última operación y se llama a la función de posición abierta. Finalmente, los datos comerciales (incluidos el mercado y el tamaño del lote) se definen y pasan como argumento a la función de posición abierta.

  • 00:35:00 En esta sección, el creador explica cómo enviar una operación de celda usando MT5 y brinda un tutorial sobre cómo ejecutar una función de posición abierta. El usuario debe ingresar el mercado como una cadena, el lotex como una operación flotante y de tipo. Esta función ayuda a definir las variables de stop loss y take profit que se definen tomando el precio actual menos el valor de stop loss y sumando el valor de take profit al precio actual. El creador recomienda usar la vela de la celda y los datos comerciales para probar y depurar el código. Finalmente, el creador proporciona un ejemplo de cuándo se ejecuta la función y se negocian las órdenes.

  • 00:40:00 En esta sección, el tutorial se centra en la depuración de errores. Se muestra el proceso de depuración paso a paso, comenzando desde el mensaje de error que se muestra hasta buscar en Google para encontrar una solución. El error específico aquí es un tipo de ejecución de pedido no válido, que depende del corredor que se utilice. La solución es probar los tres tipos de ejecución de pedidos enumerados y ver cuál funciona para su corredor. Una vez que se corrige el error, el tutorial pasa a abrir una posición con éxito.

  • 00:45:00 En esta sección, el orador concluye el video brindando una breve descripción general del bot comercial de índices sintéticos de Python, destacando la facilidad con la que se puede crear. También menciona que creará un curso sobre este tema, que será muy completo ya un precio razonable en comparación con cursos similares. Alienta a los espectadores a que le den me gusta, compartan y se suscriban a su canal, y que se comuniquen con él si tienen alguna pregunta.
PYTHON SYNTHETIC INDEX TRADING BOT!! - RECEIVING CANDLE DATA FROM MT5
PYTHON SYNTHETIC INDEX TRADING BOT!! - RECEIVING CANDLE DATA FROM MT5
  • 2022.06.29
  • www.youtube.com
YOU MUST INSTALL THE MT5 LIBRARY FOR PYTHON:pip install MetaTrader5In this video I'm going to teach you how to create a PYTHON TRADING BOT that uses MT5 and ...
 

¿Cómo importar datos de precios de acciones de MetaTrader 5 a Python?



¿Cómo importar datos de precios de acciones de MetaTrader 5 a Python?

En este video de YouTube, se explican diferentes métodos para importar datos de precios de acciones de MetaTrader 5 a Python. Los métodos incluyen la importación de las bibliotecas necesarias, la configuración del marco de tiempo y la zona horaria deseados, la definición de una función llamada "obtener datos", la manipulación del marco de datos resultante, el uso del paquete tqtndm, la creación de un marco de tarifas y el uso de dos marcos de datos para recuperar precios y información de fecha/hora. El orador sugiere poner los bucles en una función para hacer que el código sea más limpio y, al usar estos métodos, los usuarios pueden importar fácilmente datos para numerosos símbolos sin mucha dificultad.

  • 00:00:00 En esta sección, el orador explica cómo importar datos de precios de acciones de MetaTrader5 a Python. El primer paso es importar todas las bibliotecas necesarias, incluidas pandas, pytz, datetime, tqdm y MetaTrader5. Luego, el orador inicializa MetaTrader5 y establece la zona horaria y el marco de tiempo deseados. El hablante define una función llamada "obtener datos" que requiere el símbolo, la cantidad de velas necesarias y el marco de tiempo. La función devuelve los datos deseados y el hablante explica qué hace cada entrada y salida en la función.

  • 00:05:00 En esta sección, el orador explica una función utilizada para importar datos de precios de acciones de MetaTrader5 a Python. La función toma un símbolo, un marco de tiempo y una fecha, y devuelve un marco de datos que contiene los datos solicitados. El orador sigue los pasos para manipular el marco de datos resultante, incluida la conversión de la columna de tiempo a diurno y la eliminación de columnas innecesarias. Además, se sugiere el uso de un bucle for para facilitar la llamada de datos para múltiples activos.

  • 00:10:00 En esta sección, el orador explica cómo importar datos de precios de acciones de MetaTrader5 a Python usando el paquete tqtndm. Utilizan la función de prueba y la función de aceptación para llamar a una función de tarifas previamente definida que toma el símbolo y la cantidad de días establecida en 400. Los datos devueltos se agregan a un diccionario y los datos no disponibles se eliminan. El orador sugiere poner el bucle en una función para que el código sea más limpio. En general, el proceso implica crear un marco de tarifas, agregar los datos a un diccionario y luego ejecutar el script.

  • 00:15:00 En esta sección, el orador explica que con el uso de dos marcos de datos, los usuarios pueden importar fácilmente datos de precios de acciones de metatrader5 a Python recuperando los precios y la información de fecha/hora. Este método se puede utilizar para numerosos símbolos sin mucha dificultad.
How to import stock price data from metatrader5 into python?
How to import stock price data from metatrader5 into python?
  • 2022.04.10
  • www.youtube.com
Using MetaTrader5 module in python to import data from metatrader to python and turn it into a dataframe to use in your strategy backtesting .
 

Comercio en línea de Python en MetaTrader 5 + obtener datos de MQL5



Comercio en línea de Python en MetaTrader 5 + obtener datos de MQL5

El tutorial demuestra cómo descargar un conjunto de datos de MetaTrader y realizar transacciones comerciales en línea utilizando Python. El instructor importa las bibliotecas MetaTrader5, pandas y datetime, especifica el activo y el marco de tiempo para el conjunto de datos y descarga los últimos cien puntos de datos. Explican cómo administrar una posición en MetaTrader5 configurando stop loss, take profit y usando el comando GTC durante un período específico. Si bien la sección brinda una comprensión básica de los diferentes comandos necesarios para administrar una posición, no está claro cuál es la estrategia comercial general que se emplea.

  • 00:00:00 En esta sección del tutorial, el instructor demuestra la descarga de un conjunto de datos de MetaTrader 5 y la realización de transacciones comerciales en línea simples utilizando Python. La biblioteca MetaTrader5 se importa y la ruta de acceso directo del software se dirige a Python. Las bibliotecas pandas y datetime también se importan, y la hora actual se usa para especificar la hora de los últimos datos en el conjunto de datos. Se escribe la clave del símbolo del activo deseado y se selecciona el período de tiempo (período de tiempo diario en este caso) para el conjunto de datos. Se descargan los últimos cien puntos de datos y se utiliza un comando de formato para almacenar los datos en el sistema personal del usuario. El comercio en línea se lleva a cabo determinando los activos y el volumen de la transacción, definiendo la unidad de precio como un pip y utilizando el precio de oferta o demanda según la posición ingresada.

  • 00:05:00 En esta sección, el video explica cómo establecer stop loss y take profit para una posición usando los comandos de Python en MetaTrader5. También muestra cómo cerrar la posición especificando el número de ticket de posición. El comando GTC se explica para mantener una transacción activa durante un período específico. El video también muestra un ejemplo de una transacción USDJPY con un stop loss activo y una toma de ganancias. En general, esta sección proporciona una comprensión básica de los diferentes comandos necesarios para administrar una posición en MetaTrader5 a través de Python.

  • 00:10:00 En esta sección, aprendemos que la posición larga se cerró con éxito. Desafortunadamente, sin más contexto, no está claro a qué se refiere la posición larga o cuál es la estrategia comercial general que se emplea.
online trading by python in MetaTrader5 + get data from mql5
online trading by python in MetaTrader5 + get data from mql5
  • 2022.04.19
  • www.youtube.com
https://github.com/Hesamtps/online-trading-by-python-in-MetaTrader5-get-data-from-mql5
 

Python MetaTrader 5 Copiar comercio



Python MetaTrader 5 Copiar comercio

Esta aplicación puede copiar el comercio de MetaTrader 5 a otro MetaTrader 5 controlado por un panel web que también puede controlar quién puede copiar su comercio, establecer par/ticker, establecer volumen, detener pérdidas y obtener ganancias de cada una de las señales de su copiador.
La tolerancia de tiempo para la copia es de 5 segundos, si la señal de más de 5 segundos no se copia, Windows cmd a veces se atasca, se recomienda usar otra aplicación de terminal en Windows.

Preguntas y respuestas
--------------------------------------------------
P: Se puede ejecutar usando MT4
R: No, MT4 no es compatible con Python

P: ¿Se puede ejecutar en Linux?
R: No, en realidad mt5 está diseñado para Windows, si se ejecuta en Mac o Linux, solo se ejecuta usando un emulador de Windows, o algo así para forzar la ejecución de la aplicación de Windows que se ejecuta en Mac o Linux.

P: ¿Existe alguna garantía de que se copiará la señal?
R: El éxito o el fracaso de la señal que se va a copiar depende de varios factores, el más frecuente es su condición de vps, puede manejar la conexión desde el maestro o los clientes, la conexión inestable del cliente, el retraso del script, la terminal, se cuelga, etc.

Si tiene algún problema, como congelar el símbolo del sistema al ejecutar el script de Python, vaya a https://stackoverflow.com/questions/591047/command-line-windows-hanging-in-rdp-windows

Guiones
------------
crear entorno virtual:
python -m venv .venv

activar entorno virtual:
.venv/Scripts/activar

instalar la biblioteca de requisitos:
pip install -r requisitos.txt

ejecutando el script maestro:
python maestro.py

ejecutando script esclavo:
python trade.py

Python MT5 Copy Trade
Python MT5 Copy Trade
  • 2022.06.15
  • www.youtube.com
This application can copy trade from MT5 to another MT5 controlled by web dashboard that also can control who can copy your trade, set pair/ticker, set volum...
 

Sistemas de prueba posterior de Python y MetaTrader | Desarrollo y prueba de estrategias comerciales de ML



Sistemas de prueba posterior de Python y Metatrader | Desarrollo y prueba de estrategias comerciales de ML

El video analiza el desarrollo de una plataforma estable de backtesting para evaluar múltiples estrategias comerciales y emplear el aprendizaje automático para el comercio de divisas. El orador demuestra cómo crear una nueva plataforma de backtesting utilizando MetaTrader 5 que interactúa con los corredores para extraer datos de entrada. También explican cómo codificar un asesor experto para extraer datos, procesarlos usando estrategias de Python y luego iniciar operaciones basadas en parámetros predeterminados. El video también muestra cómo generar datos de etiquetas y extraer características para construir y entrenar algoritmos de aprendizaje automático. Finalmente, el disertante analiza varios algoritmos utilizados para el backtesting, con el bosque aleatorio identificado como el más preciso. En general, el sistema de backtesting brindó resultados confiables y eficientes, con un rendimiento del 96 %, y el trabajo futuro incluye la integración de algoritmos de aprendizaje automático en entornos comerciales en vivo.

  • 00:00:00 En esta sección, el orador presenta el concepto de comercio de divisas y por qué se ha vuelto tan popular entre instituciones, gobiernos, corporaciones multinacionales e inversores individuales. El mercado está abierto las 24 horas del día de lunes a viernes, por lo que es accesible para cualquier persona. Una de las razones de su popularidad es el inmenso potencial de ganancias. Sin embargo, la predicción precisa de la dirección del intercambio de divisas es importante. Con ese fin, el objetivo del orador era crear una plataforma de backtesting estable para evaluar múltiples estrategias comerciales, determinar qué pares de divisas y marcos de tiempo funcionaron mejor y utilizar el aprendizaje automático para mejorar las predicciones. El ponente también menciona investigaciones previas que utilizaron máquinas de vectores de soporte y redes neuronales artificiales para la predicción.

  • 00:05:00 En esta sección, el orador analiza el enfoque para desarrollar una plataforma de backtesting para el entrenamiento y la prueba de algoritmos, que es el primer paso en el desarrollo de algoritmos de aprendizaje automático. Examinan las plataformas de backtesting disponibles, como MK Backtesting, pero finalmente deciden crear una nueva que se integre a la perfección con las estrategias de Python existentes y cumpla con los criterios de consistencia e integridad de los datos. La nueva plataforma se basa en la plataforma MetaTrader 5 estándar de la industria, que interactúa con los corredores para extraer datos de entrada para la plataforma de backtesting. La plataforma de backtesting utiliza un conjunto de parámetros como stop loss y take profit para evaluar los datos y generar archivos de salida basados en la señal generada por las estrategias comerciales, como la clase de estrategia comercial. En general, el enfoque implica preparar datos de nivel, desarrollar una plataforma de backtesting y luego construir un algoritmo de aprendizaje automático basado en los datos preparados.

  • 00:10:00 En esta sección, el orador describe cómo se codifica un asesor experto para ampliar los datos de MetaTrader 5 en vivo cada vez que se genera una nueva vela. El asesor experto extrae datos de MetaTrader 5 y los escribe en un archivo de hoja de cálculo externo, que luego lee un motor Python para procesarlos utilizando diferentes estrategias para obtener una señal comercial. Luego, la señal se escribe en un archivo de acción, que lee el asesor experto, y luego inicia transacciones en el entorno MetaTrader 5. El entorno comercial puede realizar transacciones en vivo mediante la ejecución de operaciones basadas en márgenes determinados de toma de ganancias y detención de pérdidas, y el asesor experto modifica y cierra operaciones en función de varios parámetros.

  • 00:15:00 En esta sección, el ponente explica el proceso de backtesting y generación de un informe en la plataforma MetaTrader. Muestran cómo ajustar la velocidad del backtesting e importar las estrategias necesarias para hacer predicciones. Luego discuten las diferentes funciones del programa, incluido el escritor de acciones, que se encarga de las tareas de mantenimiento, como crear y guardar archivos de salida. Finalmente, demuestran el informe producido por el backtesting, que incluye un resumen de todas las operaciones realizadas junto con detalles sobre el par de divisas, el marco de tiempo y el período.

  • 00:20:00 En esta sección, el video explica el uso de una plataforma de backtesting diseñada para crear datos de etiquetas y extracción de características para construir y entrenar algoritmos de ML para el comercio. Esta plataforma simplifica el proceso al tomar todo el período de datos extraídos y generar las señales e indicadores necesarios para operar, luego inicia y rastrea las operaciones para obtener los resultados reales. Usando esta plataforma, el video muestra cómo generar datos de etiquetas que representan el verdadero resultado de la operación y las diversas características extraídas de los datos, como RSI, TSI y estocástico. Al crear datos más equilibrados, esta plataforma puede generar algoritmos de aprendizaje automático más confiables para el comercio.

  • 00:25:00 En esta sección, el orador analiza los diferentes algoritmos de aprendizaje automático que se utilizan para realizar pruebas retrospectivas, incluida la máquina de vectores de soporte, la regresión logística, xgboost, MLP y el bosque aleatorio. La precisión de cada algoritmo se registra y analiza, y el orador identifica el bosque aleatorio como el más preciso con un 96 % de precisión. Los datos también se etiquetan y rastrean para crear un archivo de hoja de cálculo para su uso posterior. En general, el proceso de backtesting con estos algoritmos es rápido y eficiente.

  • 00:30:00 En esta sección, el ponente resume los resultados del sistema de backtesting y el desarrollo de estrategias comerciales de ML utilizando indicadores técnicos y algoritmos de aprendizaje automático. La plataforma estable de backtesting brindó resultados confiables y eficientes, con un rendimiento del 96 % en comparación con la estrategia de referencia SMAEMA, que solo tuvo un rendimiento del 25 %. La plataforma de backtesting era capaz de realizar transacciones automatizadas sin necesidad de intervención manual. El trabajo futuro incluye la integración de algoritmos de aprendizaje automático en entornos comerciales y de backtesting en vivo para mejorar la precisión de la predicción y maximizar las ganancias, utilizando múltiples estrategias y algoritmos más sofisticados como RNN de autoatención y LSTM.
Python & Metatrader Back Testing Systems | Developing & Test Trading ML Strategies
Python & Metatrader Back Testing Systems | Developing & Test Trading ML Strategies
  • 2021.06.24
  • www.youtube.com
Dr. Khushi supervised this master project in which they developed Python and MetaTrader based backtesting system, trading strategies and wrapped around machi...
 

Cómo crear estrategias comerciales algorítmicas con Python: proceso paso a paso



Cómo crear estrategias comerciales algorítmicas con Python: proceso paso a paso

El video proporciona una guía paso a paso sobre cómo crear estrategias comerciales algorítmicas usando Python. El primer paso consiste en definir las reglas del sistema, eliminar las emociones del comercio y realizar pruebas retrospectivas para optimizar la rentabilidad. Luego, el presentador demuestra cómo crear una estrategia comercial utilizando una hipótesis e indicadores técnicos, como los cruces de promedios móviles. Luego se codifica la estrategia y se realizan pruebas retrospectivas repetidamente para garantizar la optimización. La segunda sección se enfoca en la codificación del marco algorítmico y la creación de una función de señal que determina si comprar o vender en función de una comparación de promedios móviles simples. La tercera sección analiza cómo procesar datos de mercado en vivo usando funciones, mientras que la cuarta describe cómo implementar la estrategia en WPS. El presentador concluye aconsejando a los principiantes que mantengan sus estrategias comerciales simples y claras.

  • 00:00:00 En esta sección del video, el presentador explica el proceso de creación de estrategias comerciales algorítmicas con Python. En primer lugar, definen el comercio algorítmico como un sistema con reglas explícitamente definidas y sin excepciones. Las ventajas de esto son que podemos codificar estrategias comerciales basadas en datos cuantificables y las emociones se eliminan de la ecuación. También mencionan que el backtesting se realiza fácilmente para optimizar y probar la rentabilidad del sistema. A continuación, el presentador muestra cómo crear una estrategia comercial utilizando una hipótesis e indicadores técnicos, en particular los cruces de medias móviles. Con la información recopilada, se crea un conjunto de reglas y luego la estrategia se somete a pruebas retrospectivas. Este proceso se puede repetir hasta que la estrategia se considere óptima.

  • 00:05:00 En esta sección, el orador analiza el proceso paso a paso para crear estrategias comerciales algorítmicas con Python. Explican cómo las pruebas retrospectivas permiten a los operadores comprender cómo se desarrollan sus ganancias y pérdidas y, si tienen éxito, los operadores pueden pasar a una prueba de avance con un robot comercial en vivo en una cuenta de demostración. El orador también recomienda usar Python para el comercio, ya que es un lenguaje fácil de aprender y tiene muchas bibliotecas para backtesting y comercio algorítmico, como pandas y plotly. Finalmente, el disertante recorre el proceso de creación de una estrategia de cruce de promedio móvil simple en el índice bursátil alemán, usando un promedio móvil rápido de 10 y un promedio móvil lento de 100. Ellos enfatizan la importancia de codificar el marco algorítmico, que puede ser encontrado en su página de GitHub.

  • 00:10:00 En esta sección, el presentador demuestra cómo usar Python para crear una estrategia comercial algorítmica usando la estrategia de cruce de promedio móvil discutida anteriormente. Proporcionan dos archivos: un archivo probado y un archivo de bot comercial en vivo. El archivo probado incluye un análisis de datos de cómo se desempeñó la estrategia para el año 2032. El archivo del bot comercial en vivo requiere la creación de un archivo con credenciales de inicio de sesión y permite a los usuarios operar utilizando cruces de promedio móvil. Luego, el presentador muestra su entorno de desarrollo integrado de Python y explica el código, que utiliza bibliotecas como pandas, blockly y datetime para recuperar datos históricos, calcular promedios móviles simples y aplicar la lógica comercial. Finalmente, el presentador crea una función de señal que determina si comprar o vender en función de la comparación de los promedios móviles simples.

  • 00:15:00 En esta sección, el orador explica el proceso de cálculo de la columna de señal que indicaría cuándo comprar o vender un valor en particular. La columna de señal se deriva aplicando la función "obtener señal" a las barras del marco de datos, que luego verifica fila por fila si se cumplen las condiciones para comprar o vender. Además, las columnas de cambio de precio y cambio de señal anteriores también se calculan para determinar las ganancias hipotéticas, teniendo en cuenta el volumen de operaciones y la comisión pagada al bróker. A continuación, el ponente muestra un gráfico con los beneficios brutos y netos durante un período de seis meses, lo que demuestra que la estrategia produjo un beneficio neto de 2380 €, con algunos períodos de reducción. Finalmente, el orador menciona compartir código de muestra de la estrategia de backtesting en caso de que el espectador quiera probarlo por sí mismo para una historia más larga.

  • 00:20:00 En esta sección, el presentador explica cómo procesar datos de mercado en vivo usando funciones para crear una estrategia comercial en Python. Sugieren importar MetaTrader5, pandas, hora, fecha y hora y principios de cuenta con los parámetros predeterminados de su estrategia. El presentador creó funciones para negociar para cerrar posiciones y consultar los horarios de negociación de las sesiones de Londres y Nueva York. También crearon una función para enviar una orden de mercado utilizando una señal comercial en el ciclo, y si la SMA rápida está por encima de la SMA lenta, sugieren cerrar las posiciones de venta. El presentador demuestra cómo usar estas funciones y verificar la cantidad de posiciones abiertas con la función Total de posiciones de MT5 para brindar una descripción general de la cuenta al iniciar sesión en la cuenta comercial.

  • 00:25:00 En esta sección, el ponente explica el paso final del proceso que es implementar la estrategia en WPS (Web Processing Service). Sugiere usar un DP (Cloud Desktop Provider) llamado Countable, al que proporciona configuraciones básicas. También señala que MT5 solo funciona en Windows y recomienda seleccionar un centro de datos alojado en el Reino Unido si el corredor está ubicado en Londres. Luego, el orador procede a dar consejos y recomendaciones a los principiantes, aconsejándoles que mantengan sus estrategias simples y claras, para luego agregar más con el tiempo. Concluye agradeciendo al espectador y animándolo a hacer preguntas en los comentarios.
How to create Algorithmic Trading Strategies with Python - Step by Step Process
How to create Algorithmic Trading Strategies with Python - Step by Step Process
  • 2022.08.28
  • www.youtube.com
In this video, I will explain how to create an Algorithmic Trading Robot Step by Step.00:00 - Presentation09:55 - Github Repo11:21 - Backtest19:55 - Live Tra...
 

Prueba retrospectiva de la configuración de 3 velas con Python



Prueba retrospectiva de la configuración de 3 velas con Python

El video demuestra cómo usar Python para probar la rentabilidad de una configuración de tres velas. El presentador obtiene datos OHLC semanales para el par de divisas EUR/USD de Metatrader5 y los convierte en un marco de datos Pandas, visualizándolos usando Plotly Express. Identifican velas alcistas y bajistas utilizando una función de tipo de vela específica y definen la condición de configuración de tres velas alcistas. Al calcular la probabilidad de que la cuarta vela suba o baje para cada ocurrencia de la configuración, prueban la rentabilidad de comprar estas configuraciones. El presentador concluye que ir en largo con cada configuración alcista habría generado algún ingreso, pero enfatiza la importancia de ser paciente ya que el beneficio llega en un período rápido.

  • 00:00:00 En esta sección, el orador analiza cómo usar Python para realizar una prueba retrospectiva de la configuración de tres velas. Para hacerlo, primero se conectan a la plataforma Metatrader5 y solicitan datos de OHLC para el par de divisas EUR/USD en un período de tiempo semanal desde el 1 de enero de 2019 hasta noviembre de 2021. Luego, los datos se convierten en un marco de datos de Pandas y se visualizan utilizando Plotly Express. . Luego, el orador muestra cómo etiquetar las velas en el marco de datos como alcista o bajista usando una función de tipo de vela específica. Utilizan esto para cumplir la condición de una configuración de tres velas alcistas desplazando la columna de tipo de vela hacia adelante una, dos y tres velas, creando una condición en la que las tres velas son alcistas. Luego calculan la probabilidad de que la cuarta vela suba o baje por cada ocurrencia de esta configuración y prueban la rentabilidad de comprar estas configuraciones.

  • 00:05:00 En esta sección del video, el presentador analiza cómo hacer una prueba retrospectiva de una configuración de tres velas usando Python. La configuración implica identificar velas donde la primera, segunda y tercera vela son todas alcistas. El presentador crea un marco de datos con el cierre anterior y compara el resultado con la vela anterior para calcular la cantidad de puntos ganados o perdidos. Luego proceden a analizar los datos estadísticamente para determinar si sería una buena idea comprar o vender. Al iterar a través de cada configuración individual y agregar las tres configuraciones de velas en un gráfico, muestran que comprar al cierre de cada configuración y vender inmediatamente después del cierre de la siguiente vela sería rentable en algunas situaciones. El presentador calcula el número de veces que ocurre la configuración y cuánto se ganaría o perdería en promedio por configuración. Llegan a la conclusión de que ir en largo en cada configuración alcista habría generado algún ingreso.

  • 00:10:00 En esta sección, el video presenta un ejemplo de backtesting de la configuración de 3 velas con Python. Después de restablecer el eje, muestra el período de tiempo con operaciones perdedoras y rentables en 2019 con la curva de ganancias de puntos acumulados. El beneficio llega en un período rápido, lo que requiere paciencia hasta que llegue este período. El video también muestra cómo analizar XA USD en el gráfico diario y ver su rendimiento solicitando datos históricos y trazando el marco de datos. La curva de ganancias se usa para ver los altibajos en las ganancias y pérdidas. Por último, el video concluye que este método de prueba se puede usar en cualquier número de mercados y marcos de tiempo e implica que los usuarios pueden escribir sus propias estrategias algorítmicas.
Backtesting the 3-candle-setup with Python
Backtesting the 3-candle-setup with Python
  • 2021.11.12
  • www.youtube.com
In this video, we will backtest 3 candles in-a-row setup for algorithmic trading.Chapters00:00 Intro00:55 Requesting Data & Visualization03:33 Finding the 3-...
 

Codificar gráficos de velas japonesas en tiempo real en Python



Codificar gráficos de velas japonesas en tiempo real en Python

En este video, el autor crea una aplicación web en Python utilizando Dash, pandas y plotly para generar un gráfico de datos de velas japonesas en tiempo real para el comercio de FOREX. La aplicación utiliza la biblioteca MetaTrader 5 para recopilar datos y permite a los usuarios cambiar el símbolo, el marco de tiempo y la cantidad de velas que se muestran. El video pasa por el proceso de creación del diseño y las devoluciones de llamada para la aplicación, incluida la solicitud de barras históricas de MetaTrader 5 y la creación de un objeto de figura con go.candlestick. La aplicación resultante se actualiza cada 20 milisegundos y tiene un intervalo de actualización de 200 milisegundos. Se invita a los espectadores a visitar la página de GitHub para descargar la aplicación.

  • 00:00:00 En esta sección, el YouTuber responde la pregunta de un espectador sobre la creación de un gráfico de datos forex en vivo con datos de velas en tiempo real. El video explica cómo el YouTuber codifica una aplicación web en Python usando Dash, pandas y plotly para el análisis y la visualización de datos mientras usa la biblioteca MetaTrader5 para recopilar datos de MetaTrader 5. También explican el proceso de obtener una lista de símbolos y traducir la marcos de tiempo utilizando un diccionario. El resultado resultante de la aplicación es un gráfico donde los usuarios pueden cambiar el símbolo, el marco de tiempo y la cantidad de velas para mostrar datos en tiempo real con un intervalo de actualización de 200 milisegundos.

  • 00:05:00 En esta sección del video, el orador explica la creación del diseño para la aplicación de gráfico de velas japonesas en tiempo real. Los componentes desplegables para el símbolo y el marco de tiempo se importan de las funciones de MT5 y los valores se establecen en los valores predeterminados. La entrada de número de barras se crea utilizando el campo de entrada DBC, que tiene un valor predeterminado de 20. El diseño de la aplicación consta de un div HTML, que incluye el símbolo desplegable, el menú desplegable de marco de tiempo y la entrada de número de barras. Se agrega un pequeño separador, seguido del componente de intervalo DCC que crea una nueva devolución de llamada cada 200 milisegundos para actualizar el gráfico en tiempo real. El contenido de la página incluye una devolución de llamada que actualiza el gráfico cada 20 milisegundos, teniendo en cuenta el estado del menú desplegable del símbolo, el menú desplegable del marco de tiempo y el número de barras de entrada. La devolución de llamada solicita barras históricas de MetaTrader 5 y crea un objeto de figura con go.candlestick. Finalmente, el ponente agradece la atención de los espectadores y los invita a visitar la página de GitHub para descargar la aplicación.
Code Real-Time Candlestick Charts in Python
Code Real-Time Candlestick Charts in Python
  • 2021.11.25
  • www.youtube.com
In this video, we will code a Real-Time Candlestick Web Application in Python. We will connect to MetaTrader5 to get real-time data and use Plotly-Dash to cr...