A ver si me podéis echar una mano con el siguiente código, cls rafa7 si estáis por ahí para echarme un cable os lo agradecería.
Intento colocar 4 ordenes con entradas en diferentes puntos por ejemplo +5 , +7, +10 y +15 ticks de forma que cuando se ejecuten la forma de salir es por stop o por profit (OCO) pero el problema que tengo es que no consigo cuando se ejecuta el profit o el stop por ejemplo de los dos primeros enter, no cancela las otras dos entradas.
Dicho el problema os pongo el código que pongo porque no he conseguido en ningún momento cancelar orden por orden asignándola a un IOder.
Código: Seleccionar todo
Si la primera entrada da profit, cancelar las otras 3.
entryLong1 = EnterLongLimit(0, true, numContracts, tradePrice, "Long1");
entryLong2 = EnterLongLimit(0, true, numContracts, tradePrice2, "Long2");
entryLong3 = EnterLongLimit(0, true, numContracts, tradePrice3, "Long3");
entryLong4 = EnterLongLimit(0, true, numContracts, tradePrice4, "Long4");
CancelOrder(entryLong2);
CancelOrder(entryLong3);
CancelOrder(entryLong4);
No sé que hago mal, nunca me cancela el resto
SetStopLoss("Long1", modostop, tickstop, false);
SetProfitTarget("Long1", modoprofit, tickprofit);
Que ocurre que a la hora de poner las ordenes para que cancele el resto de entradas, no sé que condición utilizar para meter esas cancelorder de forma que identifique "oye que ha saltado el profit o el stop". Utilicé el metodo de profit y stop porque al meter las ordenes en plan exitlonglimit nunca me colocaba los exit pendiente de que se hicieran entonces lo hice de forma individual con su profit y stop.
Fuera aparte de la cuestión, ¿Porqué el foro cada vez que coloca un mensaje requiere aprobación? Es que en mi opinión perjudica al flujo de información, no?¿
Gracias chicos por adelantado.