Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 204
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
Deberíamos arreglar la lógica por completo.
Lo siento, pero no estoy seguro de a qué te refieres con mi lógica cuando dices que hay que arreglarla.
Lo que es ilógico en mi idea
- si la orden se cierra en el stop
-El siguiente después de esta orden para abrir una orden con un volumen igual al volumen de la última orden que cerró en el stop multiplicado por 2(3,4...)
- si la orden se cierra por un motivo distinto a un stop.
la siguiente orden para abrir un volumen regular, por ejemplo 0,1 lote.
Lo que es ilógico en mi idea
Definitivamente con una lógica equivocada. En primer lugar, traduzca el fragmento resaltado de su mensaje al ruso.
A continuación, elimine las secuencias de operadores condicionales de su código. Y entonces llegarás al mago y la vida mejorará.
Estoy de acuerdo en que el fragmento asignado no está del todo claro ni siquiera para mí.Sólo entiendo que los compañeros mayores quieren decir que mi error de alguna manera
relacionado con los números mágicos de los pedidos..... cómo exactamente no lo he entendido todavía.
P. ¿La lógica incorrecta está relacionada con los números mágicos de las órdenes?
PREGUNTA: ¿De qué parte del código se eliminan las secuencias de operadores condicionales? Desde starta, o desde el cuerpo de la función personalizada isCloseLastPosByStop
P. Si las elimino, ¿qué información obtendré después?
Gracias.
Bueno, aquí tiene sentido, excepto que no es tuyo (la idea).
Estoy de acuerdo en que el fragmento resaltado no está del todo claro ni siquiera para mí.Sólo entiendo que los compañeros mayores quieren decir que mi error de alguna manera
está relacionado de alguna manera con los números mágicos de los pedidos..... cómo exactamente no lo he entendido todavía.
P. ¿La lógica incorrecta está relacionada con los números mágicos de las órdenes?
PREGUNTA Elimine las secuencias de sentencias condicionales ¿de qué parte del código? Desde starta, o desde el cuerpo de la función personalizada isCloseLastPosByStop
PREGUNTA Si los quito - qué información obtendré después.
Gracias.
Andrey, el término "lógica" significa aquí lo que se describe en el código. Personalmente no quiero entender todos los detalles de tu código, pero viendo la secuencia if(A) if(B) if(C) D; entiendo que no eres muy bueno en álgebra lógica. Por cierto, el intérprete bien puede fallar ante tales construcciones.
Definitivamente con una lógica defectuosa. Para empezar, traduce el fragmento destacado de tu post al ruso.
A continuación, elimine las secuencias de operadores condicionales de su código. Y entonces llegarás al mago y la vida mejorará.
En este post dices que mi lógica es errónea, y en varios posts más abajo estás de acuerdo con esta lógica....
En este post dices que mi lógica es errónea, y unos pocos posts después estás de acuerdo con esa lógica....
Un buen hombre dijo una vez: el orden libera la mente.
Tu código es un desastre, por lo que tu mente no es libre.
Andrew, por "lógica" aquí nos referimos a lo que se describe en el código. Personalmente no quiero entrar en detalles de todo tu código, pero viendo la secuencia if(A) if(B) if(C) D; entiendo que no eres muy bueno en álgebra lógica. Por cierto, el intérprete bien puede fallar ante tales construcciones.
Entonces, ¿no es bueno que haya tantas sentencias if seguidas?
if (ot==0)
if (Bid==Price)
//===============================================================
if(((Open[1]-Close[1])>100*Point)&&((Open[1]-Close[1])<120*Point))
if(((High[1]-Open[1])>40*Point)&&((High[1]-Open[1])<60*Point))
if(((Close[1]-Low[1])>40*Point)&&((Close[1]-Low[1])<60*Point))
o
for (i=k; i>=0; i--) {
if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY) {
if (OrderMagicNumber()!=mn) continue; // si el mago se equivoca, pasa al siguiente
if (OrderSymbol()!=sy) continue; // si el símbolo es incorrecto, pasa al siguiente
if (OrderType()!=op) continue; // si el tipo es incorrecto, pasa al siguiente
if (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
Un buen hombre dijo una vez: el orden libera la mente.
Tu código es un desastre, por eso la mente no es libre.
solnce600:
Por supuesto, la primera construcción es defectuosa y puede perturbar al intérprete.
Además, el magik es un número entero, no un doble.
Además, una comparación estricta de los doblajes es un rastrillo.
... ... ...
Poner las cosas en orden, no ser perezoso para escribir comentarios, sobre todo porque todavía no tienes experiencia.
Pruebe el código leyendo y ejecutándolo usted mismo, en lugar del intérprete, por fin.