diff options
Diffstat (limited to 'python/analytics')
| -rw-r--r-- | python/analytics/scenarios.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/python/analytics/scenarios.py b/python/analytics/scenarios.py index fe921e4c..07c0f042 100644 --- a/python/analytics/scenarios.py +++ b/python/analytics/scenarios.py @@ -26,7 +26,7 @@ def run_swaption_scenarios(swaption, date_range, spread_shock, vol_shock, T = swaption.T for s in spreads: swaption.ref = s - curr_vol = float(vol_surface(T, swaption.moneyness)) + curr_vol = float(max(0, vol_surface(T, swaption.moneyness))) for vs in vol_shock: swaption.sigma = curr_vol * (1 + vs) r.append([date, s, vs] + [getattr(swaption, p) for p in params]) @@ -43,8 +43,8 @@ def run_index_scenarios(index, date_range, spread_shock): for date in date_range: index.trade_date = date.date() - for s in spread: + for s in spreads: index.spread = s r.append([date, s, index.pnl]) - df = pd.DataFrame.from_records(r, columns=['date', 'spread', 'pnl']) + df = pd.DataFrame.from_records(r, columns=['date', 'spread_shock', 'pnl']) return df.set_index('date') |
