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
Ayúdenme a salir de aquí
intente el multithreading pero el terminal se bloquea
He escrito una dll en C++.
Este es el código
Y el guión
Si cambias el código de la dll por este
Tengo el número 10 en la pantalla en el lugar del comentario (debería ser así) y luego me sale msgbox y 2 botones
el terminal no se bloquea hasta que pulso uno de los botones.
en cuanto lo pulso, aparece el mensaje que explica por qué se ha producido el fallo y cómo solucionarlo...
Señores, ¿alguien ha ejecutado la multidivisa en modo de visualización de precios de apertura con referencia a otros TFs?
Aquí está el gráfico diario:
El terminal no se bloquea hasta que pulso al menos uno de los botones.
En cuanto lo pulso, aparece el mensaje sobre la búsqueda de la causa del fallo y cómo solucionarlo...
Tenga en cuenta que el script MQL5 se descarga automáticamente después de la finalización de OnStart, incluyendo su DLL.
Es decir, has creado un hilo con una ventana modal colgada en la memoria, y el taburete se ha desprendido de él. Después de cerrar la ventana modal vuelve a la nada.
En tu caso, necesitas esperar explícitamente hasta que todos los hilos de la DLL terminen de forma normal y garantizada antes de terminar el script MQL5.
Tenga en cuenta que el script MQL5 se descarga automáticamente después de la finalización de OnStart, incluyendo su DLL.
Es decir, hay un hilo con una ventana modal colgada en la memoria, y el taburete se ha desprendido de él. Después de cerrar la ventana modal, vuelve a la nada.
En tu caso, antes de terminar el script MQL5, tienes que esperar explícitamente a que todos los hilos de la DLL terminen normalmente y se garantice.
Si no hay una sola pérdida en una serie de operaciones, el FACTOR DE GANANCIA y el RATIO DE PARTICIPACIÓN toman algunos valores irreales/extremos. ¿Es un error o hay que tener en cuenta esos momentos y procesarlos de alguna manera? ¿Cómo hacerlo correctamente?
EMPTY_VALUE (igual que DBL_MAX)
Por supuesto, se puede aplicar algún nan indefinido, pero entonces no se pueden hacer comparaciones.
EMPTY_VALUE (igual que DBL_MAX)
Por supuesto, puedes utilizar algún nan indefinido, pero entonces no puedes hacer comparaciones.
Si no hay pérdidas en una serie de operaciones, los valores de PROFIT FACTOR y SHARPE RATIO toman algunos valores irreales/extremos. ¿Es un error o hay que tener en cuenta esos momentos y procesarlos de alguna manera? ¿Cómo hacerlo correctamente?
Aparentemente hay un error, porque el Factor de Ganancia no debería calcularse con valores negativos, y como en este caso con ausencia de operaciones negativas.
Simplemente, si tomamos la fórmula de forma global (Beneficio Bruto/Pérdida Bruta) entonces en ausencia de operaciones negativas obtenemos la división por cero, y cuando la Pérdida Bruta es mayor obtenemos un número inferior a 1, lo que tampoco es correcto para el análisis posterior, porque la diferencia entre dos factores de beneficio positivo será muchas veces mayor que la diferencia entre dos convencionalmente negativos.
Aparentemente hay un error, ya que el factor de beneficio no debería calcularse con valores negativos, y como en este caso con ninguna operación negativa.
Ya se ha dicho dos posts más arriba que esto no es un error, sino una señal de imposibilidad de calcular este indicador.
Aunque puedes hacer un truco, en cada cálculo añade 1 céntimo tanto al Porofit Bruto como a la Pérdida Bruta.
Entonces la fórmula de avance sería ((Porofit bruto+0,01)/(Pérdida bruta+0,01))
La fórmula para calcular el valor recíproco (cuando la pérdida bruta es mayor)
Hacer -((Pérdida bruta+0,01)/(Porofit bruto+0,01))
Bueno, está claro que la Pérdida Bruta y el Porofit Bruto son módulos.
Entonces la línea será simétrica en ambos lados, lo cual es bueno para el AG y no habrá situaciones no calculables en absoluto.
Pero lo más probable es que no le sirva a usted, sino a la gente que está escribiendo sus propios criterios de optimización.