MT5 Python Indicator Exporter Free
- Utilidades
- Joao Paulo Euko
- Versión: 1.20
- Actualizado: 11 noviembre 2020
Hola a ti, ¡necesito tu ayuda! Sé mi mecenas, ¡hagámoslo posible!
https://www.patreon.com/joaopeuko
https://github.com/Joaopeuko/Mql5-Python-Integration
Canal:
Versión en inglés -VersãoInglês:
https://www.mql5.com/en/channels/Mql5_Python_Integration_EN
Versión en portugués - Versão Português:
https://www.mql5.com/en/channels/Mql5_Python_Integration_PT
Versión de pago con indicador 38:
https://www.mql5.com/en/market/product/58056
Creo que el desarrollo en PYTHON es más fácil y más simple para hacer un Asesor Experto o cualquier otra herramienta que le ayuda a tomar una decisión cuando se relaciona con el mercado de valores.
Por ello, he construido una librería en Python que facilita y simplifica la creación de asesores expertos. Se puede encontrar aquí:
https://github.com/Joaopeuko/Mql5-Python-Integration
Este Servicio MQL5 utiliza la comunicación Socket para enviar y recibir datos.
Este Servicio MQL5 es el "Lado-Cliente", por lo que sólo funcionará si hay un lado-servidor enviándole datos, pidiéndole algún Indicador.
Un ejemplo de Asesor Experto utilizando sockets se puede encontrar aquí:
https://github.com/Joaopeuko/Mql5-Python-Integration/blob/master/ExpertAdvisor/example_sockets_connection.py
Sin embargo, hay algunas dificultades cuando se utiliza python para codificar un asesor experto, una de estas dificultades es el uso de Indicadores, la mayoría de ellos no existen todavía.
Para resolver ese problema usted puede:
-
Puedes recrear todos los indicadores.
-
Puedes usar una librería que tenga algunos o todos los indicadores.
-
Puedes comunicarte a través del Metatrader5 pidiendo los datos de los indicadores.
Este Servicio MQL5 utiliza los indicadores que ya están construidos en Metatrader5, sólo pide los datos, informando primero a la configuración, y el servicio le responde.
Este servicio solo funciona con algunos indicadores:
-
Bandas de Bollinger
-
MACD
-
Media Móvil
-
OBV Volumen en Balance
-
Estocástico
Construí la comunicación utilizando el mismo patrón utilizado en MetaTrader5:
https://www.mql5.com/en/docs/indicators
La dirección y el puerto deben ser los mismos en el Servicio MQL5 y en el código python.
Para utilizar un servicio sólo tiene que ir en el servicio, y uno nuevo, es cerca de la carpeta de asesor de expertos, en el botón, en MetaTrader 5.
Imagen 1
Puede utilizar tantos servicios como desee hasta llegar a los límites de "Activación".
Imagen 2
Cuando se utiliza más de un servicio pueden entrar en conflicto, cambiar el puerto es una solución.
Para poder enviar datos fuera de MetaTrader5 primero hay que permitirlo, hay que añadir el "localhost".
-
Herramientas -> Opciones -> Asesores Expertos -> WbRequest (casilla de verificación)
Imagen 3
Es bueno saber que construí ese Servicio para que funcione sólo en el "localhost".
Si tienes dudas, utiliza sockets para funcionar.
Es posible llamar al mismo indicador con una configuración diferente de cuantas veces quieras. Sin embargo, cuando se utilizan demasiados indicadores podría reducir el rendimiento.
Usted puede ver el asesor experto utilizando indicador aquí:
https://github.com/Joaopeuko/Mql5-Python-Integration/blob/master/ExpertAdvisor/example_sockets_connection.py
Todos los indicadores están definidos para trabajar con un timeframe de un minuto, para cambiarlo solo hay que cambiar el "time_frame".
Todos los indicadores tienen comentarios para facilitar su comprensión y saber como utilizarlo.
https://github.com/Joaopeuko/Mql5-Python-Integration/blob/master/Include/indicator_connector.py
Imagen 4
Si tienes algún problema, envíame un mensaje directo, estaré encantado de ayudarte.

I've developed the same project based on sockets, but sockets have a limit on how much data they transmit, and it loses data every time I request a large amount of data.Have you ever had the same problem?
I tested your program and you are getting individual indicator data every time. Have you ever tested to obtain batch indicator data? For example, I want to get all the indicator data of the EURUSD 1 minute time frame within 1 year at one time.
I have tried to return a huge batch of data of EURUSD, but when the size is big (300000) the indicator starts to crash. Also, a request of one million minutes returns the maximum amount for EURUSD an array of 419431 minutes. For now, I was not able to find a solution, not yet.