Errores, fallos, preguntas - página 2411
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Por favor, ejecute este código:Multicurrency iMA Trend 2.
Especifique "EURUSD,GBPUSD" en los ajustes ( parámetro Símbolos).
En mi configuración
todas las SL cerraron a los precios de sus símbolos. Es decir, no hay error de superposición de precios.
Por favor, ejecute este código:Multicurrency iMA Trend 2.
Especifique "EURUSD,GBPUSD" en los ajustes ( parámetro Símbolos).
En mi configuración
todas las SL cerraron a los precios de sus símbolos. Es decir, no hay error de superposición de precios.
Gracias, el error ha sido localizado. Ponga abajo.
hay dos errores.
№1. Tu error. En alguna parte del código. Usted está estableciendo el SL para la posición EURUSD usando el precio GBPUSD. El terminal no debería tener nada en contra.
№2. Error en el terminal. Si este SL se activa en el precio entonces inexistente en el flujo del EURUSD, utilizando el precio del GBPUSD.
https://www.mql5.com/ru/docs/constants/structures/mqltraderequest
Aparentemente, al enviar una solicitud de modificación, el campo de posición tiene prioridad sobre el símbolo. Imprimirreq.position
Sí, resultó tener razón, mi error es lógico:
en la estructura:
MqlTradeRequest m_request;
m_request.position = #3
m_request.symbol = GBPUSD
m_request.sl = 1.60704
número de posición real para GBPUSD #4
cuando se ejecuta OrderSend, el probador establece un stop para el símbolo correspondiente a la posición #3, que es eurusd.
Bichos de los probadores:
- no comprueba si m_request.position y m_request.symbol coinciden;
- establece un stop en 1,60704 para la posición de compra, el símbolo eurusd, que tiene un precio actual de 1,30935;
- en el siguiente tick establece un stop en 1,60704, aunque el precio real es 1,30935.
Gracias a todos. Espero que los desarrolladores de la plataforma vean el post.
Sí, resultó tener razón, mi error es lógico:
En la estructura:
MqlTradeRequest m_request;
m_request.position = #3
m_request.symbol = GBPUSD
m_request.sl = 1.60704
número de posición real para GBPUSD #4
cuando se ejecuta OrderSend, el probador establece un stop para el símbolo correspondiente a la posición #3, que es eurusd.
Bichos de los probadores:
- no comprueba si m_request.position y m_request.symbol coinciden;
- establece un stop en 1,60704 para la posición de compra, el símbolo eurusd, que tiene un precio actual de 1,30935;
- en el siguiente tick establece un stop en 1,60704, aunque el precio real es 1,30935.
Gracias a todos. Espero que los desarrolladores de la plataforma vean el post.
La ejecución de un stop para una posición de compra en 1,60704 al precio actual 1,30935 no es un error. Pero establecer un stop de compra al nivel de 1,60704 al precio actual de 1,30935 es un error.
Construir 2007
Función:
se supone que el resultado financiero de la transacción debe aparecer en la variable de beneficio, pero siempre resulta ser 0,0, y el valor en la variable de lote es siempre correcto.
¿Hay algún error? - ¿O estoy haciendo algo mal?
Construir 2007
Función:
se supone que el resultado financiero de la transacción debe aparecer en la variable de beneficio, pero siempre resulta ser 0,0, y el valor en la variable de lote es siempre correcto.
¿Hay algún error? - ¿O estoy haciendo algo mal?
DEAL_ENTRY_OUT o INOUT deben ser comprobados. Las operaciones _IN tienen un beneficio de 0
DEAL_ENTRY_OUT o INOUT deben ser vigilados. Las operaciones _IN tienen un beneficio de 0
Bueno, el primero del final de la lista está cogido, debería estar OUT
Bueno, es el primero del final de la lista, debería estar fuera
Si pasas TimeCurrent() en el endDate, sustitúyelo por TimeCurrent()+60 o algo así. Eso debería ayudar.
Si pasas TimeCurrent() en endDate, sustitúyelo por TimeCurrent()+60 o algo así. Esto debería ayudar.
No, sigue siendo 0,0.
No, sigue siendo 0,0.
Entonces, depúrelo. Imprima los tickets de transacción y vea en el probador lo que realmente se selecciona allí. Añadir un filtro por tipo de comercio.