Strasmore Research
تعلیمی مواد Matt Connorاز Matt Connor · data as of August 6, 2026 · refreshed weekly

Naked Options فروخت: Reg T Margin Formula

Naked option فروخت کرنے کے لیے Reg T margin کیسے calculate کریں؟ دونوں minimum branches، premium سمیت، Python script اور حقیقی option chains کی مثالوں کے ساتھ۔

Naked options فروخت کرنے کے لیے margin ایک شائع شدہ formula سے نکلتا ہے، اور trade ہونے سے پہلے آپ اسے خود calculate کر سکتے ہیں۔ ایک uncovered equity option کے لیے minimum ان دو branches میں سے بڑی رقم ہوتی ہے، اور دونوں میں وصول شدہ premium شامل کیا جاتا ہے: underlying share price کا 20% منفی وہ رقم جس سے option out of the money ہو، یا 10% کا floor۔ اس صفحے پر موجود ہر percentage regulatory minimum ہے۔ Broker اس سے زیادہ margin رکھ سکتا ہے، اور زیادہ تر brokers ایسا کرتے ہیں۔

Naked options فروخت کرنے کے لیے margin کیسے calculate کیا جاتا ہے؟

Option اس وقت uncovered، یا naked، ہوتا ہے جب اسے فروخت کیا گیا ہو مگر اس کے پیچھے کوئی asset موجود نہ ہو: یعنی account میں shares کے بغیر short call، یا strike کے مقابلے میں cash مختص کیے بغیر short put۔ cash secured put میں اس کے بجائے strike value کی پوری رقم الگ رکھی جاتی ہے۔ یہ ایک مختلف arrangement ہے اور اس کی requirement بھی مختلف ہوتی ہے۔

Regulation T margin account کے credit rules طے کرتا ہے۔ Uncovered option کی percentages خود FINRA Rule 4210 اور اس کے مطابق بنائے گئے exchange margin manuals میں درج ہیں۔ حساب پہلے per share کیا جاتا ہے، پھر 100 shares کے ایک contract کے حساب سے charge کیا جاتا ہے:

  • Uncovered call، پہلی branch: وصول شدہ premium، plus underlying price کا 20%، minus out of the money رقم؛ یعنی strike minus underlying، مگر minimum zero۔
  • Uncovered put، پہلی branch: وصول شدہ premium، plus underlying price کا 20%، minus out of the money رقم؛ یعنی underlying minus strike، مگر minimum zero۔
  • Call کے لیے floor branch: وصول شدہ premium plus underlying price کا 10%۔
  • Put کے لیے floor branch: وصول شدہ premium plus strike price کا 10%۔

Requirement ان دونوں میں سے جو زیادہ ہو، وہ ہوتی ہے۔ Broad based index options میں یہی structure ہوتا ہے، مگر 20% کے بجائے 15% استعمال ہوتا ہے۔ Uncovered options فروخت کرنے کے لیے درست option approval level والا margin account بھی درکار ہوتا ہے، اور margin account کے ساتھ pattern day trader rule بھی لاگو ہوتا ہے۔

Premium دونوں branches میں شامل ہے، اس لیے یہ پوری رقم کو بڑھاتا ہے، مگر یہ فیصلہ نہیں بدلتا کہ کون سی branch لاگو ہوگی۔ فیصلہ distance سے ہوتا ہے۔ Call کے لیے دونوں branches اس وقت برابر ہوتی ہیں جب strike underlying سے ٹھیک 10% اوپر ہو۔ Put کے لیے دونوں تقریباً اس وقت برابر ہوتی ہیں جب strike underlying سے 11.1% نیچے ہو۔ ان distances کے اندر 20% branch بڑی ہوتی ہے۔ ان سے آگے floor لاگو ہو جاتا ہے۔

20% branch اور 10% floor کہاں برابر ہوتے ہیں

نیچے دیا گیا panel جون 2026 کے آخری session میں درج AAPL strikes کا جائزہ لیتا ہے۔ یہ share price سے ذرا نیچے شروع ہو کر تقریباً 18% اوپر تک جاتا ہے، اور expiry سے 20 سے 45 دن دور contracts لیتا ہے۔ ہر strike پر uncovered call کے لیے دونوں branches per share calculate کی گئی ہیں۔ Shape کو واضح رکھنے کے لیے premium شامل نہیں کیا گیا۔ Premium شامل کرنے سے دونوں lines ایک ساتھ اوپر منتقل ہو جائیں گی۔

استفسار کریںایک uncovered AAPL call کے لیے Reg T کم از کم شاخیں، strike کے لحاظ سے (dollars per share)
ہر عدد کے پیچھے موجود درست SQL
SELECT
    round(toFloat64(strike_price), 2)                                          AS strike,
    round(0.20 * max(toFloat64(underlying_close))
          - greatest(toFloat64(strike_price) - max(toFloat64(underlying_close)), 0.0), 2) AS main_branch,
    round(0.10 * max(toFloat64(underlying_close)), 2)                          AS floor_branch,
    round(0.20 * max(toFloat64(underlying_close))
          - greatest(toFloat64(strike_price) - max(toFloat64(underlying_close)), 0.0)
          - 0.10 * max(toFloat64(underlying_close)), 2)                        AS branch_gap
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
  AND date = (
      SELECT max(date)
      FROM global_markets.options_greeks
      WHERE underlying_symbol = 'AAPL'
        AND date BETWEEN '2026-06-01' AND '2026-06-30'
  )
  AND days_to_expiry BETWEEN 20 AND 45
  AND iv_converged = 1
  AND volume > 0
  AND toFloat64(strike_price) BETWEEN 0.98 * toFloat64(underlying_close)
                                  AND 1.18 * toFloat64(underlying_close)
GROUP BY strike_price
ORDER BY strike
Run this yourself

Floor line flat ہے۔ Share price کا 10% strike کی جگہ سے متاثر نہیں ہوتا، اس لیے panel کے تمام 12 strikes پر یہ فی share $28.9 رہتا ہے۔ پہلی branch نیچے کی طرف slope کرتی ہے۔ یہ lowest strike پر $57.8 سے شروع ہو کر highest strike پر $6.81 تک آتی ہے، کیونکہ distance میں ہر اضافی dollar براہِ راست اس رقم سے کم ہو جاتا ہے۔ branch_gap column پہلی branch منفی floor ہے: صفر سے اوپر وہاں جہاں 20% branch لاگو ہوتی ہے، اور صفر سے نیچے وہاں جہاں floor لاگو ہوتا ہے۔ دونوں strike کے اس مقام پر برابر ہوتے ہیں جو share price سے 10% اوپر ہے۔

Naked put کے لیے کتنی margin درکار ہوتی ہے؟

پہلی branch وہی رہتی ہے، مگر floor مختلف ہوتا ہے: underlying کا 10% نہیں بلکہ strike کا 10%۔ یہ واحد تبدیلی تصویر بدل دیتی ہے۔ Floor اب flat line نہیں رہتا بلکہ strike کے ساتھ slope کرتا ہے، اور crossing point share price سے تقریباً 11% نیچے منتقل ہو جاتا ہے۔

استفسار کریںایک uncovered AAPL put کے لیے Reg T کم از کم شاخیں، strike کے لحاظ سے (dollars per share)
ہر عدد کے پیچھے موجود درست SQL
SELECT
    round(toFloat64(strike_price), 2)                                          AS strike,
    round(0.20 * max(toFloat64(underlying_close))
          - greatest(max(toFloat64(underlying_close)) - toFloat64(strike_price), 0.0), 2) AS main_branch,
    round(0.10 * toFloat64(strike_price), 2)                                   AS floor_branch,
    round(0.20 * max(toFloat64(underlying_close))
          - greatest(max(toFloat64(underlying_close)) - toFloat64(strike_price), 0.0)
          - 0.10 * toFloat64(strike_price), 2)                                 AS branch_gap
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
  AND date = (
      SELECT max(date)
      FROM global_markets.options_greeks
      WHERE underlying_symbol = 'AAPL'
        AND date BETWEEN '2026-06-01' AND '2026-06-30'
  )
  AND days_to_expiry BETWEEN 20 AND 45
  AND iv_converged = 1
  AND volume > 0
  AND toFloat64(strike_price) BETWEEN 0.82 * toFloat64(underlying_close)
                                  AND 1.02 * toFloat64(underlying_close)
GROUP BY strike_price
ORDER BY strike
Run this yourself

یہاں موجود put strikes میں floor lowest strike پر فی share $24 سے highest strike پر $29 تک جاتا ہے، جبکہ پہلی branch strike کے money کے قریب آنے پر بڑھتی ہے۔ Market سے بہت نیچے، جہاں wheel strategy استعمال کرنے والے sellers اکثر کام کرتے ہیں، floor ہی binding number ہوتا ہے۔ یہی floor deep out of the money naked put کو کبھی بھی بغیر margin کے رکھنے سے روکتا ہے۔

ایک naked contract کتنی buying power روک لیتا ہے؟

Per share figures formula ہوتے ہیں۔ Per contract figures وہ رقم ہوتی ہے جو account سے نکلتی ہے۔ یہ panel جون 2026 کے اسی session میں 5 معروف کمپنیوں کو لیتا ہے، ہر share price سے تقریباً 5% اوپر کا درج شدہ call strike منتخب کرتا ہے، اور دونوں branches کو contract میں شامل 100 shares سے ضرب دیتا ہے۔

استفسار کریںuncovered call کی کم از کم رقم فی contract، strike تقریباً 5% out of the money
ہر عدد کے پیچھے موجود درست SQL
SELECT
    ticker,
    round(100 * (0.20 * share_price - greatest(strike - share_price, 0.0)), 0) AS main_branch,
    round(100 * (0.10 * share_price), 0)                                       AS floor_branch
FROM
(
    SELECT
        underlying_symbol                AS ticker,
        max(toFloat64(underlying_close)) AS share_price,
        argMin(toFloat64(strike_price),
               abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1.05)) AS strike
    FROM global_markets.options_greeks
    WHERE underlying_symbol IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'KO')
      AND date = (
          SELECT max(date)
          FROM global_markets.options_greeks
          WHERE underlying_symbol = 'SPY'
            AND date BETWEEN '2026-06-01' AND '2026-06-30'
      )
      AND days_to_expiry BETWEEN 20 AND 45
      AND iv_converged = 1
      AND volume > 0
    GROUP BY underlying_symbol
)
ORDER BY main_branch DESC
Run this yourself

اس distance پر ایک uncovered SPY call کے لیے single contract کی minimum requirement $11156 ہے، جبکہ KO کے لیے یہ $1252 ہے۔ Trade ایک جیسی ہے اور formula بھی ایک جیسا ہے۔ رقم option کی کسی خصوصیت کے بجائے share price کے ساتھ حرکت کرتی ہے۔ 5% out of the money پر یہاں ہر نام کے لیے پہلی branch لاگو ہوتی ہے، اور ہر pair میں بلند bar ہی شمار ہوتا ہے۔

مختصر Python script سے کسی بھی position کو check کریں

Formula ایک file میں سما جاتا ہے۔ اس کے لیے python3 کے علاوہ کچھ درکار نہیں: صرف standard library، نہ pip install اور نہ network۔ اسے naked_margin.py کے نام سے save کریں۔

#!/usr/bin/env python3
"""ایک uncovered (naked) equity option کے لیے Reg T طرز کی minimum margin۔

Requirement کی دونوں branches اور لاگو ہونے والی branch print کرتا ہے۔
صرف standard library استعمال ہوتی ہے۔ تعلیمی مقصد کے لیے، broker quote نہیں۔
"""
import argparse

SHARES_PER_CONTRACT = 100

def branches(kind, spot, strike, premium, rule_pct, floor_pct):
    if kind == 'call':
        out_of_money = max(strike - spot, 0.0)
        floor_base = spot
    else:
        out_of_money = max(spot - strike, 0.0)
        floor_base = strike
    rule = rule_pct * spot - out_of_money + premium
    floor = floor_pct * floor_base + premium
    return rule, floor

def report(kind, spot, strike, premium, rule_pct, floor_pct):
    rule, floor = branches(kind, spot, strike, premium, rule_pct, floor_pct)
    if rule >= floor:
        binds = '{0:.0%} branch'.format(rule_pct)
    else:
        binds = '{0:.0%} floor'.format(floor_pct)
    print('naked {0}: spot {1:.2f}, strike {2:.2f}, premium {3:.2f}'.format(
        kind, spot, strike, premium))
    print('  {0:.0%} branch: {1:.2f} per share, {2:.2f} per contract'.format(
        rule_pct, rule, rule * SHARES_PER_CONTRACT))
    print('  {0:.0%} floor:  {1:.2f} per share, {2:.2f} per contract'.format(
        floor_pct, floor, floor * SHARES_PER_CONTRACT))
    print('  binds: {0}, requirement {1:.2f} per contract'.format(
        binds, max(rule, floor) * SHARES_PER_CONTRACT))

def main():
    ap = argparse.ArgumentParser(description='Reg T style naked option minimum')
    ap.add_argument('--spot', type=float, required=True, help='underlying price')
    ap.add_argument('--strike', type=float, required=True, help='strike price')
    ap.add_argument('--premium', type=float, required=True, help='premium per share')
    ap.add_argument('--index', action='store_true', help='broad based index rate')
    args = ap.parse_args()
    rule_pct = 0.15 if args.index else 0.20
    for kind in ('call', 'put'):
        report(kind, args.spot, args.strike, args.premium, rule_pct, 0.10)

if __name__ == '__main__':
    main()

دو runs دیے گئے ہیں، جنہیں اس طرح منتخب کیا گیا ہے کہ binding branch دونوں میں مختلف ہو۔ دونوں میں round فرضی inputs استعمال ہوئے ہیں۔

$ python3 naked_margin.py --spot 100 --strike 105 --premium 1.50
naked call: spot 100.00, strike 105.00, premium 1.50
  20% branch: 16.50 per share, 1650.00 per contract
  10% floor:  11.50 per share, 1150.00 per contract
  binds: 20% branch, requirement 1650.00 per contract
naked put: spot 100.00, strike 105.00, premium 1.50
  20% branch: 21.50 per share, 2150.00 per contract
  10% floor:  12.00 per share, 1200.00 per contract
  binds: 20% branch, requirement 2150.00 per contract

$ python3 naked_margin.py --spot 100 --strike 85 --premium 0.60
naked call: spot 100.00, strike 85.00, premium 0.60
  20% branch: 20.60 per share, 2060.00 per contract
  10% floor:  10.60 per share, 1060.00 per contract
  binds: 20% branch, requirement 2060.00 per contract
naked put: spot 100.00, strike 85.00, premium 0.60
  20% branch: 5.60 per share, 560.00 per contract
  10% floor:  9.10 per share, 910.00 per contract
  binds: 10% floor, requirement 910.00 per contract

پہلے run میں strike underlying سے 5% اوپر ہے، یعنی 10% crossover کے اندر، اس لیے call اور put دونوں کے لیے پہلی branch لاگو ہوتی ہے۔ دوسرے run میں strike underlying سے 15% نیچے ہے۔ اس صورت میں پہلی branch کے حساب سے call in the money رہتا ہے، جبکہ put کافی out of the money ہو جاتا ہے اور 10% floor لاگو ہوتا ہے۔ اپنے inputs کے ساتھ --spot، --strike اور --premium استعمال کریں، اور broad based index کے 15% figure کے لیے --index شامل کریں۔ اس کا output اس minimum کی نشاندہی کرتا ہے جو broker طلب کرے گا، ceiling کی نہیں۔

فروخت کے بعد requirement میں کیا تبدیلی آتی ہے؟

یہ رقم ایک بار طے ہو کر مستقل نہیں رہتی۔ اسے روزانہ underlying price کے مطابق دوبارہ calculate کیا جاتا ہے، اور underlying price حرکت کرتی رہتی ہے۔ نیچے دی گئی trace میں short call strike کو AAPL کے اپریل 2026 کے opening level سے تقریباً 10% اوپر مقرر کیا گیا ہے، پھر جون کے اختتام تک share price کے percentage کے طور پر requirement کو follow کیا گیا ہے۔

استفسار کریںایک مقررہ short AAPL call strike: share price کے فیصد کے طور پر requirement، اپریل تا جون 2026
ہر عدد کے پیچھے موجود درست SQL
SELECT
    toString(d.dt)                                               AS session_date,
    round(d.px, 2)                                               AS underlying_close,
    round(100 * (s.short_strike - d.px) / d.px, 2)               AS cushion_pct,
    round(100 * greatest(0.20 * d.px - greatest(s.short_strike - d.px, 0.0),
                         0.10 * d.px) / d.px, 2)                 AS requirement_pct
FROM
(
    SELECT
        date                             AS dt,
        max(toFloat64(underlying_close)) AS px
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'AAPL'
      AND date BETWEEN '2026-04-01' AND '2026-06-30'
    GROUP BY date
) AS d
CROSS JOIN
(
    SELECT round(1.10 * argMin(toFloat64(underlying_close), date), 0) AS short_strike
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'AAPL'
      AND date BETWEEN '2026-04-01' AND '2026-06-30'
) AS s
ORDER BY d.dt
Run this yourself

Position ابتدا میں crossover پر تھی، یعنی share price کے 10.19% پر، اور strike تک 9.81% headroom موجود تھا۔ Window کے اختتام پر یہ 20% پر پہنچ گئی۔ جب stock short call strike کی طرف بڑھتا ہے تو out of the money subtraction کم ہوتی ہے، اور requirement مکمل 20% کی طرف بڑھتی ہے۔ مزید چار عوامل بھی اسے تبدیل کرتے ہیں:

  • Assignment option کو ختم کر دیتا ہے اور stock یا short stock position منتقل کرتا ہے، جس کی اپنی requirement ہوتی ہے۔ Short options کی early assignment عموماً dividends اور deep in the money strikes کے آس پاس زیادہ ہوتی ہے۔
  • House requirements minimum کے اوپر لاگو ہوتی ہیں۔ Brokers uncovered positions کے لیے عموماً Reg T سے زیادہ figures مقرر کرتے ہیں، اور volatile names میں کبھی کبھار اس کے کئی گنا تک margin رکھتے ہیں۔
  • Position کے خلاف حرکت requirement بڑھا دیتی ہے، جبکہ account equity اسی وقت کم ہوتی ہے۔ دونوں کے درمیان یہی فرق maintenance call پیدا کرتا ہے۔
  • Portfolio margin ایک الگ regime ہے۔ Approved account پر پورے book کے stress test کی بنیاد پر charge کیا جاتا ہے۔ Equity underlying میں تقریباً 15% اوپر یا نیچے کی move استعمال کی جاتی ہے، جبکہ زیادہ تر brokers کے ہاں account minimum چھ ہندسوں پر مشتمل ہوتا ہے۔ Hedged book کے لیے یہ figure Reg T سے کافی کم ہو سکتا ہے، اور volatility بڑھنے پر یہ زیادہ تیزی سے بدلتا ہے۔

یہ معلومات کسی recommendation کے طور پر نہیں دی جا رہیں۔ Uncovered selling میں call side پر loss غیر محدود اور put side پر بہت بڑا ہو سکتا ہے، جبکہ options trading کتنی risky ہے اس distribution کو data کے ساتھ بیان کرتا ہے۔

FAQ

Naked put فروخت کرنے کے لیے مجھے کتنی margin درکار ہے؟

Regulatory minimum ان دو branches میں سے بڑی رقم ہے، اور دونوں میں وصول شدہ premium شامل ہوتا ہے: underlying price کا 20% منفی out of the money رقم، یا strike price کا 10%۔ $100 کے stock پر $90 strike put کو $0.60 میں فروخت کرنے سے فی share $10.60 بنتا ہے، جبکہ floor $9.60 ہے۔ چنانچہ ایک contract کے لیے requirement $1,060 ہوگی۔ Brokers عموماً اس سے زیادہ margin مانگتے ہیں۔

کیا naked option margin ہر broker کے ہاں ایک جیسی ہوتی ہے؟

نہیں۔ Reg T اور FINRA Rule 4210 minimum مقرر کرتے ہیں، اور ہر broker اس سے اوپر اپنی house requirement شامل کر سکتا ہے۔ بہت سے brokers single names اور earnings dates کے آس پاس ایسا کرتے ہیں۔ Published formula range کی نچلی حد بتاتا ہے، وہ رقم نہیں جو آپ کا platform دکھائے گا۔

کیا مجھے ملنے والا premium requirement میں شمار ہوتا ہے؟

وصول شدہ premium formula کی دونوں branches میں شامل کیا جاتا ہے اور trade settle ہونے پر account میں credit ہو جاتا ہے۔ یہ کبھی اس بات کو تبدیل نہیں کرتا کہ کون سی branch لاگو ہوگی، کیونکہ یہ دونوں sides میں برابر شامل ہوتا ہے۔

Naked index option کے لیے margin کیا ہوتی ہے؟

Broad based index options میں 20% کے بجائے 15% استعمال ہوتا ہے، جبکہ 10% floor اور premium term وہی رہتے ہیں۔ کسی broad index کو track کرنے والے ETF کے options کو 20% figure کے تحت equity options سمجھا جاتا ہے، اس لیے کم percentage wrappers کے ذریعے exposure کے ساتھ منتقل نہیں ہوتی۔ دونوں figures regulatory minimums ہیں۔

کیا naked option کی requirement میرے hold کرنے کے دوران تبدیل ہو سکتی ہے؟

ہاں۔ اسے underlying price کی بنیاد پر دوبارہ calculate کیا جاتا ہے، اس لیے stock کی ہر move کے ساتھ یہ بھی بدلتی ہے، جیسا کہ اوپر دی گئی trace میں دکھایا گیا ہے۔ Short call strike کی طرف rise number کو بڑھا دیتی ہے، اور broker open position پر اپنی house requirement بھی بڑھا سکتا ہے۔


یہاں موجود ہر panel کے ساتھ اسے پیدا کرنے والا SQL شامل ہے، اس لیے کسی بھی panel کو expand کر کے دیکھا جا سکتا ہے کہ branch کیسے calculate ہوئی۔ اپنے follow کیے جانے والے نام پر یہی chain math چلانے کے لیے Strasmore terminal پر plain English میں درخواست کریں۔

#options#margin#reg t#naked options#risk