ডেল্টা হেজিং কীভাবে কাজ করে
ডেল্টা হেজিংয়ে short option book-কে কেন দাম বাড়লে শেয়ার কিনতে ও কমলে বিক্রি করতে হয়, এবং এই round trip-এ কীভাবে ক্ষতি হয় তা জানুন।
ডেল্টা হেজিং হলো দিকনিরপেক্ষ থাকার জন্য একটি options desk-এর ব্যবহৃত পদ্ধতি। এতে অপশনের ডেল্টাকে সমন্বয় করার মতো আকারের শেয়ার পজিশন রাখা হয়। এরপর underlying-এর দাম পরিবর্তিত হলে সেই পজিশনে আবার ট্রেড করা হয়। কোনো book-এ options short থাকলে শেয়ারের দাম বাড়ার পর শেয়ার কিনতে হয় এবং দাম কমার পর শেয়ার বিক্রি করতে হয়। তখন desk-এর লাভ-ক্ষতি শেয়ারটি কতটা পথ অতিক্রম করেছে তার সঙ্গে সম্পর্কিত হয়, শেষ পর্যন্ত কোথায় গিয়ে থেমেছে তার সঙ্গে নয়।
ডেল্টা হেজিং কী?
Underlying-এ $1 পরিবর্তনের বিপরীতে কোনো option-এর দামে যত পরিবর্তন হয়, সেটিই ডেল্টা। Call-এর ক্ষেত্রে এটি 0 থেকে 1 এবং put-এর ক্ষেত্রে 0 থেকে -1 পর্যন্ত প্রকাশ করা হয়। একটি US equity option 100টি শেয়ার কভার করে। তাই ডেল্টাকে 100 দিয়ে গুণ করলে শেয়ারের সংখ্যা পাওয়া যায়। অর্থাৎ, এই মুহূর্তে চুক্তিটি যত শেয়ারের সমতুল্য আচরণ করছে। ডেল্টার এই রূপান্তর option delta-র গাইড-এ ধাপে ধাপে দেখানো হয়েছে।
Delta hedge ওই সংখ্যার বিপরীতে একটি সমন্বয়কারী stock position তৈরি করে। 0.50 ডেল্টার একটি call বিক্রি করলে book-এ 50টি short share-এর সমতুল্য exposure থাকে। এটি সমতল করতে 50টি শেয়ার কিনতে হয়। এখানে “hedged” শব্দটির অর্থ সীমিত: এই মুহূর্তে, এই দামে, সামান্য দিকগত পরিবর্তনের ক্ষেত্রে neutral থাকা। ডেল্টা স্থির থাকে না। শেয়ারের দাম পরিবর্তিত হলে এবং চুক্তির মেয়াদ কমে এলে ডেল্টাও বদলে যায়। তাই শেয়ারের পজিশনকেও সেই অনুযায়ী বদলাতে হয়।
হেজ কখনও স্থির থাকে না কেন
বিভিন্ন strike-এ ডেল্টা ধাপের মতো নয়, একটি curve-এর মতো পরিবর্তিত হয়। নিচের panel-এ June 2026 জুড়ে 25 থেকে 35 দিন মেয়াদ বাকি থাকা চুক্তির জন্য spot price থেকে strike কত দূরে ছিল তার ভিত্তিতে SPY call ও put-এর গড় ডেল্টা দেখানো হয়েছে।
প্রতিটি সংখ্যার পেছনের সঠিক SQL
SELECT
concat(if(pct_from_spot >= 0, '+', ''), toString(pct_from_spot), '%') AS strike_vs_spot,
round(avgIf(delta, is_call), 3) AS call_delta,
round(avgIf(delta, is_put), 3) AS put_delta
FROM
(
SELECT
toInt16(round((toFloat64(strike_price) / toFloat64(underlying_close) - 1) * 100)) AS pct_from_spot,
lower(option_type) IN ('call', 'c') AS is_call,
lower(option_type) IN ('put', 'p') AS is_put,
delta
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND iv_converged = 1
AND volume > 0
AND underlying_close > 0
AND days_to_expiry BETWEEN 25 AND 35
AND date >= '2026-06-01'
AND date < '2026-07-01'
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) <= 0.05
)
GROUP BY pct_from_spot
HAVING countIf(is_call) > 0 AND countIf(is_put) > 0
ORDER BY pct_from_spotCurve-টি বাম থেকে ডানে পড়লেই পুরো সমস্যাটি বোঝা যায়। Spot price থেকে -5% দূরে থাকা strike-এর call-এর গড় ডেল্টা ছিল 0.839। +5%-এ একই expiry window-তে গড় ডেল্টা ছিল 0.099। Put-এর রেখাটি এর বিপরীত প্রতিচ্ছবি হিসেবে নিচের strike-এ -0.164 থেকে উপরের strike-এ -0.864 পর্যন্ত গেছে। শেয়ার এই curve বরাবর চললে প্রতিটি অবস্থানে hedger-এর প্রয়োজনীয় শেয়ারের সংখ্যা বদলে যায়। Gamma হলো curve-টির ঢাল। অর্থাৎ, ডেল্টা নিজে যে হারে পরিবর্তিত হয়, সেটিই gamma।
প্রতিটি বাধ্যতামূলক ট্রেডের আকার কত?
প্রতিটি rebalance-এর আকার নির্ধারণ করে gamma। নিচের panel-এ এটিকে desk যে এককে বাস্তবে ট্রেড করে, সেই শেয়ারের এককে রূপান্তর করা হয়েছে। At-the-money SPY contract-এর ক্ষেত্রে underlying 1% পরিবর্তিত হলে 100টি contract hedger-কে কত শেয়ার ট্রেড করতে বাধ্য করে, তা দেখানো হয়েছে। Contract-এর মেয়াদ কতটা বাকি ছিল, সেই অনুযায়ী ফলাফলটি ভাগ করা হয়েছে।
প্রতিটি সংখ্যার পেছনের সঠিক SQL
SELECT
multiIf(bucket = 1, '0-2 days',
bucket = 2, '3-7 days',
bucket = 3, '8-21 days',
bucket = 4, '22-45 days',
'46-90 days') AS expiry_window,
toUInt32(round(avg(shares_per_contract) * 100)) AS hedge_shares
FROM
(
SELECT
multiIf(days_to_expiry <= 2, 1,
days_to_expiry <= 7, 2,
days_to_expiry <= 21, 3,
days_to_expiry <= 45, 4,
5) AS bucket,
toFloat64(gamma) * toFloat64(underlying_close) AS shares_per_contract
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND iv_converged = 1
AND volume > 0
AND underlying_close > 0
AND days_to_expiry BETWEEN 0 AND 90
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) <= 0.01
AND date >= '2026-06-01'
AND date < '2026-07-01'
)
GROUP BY bucket
ORDER BY bucket0-2 days মেয়াদ বাকি থাকা contract-এ underlying 1% পরিবর্তিত হলে hedge প্রায় 3429 শেয়ার বদলেছে। একই 100টি contract-এর ক্ষেত্রে 46-90 days মেয়াদ বাকি থাকলে পরিবর্তন ছিল প্রায় 587 শেয়ার। Contract-এর সংখ্যা একই, underlying একই, কিন্তু বাধ্যতামূলক ট্রেডের পরিমাণ সম্পূর্ণ ভিন্ন। স্বল্পমেয়াদি book-এ দ্রুত এবং ঘন ঘন rebalance করতে হয়। দীর্ঘমেয়াদি book ধীরে সরে। সময়ের সঙ্গে greeks কীভাবে বদলে যায়-এ expiry এগিয়ে এলে এই curve কীভাবে আরও খাড়া হয়, তা দেখানো হয়েছে।
পাঁচটি closing price এবং সেগুলোর পেছনের শেয়ার
এখানে একটি কাল্পনিক price path-এর মাধ্যমে পুরো প্রক্রিয়াটি দেখানো হলো। হিসাব সহজ রাখার জন্য দামগুলো বানানো হয়েছে এবং প্রতিটি ডেল্টা সরাসরি দেওয়া হয়েছে, কোনো model দিয়ে নির্ণয় করা হয়নি। একটি desk $100 দামের শেয়ারের ওপর 10টি at-the-money call $2.00 প্রতি শেয়ার দরে বিক্রি করে $2,000 সংগ্রহ করল (10টি contract, প্রতিটিতে 100টি শেয়ার, প্রতি শেয়ার $2.00)। প্রতিটি close-এ hedge-কে আবার flat করা হলো।
- Close 1: শেয়ারের দাম $100.00, ডেল্টা 0.50। Book-এ 500টি short delta রয়েছে। তাই hedge 500টি শেয়ার কেনে। Hedge position: 500টি শেয়ার long।
- Close 2: শেয়ারের দাম $103.00, ডেল্টা 0.62। লক্ষ্য 620টি শেয়ার। তাই hedge আরও 120টি শেয়ার কেনে। দাম বাড়ার সময় ধরে রাখা 500টি শেয়ার থেকে লাভ হয় $1,500।
- Close 3: শেয়ারের দাম $99.00, ডেল্টা 0.44। লক্ষ্য কমে 440টি শেয়ারে দাঁড়ায়। তাই hedge 180টি শেয়ার বিক্রি করে। পতনের সময় ধরে রাখা 620টি শেয়ার থেকে $2,480 ক্ষতি হয়। ফলে hedge $980 পিছিয়ে যায়।
- Close 4: শেয়ারের দাম $102.00, ডেল্টা 0.58। লক্ষ্য 580টি শেয়ার। তাই hedge আরও 140টি শেয়ার কেনে। 440টি শেয়ার থেকে $1,320 লাভ হয়। ফলে hedge $340 এগিয়ে যায়।
- Close 5: শেয়ারের দাম $100.00, ডেল্টা 0.48। লক্ষ্য 480টি শেয়ার। তাই hedge 100টি শেয়ার বিক্রি করে। 580টি শেয়ার থেকে $1,160 ক্ষতি হয়। ফলে hedge $820 পিছিয়ে থাকে।
শেয়ারের শেষ দাম শুরু দামের সমান। Hedger $103 এবং $102 দামে কিনেছে, $99 এবং $100 দামে বিক্রি করেছে। ফলে option এখনও খোলা থাকা অবস্থায় সংগৃহীত $2,000 premium-এর বিপরীতে share position-এ $820 ক্ষতি হয়েছে। কোনো ধাপই ভুল ছিল না। প্রতিটি ট্রেড সেই মুহূর্তে যান্ত্রিক নিয়ম অনুযায়ী সঠিক ছিল। সংখ্যাগুলো বদলালেও যে বিষয়টি অপরিবর্তিত থাকে, তা হলো এই দিকের সম্পর্ক। প্রতিটি purchase হয়েছে দাম বাড়ার পর এবং প্রতিটি sale হয়েছে দাম কমার পর। Options short থাকা কোনো book এই pattern উল্টে দিতে পারে না। Contract-এর সংখ্যা দ্বিগুণ করলে gamma-ও দ্বিগুণ হয়। তাই তালিকার প্রতিটি ট্রেড এবং একই price path-এর খরচও দ্বিগুণ হবে। Market maker-রা কেন অর্থ হারায়-এ premium এই খরচ মেটাতে ব্যর্থ হওয়ার পরিস্থিতিগুলো দেখানো হয়েছে।
Time decay হলো হিসাবের অন্য দিক। এই পাঁচটি close-এর সময় option-এর time value-ও কমেছে। Seller-এর সেই লাভের বিপরীতে hedging loss সমন্বয় হয়। Price path শান্ত হলে premium-এর কিছু অংশ অব্যবহৃত থাকে। Price path অস্থির হলে premium খরচ হয়। Path যথেষ্ট অস্থির হলে পুরো premium-এর চেয়েও বেশি খরচ হতে পারে।
Path গুরুত্বপূর্ণ, গন্তব্য নয়
Hedger net change-এর বিপরীতে নয়, price path-এর বিপরীতে ট্রেড করে। নিচের panel-এ June 2026 জুড়ে চারটি পরিচিত কোম্পানির ক্ষেত্রে দুটি পরিমাপ দেখানো হয়েছে। Path length হলো প্রতিদিনের percentage move-এর পরম মানগুলোর যোগফল। Net move হলো প্রথম close থেকে শেষ close পর্যন্ত সরল দূরত্ব।
প্রতিটি সংখ্যার পেছনের সঠিক SQL
SELECT
ticker,
round(path, 1) AS path_length_pct,
round(net, 1) AS net_move_pct,
round(path / greatest(net, 0.05), 1) AS path_to_net_ratio
FROM
(
SELECT
ticker,
arraySum(arrayMap((a, b) -> abs(a / b - 1) * 100,
arraySlice(px, 2),
arraySlice(px, 1, length(px) - 1))) AS path,
abs(px[-1] / px[1] - 1) * 100 AS net
FROM
(
SELECT
ticker,
arrayMap(t -> t.2, arraySort(t -> t.1, groupArray((session_date, session_close)))) AS px
FROM
(
SELECT
ticker,
date AS session_date,
toFloat64(max(close)) AS session_close
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('SPY', 'AAPL', 'MSFT', 'KO')
AND date >= '2026-06-01'
AND date < '2026-07-01'
GROUP BY ticker, date
)
GROUP BY ticker
)
)
ORDER BY path_to_net_ratioসবচেয়ে কম ব্যবধান থাকা কোম্পানি MSFT-ও শুরু দামের কাছাকাছি 19% দূরে গিয়ে শেষ করার আগে দৈনিক মোট 43.2% movement অতিক্রম করেছে। এর অনুপাত ছিল 1-এর বিপরীতে 2.3। Panel-এর অন্য প্রান্তে SPY তার net move-এর 11.4 গুণ পথ অতিক্রম করেছে। Directional trader দ্বিতীয় সংখ্যাটির ওপর অর্থ উপার্জন করে। Delta hedger প্রথম সংখ্যাটির জন্য খরচ বহন করে।
Premium আসলে কোন খরচ মেটায়
Seller যে premium সংগ্রহ করে, তার মূল্য নির্ধারিত হয় implied volatility-এর ভিত্তিতে। এটি বাজার যে movement প্রত্যাশা করে, তার পরিমাপ। Hedging bill নির্ধারিত হয় realized volatility দিয়ে। এটি বাস্তবে যে movement দেখা দেয়, তার পরিমাপ। নিচের panel-এ trailing year জুড়ে প্রতি মাসে SPY-এর জন্য দুটি পরিমাপ একই axis-এ দেখানো হয়েছে।
প্রতিটি সংখ্যার পেছনের সঠিক SQL
WITH
monthly_iv AS
(
SELECT
toStartOfMonth(date) AS m,
round(avg(implied_volatility) * 100, 1) AS implied_vol_pct
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND iv_converged = 1
AND volume > 0
AND underlying_close > 0
AND days_to_expiry BETWEEN 20 AND 45
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05
AND date >= '2025-08-01'
AND date < '2026-08-01'
GROUP BY m
),
monthly_rv AS
(
SELECT
m,
round(arrayReduce('stddevPop', rets) * sqrt(252) * 100, 1) AS realized_vol_pct
FROM
(
SELECT
m,
arrayMap((a, b) -> log(a / b),
arraySlice(px, 2),
arraySlice(px, 1, length(px) - 1)) AS rets
FROM
(
SELECT
toStartOfMonth(session_date) AS m,
arrayMap(t -> t.2, arraySort(t -> t.1, groupArray((session_date, session_close)))) AS px
FROM
(
SELECT
date AS session_date,
toFloat64(max(close)) AS session_close
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'SPY'
AND date >= '2025-08-01'
AND date < '2026-08-01'
GROUP BY date
)
GROUP BY m
)
WHERE length(rets) > 5
)
)
SELECT
toString(iv.m) AS month,
iv.implied_vol_pct AS implied_vol_pct,
rv.realized_vol_pct AS realized_vol_pct
FROM monthly_iv AS iv
INNER JOIN monthly_rv AS rv ON rv.m = iv.m
ORDER BY iv.mওই chart-এর সর্বশেষ মাসে 20 থেকে 45 দিন expiry বাকি থাকা at-the-money SPY contract-এর গড় implied volatility ছিল 14.8%। Underlying-এর realized volatility ছিল 12.1%। যে মাসগুলোতে realized line implied line-এর নিচে থাকে, সে মাসগুলোতে price path-এর খরচ ক্ষয় হওয়া premium-এর চেয়ে কম ছিল। যে মাসগুলোতে realized line ওপরে থাকে, সেখানে বিপরীতটি ঘটে। এই ব্যবধানই delta-hedged option book-এর exposure। বাজার কোন দিকে গেছে, সেটি নয়। Market maker-রা কীভাবে অর্থ উপার্জন করে-এ এর সঙ্গে থাকা spread capture ব্যাখ্যা করা হয়েছে। Gamma exposure পুরো বাজারজুড়ে এই বাধ্যতামূলক ট্রেডের হিসাব যোগ করে।
Desks বাস্তবে কীভাবে hedge করে
প্রায় কেউই প্রতিটি close-এ rebalance করে না। অল্প কয়েকটি desk-ই নির্দিষ্ট সময়সূচি অনুসরণ করে। Continuously hedge করলে ডেল্টা খুব কাছাকাছি অনুসরণ করা যায়, কিন্তু commission এবং spread cross করার খরচে premium-এর বড় অংশ চলে যায়। সাধারণ পদ্ধতি হলো একটি band ব্যবহার করা। Net delta নির্দিষ্ট tolerance-এর মধ্যে থাকলে position অপরিবর্তিত রাখা হয়। সেটি band-এর বাইরে গেলে আবার flat-এর দিকে ট্রেড করা হয়। Band যত প্রশস্ত হবে, ট্রেড তত কম হবে এবং ট্রেডগুলোর মধ্যবর্তী সময়ে drift তত বেশি হবে। কোনো শেয়ার ট্রেড করার আগে desk পুরো book-এর net exposure হিসাব করে। ফলে একটি expiry-র short call এবং অন্য expiry-র long call পরস্পরকে বাতিল করতে পারে। Beta-weighted portfolio delta ভিন্ন underlying-এর ক্ষেত্রেও একই netting ধারণা প্রয়োগ করে।
প্রায়শই জিজ্ঞাসিত প্রশ্ন
সহজ ভাষায় delta hedging কী?
এটি এমন একটি stock position রাখা, যা option-এর directional exposure বাতিল করে। Delta-কে 100 দিয়ে গুণ করলে একটি contract-এর share equivalent পাওয়া যায়। Hedger এই সংখ্যার বিপরীত position রাখে এবং ডেল্টা পরিবর্তিত হলে position আপডেট করে।
Market maker-রা কি বিক্রি করা প্রতিটি option hedge করে?
তারা প্রতিটি contract আলাদাভাবে নয়, পুরো book-এর net exposure hedge করে। পরস্পরকে সমন্বয় করা position প্রথমে অভ্যন্তরীণভাবে বাতিল হয়। এরপর অবশিষ্ট delta-ই share trade হিসেবে underlying-এ পৌঁছায়।
অস্থিরভাবে ওঠানামা করা শেয়ারে delta hedge কেন অর্থ হারায়?
Options short থাকা book-এ প্রতিটি rebalance-এ দাম বাড়ার পর কেনা হয় এবং দাম কমার পর বিক্রি করা হয়। দাম আবার আগের অবস্থানে ফিরলে purchase price sale price-এর ওপরে থাকে। এই ব্যবধানই realized cost। শুরুতে সংগ্রহ করা premium থেকেই এই খরচ মেটানো হয়।
Traders কত ঘন ঘন delta hedge rebalance করে?
বাস্তবে কোনো একক interval নেই। বেশি ঘন ঘন rebalance করলে ডেল্টা আরও কাছ থেকে অনুসরণ করা যায়। তবে spread এবং commission-এ বেশি খরচ হয়। তাই অনেক desk একটি delta tolerance band নির্ধারণ করে এবং position band-এর বাইরে গেলেই ট্রেড করে।
Delta-hedged position কি ঝুঁকিমুক্ত?
না। এটি একটি নির্দিষ্ট মুহূর্তে সামান্য price move-এর directional exposure neutral করে। Gap এবং jump, implied volatility-এর পরিবর্তন, dividend এবং financing cost-এর ঝুঁকি থেকেই যায়। Underlying price path অতিক্রম করার সময় hedge নিজেও একটি খরচ realize করে।
এই panel-গুলো কীভাবে পরিমাপ করা হয়েছে
Option panel-গুলোতে daily per-contract greeks ব্যবহার করা হয়েছে। যেসব contract ট্রেড হয়েছে এবং যেগুলোর implied volatility সঠিকভাবে নির্ণয় করা গেছে, শুধু সেগুলো নেওয়া হয়েছে। Trade-size panel-এ “At the money” বলতে ওই দিনের underlying close-এর 1%-এর মধ্যে থাকা strike বোঝানো হয়েছে। Delta curve-এ সীমাটি 5%। Forced-trade figure gamma-কে শেয়ারে রূপান্তর করে। Underlying 1% পরিবর্তিত হলে একটি contract-এর hedge প্রায় gamma গুণ share price পরিমাণ বদলায়। Panel-এ সেটিকে 100টি contract-এর জন্য হিসাব করা হয়েছে। June 2026 এবং trailing-year window নির্দিষ্ট তারিখের ওপর ভিত্তি করে স্থির করা হয়েছে। তাই পরবর্তী ভিজিটেও ফলাফল অপরিবর্তিত থাকবে। পাঁচটি close-এর উদাহরণটি কাল্পনিক। প্রতিটি delta pricing model থেকে নির্ণয় না করে সরাসরি দেওয়া হয়েছে।
এই প্রতিটি panel-এর সঙ্গে সেটি তৈরি করা exact SQL রয়েছে। একটি খুললে সংখ্যাটি কীভাবে গণনা করা হয়েছে তা দেখা যাবে। অথবা Strasmore terminal-এ একই প্রশ্ন plain English-এ করুন।