लॉस डिस्ट्रीब्यूशन का KDE
Kernel density estimation (KDE) ऐसे डिस्ट्रीब्यूशन फिट कर सकता है जिनमें 'फैट टेल्स' हों, यानी औसत से कभी-कभी बड़े विचलन वाले डिस्ट्रीब्यूशन (जैसे पोर्टफोलियो लॉसेज़ का डिस्ट्रीब्यूशन).
Chapter 2 में आपने Student का T डिस्ट्रीब्यूशन सीखा था, जो कम degrees of freedom होने पर पोर्टफोलियो लॉसेज़ की इस विशेषता को भी कैप्चर कर सकता है.
आप Gaussian KDE और T डिस्ट्रीब्यूशन की तुलना करेंगे, दोनों को 2008 - 2009 के दिए गए पोर्टफोलियो losses पर फिट करके. आप एक histogram की मदद से दोनों के सापेक्ष फिट को विज़ुअलाइज़ करेंगे. (ध्यान रखें कि T डिस्ट्रीब्यूशन फिट किए गए पैरामीटर params का उपयोग करता है, जबकि gaussian_kde नॉन-पैरामीट्रिक है और एक फंक्शन लौटाता है.)
gaussian_kde() फंक्शन उपलब्ध है, और t डिस्ट्रीब्यूशन भी, दोनों scipy.stats से. प्लॉट्स दिए गए axis ऑब्जेक्ट पर जोड़े जा सकते हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Quantitative Risk Management
अभ्यास निर्देश
- पोर्टफोलियो
lossesपरtडिस्ट्रीब्यूशन फिट करें. gaussian_kde()का उपयोग करकेlossesपर Gaussian KDE फिट करें.- दोनों अनुमानों के probability density functions (PDFs) को
lossesके विरुद्ध,axisऑब्जेक्ट का उपयोग करके प्लॉट करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Generate a fitted T distribution over losses
params = t.____(losses)
# Generate a Gaussian kernal density estimate over losses
kde = ____(____)
# Add the PDFs of both estimates to a histogram, and display
loss_range = np.linspace(np.min(losses), np.max(losses), 1000)
axis.plot(loss_range, t.____(loss_range, *params), label = 'T distribution')
axis.____(loss_range, kde.pdf(____), label = 'Gaussian KDE')
plt.legend(); plt.show()