@Almaz La primera vez que se ejecutan las funciones copy_xxx_xxx, cuando el terminal no se ha iniciado durante algún tiempo, las funciones devuelven inmediatamente el resultado disponible con el historial que falta, sin esperar a la sincronización del intercambio de historiales. Significa que la primera llamada a la función devuelve el resultado con la historia que falta. Sólo las llamadas posteriores devolverán el resultado correcto, cuando se intercambie el historial. ¿Es posible solucionar este problema? Y las funciones copy_xxx_xxx esperan que el historial se intercambie en la primera llamada.
copy_ticks o copy_rates? ¿Cuál es la construcción del terminal?
@Almaz La primera vez que se ejecutan las funciones copy_xxx_xxx, cuando el terminal no se ha iniciado durante algún tiempo, las funciones devuelven inmediatamente el resultado disponible con el historial que falta, sin esperar a la sincronización del intercambio de historiales. Significa que la primera llamada a la función devuelve el resultado con la historia que falta. Sólo las llamadas posteriores devolverán el resultado correcto, cuando se intercambie el historial. ¿Es posible solucionar este problema? Y las funciones copy_xxx_xxx esperarán a que el historial se intercambie en la primera llamada.
Leer Organizar el acceso a los datos, no tiene nada que ver con la biblioteca de Python. Este es un comportamiento estándar, hay que manejar estas situaciones y volver a solicitar el historial después de que el terminal lo intercambie.
Esto es una cosa de una sola vez, por lo que no es crítico. Siempre puedes mantener el historial existente actualizado si trabajas con el terminal desde un script todo el tiempo.
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
Leer Organize Data Access, no tiene nada que ver con la biblioteca de Python. Este es un comportamiento estándar, hay que manejar estas situaciones y volver a solicitar el historial después de que el terminal lo rebote.
Esto es una cosa de una sola vez, por lo que no es crítico. Siempre puedes mantener el historial existente actualizado si trabajas con el terminal desde el script todo el tiempo.
He leído esta sección, está relacionada con Mql5. ¿O quiere decir que hay que organizarCheckLoadHistory de la misma manera? ¿Por qué no introducir esta función como estándar? Para la biblioteca Mql y Py.
Y en general, es extraño que permita que la función Copiar reciba datos incorrectos, sin esperar a que se intercambie el historial y dar el resultado.
He leído esta sección, se refiere a Mql5. ¿O quiere decir que hay que organizarCheckLoadHistory de la misma manera? ¿Por qué no introducir esta función como estándar? Para la biblioteca Mql y Py.
Y en general es extraño que permita datos incorrectos en la función Copiar, sin esperar el intercambio de la historia y dar el resultado.
Si trabajas en MQL5, las preguntas de la secciónOrganización del acceso a los datos no son tan especiales. Hemos estudiado esta sección a fondo. Y lo usamos.
¿Por qué cree que debería ser diferente para Python?
Al fin y al cabo, el núcleo principal es MQL5 y hay que conocerlo. Y sólo después de eso hay que aplicar Python.
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
He leído esta sección, se refiere a Mql5. ¿O quiere decir que hay que organizarCheckLoadHistory de la misma manera? ¿Por qué no introducir esta función como estándar? Para la biblioteca Mql y Py.
Y en general es extraño que permita datos incorrectos en la función Copiar y no espere a que se cargue el historial y devuelva el resultado.
La librería de Python permite solicitar datos del terminal MetaTrader 5 de forma general, independientemente de la forma en que se hayan solicitado: manualmente, a través de MQL5 o utilizando el script de Python.
El desarrollador de los programas MQL5 y de los scripts de Python es responsable de la lógica y la organización del trabajo con los datos.
He conectado las librerías, python se comunica con Mt5, me sale la información de la cuenta pero las cotizaciones no se cargan de ninguna manera. ¿Puede ayudarme?
Python versión 3.7.6
from datetime import datetime
import MetaTrader5 as mt5
# выведем информацию о версии MetaTrader 5
print(mt5.version())
# установим подключение к терминалу MetaTrader 5if not mt5.initialize():
print("initialize() failed, error code =",mt5.last_error())
quit()
# подключимся к торговому счету без указания пароля и сервера
account=17245465
authorized=mt5.login(account) # пароль будет взят из базы терминала, если указано помнить данные для подключения
if authorized:
# выведем данные о торговом счете как есть
print(mt5.account_info())
# выведем данные о торговом счете в виде списка
print("Show account_info()._asdict():")
account_info_dict = mt5.account_info()._asdict()
for prop in account_info_dict:
print(" {}={}".format(prop, account_info_dict[prop]))
else:
print("failed to connect at account #{}, error code: {}".format(account, mt5.last_error()))
# запросим статус и параметры подключения
print(mt5.terminal_info())
# получим информацию о версии MetaTrader 5
print(mt5.version())
x= mt5.symbols_total()
print('количество всех финансовых инструментов в терминале MetaTrader 5=', x)
# получим все символы
symbols=mt5.symbols_get()
print('symbols=', symbols)
# получим бары с разных инструментов разными способами
eurusd_rates = mt5.copy_rates_from("EURUSD", mt5.TIMEFRAME_M30, datetime(2020, 1, 28, 13), 1000)
# DATA
print('eurusd_rates', eurusd_rates )
# завершим подключение к MetaTrader 5
mt5.shutdown()
Признак отрисовки ценового графика. Если установлено значение false, то отключается отрисовка любых атрибутов ценового графика и устраняются все отступы по краям графика: шкалы времени и цены, строка быстрой навигации, метки событий Календаря, значки сделок, тултипы индикаторов и баров, подокна индикаторов, гистограммы объёмов и т.д. Значение...
He conectado las librerías, python se comunica con Mt5, me sale la información de la cuenta pero las cotizaciones no se cargan de ninguna manera. ¿Puede ayudarme?
Python versión 3.7.6
Resultado:
Por favor, inserte el código correctamente (utilice el botón )
@Almaz
La primera vez que se ejecutan las funciones copy_xxx_xxx, cuando el terminal no se ha iniciado durante algún tiempo, las funciones
devuelven inmediatamente el resultado disponible con el historial que falta, sin esperar a la sincronización del intercambio de historiales.
Significa que la primera llamada a la función devuelve el resultado con la historia que falta.
Sólo las llamadas posteriores devolverán el resultado correcto, cuando se intercambie el historial.
¿Es posible solucionar este problema? Y las funciones copy_xxx_xxx esperan que el historial se intercambie en la primera llamada.
copy_ticks o copy_rates? ¿Cuál es la construcción del terminal?
@Almaz
La primera vez que se ejecutan las funciones copy_xxx_xxx, cuando el terminal no se ha iniciado durante algún tiempo, las funciones
devuelven inmediatamente el resultado disponible con el historial que falta, sin esperar a la sincronización del intercambio de historiales.
Significa que la primera llamada a la función devuelve el resultado con la historia que falta.
Sólo las llamadas posteriores devolverán el resultado correcto, cuando se intercambie el historial.
¿Es posible solucionar este problema? Y las funciones copy_xxx_xxx esperarán a que el historial se intercambie en la primera llamada.
Leer Organizar el acceso a los datos, no tiene nada que ver con la biblioteca de Python. Este es un comportamiento estándar, hay que manejar estas situaciones y volver a solicitar el historial después de que el terminal lo intercambie.
Esto es una cosa de una sola vez, por lo que no es crítico. Siempre puedes mantener el historial existente actualizado si trabajas con el terminal desde un script todo el tiempo.
copy_ticks o copy_rates? ¿Qué compilación del terminal?
Usé copy_rates, pero creo que copy_ticks será lo mismo, pero no lo he comprobado.
Construir 2470
Leer Organize Data Access, no tiene nada que ver con la biblioteca de Python. Este es un comportamiento estándar, hay que manejar estas situaciones y volver a solicitar el historial después de que el terminal lo rebote.
Esto es una cosa de una sola vez, por lo que no es crítico. Siempre puedes mantener el historial existente actualizado si trabajas con el terminal desde el script todo el tiempo.
He leído esta sección, está relacionada con Mql5.
Y en general, es extraño que permita que la función Copiar reciba datos incorrectos, sin esperar a que se intercambie el historial y dar el resultado.¿O quiere decir que hay que organizarCheckLoadHistory de la misma manera?
¿Por qué no introducir esta función como estándar? Para la biblioteca Mql y Py.
He leído esta sección, se refiere a Mql5.
Y en general es extraño que permita datos incorrectos en la función Copiar, sin esperar el intercambio de la historia y dar el resultado.¿O quiere decir que hay que organizarCheckLoadHistory de la misma manera?
¿Por qué no introducir esta función como estándar? Para la biblioteca Mql y Py.
Si trabajas en MQL5, las preguntas de la secciónOrganización del acceso a los datos no son tan especiales. Hemos estudiado esta sección a fondo. Y lo usamos.
¿Por qué cree que debería ser diferente para Python?
Al fin y al cabo, el núcleo principal es MQL5 y hay que conocerlo. Y sólo después de eso hay que aplicar Python.
He leído esta sección, se refiere a Mql5.
Y en general es extraño que permita datos incorrectos en la función Copiar y no espere a que se cargue el historial y devuelva el resultado.¿O quiere decir que hay que organizarCheckLoadHistory de la misma manera?
¿Por qué no introducir esta función como estándar? Para la biblioteca Mql y Py.
La librería de Python permite solicitar datos del terminal MetaTrader 5 de forma general, independientemente de la forma en que se hayan solicitado: manualmente, a través de MQL5 o utilizando el script de Python.
El desarrollador de los programas MQL5 y de los scripts de Python es responsable de la lógica y la organización del trabajo con los datos.
Por la tarde
¿Existe una opción para conectarse a la terminal a través de PowerShell? si alguien sabe cómo, le agradecería la información
No tengo experiencia con python, así que me gustaría usar lo que mejor conozco))
¡Buenos días!
He conectado las librerías, python se comunica con Mt5, me sale la información de la cuenta pero las cotizaciones no se cargan de ninguna manera. ¿Puede ayudarme?
Python versión 3.7.6
Resultado:
¡Buenos días!
He conectado las librerías, python se comunica con Mt5, me sale la información de la cuenta pero las cotizaciones no se cargan de ninguna manera. ¿Puede ayudarme?
Python versión 3.7.6
Resultado:
Por favor, inserte el código correctamente (utilice el botón
)
Por favor, inserte el código correctamente (utilice el botón)
Gracias por el diseño, lo tendré en cuenta.