aboutsummaryrefslogtreecommitdiffstats
path: root/python/analytics
diff options
context:
space:
mode:
Diffstat (limited to 'python/analytics')
-rw-r--r--python/analytics/curve_trades.py21
1 files changed, 2 insertions, 19 deletions
diff --git a/python/analytics/curve_trades.py b/python/analytics/curve_trades.py
index 6c20994d..34fcf72e 100644
--- a/python/analytics/curve_trades.py
+++ b/python/analytics/curve_trades.py
@@ -265,23 +265,6 @@ def spread_fin_crisis(index="IG"):
plt.show()
-def forward_spread(
- report_date, index="IG", series=None, tenors=["3yr", "5yr", "7yr", "10yr"]
-):
-
- if series is None:
- series = on_the_run(index=index)
- b_index = MarkitBasketIndex(index, series, tenors, value_date=report_date)
- b_index.tweak()
-
- f_spread = []
- date_range = pd.bdate_range(pd.datetime.today(), max(b_index.maturities), freq="M")
- for d in date_range.date:
- b_index.value_date = d
- f_spread.append(b_index.spread())
- return pd.concat(f_spread, keys=date_range).unstack(-1)
-
-
def spot_forward(index="IG", series=None, tenors=["3yr", "5yr", "7yr", "10yr"]):
"""
@@ -300,7 +283,7 @@ def spot_forward(index="IG", series=None, tenors=["3yr", "5yr", "7yr", "10yr"]):
)
spreads_1yr.name = "1yr"
df = pd.concat([spreads_current, spreads_1yr], axis=1)
- maturity_1yr = roll_date(b_index.index_desc.issue_date[0], 1)
+ maturity_1yr = roll_date(b_index.issue_date, 1)
df_0 = pd.DataFrame(
{"current": [0.0, b_index.spread(maturity_1yr)], "1yr": [0.0, 0.0]},
index=["0yr", "1yr"],
@@ -369,7 +352,7 @@ def curve_shape(value_date, index="IG", percentile=0.95, spread=None):
)
df = curve_shape[steepness == steepness.quantile(percentile, "nearest")]
- df = df * spread / df["5yr"][0]
+ df = df * spread[0] / df["5yr"][0]
df = df.stack().rename("spread")
df = df.reset_index().merge(lookup_table, on=["tenor"])
df["year_frac"] = (df.maturity - pd.to_datetime(value_date)).dt.days / 365