Discusión sobre el artículo "Integración de MetaTrader 5 y Python: recibiendo y enviando datos" - página 10

[Eliminado]  
Maxim Dmitrievsky:
Echa un vistazo al ejemplo de mi último artículo. Aquí se utilizó una versión antigua del paquete. Y necesita ser instalado primero a través de pip install, por supuesto.

Gracias, Maxim. Miré el ejemplo incluso antes de la pregunta ))) Pero mi experiencia no me permite notar las diferencias de inmediato. Pero voy a aprender )))

 
Señores, es incómodo preguntar (siento que la pregunta es estúpida), pero esta cosa - SocketCreate() sabe cómo Estrategias Tester?
[Eliminado]  
immediacy:
Señores, es incómodo preguntar (siento que la pregunta es estúpida), pero esta cosa - SocketCreate() sabe cómo Estrategias Tester?

No

 

Buenas tardes! al iniciar socketserver me sale el siguiente error: ayudenme por favor "dummy")

Traceback (última llamada más reciente):

File "C:C:{python\Socket_client-server\Socket client-server\socketserver\socketserver.py", line 48, in <module>
serv = socketserver('127.0.0.1', 9090)
File "C:C:\python\Socket_client-server\Socket client-server\socketserver.py", line 15, in __init__
self.sock.bind((self.adress, self.port)))
AttributeError: 'socketserver' object has no attribute 'adress'
>>>
 

Hola, interesante artículo. Gracias por ello.


Me preguntaba. ¿Por qué decidiste implementar el servidor en Python y el EA como cliente en MT5?


¿No sería más natural tener el servidor como EA en MT5 proporcionando datos y ejecutando operaciones y el cliente(s) en python, procesando los datos y tomando las decisiones de operación que se envían al servidor?


¿Hay alguna ventaja obvia de usar el cliente como un EA y el servidor en python, que me estoy perdiendo?



Si no recuerdo mal, de la experiencia pasada con ZeroMQ el servidor era como un EA en MT5 y el cliente en python.

 
yogibass:

@Maxim Dmitrievsky

Sólo quería decir gracias por hacer esto disponible. Siempre quise poder codificar mis indicadores en Python y desde que comenzaste este hilo he podido acceder a datos de futuros en tiempo real y utilizarlos para desarrollar y ejecutar mis indicadores. Yo uso mi Python para trazar y analizar la alimentación en vivo y coloco operaciones a través de la plataforma MT5 - funciona muy bien. Por favor, sigan con el buen trabajo y espero de verdad que Python sea totalmente aceptado por la comunidad MT.

¡Gracias y saludos!

Hola, quiero conectar mt5 con datos en vivo usando un api. Porque en mi país, no hay corredor autorizado o proveedor de datos que apoyan mt5. Me pueden ayudar.
 
Maxim Dmitrievsky #:

Hi, sockets don't work in tester at this time. Also, you mus add localhost to allowed webrequests in mt5 settings



después de añadir el localhost, todavía me recuerda el error '4014'

 

Gracias por la descripción completa.

Tengo una pregunta:

¿es posible ejecutar un script de tipo .ex5 mediante un comando en entorno python?

quiero ejecutarlo a través de python, y el script guardar los resultados en un archivo de excel, así que puedo utilizar los datos de excel de nuevo en mi sitio web o programa android.

Muchas gracias.

 
Hola Maxim
Tu artículo sobre la integración de Python y mt5 me animó a profundizar en el tema. Escribí muchas cosas en Python usando casi todas las funciones de la librería.
Me surgió la necesidad de dibujar algo en un gráfico en mt5, calculado en Python. Tomando como base su código en la comunicación a través de socket, escribí el siguiente escenario: al hacer clic en la esquina del gráfico mt5 envía una solicitud de datos para dibujar fibs y canales. En tu ejemplo python devuelve dos valores, pero yo tengo que devolver datos de hasta 12 estructuras diferentes con tres puntos de coordenadas cada una.
Al principio me atasqué con el hecho de que mt5 no devolvía una cadena larga describiendo todas las estructuras a la vez. Hice el cambio mediante varias consultas más cortas. Todo parece funcionar, pero de vez en cuando.
Algo me dice que se trata de la configuración de tiempo de espera. ¿Podría sugerirme una dirección para encontrar una solución?
Le agradezco de antemano
 

Hola - ¡¡¡Puede alguien ayudarme!!!


Estoy tratando de ejecutar este código en Python y seguir recibiendo un error:


A continuación está mi código y da como resultado el error:


>>> # Copiando datos a dataframe

>>> d = pd.DataFrame()

>>> for i in sym:

... rates = mt.copy_rates_from_pos(i, mt.TIMEFRAME_M1, 0, 1000)

Archivo "<stdin>", línea 2

rates = mt.copy_rates_from_pos(i, mt.TIMEFRAME_M1, 0, 1000)

^

IndentationError: se esperaba un bloque sangrado

>>> d[i] = [y.close for y in rates]

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

File "<stdin>", line 1, in <listcomp>

AttributeError: el objeto 'numpy.void' no tiene el atributo 'close'


# sbcapitalfx Heat Map - version 1.0



import MetaTrader5 as mt

import pandas as pd

from datetime import datetime

import matplotlib.pyplot as plt



# Initializing MT5 connection 



mt.initialize()



login = ************

password = ' ************ '

server = 'MetaQuotes-Demo'



mt.login(login,password,server)



# Create currency watchlist for which correlation matrix is to be plotted

sym = ['EURUSD','USDJPY','USDCHF','USDNZD']



# Copying data to dataframe

d = pd.DataFrame()

for i in sym:

        rates = mt.copy_rates_from_pos(i, mt.TIMEFRAME_M1, 0, 1000)

        d[i] = [y.close for y in rates]