I am currently using the advanced ordering flow (per the recommended NT examples) which means triggering entries in onBarUpdate() but setting both my Target and Stop in the onExecution() method after assuring that my Entry has been properly filled. If you're experienced with NT order flow then I'm sure you are familiar with all that and that I don't need to elaborate.
Now let's assume I have seen a price pullback that justifies an exit - I now have various options of how to get out:
1) I have already a stop in place, which was set as an initial stop loss (ISL) in my onExecution method and which was later propagated along (manually - I don't use NT TrailingStops). So I could theoretically just set that stop to the current Close[0]. I would prefer doing that in my onExecution method but it's not going to be called unless there is an execution scheduled, right? So I would have to do this call in the onBarUpdate() method I suppose.
2) Upon triggering an exit point I could set an Exit order to the current Close[0] - again in my onBarUpdate method. This would automatically close out my open Entry and Stop orders.
3) I could do a variation of 2) in that I set a very distant Exit in my onExecution method right after my Entry - let's say I would set it to Double.MaxValue (for a long) or 0 for a short. So now I have a faux stop in place that will never get hit. Then, when I am ready to exit I reassign the Exit order in onBarUpdate. Not sure if there's an advantage of doing that...
Which of those three approaches would you choose? I'm trying to keep my order flow as clean as possible and any suggestions would be appreciated. If anything is unclear please ask away.
Comment