aboutsummaryrefslogtreecommitdiffstats
path: root/python/tests/test_swaption.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/tests/test_swaption.py')
-rw-r--r--python/tests/test_swaption.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/python/tests/test_swaption.py b/python/tests/test_swaption.py
index 84cbc6ba..b51e048b 100644
--- a/python/tests/test_swaption.py
+++ b/python/tests/test_swaption.py
@@ -103,5 +103,27 @@ class TestMoveForward(unittest.TestCase):
self.assertAlmostEqual(trade.pv, trade2.pv)
+class TestDifferentVersion(unittest.TestCase):
+ trade = BlackSwaption.from_tradeid(342)
+
+ def test_build_from_scratch(self):
+ self.trade.value_date = datetime.date(2022, 10, 12)
+ index = CreditIndex(
+ redcode="2I65BRZG8",
+ maturity=datetime.date(2027, 6, 20),
+ notional=25_000_000,
+ value_date=datetime.date(2022, 10, 12),
+ )
+ new_trade = BlackSwaption(
+ index, datetime.date(2022, 11, 16), 94.0, "payer", "Short"
+ )
+ new_trade.notional = 25_000_000
+ self.assertAlmostEqual(self.trade._G, new_trade._G)
+ self.assertAlmostEqual(self.trade._strike, new_trade._strike)
+ self.trade.mark()
+ new_trade.mark()
+ self.assertAlmostEqual(self.trade.pv, new_trade.pv)
+
+
if __name__ == "__main__":
unittest.main()