Implied Volatility থেকে Expected Move কীভাবে হিসাব করবেন
Expected move-এর সূত্র, straddle shortcut এবং realized move-এর ফলাফল দেখুন। 30 দিনের উদাহরণে options market-এর সম্ভাব্য মূল্যপরিসর দ্রুত বুঝুন।
Expected move হলো নির্দিষ্টসংখ্যক দিনে কোনো শেয়ারের জন্য options market যে মূল্যপরিসর নির্ধারণ করছে। এটি নির্ধারণে implied volatility ব্যবহার করা হয়:
শেয়ারের মূল্য × implied volatility × (দিনসংখ্যা ÷ 365)-এর বর্গমূল।
30% implied volatility-সহ $100 মূল্যের কোনো শেয়ারের 30 দিনের expected move প্রায় $8.60, বা 8.6%। কারণ 0.30 × (30 ÷ 365)-এর বর্গমূলের মান 0.086।
এই পরিসরটি one-standard-deviation range। এটি দিকনির্দেশের পূর্বাভাস নয়। আবার, এর অর্থও নয় যে শেয়ারের মূল্য এই সীমা অতিক্রম করতে পারবে না।
অন্তর্নিহিত অস্থিরতা থেকে প্রত্যাশিত মূল্যপরিসর কীভাবে গণনা করবেন
অন্তর্নিহিত অস্থিরতা হলো কোনো অপশনের মূল্য থেকে অনুমিত রিটার্নের বার্ষিকীকৃত standard deviation। এটি সবসময় বার্ষিক সংখ্যা হিসেবে প্রকাশ করা হয়। তাই 30% মানে 1 বছরের একটি পরিসর। প্রতিটি স্বল্পমেয়াদি সময়সীমা এই মান থেকে আলাদাভাবে স্কেল করতে হয়। অস্থিরতা সময়ের বর্গমূলের সঙ্গে সামঞ্জস্য রেখে পরিবর্তিত হয়। তাই দিনগুলোকে সরাসরি ভাগ না করে বর্গমূলের চিহ্নের ভেতরে রাখা হয়।
প্রত্যাশিত মূল্যপরিসর = মূল্য × IV × √(দিন ÷ 365)
আপনার broker দেখানো সংখ্যার সঙ্গে হিসাব মেলাতে 2টি convention গুরুত্বপূর্ণ। 365 দিয়ে calendar days ভাগ করা retail বাজারে প্রচলিত নিয়ম। কিছু trading desk 252 trading days ব্যবহার করে। একই IV-তে এতে সামান্য বেশি পরিসর পাওয়া যায়। ফলাফলটি 1 standard deviation। স্বাভাবিক বণ্টন ধরে এটি প্রায় 68% সম্ভাব্য ফলাফলকে অন্তর্ভুক্ত করে। এই মান দ্বিগুণ করলে 2-standard-deviation পরিসর পাওয়া যায়, যা প্রায় 95% ফলাফলকে অন্তর্ভুক্ত করে।
আপনি যে IV ব্যবহার করেছেন, সেটি আদৌ বেশি কি না—এটি আলাদা প্রশ্ন। এর জন্য আলাদা পৃষ্ঠা রয়েছে: 30% IV কি বেশি। সেখানে একটি নির্দিষ্ট মানকে বাজারের নিজস্ব distribution-এর সঙ্গে তুলনা করা হয়।
দিনের বর্গমূলের সঙ্গে রেঞ্জ কেন বাড়ে
একটি শেয়ার এবং একটি ট্রেডিং সেশন অপরিবর্তিত রেখে শুধু সময়সীমা পরিবর্তন করলে সূত্রটির গঠন নিজেই স্পষ্ট হয়। 2026 সালের জুলাইয়ের মাঝামাঝি Apple-এর near-the-money কনট্র্যাক্টগুলো মেয়াদ শেষ হতে বাকি সময় অনুযায়ী ভাগ করা হয়েছে:
প্রতিটি সংখ্যার পেছনের সঠিক SQL
SELECT multiIf(days_to_expiry <= 7, '1 week',
days_to_expiry <= 14, '2 weeks',
days_to_expiry <= 45, '1 month',
days_to_expiry <= 120, '3 months',
days_to_expiry <= 240, '6 months',
'1 year') AS horizon,
round(avg(days_to_expiry), 0) AS avg_days,
round(100 * avg(toFloat64(implied_volatility)), 1) AS iv_pct,
round(100 * avg(toFloat64(implied_volatility)) * sqrt(avg(days_to_expiry) / 365), 2) AS expected_move_pct,
round(avg(toFloat64(underlying_close)) * avg(toFloat64(implied_volatility))
* sqrt(avg(days_to_expiry) / 365), 2) AS expected_move_usd,
round(avg(toFloat64(underlying_close)), 2) AS underlying_price,
formatDateTime(max(date), '%b %e, %Y') AS as_of
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 <= toDate('2026-07-15'))
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 1 AND 400
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05
GROUP BY horizon
HAVING count() >= 3
ORDER BY avg_daysJul 15, 2026 তারিখে, 1 week bucket-এ মেয়াদ শেষ হতে গড়ে 5 দিন বাকি ছিল এবং 28% implied volatility ছিল। প্রত্যাশিত মূল্য-পরিবর্তন ছিল 3.17%, অর্থাৎ $10.41, যেখানে শেয়ারের দাম ছিল $327.8। 1 year bucket-এ গড়ে 292 দিন বাকি ছিল এবং 28.4% IV ছিল। প্রত্যাশিত মূল্য-পরিবর্তন ছিল 25.44%, অর্থাৎ $83.39।
মূল শিক্ষা স্তরগুলোর চেয়ে অনুপাতের মধ্যে রয়েছে। দিনের সংখ্যা 4 গুণ করলে প্রত্যাশিত মূল্য-পরিবর্তন দ্বিগুণ হয়। এটি যেকোনো শেয়ার এবং যেকোনো IV-এর ক্ষেত্রেই প্রযোজ্য, কারণ 4-এর বর্গমূল 2। কেউ যদি এক মাসের রেঞ্জকে 12 দিয়ে গুণ করে বার্ষিক রেঞ্জ হিসাব করেন, তাহলে বার্ষিক রেঞ্জ প্রায় 3.5 গুণ বেশি দেখানো হবে। সঠিক multiplier হলো 12-এর বর্গমূল, যা 3.46।
straddle-এর সংক্ষিপ্ত পদ্ধতি, এবং কেন এটি প্রায় 20% কম দেখায়
বাজারের নিজস্ব প্রত্যাশিত মুভ নির্ণয়ের আরও দ্রুত একটি পদ্ধতি আছে। এতে কোনো গাণিতিক হিসাবের প্রয়োজন হয় না। at-the-money straddle-এর দাম দেখুন। এটি একই strike price ও একই expiry-র call এবং put নিয়ে গঠিত। এরপর দুই option premium যোগ করুন। অনেক trading desk এই যোগফলকেই expected move হিসেবে উদ্ধৃত করে।
দুই পদ্ধতিতে একই সংখ্যা পাওয়া যায় না। এই পার্থক্য কোনো পদ্ধতির ভুল নয়। straddle-এর payoff হলো strike price থেকে শেয়ারের চূড়ান্ত মূল্যের পরম দূরত্ব। তাই straddle-এর দাম বাজারের প্রত্যাশিত গড় মুভ প্রকাশ করে। অন্যদিকে, সূত্রটি একটি standard deviation দেয়। স্বাভাবিক বণ্টনে গড় পরম বিচ্যুতি একটি standard deviation-এর 0.798 গুণ। তাই straddle-এর দাম সূত্রের ফলাফলের চেয়ে প্রায় 20% কম থাকে। straddle-এর দামকে 1.25 দিয়ে গুণ করলে, অর্থাৎ 0.798 দিয়ে 1 ভাগ করলে, দুই ফলাফল কাছাকাছি আসে।
শুরুতে দেওয়া $100-এর কাল্পনিক উদাহরণে এটি প্রয়োগ করুন। সূত্রে ফল আসে $8.60। ওই শেয়ারের at-the-money straddle-এর দাম প্রায় $6.86 হবে, কারণ 0.798 × 8.60 = 6.86। $6.86-কে 1.25 দিয়ে গুণ করলে আবার $8.58 পাওয়া যায়। পদ্ধতি দুটি আলাদা হলেও সংখ্যা এক থাকে, যদি জানা থাকে প্রতিটি পদ্ধতি কোন পরিসংখ্যান প্রকাশ করে। একটি option chain পড়া দেখায়, ওই দুই option premium কোথায় পাওয়া যায়।
প্রত্যাশিত মুভ যা বোঝায় না
- দিকনির্দেশ নয়। ব্যান্ডটি আজকের দামের চারপাশে সমমিত, আর options market এর প্রস্থের মূল্য নির্ধারণ করে, কোন দিকে যাবে তার নয়।
- নিশ্চয়তা নয়। 68% হিসাবটি normal distribution-এর ওপর ভিত্তি করে। বাস্তব রিটার্নে tail risk বেশি থাকে। তাই মডেলের অনুমানের চেয়ে চরম ফলাফল বেশি দেখা যায়।
- বাধা নয়। মডেল অনুযায়ী, প্রায় প্রতি তিনটি window-এর একটি one-standard-deviation band-এর বাইরে শেষ হয়। এর বাইরে থাকা অস্বাভাবিক নয়।
- স্থির নয়। Implied volatility প্রতিটি সেশনে নতুন করে মূল্যায়িত হয়। তাই নির্দিষ্ট expiry-এর expected move প্রতিদিন পুনর্নির্ধারিত হয়।
আয় প্রতিবেদন প্রকাশের পর কী ঘটে
নির্ধারিত earnings date হলো এমন একটি স্পষ্ট উদাহরণ, যখন খবর প্রকাশের আগে implied volatility বেড়ে যায় এবং খবর প্রকাশের পরের সেশনে কমে যায়। এই প্রবণতাকে IV crush বলা হয়। একই সময়সূচিতে expected move-ও দ্রুত কমে যায়। নিচের প্যানেলে থাকা NVDA-এর 2023 সালের মে মাসের শেষের earnings report প্রথম সেশনের বাজার বন্ধ হওয়ার পর প্রকাশিত হয়েছিল।
প্রতিটি সংখ্যার পেছনের সঠিক SQL
WITH
(SELECT avg(toFloat64(implied_volatility))
FROM global_markets.options_greeks
WHERE underlying_symbol = 'NVDA'
AND date = toDate('2023-05-24')
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 45
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05) AS iv_report_day,
(SELECT avg(toFloat64(underlying_close))
FROM global_markets.options_greeks
WHERE underlying_symbol = 'NVDA'
AND date = toDate('2023-05-24')
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 45
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05) AS px_report_day
SELECT date,
formatDateTime(date, '%b %e') AS session_label,
round(100 * avg(toFloat64(implied_volatility)), 1) AS iv_pct,
round(100 * avg(toFloat64(implied_volatility)) * sqrt(avg(days_to_expiry) / 365), 2) AS expected_move_pct,
round(100 * avg(toFloat64(implied_volatility)) / iv_report_day, 1) AS iv_pct_of_report_day,
round(100 * (avg(toFloat64(underlying_close)) / px_report_day - 1), 2) AS move_from_report_day_pct
FROM global_markets.options_greeks
WHERE underlying_symbol = 'NVDA'
AND date BETWEEN toDate('2023-05-24') AND toDate('2023-06-09')
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 45
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05
GROUP BY date
HAVING count() >= 3
ORDER BY dateরিপোর্ট প্রকাশের দিন, অর্থাৎ May 24 তারিখের সেশনে, near-the-money implied volatility ছিল 115.1%। Expiry পর্যন্ত implied move ছিল 30.54%। পরের সেশনে একই পরিমাপটি সেই মাত্রার 42.9%-এ নেমে আসে। Jun 9 নাগাদ implied volatility ছিল 39.2%, আর শেয়ারের দাম রিপোর্ট প্রকাশের দিনের ক্লোজের তুলনায় 1.71% অবস্থানে ছিল।
এই সমন্বয় থেকেই একটি পরিচিত অভিযোগের কারণ বোঝা যায়। কোনো ট্রেডার earnings move-এর দিক সঠিকভাবে অনুমান করেও long option-এ অর্থ হারাতে পারেন। কারণ চুক্তিটির মূল্য নির্ধারণে ব্যবহৃত volatility input অনিশ্চয়তা দূর হওয়ার সঙ্গে সঙ্গেই কমিয়ে দেওয়া হয়। earnings কীভাবে greeks-কে প্রভাবিত করে অংশে এই পজিশনের বাকি দিকটি ব্যাখ্যা করা হয়েছে।
প্রত্যাশিত মুভ কি বাস্তবায়িত মুভের সঙ্গে সামঞ্জস্যপূর্ণ?
দাবিটি যাচাই করা যায়, তাই এখানে সেই পরীক্ষা করা হলো। 2026 সালের জুনের মাঝামাঝি পর্যন্ত দুই বছরে প্রতি বুধবার, 6টি লিকুইড নামের জন্য 25 থেকে 40 দিন মেয়াদি কনট্র্যাক্টে near-the-money implied volatility নেওয়া হয়েছে। এরপর তা পরবর্তী দিনগুলোর জন্য expected move-এ রূপান্তর করা হয়েছে। তারপর অন্তত 30 ক্যালেন্ডার দিন পরে প্রথম ট্রেডিং সেশনে শেয়ারটি বাস্তবে কত দূর এগিয়েছে, তা মাপা হয়েছে।
প্রতিটি সংখ্যার পেছনের সঠিক SQL
WITH obs AS (
SELECT underlying_symbol AS ticker,
date AS obs_date,
avg(toFloat64(implied_volatility)) AS iv,
avg(toFloat64(underlying_close)) AS spot
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('NVDA', 'AAPL', 'MSFT', 'XOM', 'SPY', 'KO')
AND date BETWEEN toDate('2024-06-12') AND toDate('2026-06-17')
AND toDayOfWeek(date) = 3
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 25 AND 40
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05
GROUP BY ticker, obs_date
HAVING count() >= 4 AND avg(toFloat64(implied_volatility)) > 0.01
),
px AS (
SELECT underlying_symbol AS ticker,
date AS px_date,
avg(toFloat64(underlying_close)) AS close_px
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('NVDA', 'AAPL', 'MSFT', 'XOM', 'SPY', 'KO')
AND date BETWEEN toDate('2024-06-12') AND toDate('2026-07-25')
AND days_to_expiry BETWEEN 5 AND 60
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.02
GROUP BY ticker, px_date
),
moves AS (
SELECT obs.ticker AS ticker,
obs.obs_date AS obs_date,
any(obs.iv) AS iv,
any(obs.spot) AS spot,
argMin(px.close_px, px.px_date) AS end_px,
min(dateDiff('day', obs.obs_date, px.px_date)) AS elapsed_days
FROM obs
INNER JOIN px ON obs.ticker = px.ticker
WHERE px.px_date >= addDays(obs.obs_date, 30)
AND px.px_date <= addDays(obs.obs_date, 36)
GROUP BY ticker, obs_date
)
SELECT ticker,
count() AS windows_tested,
round(quantileDeterministic(0.5)(100 * iv * sqrt(elapsed_days / 365), cityHash64(obs_date)), 2) AS implied_move_pct,
round(quantileDeterministic(0.5)(100 * abs(end_px / spot - 1), cityHash64(obs_date)), 2) AS realized_move_pct,
round(100 * countIf(abs(end_px / spot - 1) > iv * sqrt(elapsed_days / 365)) / count(), 1) AS realized_over_implied_pct
FROM moves
GROUP BY ticker
ORDER BY implied_move_pct DESC6টির মধ্যে NVDA সবচেয়ে বিস্তৃত রেঞ্জ প্রাইস করেছিল। 103টি উইন্ডোতে এর median implied move ছিল 13.3%, বিপরীতে median realized move ছিল 6.77%। শান্ত বাজারের প্রান্তে, SPY 4.37%-এর বিপরীতে 2.68% realized move প্রাইস করেছিল।
শেষ কলামটিই প্রকৃত মানদণ্ড। এক standard deviation-এর রেঞ্জ প্রায় 32% সময় অতিক্রম হওয়ার কথা। তাই তুলনার ভিত্তি শূন্য হওয়া উচিত নয়। NVDAটি উইন্ডারের মধ্যে 23.3%টি সেই রেঞ্জের বাইরে শেষ হয়েছে, যা তার অপশনগুলো প্রাইস করেছিল। একইভাবে SPYটির মধ্যে 24.3%টি উইন্ডোও রেঞ্জের বাইরে শেষ হয়েছে। প্রতিটি নামের জন্য দুই median পাশাপাশি পড়ুন এবং তাদের ব্যবধান দেখুন। ব্যবধান যে দিকেই হোক, অপশনগুলো বাস্তবে যতটা মুভমেন্ট হয়েছে তার চেয়ে বেশি মুভমেন্টের জন্য প্রাইস করা হয়েছিল কি না, পুরো যুক্তিটি সেখানেই। সবচেয়ে বিস্তৃত implied range বহনকারী নামগুলো বাছাই করা আলাদা একটি কাজ, আর সর্বোচ্চ implied volatility-র শেয়ারগুলো সেই তালিকা দেয়।
ডেটা নোট ও সংজ্ঞা
- Near the money বলতে ওই সেশনের underlying close-এর 5%-এর মধ্যে থাকা strike বোঝায়। কনট্র্যাক্টগুলোর implied volatility পরস্পরের সঙ্গে সামঞ্জস্যপূর্ণ এবং volume শূন্য নয়।
- Expected move হিসাবের ক্ষেত্রে সর্বত্র 365 দিনের ভিত্তিতে calendar days ব্যবহার করা হয়েছে। Realized move হলো পর্যবেক্ষণের close এবং অন্তত 30 ক্যালেন্ডার দিন পরে প্রথম সেশনের close-এর মধ্যকার শতকরা দূরত্ব; এখানে দিকের চিহ্ন বাদ দেওয়া হয়েছে।
- পর্যবেক্ষণ সাপ্তাহিক, কিন্তু forward window 30 দিনের। তাই পার্শ্ববর্তী উইন্ডোগুলো পরস্পরের সঙ্গে overlap করে এবং count-গুলো স্বাধীন draw নয়।
প্রত্যাশিত মুভ FAQ
Implied volatility থেকে প্রত্যাশিত মুভ কীভাবে হিসাব করা হয়?
শেয়ারের দামকে দশমিক আকারে প্রকাশিত implied volatility দিয়ে গুণ করুন। এরপর সেটিকে 365 দিয়ে ভাগ করা দিনের সংখ্যার বর্গমূল দিয়ে গুণ করুন। 45 দিনে 40% implied volatility থাকা $50 দামের শেয়ারের ক্ষেত্রে: 50 × 0.40 × √(45 ÷ 365) = $7.02। অর্থাৎ পরিসর প্রায় 14%।
At-the-money straddle-এর দাম কি প্রত্যাশিত মুভের সমান?
কাছাকাছি, তবে এক নয়। Straddle প্রত্যাশিত গড় মুভের মূল্য নির্ধারণ করে। এটি একটি standard deviation-এর প্রায় 0.798 অংশ। Straddle premium-কে 1.25 দিয়ে গুণ করলে সূত্রে পাওয়া one-standard-deviation মানটি পাওয়া যায়।
কোনো শেয়ার কি তার প্রত্যাশিত মুভের সীমার মধ্যে থাকে?
সাধারণত থাকে। মডেল অনুযায়ী, প্রায় 32% ক্ষেত্রে তা এই সীমা অতিক্রম করবে। উপরে পরীক্ষা করা সাপ্তাহিক window-গুলোর মধ্যে 23.3%টি NVDAটি window implied range-এর বাইরে শেষ হয়েছে এবং 24.3%টি SPYটি window-ও তা করেছে।
Earnings প্রকাশের পরপরই প্রত্যাশিত মুভ কেন সংকুচিত হয়?
প্রত্যাশিত মুভ implied volatility-এর সরাসরি ফাংশন। নির্ধারিত report প্রকাশের আগে implied volatility বেড়ে যায়। ফলাফল জানা হয়ে গেলে তা কমে যায়। উপরের panel-এ, NVDA-এর report প্রকাশের পরের session-এ মানটি report-day reading-এর 42.9% ছিল।
বেশি প্রশস্ত প্রত্যাশিত মুভ কি ভালো সুযোগ নির্দেশ করে?
এটি শুধু একটি বেশি প্রশস্ত পরিসর নির্দেশ করে। বড় প্রত্যাশিত মুভের অর্থ, options market বেশি অনিশ্চয়তার মূল্য নির্ধারণ করছে। সেই অনিশ্চয়তা বহনকারী contracts-গুলোর দামও অনুপাতে বেশি। এই পরিসর তার দাম ন্যায্য কি না, সে বিষয়ে কিছু বলে না।
এখানের প্রতিটি panel একটি stored query, যার সঙ্গে SQL সংযুক্ত আছে। একটি খুলে ticker বদলান এবং Strasmore terminal-এ একই implied-versus-realized test চালান।