Strasmore Research
শেখা Matt Connorদ্বারা Matt Connor

Put-call parity কীভাবে কাজ করে: বাস্তব সংখ্যায় ব্যাখ্যা

Put-call parity একই strike-এর call, put, share ও cash-কে যুক্ত করে। বাস্তব option chain দিয়ে সম্পর্কটি যাচাই করে implied dividend ও borrow rate বোঝানো হয়েছে।

Put-call parity হলো সেই নির্দিষ্ট গাণিতিক সম্পর্ক, যা একটি call, একই strike-এর matching put, underlying share এবং একটি cash loan-কে একটি মূল্যে যুক্ত করে। একই strike ও expiration date-এর European options-এর ক্ষেত্রে call price থেকে put price বাদ দিলে, stock-এর forward price এবং সেই strike-এর পার্থক্যের discounted value পাওয়া যায়। বাস্তব option chain-এ এই সম্পর্ক প্রয়োগ করলে options যে share price নির্দেশ করছে, তা পাওয়া যায়। এই মূল্য tape-এ দেখা দামের সঙ্গে সচরাচর মেলে না। দুই মূল্যের ব্যবধানের মধ্যে dividend এবং financing rate অন্তর্ভুক্ত থাকে।

Put-call parity আসলে কী বলে

সম্পূর্ণভাবে লিখলে সম্পর্কটি হলো C - P = S - PV(K) - PV(D)। একই strike ও expiration-এর call price হলো C এবং put price হলো P। আজকের share price হলো S। PV(K) হলো financing rate-এ discount করা strike। PV(D) হলো expiration-এর আগে share যে dividend দেয়, তার present value। Call options strike-এ কেনার অধিকার দেয়, আর put options সেই strike-এ বিক্রির অধিকার দেয়।

এই algebra-এর পেছনে একটি সমন্বিত পজিশন রয়েছে। একই strike-এ call কিনে put বিক্রি করলে expiration day-এ, share price যাই হোক, আপনি সেই strike-এ share own করার অবস্থানে থাকেন: দাম strike-এর ওপরে হলে call exercise করবেন, নিচে হলে put assignment পাবেন। এই জোড়াটি একটি synthetic long share position। এটি credit-এ কেনা হয়, অর্থাৎ আজ নয়, expiration-এ share-এর মূল্য পরিশোধ করা হয়। এর মধ্যে কোনো dividend পাওয়া যায় না। Parity এই দুই সমন্বয়ের মূল্য নির্ধারণ করে, আর কিছু নয়।

ধরা যাক, একটি share-এর মূল্য $100, এক বছরের $100 strike-এর call-এর quote $9, matching put-এর quote $5 এবং এর মধ্যে কোনো dividend নেই। এই জোড়ার মূল্য $4। এর সঙ্গে strike যোগ করলে, options $100 দামে quote হওয়া share-এর জন্য $104 মূল্য নির্দেশ করছে। এই $4 হলো এক বছরের deferred purchase price-এর ওপর প্রায় 4 শতাংশ হারে সুদ। সংখ্যাগুলো শুধু উদাহরণ হিসেবে দেওয়া হয়েছে এবং হিসাব সহজ রাখার জন্য round figure নেওয়া হয়েছে।

Options যে share price নির্দেশ করে

সম্পর্কটি rearrange করলে আলাদা একটি share price পাওয়া যায়: call price থেকে put price বাদ দিয়ে তার সঙ্গে strike যোগ করুন। একটি expiration-এর প্রতিটি strike-এ এই হিসাব করলে ফলগুলো সাধারণত কয়েক penny-এর মধ্যে থাকে। এই সংখ্যাটি synthetic stock price। Tape-এ দেখা closing price এবং এই মূল্যের দূরত্বই synthetic-এর basis বা carry। Expiration পর্যন্ত interest basis বাড়ায়। Expiration-এর আগে দেওয়া dividend basis কমায়।

Parity gap-এর মধ্যে কী থাকে

চারটি বিষয়, এবং কেবল এই চারটি:

  • Expiration পর্যন্ত interest। এখন নয়, পরে strike পরিশোধ করা চুক্তির মেয়াদজুড়ে একটি loan নেওয়ার সমান। এই জোড়ার মূল্য সেই loan-এর খরচ অন্তর্ভুক্ত করে।
  • Expiration-এর আগে দেওয়া dividend। Synthetic holder কোনো dividend পান না। তাই contract শেষ হওয়ার আগে ex হওয়া প্রতিটি dividend gap থেকে বাদ যায়।
  • Borrow cost। যে পক্ষ অন্য দিকটি নিয়ে share short করে, তাকে stock loan fee দিতে হয়। সেই fee একই gap-এর মধ্যে প্রতিফলিত হয়।
  • American contract-এর early exercise value, যা equality-কে একটি band-এ পরিণত করে।

বিভিন্ন expiration-এ একই সম্পর্ক

Interest প্রতিদিন accrues এবং dividend নির্দিষ্ট তারিখে দেওয়া হয়। তাই basis একটি single number নয়, বরং একটি curve। Option chain সেই curve সম্পর্কে আরও একটি ইঙ্গিত দেয়। Parity একটি strike-এর call ও put-কে একটি forward-এর সঙ্গে যুক্ত করে। তাই chain-এর নিজস্ব rate ও dividend ধরে হিসাব করা pricer দুই leg-এর জন্য একই implied volatility দেয়। দুই leg-এর মধ্যে যে পার্থক্য দেখা যায়, তা assumptions-এর পার্থক্য নির্দেশ করে।

এই panel-এর তথ্য অতীতের একটি সময়ে স্থির করা। তাই এই পৃষ্ঠার সংখ্যাগুলো পরিবর্তিত হয় না: July 2026 থেকে January 2027 পর্যন্ত AAPL-এর monthly expirations, June 16, 2026 session থেকে নেওয়া। প্রতিটি expiration-এর জন্য close-এর সবচেয়ে কাছের strike ব্যবহার করা হয়েছে।

কুয়েরিJune 16 2026-এ AAPL মাসিক মেয়াদে নিকট-অ্যাট-দ্য-মানি Call ও Put-এর অন্তর্নিহিত অস্থিরতা
প্রতিটি সংখ্যার পেছনের সঠিক SQL
SELECT
    expiry_date,
    days_out,
    concat('$', toString(argMin(strike, atm_gap)))                        AS atm_strike_used,
    round(100 * argMin(call_iv, atm_gap), 1)                              AS call_iv_pct,
    round(100 * argMin(put_iv, atm_gap), 1)                               AS put_iv_pct,
    round(100 * (argMin(call_iv, atm_gap) - argMin(put_iv, atm_gap)), 1)  AS iv_gap_pct
FROM
(
    SELECT
        expiry_date,
        days_out,
        strike,
        call_iv,
        put_iv,
        abs(strike / spot_close - 1) AS atm_gap
    FROM
    (
        SELECT
            toString(expiration_date)                                    AS expiry_date,
            max(dateDiff('day', toDate(date), toDate(expiration_date)))  AS days_out,
            round(toFloat64(strike_price), 2)                            AS strike,
            maxIf(toFloat64(implied_volatility), leg = 'C')              AS call_iv,
            maxIf(toFloat64(implied_volatility), leg = 'P')              AS put_iv,
            max(toFloat64(underlying_close))                             AS spot_close
        FROM
        (
            SELECT
                date,
                expiration_date,
                strike_price,
                implied_volatility,
                underlying_close,
                upper(substring(ticker, length(ticker) - 8, 1)) AS leg
            FROM global_markets.options_greeks
            WHERE underlying_symbol = 'AAPL'
              AND date = '2026-06-16'
              AND expiration_date BETWEEN '2026-07-01' AND '2027-01-31'
              AND toDayOfWeek(toDate(expiration_date)) = 5
              AND toDayOfMonth(toDate(expiration_date)) BETWEEN 15 AND 21
              AND iv_converged = 1
              AND volume > 0
              AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.03
        )
        GROUP BY expiry_date, strike
        HAVING countIf(leg = 'C') > 0
           AND countIf(leg = 'P') > 0
    )
)
GROUP BY expiry_date, days_out
ORDER BY expiry_date
Run this yourself

2026-07-17-এ, expiration পর্যন্ত 31 দিন বাকি থাকতে, $300 strike-এ call-এর implied volatility ছিল 21.9 percent এবং put-এর ছিল 20.5 percent। ব্যবধান ছিল 1.4 points। 2027-01-15-এ, expiration পর্যন্ত 213 দিন বাকি থাকতে, ব্যবধান ছিল 0.3 points। পুরো calendar জুড়ে দুই leg একসঙ্গে নিচের দিকে চলেছে।

Implied dividend বা implied borrow rate কীভাবে বের করবেন

Implied dividend বের করতে কোম্পানির ex-dividend date-এর আগে ও পরে থাকা দুটি expiration নিন। প্রতিটির basis হিসাব করে একটির সঙ্গে অন্যটি তুলনা করুন। অতিরিক্ত দিনগুলোর interest প্রচলিত bill rate থেকে সহজেই হিসাব করা যায় এবং সাধারণত তা ছোট। এরপর যা অবশিষ্ট থাকে, তা হলো মাঝের সময়ে chain যে cash dividend ex হওয়ার প্রত্যাশা করছে। আমাদের ex-dividend dates এবং options পৃষ্ঠায় ঘোষিত schedule-এর সঙ্গে এটি মিলিয়ে দেখলে chain-এর নিজস্ব dividend assumption বোঝা যায়।

Implied borrow rate বের করতে উল্টোভাবে হিসাব করুন। Dividend ঘোষিত পরিমাণে স্থির রাখুন এবং financing bill rate-এ নির্ধারণ করুন। এই দুই input থেকে যে basis পাওয়া যায়, তা chain-এ quote করা basis-এর সঙ্গে তুলনা করুন। কোনো share সহজে borrow করা গেলে দুই basis প্রায় একই হবে। Hard-to-borrow share-এর ক্ষেত্রে quoted basis হিসাব করা basis-এর নিচে থাকে। Annualized shortfall-ই হলো options যে borrow fee price করছে।

এর জন্য প্রথমে screen থেকে কোন দুটি price নিতে হবে তা জানা জরুরি। আমাদের option chain guide-এ layout ব্যাখ্যা করা হয়েছে।

American options কোথায় equality ভেঙে দেয়

American options expiration পর্যন্ত যেকোনো দিনে exercise করা যায়। European options কেবল expiration-এ exercise করা যায়। তাই strict equality হিসেবে parity European options-এর ক্ষেত্রেই প্রযোজ্য। American contracts-এর ক্ষেত্রে এটি একটি band-এ পরিণত হয়। যে পাশে early exercise-এর অধিকারটির আর্থিক মূল্য থাকে, band সেই পাশে বেশি প্রসারিত হয়। অবশিষ্ট time value-এর চেয়ে dividend বড় হলে, dividend-এর ঠিক আগে American call early exercise করা যুক্তিযুক্ত হতে পারে। এ কারণেই ex-dividend date-এর আগের দিনে early call exercise বেশি দেখা যায়।

একটি expiration-এর সব strike জুড়ে একই volatility test চালানো যায়। সেখানেই band-এর প্রস্থ দেখা যায়।

কুয়েরিSep 18 2026 মেয়াদে সমপর্যায়ের AAPL স্ট্রাইকে Call ও Put-এর অন্তর্নিহিত অস্থিরতা
প্রতিটি সংখ্যার পেছনের সঠিক SQL
SELECT
    strike,
    round(100 * call_iv, 1)             AS call_iv_pct,
    round(100 * put_iv, 1)              AS put_iv_pct,
    round(100 * (call_iv - put_iv), 1)  AS iv_gap_pct
FROM
(
    SELECT
        round(toFloat64(strike_price), 2)                AS strike,
        maxIf(toFloat64(implied_volatility), leg = 'C')  AS call_iv,
        maxIf(toFloat64(implied_volatility), leg = 'P')  AS put_iv
    FROM
    (
        SELECT
            strike_price,
            implied_volatility,
            upper(substring(ticker, length(ticker) - 8, 1)) AS leg
        FROM global_markets.options_greeks
        WHERE underlying_symbol = 'AAPL'
          AND date = '2026-06-16'
          AND expiration_date = '2026-09-18'
          AND iv_converged = 1
          AND volume > 0
          AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.15
          AND toUInt32(toFloat64(strike_price)) % 5 = 0
    )
    GROUP BY strike
    HAVING countIf(leg = 'C') > 0
       AND countIf(leg = 'P') > 0
)
ORDER BY strike
Run this yourself

Ladder জুড়ে দুই লাইন কাছাকাছি চলে। 255 strike-এ call-এর implied volatility 30.5 percent এবং put-এর 29.3 percent। ব্যবধান 1.2 points। Far strikes-এ gap দেখা দিলে সম্ভাব্য কারণ হতে পারে এক পাশে stale closing print, সেই strike-এ thin market, model-এ অন্তর্ভুক্ত না থাকা early exercise premium, অথবা chain যে dividend assumption price করছে তার সঙ্গে ভিন্ন কোনো dividend assumption।

Conversions এবং reversals: যে flow parity কার্যকর করে

Conversion হলো long shares, short call এবং একটি strike-এ long put। Reversal হলো এর বিপরীত। Expiration-এ share price যেদিকেই যাক, উভয় package-এর share-price exposure flat থাকে। অবশিষ্ট থাকে financing এবং dividend terms। Pair-এর বিচ্যুতি market maker-এর খরচ অতিক্রম করার মতো হলে তারা এই package তৈরি করে। এই flow quote-গুলোকে আবার parity line-এর দিকে টেনে আনে। Cheap financing এবং stock loan book থাকা desks-গুলোর কাছেই সাধারণত এই সুযোগের সুবিধা থাকে। এই পৃষ্ঠা সেই strategy-তে trading করার guide নয়।

Parity এবং put/call ratio-এর পার্থক্য

দুটিকে প্রায়ই একে অপরের সঙ্গে গুলিয়ে ফেলা হয়। Put-call parity হলো একই strike-এর একটি call এবং একটি put-এর মধ্যে pricing identity। এটি arithmetic। Put/call ratio পুরো chain জুড়ে volume বা open interest গণনা করে এবং sentiment gauge হিসেবে ব্যবহৃত হয়। Parity বলে share-এর তুলনায় একটি pair-এর মূল্য কত হওয়া উচিত। Ratio বলে মানুষ কী trade করেছে।

Data notes and method

সংখ্যাগুলো June 16, 2026-এ AAPL contracts-এর daily closing implied volatility। প্রতিটি strike-এ call ও put match করা হয়েছে এবং একই session-এর underlying close ব্যবহার করা হয়েছে। সেদিন volume শূন্যের বেশি এবং converged implied volatility থাকা contracts-ই অন্তর্ভুক্ত করা হয়েছে। পাঠযোগ্যতা বজায় রাখতে strike ladder-এ five-dollar grid ব্যবহার করা হয়েছে। Expiration panel-এ প্রতিটি monthly expiration-এর জন্য close-এর সবচেয়ে কাছের strike নেওয়া হয়েছে। OCC contract symbol-এর শেষ দিক থেকে নবম character দেখে call বা put letter নির্ধারণ করা হয়েছে। AAPL listed options American style-এর। তাই প্রতিটি সংখ্যায় সেদিন market যে early exercise premium price করেছিল, তা অন্তর্ভুক্ত রয়েছে।

FAQ

Put-call parity formula কী?

একই strike ও expiration-এর European options-এর ক্ষেত্রে call price থেকে put price বাদ দিলে share price থেকে strike-এর present value এবং expiration-এর আগে দেওয়া dividend-এর present value বাদ দেওয়ার ফল পাওয়া যায়। Rearranged form-এ, call price থেকে put price বাদ দিয়ে তার সঙ্গে strike যোগ করলে options যে share price নির্দেশ করছে, তা পাওয়া যায়।

Put-call parity কি American options-এর ক্ষেত্রে প্রযোজ্য?

Strict equality হিসেবে নয়। Early exercise-এর অধিকার এটিকে European relation-এর চারপাশে একটি band-এ পরিণত করে।

Option chain থেকে implied dividend কীভাবে হিসাব করব?

একটি strike ও expiration-এ call এবং put নিন। Call থেকে put বাদ দিয়ে তার সঙ্গে strike যোগ করুন। এরপর share price বাদ দিন। এই gap হলো expiration পর্যন্ত interest থেকে expected dividend বাদ দেওয়ার ফল। একই দিনের জন্য bill rate থেকে interest হিসাব করুন। অবশিষ্ট অংশই chain যে dividend price করছে।

একই strike-এর call এবং put-এর implied volatility কেন একই হয়?

Parity দুই price-কে এমনভাবে যুক্ত করে, যার মধ্যে volatility term নেই। তাই নির্দিষ্ট forward এবং discount rate দিয়ে একটি leg-এর price নির্ধারণ করা model একই input ব্যবহার করে অন্য leg-এর price নির্ধারণ করে।


এই পৃষ্ঠার প্রতিটি panel-এর নিচে ব্যবহৃত SQL রয়েছে। অন্য কোনো নাম বা আরও দূরের expiration-এ একই ladder চালাতে Strasmore terminal-এ plain English-এ অনুরোধ করুন।

#put-call parity#options#arbitrage#dividends#synthetics