diff options
Diffstat (limited to 'python/exploration/test_swaption.py')
| -rw-r--r-- | python/exploration/test_swaption.py | 9 |
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)) |
