TTL SELL Orders Not Auto-Cancelling After Expiry (NFO – Futures)

chaitanyad
Hello Zerodha Team,

I am observing an issue with TTL (Time-To-Live) validity orders for SELL transactions where the orders are not getting auto-cancelled after the configured TTL duration.

Affected Order IDs
• 260128220507850 (NESTLEIND26FEBFUT)
• 260128220745227 (SUNPHARMA26FEBFUT)

Order Configuration (Common)
• Exchange: NFO
• Product: NRML
• Order Type: LIMIT
• Transaction Type: SELL
• Validity: TTL
• TTL Duration: 75 minutes
• Variety: regular
• Status Observed: OPEN (even after TTL elapsed)

Sample Order API Response (One Example)

{
"order_id": "260128220507850",
"exchange": "NFO",
"tradingsymbol": "NESTLEIND26FEBFUT",
"order_type": "LIMIT",
"transaction_type": "SELL",
"validity": "TTL",
"validity_ttl": 75,
"product": "NRML",
"quantity": 500,
"price": 1296.4,
"status": "OPEN",
"order_timestamp": "2026-01-28T10:16:31",
"exchange_timestamp": "2026-01-28T10:16:31",
"pending_quantity": 500,
"filled_quantity": 0
}

Expected Behavior

Based on TTL order documentation:
• Order should be automatically cancelled by the system after 75 minutes
• Order status should transition to CANCELLED / EXPIRED

Actual Behavior
• Order remains in OPEN state
• No expiry or cancellation triggered even after TTL duration elapsed
• Requires manual cancellation

Clarification Required

Could you please help confirm:
1. Is TTL auto-expiry handled differently for SELL orders compared to BUY orders?
2. Are there any exchange-level constraints (NFO segment / Futures) where TTL cancellation may not trigger reliably?
3. Does TTL countdown depend on exchange time, system time, or order update timestamp?
4. Is this expected behavior or a potential issue on the OMS / API side?

This behavior impacts automated trading systems which rely on TTL for safe order management and risk control.

Looking forward to your clarification.

Thanks in advance.
Sign In or Register to comment.