Grupo de usuarios de MetaTrader 5 Python - cómo utilizar Python en Metatrader - página 62

 
nicholi shen:

Gracias por el consejo. He leído los materiales de su enlace. Es un poco complicado.

 
9805244:

Buenas tardes! ¿Cómo puedo trabajar con TRADE_ACTION_CLOSE_BY ??? o quién y cómo cierra todas las posiciones abiertas?

https://www.mql5.com/en/forum/306742/page10#comment_15577952

MetaTrader 5 Python User Group - the summary
MetaTrader 5 Python User Group - the summary
  • 2020.03.11
  • www.mql5.com
The Main Study MetaTrader Python online documentation Python Releases for Windows - website MetaTrader5 : Python Package - website...
 
nicholi shen:

https://www.mql5.com/en/forum/306742/page10#comment_15577952

Gracias por el ejemplo.

Tengo un script similar en MKL que cierra primero todas las posiciones rentables.

¿Podemos hacer lo mismo en tu guión?

Buena suerte

PD: Lo ha hecho. Sierra.

¿Y este script es para cuentas de red?
 
Vladimir Perervenko:

Gracias por el ejemplo.

En mi MKL, un script similar cierra primero todas las posiciones rentables.

¿Puedes hacer lo mismo en tu guión?

Buena suerte

PD: Lo has hecho. Lo había visto.

¿Y este script para las cuentas de red?

Yo suelo priorizar el cierre de posiciones en función del riesgo (tamaño de la posición), pero si quieres cerrar en función del beneficio global entonces sólo tienes que modificar la forma de ordenar los símbolos.

def open_position_symbols():
    positions = {}
    for p in mt5.positions_get():
        positions.setdefault(p.symbol, []).append(p.profit)
    symbols = sorted(
        positions,
        key=lambda s: sum(positions[s]),
        reverse=True
    )
    return symbols
 
nicholi shen:

Suelo priorizar el cierre de posiciones en función del riesgo (tamaño de la posición), pero si quieres cerrar en función del beneficio global, sólo tienes que modificar la forma de ordenar los símbolos.

Gracias

 
¿Se pueden utilizar scripts de Python para hacer backtesting en el terminal?
 
Dmitri Custurov:
¿Se pueden utilizar scripts de Python para hacer backtesting en el terminal?
No, sólo funcionan como scripts en el gráfico en un hilo separado.
 
MetaQuotes:
No, sólo funcionan como scripts en el gráfico en un hilo separado.

¿Se puede añadir una función para que el terminal pase el símbolo del gráfico y el marco temporal como argumentos de la línea de comandos al evocar un script de python soltándolo en el gráfico? Por ejemplo, se suelta el script de python en el gráfico EURUSD M15 y el comando para evocar el script sería

python mt5_script.py EURUSD 15

Para que podamos conocer el símbolo y el plazo desde el script de python

import sys
if len(sys.argv) == 3:
    chart_symbol, chart_tf = sys.argv[1:3]
 
nicholi shen:

¿Se puede añadir una función para que el terminal pase el símbolo del gráfico y el marco temporal como argumentos de la línea de comandos al evocar un script de python soltándolo en el gráfico? Por ejemplo, se suelta el script de python en el gráfico EURUSD M15 y el comando para evocar el script sería

Para que podamos conocer el símbolo y el plazo desde el script de python

La próxima versión beta estará disponible esta noche:

import sys

chart_symbol='unknown'
chart_tf=1

if len(sys.argv) == 3:
    chart_symbol, chart_tf = sys.argv[1:3];

print("Hello world from", chart_symbol, chart_tf)



>> Hello world from T.NYSE 15
Razón de la queja: