**** 12/11/2022 4:43:00 PM OnBarUpdate() - EnterShortStopMarket at 1.224
++++ 12/11/2022 4:43:00 PM OnOrderUpdate() - EnterShortStopMarket accepted at 1.224
---- 12/11/2022 4:44:00 PM OnOrderUpdate() - EnterShortStopMarket cancelled.
**** 12/11/2022 4:46:00 PM OnBarUpdate() - EnterLongStopMarket at 1.22446
++++ 12/11/2022 4:46:00 PM OnOrderUpdate() - EnterLongStopMarket accepted at 1.22446
++++ 12/11/2022 4:46:00 PM OnOrderUpdate() - EnterLongStopMarket filled at 1.22446
++++ 12/11/2022 4:46:00 PM OnExecutionUpdate() - ExitLongStopMarket at 1.22429882352941 for 1000 numLots
**** 12/12/2022 2:30:00 PM OnOrderUpdate() - Exit on session close Submitted
**** 12/12/2022 2:30:00 PM OnOrderUpdate() - Exit on session close Accepted
**** 12/12/2022 2:30:00 PM OnOrderUpdate() - Exit on session close Working
**** 12/12/2022 2:30:00 PM OnOrderUpdate() - Exit on session close Filled
The value of the stopPrice is perfectly outside the data range and not too close. Here's how the exit statement is written:
ExitLongStopMarket(BarsInProgress, false, execution.Order.Quantity, stopPrice, exitLongStopName, enterLongOrderName);
I've also performed it without the BIP and GTC arguments and that makes no difference.
I'm baffled how to debug this since the program never enters OnOrderUpdate or OnExecutionUpdate thereafter except when the session closes. Why nothing appears in OnOrderUpdate after the ExitLongStopMarket is executed is most baffling. My previous strategy developments always did. I've used both Print statements and the debugger within Visual Studio with breaks set in those methods. Any suggestion on how I might debug this?

Comment