Strasmore Research
Matuto Matt ConnorNi Matt Connor · data as of August 6, 2026 · refreshed weekly

Margin sa Naked Options: Reg T Math

Paano kalkulahin ang margin sa pagbebenta ng naked option? Alamin ang Reg T minimum formula, dalawang branch, Python script, at totoong option chains.

Ang margin para sa pagbebenta ng naked options ay nagmumula sa isang inilathalang formula, at maaari mo itong kalkulahin bago maisagawa ang trade. Ang minimum para sa isang uncovered equity option ay ang mas mataas sa dalawang branch, na parehong may idinadagdag na natanggap na premium: 20% ng presyo ng underlying share bawas ang halaga kung gaano ito out of the money, o isang floor na 10%. Ang bawat percentage sa pahinang ito ay regulatory minimum. Maaaring magtakda ang broker ng mas mataas na requirement, at karamihan ay ginagawa ito.

Paano kinakalkula ang margin para sa pagbebenta ng naked options?

Uncovered o naked ang isang option kapag naibenta ito nang walang nakalaang panangga: isang short call na walang shares sa account, o isang short put na walang cash na inilaan laban sa strike. Sa isang cash-secured put, nakalaan ang buong halaga ng strike. Iba itong arrangement na may ibang requirement.

Itinatakda ng Regulation T ang mga patakaran sa credit para sa margin account. Ang mismong uncovered-option percentages ay nasa FINRA Rule 4210 at sa mga exchange margin manual na sumusunod dito. Kinakalkula muna ang halaga per share, saka ito sinisingil per contract na may 100 shares:

  • Uncovered call, unang branch: natanggap na premium, dagdag ang 20% ng presyo ng underlying, bawas ang halagang out of the money (strike minus underlying, na may minimum na zero).
  • Uncovered put, unang branch: natanggap na premium, dagdag ang 20% ng presyo ng underlying, bawas ang halagang out of the money (underlying minus strike, na may minimum na zero).
  • Floor branch para sa call: natanggap na premium dagdag ang 10% ng presyo ng underlying.
  • Floor branch para sa put: natanggap na premium dagdag ang 10% ng strike price.

Ang requirement ay kung alin ang mas mataas. Pareho ang structure para sa broad based index options, ngunit 15% ang ginagamit sa halip na 20%. Ang pagbebenta ng uncovered options ay nangangailangan din ng margin account na may tamang option approval level. Kasama rin sa margin account ang pattern day trader rule.

Kasama ang premium sa parehong branch, kaya itinataas nito ang buong halaga ngunit hindi nito binabago kung aling branch ang binding. Ang layo ng strike ang nagpapasya rito. Para sa call, magkapantay ang dalawang branch kapag eksaktong 10% above the underlying ang strike. Para sa put, magkapantay ang mga ito kapag humigit-kumulang 11.1% below the underlying ang strike. Sa loob ng mga distansiyang ito, mas mataas ang 20% branch. Lampas dito, ang floor na ang nangingibabaw.

Bakit nagkakrus ang 20% branch at 10% floor

Ipinapakita ng panel sa ibaba ang bawat listed AAPL strike sa huling session ng June 2026, mula sa bahagyang ibaba ng share price hanggang humigit-kumulang 18% above it. Kasama rito ang mga contract na 20 hanggang 45 days mula sa expiry. Kinakalkula nito ang parehong branch per share para sa isang uncovered call sa bawat strike. Hindi isinama rito ang premium upang malinaw ang hugis. Kapag idinagdag ang premium, sabay na aangat ang dalawang linya.

QueryMga minimum na branch ng Reg T para sa isang uncovered AAPL call, ayon sa strike (dollars per share)
Ang eksaktong SQL sa likod ng bawat numero
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

Patag ang floor line. Hindi nakadepende ang 10% ng share price sa strike, kaya nananatili ito sa $28.9 bawat share sa lahat ng 12 strike sa panel. Pababa ang slope ng unang branch, mula $57.8 sa pinakamababang strike hanggang $6.81 sa pinakamataas. Bawat dagdag na dollar sa layo ay direktang ibinabawas dito. Ang branch_gap column ay ang unang branch minus floor: positive ito kapag ang 20% branch ang binding, negative kapag floor ang binding, at nagkakrus ito sa strike na 10% above the share price.

Gaano karaming margin ang kailangan ng isang naked put?

Pareho ang unang branch, ngunit iba ang floor: 10% ng strike sa halip na 10% ng underlying. Binabago ng simpleng substitution na ito ang resulta. Hindi na patag ang floor line at umaakyat ito kasabay ng strike. Lumilipat din ang crossover point sa humigit-kumulang 11% below the share price.

QueryMga minimum na branch ng Reg T para sa isang uncovered AAPL put, ayon sa strike (dollars per share)
Ang eksaktong SQL sa likod ng bawat numero
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

Sa mga put strike dito, ang floor ay mula $24 bawat share sa pinakamababang strike hanggang $29 sa pinakamataas. Samantala, umaakyat ang unang branch habang lumalapit ang strike sa money. Sa mga strike na malayong below the market, kung saan madalas gumagana ang mga seller ng wheel strategy, ang floor ang binding number. Ito ang pumipigil na maging libre ang paghawak ng deep out of the money naked put.

Gaano karaming buying power ang itinatali ng isang naked contract?

Ang per-share figures ang nasa formula. Ang per-contract figures ang aktuwal na ibinabawas sa account. Kinuha ng panel ang 5 household names sa parehong June 2026 session. Pinili nito ang listed call strike na pinakamalapit sa 5% above ng bawat share price, saka pinarami ang parehong branch ng 100 shares na sakop ng isang contract.

QueryMinimum ng uncovered call bawat contract, strike na humigit-kumulang 5% out of the money
Ang eksaktong SQL sa likod ng bawat numero
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

Ang isang uncovered SPY call sa distansiyang iyon ay may $11156 minimum para sa isang contract, kumpara sa $1252 para sa KO. Pareho ang trade at pareho ang formula. Nakabatay ang halaga sa share price, hindi sa anumang katangian ng option mismo. Sa 5% out of the money, ang unang branch ang binding para sa lahat ng pangalan dito. Ang mas mataas na bar sa bawat pares ang siyang ginagamit.

Suriin ang anumang position gamit ang maikling Python script

Kasya ang formula sa isang file. Python3 lamang ang kailangan: standard library lang, walang pip install at walang network. I-save ito bilang naked_margin.py.

#!/usr/bin/env python3
"""Reg T style minimum para sa isang uncovered (naked) equity option.

Ipinapakita ang parehong branch ng requirement at kung alin ang binding.
Standard library lamang. Para sa edukasyon, hindi 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='presyo ng underlying')
    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()

Dalawang run ito na pinili upang magpalit ang binding branch. Parehong round hypothetical inputs ang ginamit.

$ 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

Sa unang run, ang strike ay 5% above the underlying, nasa loob ng 10% crossover, kaya ang unang branch ang binding para sa parehong call at put. Sa ikalawang run, ang strike ay 15% below the underlying. Dahil dito, in the money ang call sa unang branch, habang sapat ang layo ng put upang ang 10% floor ang magtakda ng requirement. Gamitin ang sarili mong inputs sa --spot, --strike at --premium. Idagdag ang --index para sa 15% broad based index figure. Ang ipinapakita nito ay floor sa halagang maaaring hingin ng broker, hindi ceiling.

Ano ang nagbabago sa requirement pagkatapos mong magbenta?

Hindi isang beses lang itinatakda ang halaga. Kinakalkula itong muli araw-araw batay sa presyo ng underlying, at gumagalaw ang underlying. Sa trace sa ibaba, itinakda ang short call strike sa humigit-kumulang 10% above ng presyo kung saan nagbukas ang AAPL noong April 2026. Sinundan nito ang requirement bilang porsyento ng share price hanggang sa katapusan ng June.

QueryIsang fixed na short AAPL call strike: requirement bilang porsyento ng share price, Abril hanggang Hunyo 2026
Ang eksaktong SQL sa likod ng bawat numero
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

Nagsimula ang position sa crossover, sa 10.19% ng share price at may 9.81% na layo mula sa strike. Nagtapos ito sa 20%. Habang umaakyat ang stock patungo sa short call strike, lumiliit ang ibinabawas na out of the money amount. Dahil dito, umaakyat ang requirement patungo sa buong 20%. Apat pa ang maaaring magpagalaw dito:

  • Tinatapos ng assignment ang option at naghahatid ito ng stock o short stock position na may sarili nitong requirement. Ang early assignment sa short options ay mas madalas sa paligid ng dividends at deep in the money strikes.
  • Nakapatong ang house requirements sa minimum. Karaniwang nagtatakda ang mga broker ng mas mataas na figures kaysa Reg T para sa uncovered positions, at kung minsan ay multiple nito para sa volatile names.
  • Kapag gumalaw laban sa position, tumataas ang requirement habang sabay na bumababa ang account equity. Ang pagitan ng dalawa ang nagdudulot ng maintenance call.
  • Hiwalay na regime ang portfolio margin. Sinisingil ang approved account batay sa stress test ng buong book, karaniwang 15% na galaw pataas o pababa sa isang equity underlying, at may six-figure account minimum sa karamihan ng broker. Para sa hedged book, maaaring mas mababa ito nang malaki kaysa Reg T. Mas mabilis din itong gumalaw kapag tumataas ang volatility.

Hindi ito recommendation. Ang uncovered selling ay may unbounded loss sa call side at napakalaking loss sa put side. Ipinapaliwanag ng kung gaano ka-risky ang options trading ang distribution na iyon gamit ang data.

FAQ

Gaano karaming margin ang kailangan ko para magbenta ng naked put?

Ang regulatory minimum ay ang mas mataas sa dalawang branch. Parehong kasama rito ang natanggap na premium: 20% ng presyo ng underlying bawas ang out of the money amount, o 10% ng strike price. Sa isang $100 stock, ang $90 strike put na naibenta sa halagang $0.60 ay nagreresulta sa $10.60 bawat share kumpara sa $9.60 floor, kaya $1,060 para sa isang contract. Karaniwang mas mataas ang hinihingi ng mga broker.

Pareho ba ang naked option margin sa bawat broker?

Hindi. Itinatakda ng Reg T at FINRA Rule 4210 ang minimum, at maaaring magdagdag ang bawat broker ng house requirement na mas mataas dito. Marami ang gumagawa nito para sa single names at kapag malapit ang earnings dates. Ibinibigay ng published formula ang pinakamababang halaga, hindi ang figure na ipapakita ng iyong platform.

Kasama ba sa requirement ang premium na nakokolekta ko?

Idinadagdag ang natanggap na premium sa parehong branch ng formula at kino-credit sa account kapag nag-settle ang trade. Hindi nito binabago kung aling branch ang binding, dahil pareho itong lumilitaw sa magkabilang panig sa parehong halaga.

Ano ang margin para sa isang naked index option?

Ang broad based index options ay gumagamit ng 15% sa halip na 20%, na may parehong 10% floor at parehong premium term. Ang options sa isang ETF na sumusubaybay sa broad index ay itinuturing na equity options at gumagamit ng 20% figure. Kaya hindi awtomatikong napupunta ang mas mababang percentage sa exposure kapag nagbago ang wrapper. Pareho pa rin silang regulatory minimums.

Maaari bang magbago ang naked option requirement habang hawak ko ito?

Oo. Muli itong kinakalkula batay sa presyo ng underlying, kaya gumagalaw ito tuwing gumagalaw ang stock, gaya ng ipinapakita ng trace sa itaas. Kapag umakyat ang stock patungo sa short call strike, tumataas ang halaga. Maaari ring itaas ng broker ang house requirement sa isang open position.


May SQL na gumawa sa bawat panel dito. I-expand ang alinman sa mga ito upang makita kung paano eksaktong kinakalkula ang isang branch. Para patakbuhin ang parehong chain math sa isang pangalan na sinusubaybayan mo, hilingin ito sa plain English sa Strasmore terminal.

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