aboutsummaryrefslogtreecommitdiffstats
path: root/python/tests
diff options
context:
space:
mode:
Diffstat (limited to 'python/tests')
-rw-r--r--python/tests/test_swaption.py24
1 files changed, 11 insertions, 13 deletions
diff --git a/python/tests/test_swaption.py b/python/tests/test_swaption.py
index 1fd71d27..bc71d012 100644
--- a/python/tests/test_swaption.py
+++ b/python/tests/test_swaption.py
@@ -4,7 +4,7 @@ import datetime
import sys
sys.path.append('..')
from analytics.index import g
-from analytics import Index, Swaption
+from analytics import Index, Swaption, BlackSwaption
class TestPutCallParity(unittest.TestCase):
index = Index.from_name("ig", 27, "5yr",
@@ -23,13 +23,13 @@ class TestPutCallParity(unittest.TestCase):
df * (payer.forward_pv -
g(self.index, self.strike, self.exercise_date, payer._forward_yc)))
- def test_parity_pvblack(self):
- payer = Swaption(self.index, self.exercise_date, self.strike)
- receiver = Swaption(self.index, self.exercise_date, self.strike, "receiver")
+ def test_parity_black(self):
+ payer = BlackSwaption(self.index, self.exercise_date, self.strike)
+ receiver = BlackSwaption(self.index, self.exercise_date, self.strike, "receiver")
payer.sigma = 0.416
receiver.sigma = 0.416
df = self.index._yc.discount_factor(payer.exercise_date_settle)
- self.assertAlmostEqual(payer.pv_black - receiver.pv_black,
+ self.assertAlmostEqual(payer.pv - receiver.pv,
df * (payer.forward_pv -
g(self.index, self.strike, self.exercise_date, payer._forward_yc)))
@@ -38,7 +38,7 @@ class TestPutCallParity(unittest.TestCase):
payer.sigma = 0.2
pv = 30 * 1e-4
payer.pv = pv
- self.assertAlmostEqual(payer.pv, payer.pv)
+ self.assertAlmostEqual(payer.pv, pv)
self.assertAlmostEqual(payer.sigma, 0.3756828)
def test_hy(self):
@@ -47,7 +47,7 @@ class TestPutCallParity(unittest.TestCase):
index.price = 103.875
exercise_date = datetime.date(2017, 3, 15)
strike = 102.5
- payer = Swaption(index, exercise_date, strike, strike_is_price = True)
+ payer = Swaption(index, exercise_date, strike)
payer.pv = 1.948 * 1e-2
self.assertAlmostEqual(payer.sigma, 0.4144886488)
@@ -65,29 +65,27 @@ class TestBreakeven(unittest.TestCase):
igstrike = 80
def test_hypayer(self):
- payer = Swaption(self.hyindex, self.exercise_date,
- self.hystrike, strike_is_price=True)
+ payer = Swaption(self.hyindex, self.exercise_date, self.hystrike)
payer.sigma = .4
payer.notional = 1e7
self.assertAlmostEqual(payer.breakeven, 100.66971148766)
def test_hyreceiver(self):
receiver = Swaption(self.hyindex, self.exercise_date,
- self.hystrike, "receiver", strike_is_price=True)
+ self.hystrike, "receiver")
receiver.sigma = .4
receiver.notional = 1e7
self.assertAlmostEqual(receiver.breakeven, 103.9609977905)
def test_igpayer(self):
- payer = Swaption(self.igindex, self.exercise_date,
- self.igstrike, strike_is_price=False)
+ payer = Swaption(self.igindex, self.exercise_date, self.igstrike)
payer.sigma = .4
payer.notional = 1e7
self.assertAlmostEqual(payer.breakeven, 88.39037813)
def test_igreceiver(self):
receiver = Swaption(self.igindex, self.exercise_date,
- self.igstrike, "receiver", strike_is_price=False)
+ self.igstrike, "receiver")
receiver.sigma = .4
receiver.notional = 1e7
self.assertAlmostEqual(receiver.breakeven, 73.698281555)