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
Bueno, yo no lo bloquearía, por supuesto. Habría pasado por alto el error y habría decidido qué hacer con él.
Si se bloquea el EA en este punto, puede quedar una posición abierta por este EA, lo que sería un desastre.
Ahora has respondido a tu propia pregunta sobre la larga pausa. Se hace para esperar la señal para abrir una posición o establecer una orden.
Gracias, Vasily, una vez más por haberme llevado por el mal camino. Casi me apresuré a arreglar los códigos... Y gracias de nuevo por devolverme a mi camino :-)
:-) Ahora has respondido a tu propia pregunta sobre la larga pausa. Se hace con el fin de esperar la señal para abrir una posición o establecer una orden.
Gracias, Vasily, una vez más por haberme llevado por el mal camino. Casi me apresuré a arreglar los códigos... Y gracias de nuevo por devolverme a mi camino :-)
Para ser sincero, no entiendo la lógica.
Por ejemplo, hemos colocado una orden de 0,000001 lotes. El servidor, por supuesto, nos abofetea por ello.
En lugar de cambiar el lote (fuera de la función), hacemos una pausa.
Como resultado de esta ruptura podemos perder la señal para establecer una orden, pero deberíamos cambiar el lote en lugar de esperar.
Por eso no estoy de acuerdo con la pausa. Simplemente debemos dejar esta función y pasar el código de error hacia arriba y manejarlo allí.
Si seguimos mi camino, ¡podríamos no perder una operación rentable! Y puede que incluso tengamos una pérdida :)
P.D.: Te desviaré del camino falso :)
y he pensado, que hay que llamar a la función de cálculo de lote a la vez (y no ir a la parte superior), yendo a la parte superior sólo después del desbordamiento del contador de errores
¡¡¡Sí, por supuesto que hay que llamar a esta función inmediatamente, pero si se produce un error!!!
Salir a la parte superior llamo a una situación en la que tiene que salir de la función SetOrder.
Yo lo veo aproximadamente así
int ticket = SetOrder(.....);
si (ticket > 0) {
// todo bien} si no {
// corregir el error lógico
}
int SetOrder(....) // devuelve una entrada o un número de error sólo con signo negativo.
{
int ticket = OrderSend(....)
si (ticket < 0) {
// corregir los errores de orden de los conjuntos
}
}
Así que creo que hay que distinguir entre los errores lógicos y los errores de configuración del orden. Espero dar hoy un ejemplo de aplicación.
Para ser sincero, no entiendo la lógica.
He construido la función de cálculo del tamaño del lote de tal manera que sólo devuelve un lote incorrecto (cero) si no hay suficiente dinero. En otros casos, el lote se normaliza y se conduce dentro de los límites entre los tamaños mínimo y máximo. Si no hay suficiente dinero, hay que esperar a que se cierre alguna posición.
Si ha pedido un lote de 0,000001. Nuestro servidor seguramente nos ha dado un tirón de orejas.
¿Por qué lo hicimos? ¿Por qué aprobamos deliberadamente el tamaño de lote equivocado? ¿Cómo podemos justificar este comportamiento?
Simplemente debemos dejar esta función y pasar el código de error hacia arriba y manejarlo allí.
Sólo creo que su función es una función de biblioteca, es decir, universal, y por lo tanto debe dividir todos los errores en 2 categorías:
Функцию расчёта размера лота я строю таким образом, что неверный лот (ноль) она выдаст только в случае не хватки денег. В остальных случаях лот нормализуется и загоняется в рамки между минимальным и максимальным размерами. Если денег не хватает, то надо ждать, когда закроется какая-нибудь позиция.
bloque de comprobación de errores.
Esa es mi visión de este caso :) Como he escrito más arriba, espero dar hoy un ejemplo de aplicación.
Mi versión de la moda:
Mi versión del mod:
Estimado TheXpert, su código parece muy compacto. Lo cual, por supuesto, es una gran ventaja. >> Gracias.
Se adjunta un Asesor Experto que utiliza la función. He utilizado el AI Expert Advisor como base.
No he tenido tiempo de comprobar la función por tiempo. En otras palabras, creo que la señal debe ser revisada de nuevo después de 8 minutos.
Añadida la generación de errores del servidor de comercio que permitirá examinar el funcionamiento de la función en detalle y detectar errores.
errTest - secuencia de errores generados, sin error 0. Se trata de una secuencia aleatoria y no hay ningún tipo de trampa en ella.
Estoy esperando algunas críticas :)
Tal y como prometí, voy a publicar mi versión de la función.
El archivo adjunto contiene el EA donde se utiliza esta función. He utilizado como base el AI Expert Advisor.
No he tenido tiempo suficiente para comprobar cómo funciona el tiempo. Es decir, creo que hay que volver a comprobar la señal cuando hayan pasado 8 minutos.
Añadida la generación de errores del servidor de comercio que permitirá estudiar a fondo el funcionamiento de la función y detectar errores.
errTest - secuencia de errores generados, sin error 0. Se trata de una secuencia aleatoria y no hay ningún tipo de trampa en ella.
Estoy esperando las críticas :)
No me importa mucho la función, puedo decir una cosa :), no voy a ser original y decir como siempre :) -- demasiado sobrecargado.
Como resultado, el Asesor Experto se ha convertido en un código limpio y claro de 32KB en el que no tengo ganas de enredar.
Hay preguntas sobre el código.
1. Si desactiva el Asesor Experto, no volverá a funcionar hasta que se reinicie. ¿Por qué no hacerla esperar durante un periodo de tiempo relativamente largo?
2. La red neuronal, en primer lugar, nunca emite la señal de un plano. En segundo lugar, ¿cómo puedes esperar que optimice algo, si no tiene umbral? Al no tener umbral matas el 80% de su ya baja eficiencia (lineal, eso sí).
SZZH: No te ofendas, estoy pluriempleado como crítico en este hilo :) .