"Error "No se encuentra el pedido
3 respuestas
odomike
hace 12 años #111948
Hola,
Decidí crear un EA basado en el sistema de trading manual SonicR (http://www.forexfactory.com/showthread.php?t=114792). En lugar de utilizar los mismos indicadores personalizados que utilizaron en la estrategia, decidí hacer uso de los indicadores estándar de MT4 (EMA 34 High y Low, CCI Period 63, SMA 10 Close) para replicar la estrategia. Esto es para asegurarme de que no encuentro ningún problema con SQ EA Wizard. No tuve ningún problema con la configuración de la estrategia y las reglas de operación en SQ, pero después de guardar el archivo .mql4 y volver a probar en metatrader 4, siempre obtengo este error "ORDER CANNOT BE FOUND" en el diario del probador y el EA no coloca ninguna operación en absoluto. Es tan confuso porque me fui a través de la estrategia y las reglas de negociación una y otra vez y otra vez para asegurarse de que no hay errores de ningún tipo y realmente no puedo ver ninguna. Entonces, ¿por qué estoy recibiendo estos errores?
¿Puede alguien ayudarme a resolver este problema? Agradezco mucho todos sus amables gestos.
Gracias de antemano.
~Michael.
N.B: Como no utilicé ningún indicador personalizado al crear la estrategia, puedes replicarla muy fácilmente en tu ordenador.
0
stearno
hace 12 años #123679
Odomike,
El problema es que 3 reglas se cruzan por encima/por debajo al mismo tiempo en este EA. Una buena regla general es tener sólo una regla cruzar por encima / por debajo, mientras que las otras reglas están utilizando > o < en su lugar.
Puse sus indicadores en un gráfico para mostrar por qué.
Las pequeñas líneas azules verticales muestran cuando la vela cruza por debajo de MA1, luego MA2, y luego cuando CCI cruza por debajo del nivel 2. Hay 6 velas entre cuando la primera MA cruza y el cruce del CCI. Dado que no todas se cruzan exactamente en la misma barra, es por eso que usted está recibiendo el mensaje de error.
Así que usted debe utilizar la Cruz por debajo / por encima de la última cosa que se cruzan en la secuencia de los tres indicadores. Por ejemplo, si CCI es siempre el último elemento en cruzar, entonces puede utilizar estas reglas:
Largo
El CCI supera el nivel 1
Oferta > MA1
Oferta > MA2
Si un indicador no es siempre el último en cruzar, es decir, pueden cruzar en cualquier orden, entonces usted puede escribir las reglas para que coincida con esto. Así que sus reglas podrían ser:
Largo
((( CCI cruza por encima del Nivel 1
Oferta > MA1
Oferta > MA2)
O (ICC > Nivel 1
La oferta cruza por encima de MA1
Oferta > MA2)
O (ICC > Nivel 1
Oferta > MA1
La oferta cruza por encima de la MA2)))
Espero que esto ayude.
-Stearno
0
odomike
hace 12 años #123711
0
stearno
hace 12 años #124327
Michael,
Buenas preguntas.
Para limitar por tiempo, he adjuntado capturas de pantalla de lo que hago personalmente. Utilizo la hora comparada con una variable. A continuación, establezco las variables en los parámetros de las horas que quiero negociar.
Personalmente utilizo dos conjuntos de horas para tener la posibilidad de operar en dos sesiones en un día (por ejemplo, London Open y NY Open). Utilizo parámetros para establecer las variables de modo que pueda optimizar estos parámetros. Usted puede tomar esta misma idea y hacer muchas variaciones que se ajuste mejor a lo que usted desea.
Creo que tu estrategia tiene buena pinta. ¿Has intentado hacer un backtest? Por cierto, he descubierto que siempre es mejor hacer primero un backtest y ver que las órdenes se están cumpliendo y tal. Pero entonces voy a hacer un backtest visual para ver con los indicadores de la EA va a utilizar en el gráfico para que pueda ver visualmente cada vez que la EA se supone que abrir o cerrar una orden y asegurarse de que está haciendo lo que quiero. Entonces podré deducir por qué no lo está haciendo y aprender cómo decirle mejor al ordenador a través de estas condiciones cómo hacer lo que quiero que haga.
En cuanto a tus otras preguntas sobre cuándo utilizar >< y cuándo utilizar cruz por encima/por debajo.
Una forma fácil de recordar que utilizo para mantenerlos diferenciados es: cruces arriba / abajo, el inicio de esa barra debe estar en un lado y el final de la barra está en el otro lado.
Con ><, es mucho más flexible, ya que elegir esta opción sólo significa que la barra debe estar por encima o por debajo del elemento de comparación. No importa si ha estado por encima ahora, muchas barras atrás, siempre ha estado por encima, etc. Todo lo que importa es en este momento cuando el EA está ejecutando esta regla, debe ser mayor o menor que (por encima o por debajo).
He incluido un pequeño gráfico para ilustrarlo con imágenes. La línea roja es la media móvil.
Si dijera Close[1] < Moving Average, entonces la barra 'A' es lo que obtengo.
Si dijera Close[1] > Moving Average, entonces la barra 'C' es lo que obtendría.
Si digo que Close[1] cruza por encima de la Media Móvil, entonces la barra ' B' es lo que obtengo.
Básicamente, tenemos que preguntarnos: "En ese momento (En el ejemplo anterior, estamos utilizando el cierre de la última barra en ese momento, Close[1]), ¿quiero que mi indicador esté por encima del cierre, por debajo del cierre, o quiero el mínimo de la última barra en un lado del indicador y el máximo en el otro lado.
Quizá un ejemplo pueda ayudar. He aquí un ejemplo de algo que aprendí al utilizar estas comparaciones:
Cuando se utiliza > 30 pips. Así, cuando la orden a 29 pips de ganancia y la siguiente fue a 30 pips, la regla desencadenó la acción de cerrar 50% de la orden. En la siguiente barra, la orden fue a 31 pips de ganancia. Adivine. El beneficio de la orden sigue siendo superior a 30 pips. Así que la acción se activó de nuevo y cerró 50% de la orden. Esto continuó hasta que sólo había un mini lote y no podía cerrar 50% más. Pero voy a decir, backtesting esto era divertido porque cuando me gustaría ver la EA visualmente, se cerraría órdenes como un spray ametralladora.
Así que me di cuenta de la causa de esto fue porque he utilizado Profit> 30 pips. Y lo que no recordaba era que 31, 32, 33, 34 pips son todos mayores que 30. Así que usé cerrar 50% cuando Profit cruza por encima de 30 pips. Así que esto funcionó, iría de 29 a 30 pips en una barra, y luego cerrar 50% de mi orden. Así que ahora cuando subió a 31, 32, 33, 34 pips de ganancia, no cerraría más órdenes.
Pero el problema con esta regla era cuando la ganancia volvía a bajar a 25, luego volvía a subir a 29 y 30 y cerraba 50% de la orden porque la regla se cumplía de nuevo. (Esto no está relacionado, pero la forma en que lo resolví fue cuando la regla cerró 50% de la orden, también estableció el valor de una variable a 2. Entonces tenía otra condición añadida a la regla que decía no hacer un cierre parcial cuando esa variable = 2.) Esto solucionó mi problema e hizo que sólo se cerrara una vez)
Espero que lo anterior le sirva de ayuda.
-Stearno
0
Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)