Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Order can't be submitted. "The OCO ID cannot be reused"

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

    Order can't be submitted. "The OCO ID cannot be reused"

    Hello I have the same issue, I pressed Control+z "OCO" ico get disabled but I have the same message error.
    I also have another message error that says that order buy stop or buy stop limit cannot be put below the market touch order : BuyToCover 1 StopMarket @ 150.

    It's from a strategy ninjascript with an ATM.
    This is the code :

    if(Times[0][0].TimeOfDay > OrEnd.TimeOfDay && atmStrategyId.Length == 0 && CrossAbove(Close, ORHigh, 1))
    {
    isAtmStrategyCreated = false;
    atmStrategyId = GetAtmStrategyUniqueId();
    OrderIdB = GetAtmStrategyUniqueId();

    double buyPrice = 0.0;
    buyPrice = GetCurrentAsk() + 4 * TickSize;

    AtmStrategyCreate(OrderAction.Buy, OrderType.Market, buyPrice, 0, TimeInForce.Day, OrderIdB, "AtmOpStrategy", atmStrategyId, (atmCallbackErrorCode, atmCallBackId) =>
    {
    if(atmCallbackErrorCode == ErrorCode.NoError && atmCallBackId == atmStrategyId)
    {
    isAtmStrategyCreated = true;
    }
    });
    }

    if(Times[0][0].TimeOfDay > OrEnd.TimeOfDay && atmStrategyId.Length == 0 && CrossBelow(Close, ORLow, 1))
    {
    isAtmStrategyCreated = false;
    atmStrategyId = GetAtmStrategyUniqueId();
    OrderIdS = GetAtmStrategyUniqueId();

    double sellPrice = 0.0;
    sellPrice = GetCurrentBid() - 4 * TickSize;

    AtmStrategyCreate(OrderAction.Sell, OrderType.Market, sellPrice, 0, TimeInForce.Day, OrderIdS, "AtmOpStrategy", atmStrategyId, (atmCallbackErrorCode, atmCallBackId) =>
    {
    if(atmCallbackErrorCode == ErrorCode.NoError && atmCallBackId == atmStrategyId)
    {
    isAtmStrategyCreated = true;
    }
    });
    }

    if(!isAtmStrategyCreated)
    {
    return;
    }

    if(OrderIdB.Length > 0)
    {
    string[] status = GetAtmStrategyEntryOrderStatus(OrderIdB);

    if(status.GetLength(0) > 0)
    {
    if(status[2] == "Filled" || status[2] == "Cancelled" || status[2] == "Rejected")
    {
    OrderIdB = string.Empty;
    }
    }
    }
    else if(OrderIdS.Length > 0)
    {
    string[] status = GetAtmStrategyEntryOrderStatus(OrderIdS);

    if(status.GetLength(0) > 0)
    {
    if(status[2] == "Filled" || status[2] == "Cancelled" || status[2] == "Rejected")
    {
    OrderIdB = string.Empty;
    }
    }
    }
    else if(atmStrategyId.Length > 0 && GetAtmStrategyMarketPosition(atmStrategyId) == Cbi.MarketPosition.Flat)
    {
    atmStrategyId = string.Empty;
    }
    }

    Do you have any idea to resolve this issue.
    Thank you !​

    #2
    Hello Sacrifist13,

    The problem is not an OCO issue, its that the order was placed on the wrong side of the market and was rejected. You need to adjust your targets to avoid that from happening.

    Comment

    Latest Posts

    Collapse

    Topics Statistics Last Post
    Started by CarlTrading, 05-11-2026, 05:56 AM
    0 responses
    53 views
    0 likes
    Last Post CarlTrading  
    Started by CarlTrading, 05-10-2026, 08:12 PM
    0 responses
    32 views
    0 likes
    Last Post CarlTrading  
    Started by Hwop38, 05-04-2026, 07:02 PM
    0 responses
    195 views
    0 likes
    Last Post Hwop38
    by Hwop38
     
    Started by CaptainJack, 04-24-2026, 11:07 PM
    0 responses
    356 views
    0 likes
    Last Post CaptainJack  
    Started by Mindset, 04-21-2026, 06:46 AM
    0 responses
    277 views
    0 likes
    Last Post Mindset
    by Mindset
     
    Working...
    X