Strasmore Research
تعلیمی مواد Matt Connorاز Matt Connor · اپ ڈیٹ شدہ 2026-09-14

Options Stop Orders: trigger کیسے ہوتے ہیں؟

Options میں stop order عموماً exchange پر نہیں رکھا جاتا۔ broker اسے last trade، bid یا mark پر trigger کر کے live order بناتا ہے، اور یہی انتخاب fill طے کرتا ہے۔

آپشن پر stop order کس چیز سے trigger ہوتا ہے؟ زیادہ تر retail accounts میں exchange کو stop کا علم ہی نہیں ہوتا۔ broker اسے اپنے سسٹم پر رکھتا ہے اور contract کی last trade، bid، ask یا mark کے stop price تک پہنچنے پر اسے live order میں تبدیل کرتا ہے۔ broker ان میں سے کس قیمت کو دیکھتا ہے، اس سے طے ہوتا ہے کہ stop آپ کی متوقع قیمت پر trigger ہوگا یا بالکل نہیں ہوگا۔ اس کے بعد bid-ask spread fill کی کیفیت طے کرتا ہے۔

آپشن پر stop order حقیقت میں کہاں رکھا ہوتا ہے؟

Options exchanges اب بھی stop order کی اقسام متعین کرتے ہیں۔ Cboe Exchange کی rulebook، جو 14 اگست 2026 تک updated ہے، Rule 5.6(c) کے تحت "Stop (Stop-Loss)" order اور "Stop-Limit" order دونوں درج کرتی ہے۔ اس میں exchange کا اپنا trigger یوں بیان کیا گیا ہے:

"A 'Stop (Stop-Loss)' order is an order to buy (sell) that becomes a market order when the consolidated last sale price (excluding prices from complex order trades if outside of the NBBO) or NBB (NBO) for a particular option contract is equal to or above (below) the stop price specified by the User. Users may not designate a Stop Order as All Sessions or RTH and Curb." (Rules of Cboe Exchange, Inc., Rule 5.6(c), updated as of August 14, 2026)

دو تفصیلات ہر broker کے لیے اہم ہیں۔ Exchange trigger last sale یا national best bid or offer (NBB/NBO) ہوتا ہے۔ اس لیے sell stop صرف bid کے stop price تک پہنچنے پر بھی trigger ہو سکتا ہے، چاہے کوئی trade نہ ہوئی ہو۔ دوسرا، order کو all-sessions یا curb sessions کے لیے designate نہیں کیا جا سکتا۔ Exchange کی سطح پر stop صرف regular-hours instrument ہے۔

Retail order تقریباً کبھی بھی اس rule کے تحت exchange تک نہیں پہنچتا۔ زیادہ تر retail brokers stop کو اپنے servers پر رکھتے ہیں اور صرف اپنے trigger کے فعال ہونے کے بعد market یا limit order کو exchange یا wholesaler کو بھیجتے ہیں۔ Ticket پر "stop" لکھا ہوتا ہے، لیکن trigger logic broker کی ہوتی ہے اور اس کے order-type disclosure میں درج ہوتی ہے، exchange rulebook میں نہیں۔

آپشن stop کو کون سی قیمت trigger کرتی ہے: last، bid، ask یا mark؟

تقریباً ہر broker کی practice تین conventions میں آتی ہے۔ مثال کے طور پر، long put پر $1.80 کا sell stop لیں، جبکہ put کی quote $1.90 bid / $2.10 ask ہو۔

  • Last trade۔ Stop صرف اس وقت trigger ہوگا جب $1.80 یا اس سے کم پر print ہو۔ اگر contract trade نہ کرے تو quote کتنی ہی نیچے چلی جائے، کچھ نہیں ہوگا۔
  • Bid یا ask۔ Stop اس وقت trigger ہوگا جب bid $1.80 تک پہنچ جائے۔ کچھ brokers ask یا دونوں sides دیکھتے ہیں۔ Trade ہونا ضروری نہیں؛ ایک market maker کا quote کم کرنا کافی ہے۔
  • Mark۔ Stop اس وقت trigger ہوگا جب bid اور ask کا midpoint $1.80 تک پہنچ جائے۔ $0.40-wide quote میں mark کسی بھی side پر trade کے بغیر $0.20 حرکت کر سکتا ہے۔

Thin contract میں "last trade" کیوں unreliable ہے

Options chain screen پر مسلسل دکھائی دیتی ہے، لیکن اس کے زیادہ تر contracts دن میں صرف چند بار trade کرتے ہیں۔ ذیل کا panel 15 جولائی 2026 کو trade ہونے والے ہر AAPL contract کو پورے دن کے volume کے مطابق گروپ کرتا ہے۔ ایک lot سے مراد ایک contract ہے۔

استفسار کریں15 جولائی 2026 کو AAPL option contracts، پورے دن کے volume کے لحاظ سے گروپ شدہ
حجم کا زمرہcontractsحصہ (%)
1 to 5 lots41423.4
6 to 25 lots32318.2
26 to 100 lots35820.2
101 to 1,000 lots48627.4
over 1,000 lots19010.7
ہر عدد کے پیچھے موجود درست SQL
WITH traded AS
(
    SELECT
        ticker,
        max(volume) AS contracts_traded
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'AAPL'
      AND date = toDate('2026-07-15')
      AND volume > 0
    GROUP BY ticker
)
SELECT
    multiIf(contracts_traded <= 5,    '1 to 5 lots',
            contracts_traded <= 25,   '6 to 25 lots',
            contracts_traded <= 100,  '26 to 100 lots',
            contracts_traded <= 1000, '101 to 1,000 lots',
                                      'over 1,000 lots') AS volume_bucket,
    count()                                                AS contracts,
    round(100 * count() / (SELECT count() FROM traded), 1) AS share_pct
FROM traded
GROUP BY volume_bucket
ORDER BY min(contracts_traded)
خود چلا کر دیکھیں

اس دن print ہونے والے contracts میں سے 23.4% نے پورے session میں پانچ lots یا اس سے کم trade کیے، جبکہ مزید 18.2% نے چھ سے 25 lots کے درمیان trade کیا۔ تین lots volume والے contract سے زیادہ سے زیادہ تین prints بن سکتے تھے۔ اس لیے last trade سے منسلک stop کے پاس پورے دن trigger ہونے کے زیادہ سے زیادہ تین مواقع تھے، اور وہ بھی ان prints کی قیمتوں پر۔ Prints کے درمیان quote آپ کے stop سے گزر کر اس سے بہت آگے جا سکتی ہے، مگر اس دوران کچھ نظر نہیں آتا۔ دوسری طرف، 190 contracts نے ایک ایک ہزار lots سے زیادہ trade کیے۔ ان میں last-trade stop تقریباً stock stop کی طرح کام کرتا ہے۔

Stop-market spread کے far side پر کیوں fill ہوتا ہے

اب ایک put لیں جس کی quote $1.60 bid / $2.00 ask ہے۔ یہ $0.40-wide market ہے، اور mark سے منسلک sell stop-market $1.80 پر رکھا گیا ہے۔ Quote کم ہو کر $1.55 / $1.95 ہو جاتی ہے۔ Mark $1.75 ہے، stop trigger ہوتا ہے، اور broker sell کرنے کے لیے market order بھیجتا ہے۔ Market order کو دستیاب بہترین bid، یعنی $1.55، ملتی ہے۔ اس لیے fill stop price سے $0.25 نیچے، تقریباً 14% دور، ہو جاتا ہے، حالانکہ $1.80 کے قریب کوئی trade print نہیں ہوئی۔ اگر order پہنچتے وقت bid ایک quote update کے لیے $1.20 تک گر جائے تو fill $1.20 پر ہوگا۔ Thin contract میں bid-ask spread وہ کم از کم slippage ہے جسے stop-market قبول کرتا ہے۔ عام market order vs limit order trade-off بھی لاگو ہوتا ہے، مگر options quotes کی چوڑائی اسے مزید نمایاں کر دیتی ہے۔

Stop-limit position کو کیوں پھنسا سکتا ہے

Market order کی جگہ $1.75 limit والا stop-limit استعمال کریں۔ Quote کم ہو کر $1.55 / $1.95 ہو جاتی ہے، stop trigger ہوتا ہے، اور $1.75 یا اس سے بہتر پر sell کرنے والا order bid سے $0.20 اوپر resting ہو جاتا ہے۔ کوئی buyer اسے ادا کرنے کا پابند نہیں۔ اگر put مزید گرتا رہے تو order unfilled رہتا ہے، position کھلی رہتی ہے اور loss بڑھتا رہتا ہے۔ یہ stop رکھنے کے مقصد کے بالکل برعکس ہے۔ دونوں اقسام کا موازنہ stop order vs stop-limit order میں ہے، جبکہ resting limit leg کے unfilled رہنے کی وجوہ why options orders don't get filled میں بیان کی گئی ہیں۔

آپشن کے لیے 20% stop distance معمول کا دن کیوں ہو سکتا ہے

Stock پر entry سے 10% یا 20% نیچے stop distance مناسب محسوس ہو سکتی ہے، لیکن option میں یہی فاصلہ روزمرہ کی معمول کی volatility کے اندر آ سکتا ہے۔ ذیل کا trace ایک SPY put کو follow کرتا ہے۔ یہ 6 جولائی 2026 کو expiry سے 25 سے 35 دن دور اور at-the-money کے قریب ترین strike تھا۔ Trace اگلے دو ہفتوں کے closing prices کو ETF کی اپنی روزانہ کی move کے ساتھ دکھاتا ہے۔

استفسار کریںایک near-the-money SPY put، 6 تا 17 جولائی 2026: روزانہ close اور day-over-day move، SPY کے مقابل
ٹریڈنگ سیشن کی تاریخکیلنڈر لیبلput closeput کی تبدیلی (%)SPY کی تبدیلی (%)
2026-07-06Jul 68.79-41.30.66
2026-07-07Jul 711.2127.5-0.6
2026-07-08Jul 812.037.3-0.11
2026-07-09Jul 98.31-30.90.82
2026-07-10Jul 106.5-21.80.45
2026-07-13Jul 139.2842.8-0.88
2026-07-14Jul 147.49-19.30.66
2026-07-15Jul 155.92-210.21
2026-07-16Jul 167.9434.1-0.74
2026-07-17Jul 1711.544.8-0.88
ہر عدد کے پیچھے موجود درست SQL
WITH pick AS
(
    SELECT ticker
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'SPY'
      AND lower(toString(option_type)) IN ('put', 'p')
      AND date = toDate('2026-07-06')
      AND days_to_expiry BETWEEN 25 AND 35
      AND volume > 0
    ORDER BY abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) ASC,
             expiration_date ASC,
             ticker ASC
    LIMIT 1
),
daily AS
(
    SELECT
        date,
        max(toFloat64(option_close))     AS put_close_raw,
        max(toFloat64(underlying_close)) AS spy_close_raw
    FROM global_markets.options_greeks
    WHERE ticker IN (SELECT ticker FROM pick)
      AND date >= toDate('2026-07-02')
      AND date <  toDate('2026-07-18')
      AND volume > 0
    GROUP BY date
),
chained AS
(
    SELECT
        date,
        put_close_raw,
        spy_close_raw,
        lagInFrame(put_close_raw, 1) OVER (ORDER BY date ASC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS prev_put,
        lagInFrame(spy_close_raw, 1) OVER (ORDER BY date ASC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS prev_spy
    FROM daily
)
SELECT
    toString(date)                                                        AS session_date,
    concat(formatDateTime(date, '%b'), ' ', toString(toDayOfMonth(date))) AS calendar_label,
    round(put_close_raw, 2)                                               AS put_close,
    round(100 * (put_close_raw / prev_put - 1), 1)                        AS put_move_pct,
    round(100 * (spy_close_raw / prev_spy - 1), 2)                        AS spy_move_pct
FROM chained
WHERE prev_put > 0
  AND prev_spy > 0
  AND date >= toDate('2026-07-06')
ORDER BY date
خود چلا کر دیکھیں

Put Jul 6 کو $8.79 پر اور Jul 17 کو $11.5 پر close ہوا۔ دونوں percentage columns کو ساتھ پڑھیں۔ ETF کی day-over-day moves فیصد کے معمولی حصے ہیں، جبکہ put کی moves پورے percentage points اور اکثر دسیوں فیصد تک پہنچتی ہیں۔ یہی فرق put کی قیمت سے 20% نیچے رکھے گئے stop کو ایک ہی دن کی range کے اندر لے آتا ہے۔ جولائی 2026 میں 20 سے 45 دن expiry والے ہر near-the-money SPY put تک analysis پھیلانے سے ایک contract کے بجائے ایک distribution سامنے آتی ہے۔

استفسار کریںNear-the-money SPY puts (expiry تک 20–45 دن)، جولائی 2026: day-over-day close move کا حجم
تبدیلی کا زمرہcontract کے دنحصہ (%)
under 5%39616.7
5% to 10%33914.3
10% to 20%59125
20% or more103943.9
ہر عدد کے پیچھے موجود درست SQL
WITH daily AS
(
    SELECT
        ticker,
        date,
        max(toFloat64(option_close))     AS put_close,
        max(toFloat64(underlying_close)) AS spy_close,
        max(toFloat64(strike_price))     AS strike,
        max(days_to_expiry)              AS dte
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'SPY'
      AND lower(toString(option_type)) IN ('put', 'p')
      AND date >= toDate('2026-06-29')
      AND date <  toDate('2026-08-01')
      AND days_to_expiry BETWEEN 15 AND 50
      AND volume > 0
    GROUP BY ticker, date
),
chained AS
(
    SELECT
        date,
        put_close,
        spy_close,
        strike,
        dte,
        lagInFrame(put_close, 1) OVER (PARTITION BY ticker ORDER BY date ASC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS prev_put,
        lagInFrame(date, 1)      OVER (PARTITION BY ticker ORDER BY date ASC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS prev_date
    FROM daily
),
moves AS
(
    SELECT abs(100 * (put_close / prev_put - 1)) AS move_pct
    FROM chained
    WHERE prev_put > 0
      AND dateDiff('day', prev_date, date) <= 4
      AND date >= toDate('2026-07-01')
      AND dte BETWEEN 20 AND 45
      AND abs(strike / spy_close - 1) < 0.02
)
SELECT
    multiIf(move_pct < 5,  'under 5%',
            move_pct < 10, '5% to 10%',
            move_pct < 20, '10% to 20%',
                           '20% or more') AS move_bucket,
    count()                                               AS contract_days,
    round(100 * count() / (SELECT count() FROM moves), 1) AS share_pct
FROM moves
GROUP BY move_bucket
ORDER BY min(move_pct)
خود چلا کر دیکھیں

ان contract-days میں 43.9% نے previous close کے مقابلے میں 20% یا اس سے زیادہ move کیا، جبکہ 16.7% میں move 5% سے کم رہی۔ Previous close سے 20% نیچے stop تقریباً ہر 100 contract-days میں 43.9 پر cross ہوا، اور اس میں وہ intraday swings شامل نہیں ہیں جو close-to-close series دکھا نہیں سکتی۔

Stop رکھنے سے پہلے broker کی پابندیاں چیک کریں

Options stops کے بارے میں broker rules مختلف بھی ہوتے ہیں اور تبدیل بھی ہوتے رہتے ہیں۔ اس لیے درج ذیل نکات کو کسی ایک firm کے قطعی facts کے بجائے اپنے broker کے order-type disclosure میں چیک کرنے والے categories سمجھیں:

  • کیا stop-market orders options پر بالکل accepted ہیں؟ کچھ brokers options پر صرف stop-limit orders لیتے ہیں۔ اس سے far-side fill کا مسئلہ ختم ہوتا ہے، لیکن position کے پھنس جانے کا مسئلہ پیدا ہو جاتا ہے۔
  • کون سی trigger convention لاگو ہوتی ہے، یعنی last، bid، ask یا mark؟ کیا اسے ہر order کے لیے منتخب کیا جا سکتا ہے؟
  • کیا triggers صرف regular trading hours میں evaluate ہوتے ہیں؟ Cboe rule میں exchange-level stop صرف regular hours کے لیے ہے۔ Broker-held stops پر بھی عموماً یہی restriction ہوتی ہے، جو extended sessions والے index options کے لیے اہم ہے۔
  • کیا multi-leg orders پر stops allowed ہیں؟ اگر ہیں تو trigger کس price کو دیکھتا ہے، عموماً spread کا net mark، اور stop کے ساتھ کون سی time-in-force choices استعمال کی جا سکتی ہیں؟

سادہ stop کے بجائے کیا طریقے کام آ سکتے ہیں

  • Debit target کے ساتھ bracket یا OCO exit۔ ایک order profit target پر close کرنے کے لیے، دوسرا معمول کے spread کو cross کرنے کے لیے کافی وسیع limit کے ساتھ stop-limit کے طور پر، اور جو پہلے fill ہو وہ دوسرے کو cancel کر دے۔ Bracket and OCO orders mechanics بیان کرتے ہیں۔ Options میں profit leg percentage کے بجائے مخصوص debit یا credit کے طور پر quote کی جاتی ہے۔
  • Underlying کی price سے منسلک contingent order۔ یہ order put کے بجائے stock کو دیکھتا ہے، جو ایک گھنٹے میں ہزاروں بار print ہوتا ہے، اور stock کے آپ کے مقررہ level پر trade کرنے پر option میں limit order بھیجتا ہے۔ اوپر کا trace دکھاتا ہے کہ یہ trigger زیادہ واضح کیوں ہے: ETF smooth series ہے، جبکہ put noisy ہے۔
  • Defined-risk spread پر کوئی stop نہ لگانا۔ Vertical spread کا maximum loss entry کے وقت fixed ہوتا ہے۔ Spread پر stop دو wide quotes کے combined mark کو دیکھتا ہے، جو noise کی وجہ سے swing کر سکتا ہے اور دونوں legs کو prices کے بدترین combination پر close کر سکتا ہے۔ Trade کو how to roll an option position کے مطابق adjust کرنا defined risk برقرار رکھتا ہے۔

FAQ

کیا stop orders options پر کام کرتے ہیں؟

ہاں، لیکن ایک اہم caveat کے ساتھ۔ Cboe کی rulebook options کے لیے exchange-level stop اور stop-limit orders اب بھی define کرتی ہے۔ تاہم زیادہ تر retail brokers stop کو اپنے پاس رکھتے ہیں اور اپنے trigger کے مطابق اسے activate کرتے ہیں: last trade، bid یا ask، یا mark۔ آپ کے account میں ملنے والا behaviour broker کی convention پر منحصر ہوتا ہے، جو order-type disclosure میں لکھی ہوتی ہے۔

آپشن پر stop order کو کیا trigger کرتا ہے: bid، ask یا last trade؟

یہ broker پر منحصر ہے۔ عام conventions last trade price، bid یا ask، اور mark یعنی quote کا midpoint ہیں۔ Cboe کا exchange-held stop consolidated last sale یا national best bid or offer، دونوں میں سے کسی ایک پر trigger ہوتا ہے۔

میرا options stop order stop price سے اتنا نیچے کیوں fill ہوا؟

Stop-market trigger ہوتے ہی market order بن جاتا ہے، اور sell کرنے والا market order موجودہ bid لیتا ہے۔ اگر quote $0.40-wide ہو اور trigger mark پر ہوا ہو تو fill bid پر آتا ہے۔ $2 contract میں یہ مزید slippage سے پہلے trigger سے تقریباً 10% نیچے ہو سکتا ہے۔

کیا میں options spread پر stop-loss لگا سکتا ہوں؟

کچھ brokers multi-leg orders پر stops allow کرتے ہیں، عموماً spread کے net mark سے منسلک۔ کچھ brokers یہ سہولت نہیں دیتے۔ Defined-risk spread میں پہلے ہی maximum loss fixed ہوتا ہے، اور اس پر stop quote noise سے trigger ہو کر دونوں legs کو ناموافق prices پر close کر سکتا ہے۔ بہت سے traders spreads کو stop کے بجائے rolling یا adjustment کے ذریعے manage کرتے ہیں۔


اوپر موجود ہر panel کے ساتھ اسے تیار کرنے والی SQL بھی فراہم کی گئی ہے۔ کسی مختلف ticker یا date پر یہی contract-by-contract volume count چلانے کے لیے Strasmore terminal میں plain English میں درخواست کریں۔

#stop order#stop-limit#options orders#trigger price#order types#bid-ask spread