aboutsummaryrefslogtreecommitdiffstats
path: root/python/exploration/test_swaption.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/exploration/test_swaption.py')
-rw-r--r--python/exploration/test_swaption.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/python/exploration/test_swaption.py b/python/exploration/test_swaption.py
index e1c28ec7..bc5a39ad 100644
--- a/python/exploration/test_swaption.py
+++ b/python/exploration/test_swaption.py
@@ -6,6 +6,7 @@ from quantlib.pricingengines.api import BlackSwaptionEngine
from quantlib.instruments.swap import Receiver
from quantlib.time.api import Period, Years, Date, Days
from quantlib.settings import Settings
+from quantlib.experimental.risk.sensitivityanalysis import parallel_analysis
helpers = rate_helpers("USD", evaluation_date=datetime.date.today())
yc = YC(helpers)
@@ -33,14 +34,16 @@ def theta(swaption):
def dv01(swaption, helpers):
old_pv = swaption.npv
- old_quotes = [rh.quote for rh in helpers]
+ old_quotes = [rh.quote.value for rh in helpers]
for rh in helpers:
- rh.quote += 1e-4
+ rh.quote.value += 1e-4
dv01 = old_pv - swaption.npv
for rh, q in zip(helpers, old_quotes):
- rh.quote = q
+ rh.quote.value = q
return dv01
+delta, gamma = parallel_analysis([h.quote for h in helpers],
+ [swaption1], [])
print("NPV: ", swaption1.npv)
print("DV01: ", dv01(swaption1, helpers))