
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
¿Y si el pedido es cancelado por el servidor?
Entonces en el siguiente tick el EA verá que no hay posiciones, y todo estará bien. Pero no habrá duplicación.
Creo que al contabilizar las órdenes de mercado, deberíamos devolver WRONG_VALUE, por ejemplo, las posiciones no pueden ser inferiores a cero. Esto será una señal de que hay una orden de mercado no registrada. Pero no sume el número de puestos.
Esto depende de la lógica de la ST específica.
En el caso más básico en el que se permite una operación en el mercado, se debe devolver cualquier valor distinto de 0. 1 también servirá.
Entonces en el siguiente tick el asesor verá que no hay posiciones y todo estará bien. Pero no habrá duplicación.
Depende de la lógica de la ST en particular.
En el caso más básico, cuando se permite una operación en el mercado, basta con devolver cualquier valor que no sea 0, 1 servirá.
Este (el Asesor Experto) ya recibirá, en este tick, un valor mayor que la cantidad de órdenes de mercado. Es decir, en realidad son dos, pero la función dará como resultado 3.
Creo que este no es un comportamiento normal. Siempre debemos descansar un número válido, sin posiciones virtuales, que pueden no estar ahí.
Al fin y al cabo, hay estrategias que requieren cálculos precisos para un número preciso y definido de posiciones, volúmenes, niveles agregados de stop/parada, etc.
Depende de la lógica de la ST en particular.
En el caso más primitivo, cuando se permite una operación en el mercado, basta con devolver cualquier valor distinto de 0, 1 también servirá.
Andrew, una función a la que se le pide cantidad o volumen o cualquier otro dato cuantitativo está obligada a dar su valor exacto.
No es que estemos jugando con juguetes :)
Andrew, una función a la que se le pide cantidad o volumen o cualquier otro dato cuantitativo está obligada a dar su valor exacto.
Estás viendo un ejemplo concreto de un EA con una operación en el mercado, y está escrito de forma incorrecta el 99% de las veces. Todavía hay que llegar a los complejos.
Si realmente quieres, cambia el nombre de la función a IsPosition y hazla booleana: return(Res>0);
Se considera un ejemplo específico de un EA con una operación en el mercado y se escribe mal el 99% de las veces. Todavía hay que llegar a los complejos.
Si realmente quieres, cambia el nombre de la función a IsPosition y hazla booleana: return(Res>0);
Pues no... es un ejemplo de alguna función de biblioteca común "para todas las ocasiones"...
Por cierto, interesante propuesta de convertirla en una función booleana -siguiendo el ejemplo de muchas funciones estándar de mql5- con retorno del resultado de la ejecución como valor bool, y número de posiciones pasando el valor a una variable por referencia.
Pues no..., se plantea un ejemplo de función de biblioteca genérica "para todas las ocasiones"...
Sí, universal.
Sí, universal.
La solución sugerida por usted contiene una inexactitud de cancelación de pedidos por parte del servidor. Me gustaría debatir sobre cómo hacer frente a esta inexactitud. Sin ellos la oferta es cruda.
Dejemos de lado la MT5 y pasemos a la MT4. Un EA está operando. De repente, el bróker comete un error técnico (no tú) y coloca una posición en tu cuenta, que pasa con éxito el filtro del Asesor Experto amigo o enemigo -Magia, Símbolo, etc. Segundos después, el corredor corrige su error: borra (ni siquiera cierra) su posición de su cuenta.
¿Se romperá su ST?
Recuerdo una situación en la que un gran broker amante de los Asesores Expertos hizo un gran trabajo. Por "error" ingresó una cantidad muy elevada en la cuenta. En consecuencia, el Asesor Experto abrió una posición con un lote muy grande. Entonces el corredor corrigió el "error": retiró el dinero acreditado incorrectamente. La cuenta se cerró con un stop loss.
Dejemos de lado la MT5 y pasemos a la MT4. Un EA está operando. De repente, el bróker comete un error técnico (no tú) y coloca una posición en tu cuenta, que pasa con éxito el filtro del Asesor Experto amigo o enemigo -Magia, Símbolo, etc. Segundos después, el corredor corrige su error: borra (ni siquiera cierra) su posición de su cuenta.
¿Se estropeará su ST?
Recuerdo una situación en la que un gran broker amante de los Asesores Expertos hizo un gran trabajo. Por "error" ingresó una cantidad muy elevada en la cuenta. En consecuencia, el Asesor Experto abrió una posición con un lote muy grande. Entonces el corredor corrigió el "error": retiró el dinero acreditado incorrectamente. La cuenta se cerró mediante un stopout.
Artyom Trishkin:
Мы говорим не о ТС.
En el ejemplo estamos hablando de la situación específica de CT descrita. Y ahí la pregunta queda sin respuesta.
La función devuelve lo que está físicamente en la cuenta. Y miente exactamente lo mismo que mentiría en MT4. Es decir, todo es normal.