Heston Model और Volatility Smile की व्याख्या
एक स्थिर वोलैटिलिटी संख्या पूरे ऑप्शन चेन का मूल्य निर्धारण नहीं कर सकती। जानें कि कैसे Heston मॉडल variance को गतिशील बनाता है और इसके पैरामीटर्स smile को कैसे प्रभावित करते हैं।
Heston मॉडल का परिचय
Heston मॉडल एक option pricing मॉडल है जो volatility को स्थिर मानने के बजाय यादृच्छिक (random) मानता है। इसमें दो गतिशील घटक होते हैं: शेयर की कीमत और उस कीमत का variance, जिनमें से प्रत्येक का अपना अलग यादृच्छिक प्रभाव (random shock) होता है। यादृच्छिकता का यही दूसरा स्रोत है जो मॉडल को volatility smile उत्पन्न करने में सक्षम बनाता है। Black-Scholes मॉडल में निहित एक स्थिर volatility की धारणा सभी strike prices पर केवल एक सपाट रेखा ही खींच सकती है, जबकि वास्तविकता में कोई भी option chain कभी भी सपाट नहीं रही है।
एक ही वोलैटिलिटी संख्या पूरे ऑप्शन चेन पर लागू क्यों नहीं हो सकती
Implied volatility वह वोलैटिलिटी इनपुट है जो किसी प्राइसिंग फॉर्मूला को उस कीमत पर वापस लाता है जिस पर कोई ऑप्शन वास्तव में ट्रेड करता है। जैसा कि implied volatility की गणना कैसे की जाती है पर हमारा पेज बताता है, यदि आप इसे प्रत्येक कॉन्ट्रैक्ट के लिए अलग-अलग निकालते हैं, तो एक ही एक्सपायरी में स्ट्राइक के आधार पर एक कर्व मिलता है, न कि एक समान स्तर। नीचे दिया गया पैनल 2026 की पहली छमाही में 20 से 45 दिनों की शेष अवधि वाले सभी SPY कॉन्ट्रैक्ट्स को लेता है, उन्हें स्ट्राइक और स्पॉट के बीच की दूरी के आधार पर दो प्रतिशत के बैंड में व्यवस्थित करता है, और प्रत्येक बैंड के भीतर implied volatility का औसत निकालता है।
हर आंकड़े के पीछे का पूरा SQL
WITH
(
SELECT avg(implied_volatility)
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND date BETWEEN '2026-01-02' AND '2026-06-30'
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.01
) AS atm_iv
SELECT
concat(if(m_bucket > 0, '+', ''), toString(m_bucket), '%') AS moneyness,
round(avg(iv) * 100, 2) AS iv_pct,
round((avg(iv) - atm_iv) * 100, 2) AS iv_vs_atm_pts,
count() AS contracts
FROM
(
SELECT
implied_volatility AS iv,
toInt16(round((toFloat64(strike_price) / toFloat64(underlying_close) - 1) * 50) * 2) AS m_bucket
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND date BETWEEN '2026-01-02' AND '2026-06-30'
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.12
)
GROUP BY m_bucket
HAVING count() >= 100
ORDER BY m_bucket-12% बैंड, जिसमें स्ट्राइक स्पॉट से काफी नीचे हैं, की औसत implied volatility 28.05% रही, जो उसी विंडो के लिए एट-द-मनी औसत से 11.61 वोलैटिलिटी अंक अधिक है। कॉल साइड पर +12% बैंड का औसत 15.56% रहा। बीच के बैंड उस कर्व को दर्शाते हैं जिसके नाम पर यह प्रभाव पड़ा है, और इसका एक तरफ झुकाव volatility skew कहलाता है। एक एकल वोलैटिलिटी पैरामीटर वाला मॉडल इस स्थिति को नहीं संभाल सकता: ऐसा मॉडल हर स्ट्राइक के लिए एक्सपायरी पर कीमत के एक ही वितरण का उपयोग करता है, और उस मॉडल को इनवर्ट करने पर संरचनात्मक रूप से हर स्ट्राइक पर एक ही संख्या प्राप्त होती है।
Heston मॉडल में क्या बदलाव आते हैं
Heston मॉडल स्टॉक के रैंडम शॉक (यादृच्छिक झटके) को बनाए रखता है और variance (प्रसरण) के लिए एक दूसरी प्रक्रिया जोड़ता है। प्रतीकों के बजाय शब्दों में:
- अगले क्षण में स्टॉक की चाल एक ड्रिफ्ट और एक रैंडम शॉक का योग होती है, जिसे वर्तमान variance के वर्गमूल (square root) द्वारा स्केल किया जाता है।
- variance की चाल एक निश्चित गति से दीर्घकालिक स्तर की ओर खिंचाव है, जिसमें उसका अपना शॉक भी शामिल होता है, जिसे vol-of-vol पैरामीटर और वर्तमान variance के वर्गमूल द्वारा स्केल किया जाता है।
- ये दोनों शॉक आपस में -1 और 1 के बीच की एक संख्या द्वारा सहसंबद्ध (correlated) होते हैं।
वह वर्गमूल स्केलिंग Cox-Ingersoll-Ross फॉर्म है, और यह एक महत्वपूर्ण काम करती है: जैसे-जैसे variance शून्य के करीब पहुंचता है, variance शॉक घटकर शून्य हो जाता है, जो variance को नकारात्मक होने से रोकता है। जब गति का दोगुना और दीर्घकालिक variance का गुणनफल vol-of-vol के वर्ग से अधिक हो जाता है, जिसे Feller के नाम से जाना जाने वाला एक मानक कहा जाता है, तो variance पूरी तरह से सकारात्मक बना रहता है।
variance स्वयं प्रत्यक्ष रूप से देखने योग्य नहीं है। इसका implied counterpart (निहित प्रतिरूप) देखने योग्य है, और वह स्थिर नहीं रहता। नीचे दिया गया पैनल 2026 की दूसरी तिमाही के दौरान दो नामों के लिए at-the-money implied volatility को दर्शाता है, जिसमें प्रति सत्र एक रीडिंग ली गई है।
हर आंकड़े के पीछे का पूरा SQL
SELECT
toString(date) AS session_date,
round(avgIf(implied_volatility, underlying_symbol = 'SPY') * 100, 2) AS spy_atm_iv_pct,
round(avgIf(implied_volatility, underlying_symbol = 'NVDA') * 100, 2) AS nvda_atm_iv_pct
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('SPY', 'NVDA')
AND date BETWEEN '2026-04-01' AND '2026-06-30'
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 countIf(underlying_symbol = 'SPY') > 0
AND countIf(underlying_symbol = 'NVDA') > 0
ORDER BY dateSPY ने इस विंडो की शुरुआत 20.39% पर 2026-04-01 को की और 14.45% पर 2026-06-30 को इसे बंद किया। NVDA ने उन्हीं 62 सत्रों के दौरान 36.83% से 38.22% तक का सफर तय किया। न तो कोई रेखा स्थिर रहती है और न ही कोई दूर भागती है: दोनों ही भटकती रहती हैं और एक दायरे में वापस आती रहती हैं। उस तस्वीर के दोनों सिरों की कीमत तय करने के लिए एक शुरुआती स्तर, एक दीर्घकालिक स्तर और उनके बीच खिंचाव की गति की आवश्यकता होती है।
Heston का प्रत्येक पैरामीटर सतह को कैसे प्रभावित करता है
मीन रिवर्जन और लॉन्ग-रन लेवल टर्म स्ट्रक्चर को आकार देते हैं
किसी option का मूल्य उसके जीवनकाल में अपेक्षित औसत variance पर निर्भर करता है, न कि आज के variance पर। अगले सप्ताह समाप्त होने वाले कॉन्ट्रैक्ट के लिए, आज का variance उस औसत पर हावी रहता है; एक वर्ष में समाप्त होने वाले कॉन्ट्रैक्ट के लिए, लॉन्ग-रन लेवल हावी रहता है। स्पीड पैरामीटर यह निर्धारित करता है कि अपेक्षाएं कितनी तेजी से इनके बीच यात्रा करती हैं, जो यह तय करता है कि implied volatility कैलेंडर के शुरुआती हिस्से से पिछले हिस्से तक कितनी तेजी से ढलान लेती है।
हर आंकड़े के पीछे का पूरा SQL
SELECT
tenor,
round(avgIf(implied_volatility, underlying_symbol = 'SPY') * 100, 2) AS spy_iv_pct,
round(avgIf(implied_volatility, underlying_symbol = 'NVDA') * 100, 2) AS nvda_iv_pct
FROM
(
SELECT
implied_volatility,
underlying_symbol,
days_to_expiry,
multiIf(
days_to_expiry <= 7, '1 to 7 days',
days_to_expiry <= 21, '8 to 21 days',
days_to_expiry <= 45, '22 to 45 days',
days_to_expiry <= 90, '46 to 90 days',
days_to_expiry <= 180, '91 to 180 days',
'181 to 365 days') AS tenor
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('SPY', 'NVDA')
AND date BETWEEN '2026-01-02' AND '2026-06-30'
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 1 AND 365
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) <= 0.02
)
GROUP BY tenor
HAVING countIf(underlying_symbol = 'SPY') > 0
AND countIf(underlying_symbol = 'NVDA') > 0
ORDER BY min(days_to_expiry)1 to 7 days बकेट में Near-the-money SPY कॉन्ट्रैक्ट्स का औसत 2026 की पहली छमाही में 17.05% रहा, जबकि 181 to 365 days बकेट में यह 18.77% था। NVDA ने इन्हीं दो बकेट में 41.22% और 44.94% पर ट्रेड किया। एक 'वन-नंबर' मॉडल हर टेनोर (tenor) की कीमत एक ही volatility के आधार पर तय करता है। Heston मॉडल शुरुआती और पिछले हिस्सों को उनके अपने स्तर देता है, जिसमें स्पीड पैरामीटर उनके बीच के आकार को नियंत्रित करता है। इनमें से अधिक कर्व्स हमारे IV टर्म स्ट्रक्चर पेज पर उपलब्ध हैं।
Vol of vol स्माइल को मोड़ती है
Vol of vol स्वयं variance की अस्थिरता है। यदि इसे शून्य पर सेट किया जाए, तो variance एक सुचारू पथ का अनुसरण करता है: टर्म स्ट्रक्चर में ढलान तो हो सकती है, लेकिन स्ट्राइक के बीच की स्माइल सपाट हो जाती है। इसे बढ़ाने पर समाप्ति के समय मूल्य का वितरण दोनों tails में अधिक वजन प्राप्त करता है, जो स्पॉट से दूर की स्ट्राइक्स को उसके पास की स्ट्राइक्स से ऊपर उठा देता है। व्यवहार में variance कितनी दूर तक यात्रा करता है, यह underlying पर निर्भर करता है, और नीचे दिया गया पैनल उस यात्रा को सीधे मापता है।
हर आंकड़े के पीछे का पूरा SQL
SELECT
symbol,
round(min(daily_iv) * 100, 2) AS low_iv_pct,
round(max(daily_iv) * 100, 2) AS high_iv_pct,
round((max(daily_iv) - min(daily_iv)) * 100, 2) AS swing_pts
FROM
(
SELECT
underlying_symbol AS symbol,
date,
avg(implied_volatility) AS daily_iv
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'AMZN', 'KO')
AND date BETWEEN '2026-01-02' AND '2026-06-30'
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 symbol, date
)
GROUP BY symbol
ORDER BY swing_pts DESCAMZN ने पैनल में सबसे व्यापक रेंज कवर की: at-the-money implied volatility 28.21% जितनी कम और 74.42% जितनी अधिक रही, जो छह महीनों में 46.22 volatility पॉइंट्स का अंतर है। KO ने सबसे संकीर्ण रेंज कवर की, जो 10.75 पॉइंट्स पर थी। Vega, जो volatility के प्रति मूल्य संवेदनशीलता है जिसे हमारे vega पेज में परिभाषित किया गया है, सतह के स्तर को मापता है। स्टोकेस्टिक अस्थिरता के तहत, समान vega वाले दो कॉन्ट्रैक्ट्स अलग तरह से व्यवहार कर सकते हैं जब स्तर के बजाय आकार में बदलाव होता है।
कोरिलेशन स्माइल को स्क्यू (skew) में झुकाता है
स्टॉक के शॉक और variance के शॉक के बीच का कोरिलेशन एक सममित स्माइल को एकतरफा बना देता है। नकारात्मक कोरिलेशन के तहत, जिन रास्तों पर स्टॉक गिरता है, उन पर variance बढ़ता है, और समाप्ति पर वितरण की बाईं tail का वजन दाईं tail से अधिक होता है। तब पुट-साइड की implied volatility, स्पॉट से समान दूरी पर स्थित कॉल-साइड की implied volatility से अधिक महंगी होती है।
हर आंकड़े के पीछे का पूरा SQL
SELECT
underlying_symbol AS symbol,
round(avgIf(iv, ratio <= 0.95) * 100, 2) AS otm_put_iv_pct,
round(avgIf(iv, ratio >= 1.05) * 100, 2) AS otm_call_iv_pct,
round((avgIf(iv, ratio <= 0.95) - avgIf(iv, ratio >= 1.05)) * 100, 2) AS put_minus_call_pts
FROM
(
SELECT
underlying_symbol,
implied_volatility AS iv,
toFloat64(strike_price) / toFloat64(underlying_close) AS ratio
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'AMZN', 'KO')
AND date BETWEEN '2026-01-02' AND '2026-06-30'
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.20
)
GROUP BY underlying_symbol
HAVING countIf(ratio <= 0.95) > 0
AND countIf(ratio >= 1.05) > 0
ORDER BY put_minus_call_pts DESC2026 की पहली छमाही में, SPY ने पैनल में सबसे बड़ा अंतर दिखाया: स्पॉट से कम से कम पांच प्रतिशत नीचे स्ट्राइक वाले कॉन्ट्रैक्ट्स का औसत 27% रहा, जबकि कम से कम पांच प्रतिशत ऊपर स्ट्राइक वाले कॉन्ट्रैक्ट्स के लिए यह 14.76% था, जो 12.23 volatility पॉइंट्स का अंतर है। दूसरी ओर, MSFT ने उसी माप पर 3.9 पॉइंट्स दर्ज किए। प्रति underlying एक कोरिलेशन पैरामीटर ही उस पूरे झुकाव की रेंज को कवर करता है।
स्टार्टिंग variance स्तर निर्धारित करता है
पांचवां पैरामीटर वह variance है जिससे मॉडल आज शुरू होता है। यह सतह के आकार को बहुत अधिक बदले बिना पूरी सतह को ऊपर या नीचे ले जाता है, यही कारण है कि इसे सबसे अधिक बार रिफिट किया जाता है: यह मॉडल को बाजार के वर्तमान स्तर पर बनाए रखता है जबकि अन्य चार पैरामीटर ज्यामिति को संभालते हैं।
मॉडल क्या खरीदता है, और इसकी लागत क्या है
यह खरीद एक ऐसी सतह है जो पांच व्याख्या योग्य संख्याओं से दो दिशाओं में मुड़ती है, और इसका मूल्य निर्धारण त्वरित होता है। Heston मॉडल एक characteristic function और एक numerical integral के माध्यम से European options का मूल्यांकन करता है, जिसमें किसी simulation की आवश्यकता नहीं होती है। यह एक पूरे chain को सेकंड के एक अंश में फिट करना व्यावहारिक बनाता है। इसकी लागतों को स्पष्ट रूप से बताना आवश्यक है।
- पांचों parameters को calibrate किया जाता है, जिन्हें किसी माप के बजाय देखे गए option prices के आधार पर फिट किया जाता है।
- एक calibration केवल एक snapshot होता है। कल फिर से फिट करने पर संख्याएं बदल जाती हैं, जिसका अर्थ है कि मॉडल के constants स्थिर नहीं होते हैं।
- एक parameter सेट शायद ही कभी सभी expiries पर एक साथ फिट बैठता है। बहुत कम अवधि वाले smiles इस variance process की तुलना में अधिक तेजी से मुड़ते हैं।
- बाजार में कीमतें gap के साथ चलती हैं। यहाँ variance और spot दोनों लगातार चलते हैं, और एक gap को फिट की गई संख्याओं द्वारा अवशोषित किया जाना चाहिए।
Volatility पेजों से आने वाले पाठकों के लिए एक चेतावनी महत्वपूर्ण है। Variance process उन dynamics का वर्णन करता है जो options का मूल्य निर्धारित करते हैं, जो उस volatility से भिन्न है जिसे एक शेयर बाद में realise करता है। इन दोनों के बीच की दूरी implied volatility versus realised volatility का विषय है।
जहाँ मॉडल अभी भी चूक जाता है
प्रत्येक कमी के लिए विस्तार मौजूद हैं। Bates मॉडल Heston के variance को बनाए रखता है और मूल्य प्रक्रिया में जंप (jumps) जोड़ता है, जिससे अल्पकालिक smile अधिक तीव्र हो जाती है। Rough volatility मॉडल रैंडम variance को बनाए रखते हैं और ड्राइवर को मानक ब्राउनियन मोशन (Brownian motion) की तुलना में अधिक रफ पाथ (rougher paths) से बदल देते हैं, जो बहुत ही अल्पकालिक छोर (short end) से अधिक सटीकता से मेल खाता है। इनमें से कोई भी कैलिब्रेशन की समस्या को दूर नहीं करता है: दोनों ही ऐसे पैरामीटर जोड़ते हैं जिन्हें एक मोमेंट (moment) के लिए फिट करना पड़ता है और बाद में फिर से फिट करना पड़ता है।
अक्सर पूछे जाने वाले प्रश्न
Heston मॉडल सरल शब्दों में क्या है?
यह एक option pricing मॉडल है जिसमें volatility यादृच्छिक (random) होती है। variance अपने स्वयं के पथ का अनुसरण करती है और एक दीर्घकालिक स्तर की ओर खिंचाव रखती है। इसकी यादृच्छिकता शेयर की चाल के साथ सहसंबद्ध (correlated) होती है, जो मॉडल को एक सपाट रेखा के बजाय एक घुमावदार volatility smile को मूल्य देने की अनुमति देती है।
Black-Scholes मॉडल एक सपाट volatility smile क्यों देता है?
यह एक स्थिर volatility मानकर चलता है, जो समाप्ति पर मूल्य के लिए एक ही वितरण (distribution) तय करता है। प्रत्येक strike price का मूल्य उसी वितरण से निकाला जाता है, और फॉर्मूले को उलटने पर हर strike पर समान volatility प्राप्त होती है। यह सपाट रेखा धारणा का परिणाम है, न कि बाजारों के बारे में कोई खोज।
पांच Heston पैरामीटर्स का क्या अर्थ है?
Starting variance सतह के आज के स्तर को निर्धारित करता है। Long-run variance यह तय करता है कि समय के साथ variance किस स्तर की ओर खिंचेगी, और mean-reversion speed यह तय करती है कि यह खिंचाव कितनी तेजी से काम करेगा। Vol of vol स्माइल के घुमाव को निर्धारित करता है, और दो झटकों (shocks) के बीच का सहसंबंध इसके झुकाव को तय करता है।
क्या Heston मॉडल वास्तविक option कीमतों पर सटीक बैठता है?
यह एक सामान्य सतह के मध्य भाग पर काफी सटीक बैठता है, लेकिन बहुत कम अवधि (short end) पर इसे कठिनाई होती है, जहाँ देखी गई स्माइल इसके variance प्रोसेस की अनुमति से कहीं अधिक तेजी से मुड़ती है। फिट किए गए पैरामीटर्स भी हर दिन बदलते रहते हैं, जिससे कैलिब्रेशन एक बार का माप होने के बजाय एक निरंतर चलने वाली प्रक्रिया बन जाता है।
ऊपर दिया गया प्रत्येक पैनल उस SQL के साथ आता है जिसने इसे तैयार किया है, जिसे किसी अन्य नाम या विंडो पर फिर से उपयोग करने के लिए तैयार रखा गया है। options डेटा के विरुद्ध इनमें से कोई भी प्रश्न सरल भाषा में पूछने के लिए, Strasmore टर्मिनल खोलें।