¿La etiqueta [tp] eliminada en algunos corredores? - página 3

 
cameofx:

[...] ¿Por qué MT4 y MT5 introducen OrderCloseReason() o algo así?

No lo sé... Pero es solucionable, así que no es un gran problema.
 
gordon:
No sé... Pero es solucionable, así que no es un gran problema.

Sí... ¿dónde puedo mantener una actualización de SL & TP entonces, OrderComment()?

Muchas novedades en MT5, por cierto, más elogios que quejas en general.

 
cameofx:

Sí... ¿dónde puedo mantener una actualización de SL & TP entonces, OrderComment()?

Na, yo no lo recomendaría (IMHO). Ver mi comentario anterior sobre los comentarios de sobreescritura del servidor(https://www.mql5.com/en/forum/123668/page2#267154). Desde que escribí ese post he encontrado casos en los que más de 6 caracteres son sobrescritos por el servidor (por ejemplo -> https://www.mql5.com/en/forum/124167), así que no me fiaría del todo.


Si se trata de TP/SL virtuales, entonces simplemente guarda sus valores en un array. Pero tendrías que incorporar capacidades de persistencia en el EA, de lo contrario estos valores se perderán en caso de fallo total (reinicio del terminal, apagón, etc.).

 
gordon:

Na, yo no lo recomendaría (IMHO). Ver mi comentario anterior sobre la sobreescritura de comentarios por parte del servidor(https://www.mql5.com/en/forum/123668/page2#267154). Desde que escribí ese post he encontrado casos en los que más de 6 caracteres son sobrescritos por el servidor (por ejemplo -> https://www.mql5.com/en/forum/124167), así que no me fiaría del todo.


Si se trata de TP/SL virtuales, entonces simplemente guarda sus valores en un array. Pero tendrías que incorporar capacidades de persistencia en el EA, de lo contrario estos valores se perderán en caso de fallo total (reinicio del terminal, apagón, etc.).

"...Si es un TP/SL virtual..." seguimos con el tema de comprobar si una orden se cierra por un SL/TP/Otro no? Si es virtual entonces sabríamos el precio de cierre y cómo se cerró.

¿Has resuelto las capacidades de la capa de persistencia Gordon? Gracias.

 
cameofx:

"...Si es un TP/SL virtual..." seguimos con el tema de comprobar si una orden se cierra por un SL/TP/Otro no? Si es virtual entonces sabríamos el precio de cierre y cómo se cerró.

Exactamente. La cuestión sólo se plantea cuando hay TP/SL del lado del servidor y además el EA puede o no cerrar las órdenes manualmente en determinadas circunstancias....


¿Has resuelto las capacidades de la capa de persistencia Gordon?

Claro. Hay una buena discusión sobre este tema aquí -> https://www.mql5.com/en/forum/119716.
 

Gracias,

https://forum.mql4.com/25078. - ofrece muchos grandes ideas, pero una cosa que puedo tomar de ella es que MT4 (tal vez -5 también, hasta la fecha), no es la acomodación de muchos aspectos de 'Trading Automatizado'.

En este momento lo que estoy tratando de lograr es el' TradingVirtualmente Automatizado' con la menor 'aprensión' posible. Simplemente no puedo hacer (todavía) que muchas soluciones de precaución, que incluso los veteranos como fbj necesita para hackear. Si los desarrolladores están dispuestos a hacer que sea realmente responsable de los comerciantes para el comercio automatizado, entonces, por todos los medios voy a dar rienda suelta a una EA en la cuenta real sin vigilancia durante x meses / años.

 
gordon:

Hmmm.... Quizás me estoy perdiendo algo, pero ¿hay algún caso en el que lo siguiente no sea suficiente?

   // select the closed order first and then do this:
   
   double sl_diff = MathAbs(OrderClosePrice() - OrderTakeProfit()),
          tp_diff = MathAbs(OrderClosePrice() - OrderStopLoss());
   
   if ( sl_diff > tp_diff )
      Print("order closed at tp");
   else
      Print("order closed at sl");
 

// Asumo aquí que una igualdad de sl_diff y tp_diff es imposible...?

De hecho hay 3 escenarios en los pedidos cerrados,

1. El precio alcanzó el valor de TakeProfit. (TP)
2. El precio alcanzó el valor de StopLoss. (SL)
3. Después de algún tiempo, el operador cerró la orden manualmente sin alcanzar el TP/SL.

Mi pregunta es: ¿Cómo saber los 3 motivos cerrados diferentes de mis órdenes históricas? Gracias.


 
Se respondió en el hilo. Ver la respuesta de cloudbreaker aquí -> https://www.mql5.com/en/forum/123668. Aquí no hay atajos, es la única manera de hacerlo.
 
Bien, gracias, Gordon. Estudiaré detenidamente este método. De hecho ahora no lo entiendo.
 

¿Puedo obtener la razón de la orden cerrada de los colores?

Porque he encontrado

1. si la orden se cierra por SL, el color del valor del stoploss es rojo,
2. Si la orden se cierra por TP, el color del valor de takeprofit es verde.
3. Si la orden se cierra manualmente, los colores de los valores no cambian.

Gracias.