Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Unlimited risk of position using oco orders - because of rejected stop order

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Unlimited risk of position using oco orders - because of rejected stop order

    I would like to point out a specific problem from using OCO order management in NT8.

    What is the usual way of use?

    Placing an OCO strategy creates a live entry order in the order book.
    Same time an attached stop and target order is hold back on the server until the entry order gets an execution.

    With the execution of the entry order, the stop and target order(s) will be placed into the order book as well.

    Yesterday i had a trade activated exactly this way ... but the whole thing went completely wrong

    Because of a news flash the market was in fast market conditions and i got a fill for my -3 CL SHORT order at 57.30.

    Usually with this fill the stop order at 57.37 and the target order(s) are placed.

    But in this case the price of crude was immediately at 57.40 and the system showed a rejection info for the stop order - because "buy order stop price must be above last trade price ExchangeRejectCode = 2061"

    What does this mean the second it happened?

    i was SHORT -3 CL that had to be stoped with -7 ticks = -210 USD without slippage
    i still was SHORT -3CL with -10 to -15 ticks = -300 to -450 USD and with no active Stop order

    Luckily the price came back to entry i closed the position ... BUT

    What does this error mean worst case?

    Lets do the math ...

    Imagine you are a well educated trader with a nice account size and are able to manage bigger positions.

    You place an order to SHORT -50 ES at 3105 with a stop of 2 points (8 ticks) at 3107 -max risk without slippage 50 x 50 x 2 = -5000 USD RISK

    because of a news the market jumps in ES by 20 points in a second

    you get the fill of -50 ES at 3105 and same second ES trades at 3125 ... your stop order 3107 is rejected because ... buy order stop price 3107 must be above last trade price 3125

    so instead of being stoped with -5000 you still have a open position with actual -20 x 50 x 50 = -50.000 unrealized loss !!!

    and you did nothing wrong - your risk/reward management was perfect as always - but there was an technical issue you couldn't even imagine and you were forced into an unlimited risk position

    I contacted Ninja support for this issue and got the following answer:

    Hello Thomas,

    Thanks for writing in.

    You're correct to say that ATM strategy exit orders are not placed until the entry order is filled. In very fast moving markets this can result in those orders being rejected and leaving you in an unprotected position. This is not a bug, but an expected result of very specific market circumstances along with your ATM settings.
    The risk involved in using NinjaTrader (and electronic trading in general) is outlined in the help guide risk disclosure and risks of electronic trading with NinjaTrader as well as the EULAwhen downloading the platform.

    As you said, if the stop and target orders are submitted along with the entry order, this means that any of those three orders (entry, stop, target) has a chance to fill. Obviously in an ideal world the entry would fill and your target would be hit which would cancel your stop and put money in your account, but that is not how the market works unfortunately.

    There is no way to work around this limitation currently as NinjaTrader has no control of the underlying order routing technology but must rely on the order routing technology of the connection. For example, when using NinjaTrader Brokerage, you typically connect to a CQG-based account.

    While there are plans to bring everything under one roof and control the order routing technology which would allow for the order submission behavior you desire, it's simply not possible at this time.

    I dont care if this is an issue of NT or other software or an OCO handling issue from the brokers!

    If i use an OCO order the entry and the stop order has to be placed same time - the target orders have to be placed only when the entry order is filled.

    All other handlings doesn't make sense in my eyes and putting the accounts of each trader on risk. The actual OCO order handling should be changed by all participants (software and broker).

    Please add your experience in similar case. I am wondering that this issue wasn't addressed and fixed for so long.

    "This is not a bug, but an expected result? " - I would never expect this, because it doesn't make sense in any kind of risk management!




    #2
    Twingo445 , you were speaking with me via email on this. Thanks for including my email reply to you. It summarizes the current expectations. I just wanted to provide some further clarification as you've now asked some additional questions regarding what occurred:

    Originally posted by Twingo445 View Post

    But in this case the price of crude was immediately at 57.40 and the system showed a rejection info for the stop order - because "buy order stop price must be above last trade price ExchangeRejectCode = 2061"

    What does this mean the second it happened?
    The error is quite literal. The buy stop order attempted to be submitted at an invalid price below the current price. As you mentioned, the market moved very rapidly (in likely less than one second) upwards. By the time NinjaTrader submitted your order after your entry filled, the market had already passed the order. This is a result of market volatility at the time and your ATM settings.

    I would recommend speaking with your broker as there may be additional broker-side risk management options that the platform would have no control over.

    Comment


      #3
      Yes Patrick - i can understand that the second NinjaTrader was submitting the order the exchange rejected because live price was too high. At the end there eis only one solution to fix this for any future case - entry and stop order has to be placed same time. I think its an issue how the brokers are handling OCO orders so far. But as you are providing brokerage services as well and you have thousands of traders using your software, i think it is in the interest of all of us to work on a solution with brokers, software providers , traders as well. You have the direct contact to the brokers, your development team is connected with their trading development team. I think knowing this kind of huge issue, NinjaTrader should address this with any broker and their own brokerage unit as well. May be you can be the first broker offering the right way to handle an OCO order and can sell this feature as a special only offered from your brokerage unit so far. Or you can increase the pressure to other brokers to follow. Everybody is urging traders to have risk management rules to stay with to protect their accounts. You can not tell me that you are willing to leave an issue like that open, adding an unlimited risk to any kind of trader, doesn't matter he is trading with great risk management rules or not.

      Comment

      Latest Posts

      Collapse

      Topics Statistics Last Post
      Started by Christopher_R, Today, 12:29 AM
      0 responses
      10 views
      0 likes
      Last Post Christopher_R  
      Started by sidlercom80, 10-28-2023, 08:49 AM
      166 responses
      2,235 views
      0 likes
      Last Post sidlercom80  
      Started by thread, Yesterday, 11:58 PM
      0 responses
      3 views
      0 likes
      Last Post thread
      by thread
       
      Started by jclose, Yesterday, 09:37 PM
      0 responses
      8 views
      0 likes
      Last Post jclose
      by jclose
       
      Started by WeyldFalcon, 08-07-2020, 06:13 AM
      10 responses
      1,415 views
      0 likes
      Last Post Traderontheroad  
      Working...
      X