Problema con MT4 al abrir una operación y volver a cerrarla inmediatamente - página 6

 
peterc005:


Carpeta MT4\Experts\Logs:

17:28:48 FapTurbo50 EURUSDFXF,M5: open #2662451 buy 0.20 EURUSDFXF at 1.2909 ok

17:28:49 FapTurbo50 EURUSDFXF,M5: modificar #2662451 comprar 0.20 EURUSDFXF a 1.2909 sl: 1.2407 tp: 1.2929 ok


¿Cuáles son las siguientes líneas de este registro? Todas las líneas por favor y no "filtradas" por lo que consideres importante o no, sólo las entradas de registro en bruto. Especialmente todas las que tengan la misma o casi la misma marca de tiempo en todos los otros terminales también.


¿Tal vez también algún extraño automatismo FIFO en marcha? Ya he visto a los corredores mover automáticamente los stoplosses existentes sin previo aviso, tal vez algunos incluso están cerrando las operaciones existentes cuando se abren otras operaciones? En este caso habría que agradecer a las autoridades reguladoras que hayan conseguido "proteger" tu dinero.


¿Y cómo son sus niveles de margen libre cuando esto sucede? ¿Se acercan a un nivel peligroso?

 
Todavía no se ha demostrado de forma concluyente, pero sospecho que el problema es la Probabilidad EA

Aquí están las razones:

1) He apagado y encendido el Probability EA unas cuantas veces en varias cuentas, las veces que el Probability EA estaba funcionando parecen corresponder con las veces que tenía todas estas operaciones cerradas incorrectamente.

2) Me he dado cuenta de que FAP Turbo escribe los registros de apertura y cierre en el registro de expertos normalmente (gracias por la sugerencia 7bit).

3) Observé que las 50 operaciones de FAP Turbo que se cerraron después de un par de segundos tenían un registro de Apertura, pero no de Cierre en el registro de Expertos.

4) Observo que Probability EA parece no escribir en el registro de Expertos.

5) Esto implica que FAP Turbo abrió las operaciones correctamente, escribiendo un registro en el registro de Expertos. Luego, Probability EA cerró la operación, pero no escribió nada en el registro de Expertos. Basándose en la señal, FAP Turbo abrió otra operación, repitiendo el bucle muchas veces.

Las pruebas se acumulan, pero aún es demasiado pronto para sacar conclusiones. Me he puesto en contacto con el proveedor del EA Probability para obtener más información. También descompilaré el EA para ver si hay algún error lógico evidente.

 

¿Aparecen las flechas rojas (triángulos o flechas que apuntan a la izquierda) en el gráfico de Probability-EA en los momentos en que se cierran las operaciones FAP?

Cuando pasas el ratón por encima de estas flechas en el gráfico de ProbabilityEA para que aparezca la pequeña ventana amarilla de pistas, ¿los números de las entradas en estas pistas corresponden a las operaciones FAP mal cerradas? (por ejemplo, en el gráfico de la captura de pantalla que has publicado en el foro de FF)

 
peterc005: También descompilaré el EA para ver si hay algún error lógico evidente.

Inserte un Print() antes de cada OrderClose() y OrderCloseBy(), compile el código modificado y ejecute esto en lugar del original.


Busque la presencia (o ausencia ) de una llamada a OrderMagicNumber() cerca de cualquier OrderClose() o OrderCloseBy() en el código.

También busque cualquier cosa entre la comprobación y el cierre que pueda cambiar la orden actualmente seleccionada (como, por ejemplo, otro bucle sobre todas las órdenes para encontrar una orden de compensación o relacionada de otra manera, esto cambiaría la selección actual a algo completamente impredecible y un siguiente OrderClose(OrderTicket(),...) entonces inevitablemente causaría estragos en la cuenta). Cada orden debe ser comprobada con el número mágico antes de que pueda ser cerrada. No hacer esta comprobación o hacerla mal provocará este tipo de error porque cada EA tiene siempre acceso a todas las operaciones de la cuenta y es responsable de filtrarlas cuidadosamente.

No existe ningún mecanismo de filtro implícito por MT4 que de alguna manera proteja automáticamente un EA de otras operaciones en otros gráficos, cada EA debe implementar esto completamente por su cuenta (y puede fallar miserablemente).

 
7bit:

Inserte un Print() antes de cada OrderClose() y OrderCloseBy(), compile el código modificado y ejecute esto en lugar del original.


Busca la presencia (o ausencia) de una llamada a OrderMagicNumber() cerca de cualquier OrderClose() o OrderCloseBy() en el código.

También busque cualquier cosa entre la comprobación y el cierre que pueda cambiar la orden actualmente seleccionada (como, por ejemplo, otro bucle sobre todas las órdenes para encontrar una orden de compensación o relacionada de otra manera, esto cambiaría la selección actual a algo completamente impredecible y un siguiente OrderClose(OrderTicket(),...) entonces inevitablemente causaría estragos en la cuenta). Cada orden debe ser comprobada con el número mágico antes de que pueda ser cerrada. No hacer esta comprobación o hacerla mal provocará este tipo de error porque cada EA tiene siempre acceso a todas las operaciones de la cuenta y es responsable de filtrarlas cuidadosamente.

No existe ningún mecanismo de filtro implícito por parte de MT4 que de alguna manera proteja automáticamente a un EA de otras operaciones en otros gráficos, cada EA debe implementar esto completamente por su cuenta (y puede fallar miserablemente).

Hola 7bit,

me parece una buena idea, lo intentaré.

Saludos

Peter

 

Con respecto a un par de preguntas anteriores:

1) No creo que el uso de un corredor ECN (específicamente GoMarkets) hace una diferencia con este problema. Tuve el mismo problema con forex.com. En general, me gusta GoMarkets y creo que son buenos.

2) No creo que fuera relacionado con el margen o la equidad. La razón es que se añade "s/o" en los comentarios cuando se cierra una operación por falta de capital.

Peter

 

Resulta que el problema estaba en la versión 7.1 de Probability EA. Aquí está la respuesta del proveedor:

peterc005,

Este problema se solucionó con la v7.1.1 (a diferencia de la v7.1). Inicialmente disminuí el Número Mágico en 1 cada vez que se cerraba un ciclo (lo que notificaba al EA para que cerrara el ciclo). Esto funciona bien si el EA es el único que se ejecuta, pero cuando la gente quería usar este EA además de otros EAs, modifiqué el código para que el Número Mágico se mantuviera constante, y el EA usara otras formas de cerrar el ciclo.

Le enviaré una copia de la v7.1.1 y me hará saber si sigue teniendo el problema.

Michael

Aprecio la honestidad y la franqueza de los vendedores, pero este problema con el EA me costó unos 5.000 dólares y arruinó 3 cuentas durante unos meses.

 

"Inicialmente disminuí el Número Mágico en 1 cada vez que se cerraba un ciclo"

Parece que el desarrollador de este EA no sabe cuál es el propósito de los números mágicos. Esto significa que está en sus primeras etapas de experimentación, pero ya está vendiendo su código de principiante defectuoso y con errores por dinero. Esto confirma totalmente todo lo que he dicho sobre la calidad del código de estos EAs comerciales. Yo no confiaría en estas cosas por dinero.


La lección a aprender aquí debe ser: No confíes en ningún EA de código cerrado. La falta de disponibilidad de la fuente garantiza la mala calidad del código.

 

Estimado Peterc005

Tuve un problema similar en mi VPS que gira a cabo que otra instancia de metatrader forma el mismo directorio ha runnig en el backround y el cierre de las operaciones abiertas por el primer metatrader.

Pruebe esto cerró todos los MetaTrader y luego opent TaskManager y comprobar para ver si hay alguna instancia en Terminal.exe runnig, si es así reinicie su máquina y el problema será resuelto

Puedes buscar Ghost detector en google para saber más sobre este problema.