diff options
| -rw-r--r-- | R/beta_trade.R | 7 | ||||
| -rw-r--r-- | python/beta_trade.py | 8 |
2 files changed, 14 insertions, 1 deletions
diff --git a/R/beta_trade.R b/R/beta_trade.R new file mode 100644 index 00000000..c724fbbc --- /dev/null +++ b/R/beta_trade.R @@ -0,0 +1,7 @@ +library(ugarch) +df <- feather::read_feather("/home/share/CorpCDOs/data/index_returns.fth") +df$date <- as.Date(df$date) + + +spec <- ugarchspec(mean.model = list(armaOrder=c(0,0), include.mean = TRUE)) +fit <- ugarchfit(spec, na.omit(df$ig), solver='hybrid') diff --git a/python/beta_trade.py b/python/beta_trade.py index a08de3fe..24a30ea6 100644 --- a/python/beta_trade.py +++ b/python/beta_trade.py @@ -1,7 +1,13 @@ import pandas as pd +import feather from option_trades import index_price_returns +from arch import arch_model returns = pd.concat([index_price_returns(index=i) for i in ['IG', 'HY']], axis=1) returns.columns = ['ig', 'hy'] -model = pd.ols(y = returns.hy, x=returns.x) +feather.write_dataframe(returns.reset_index(), "/home/share/CorpCDOs/data/index_returns.fth") +model = pd.ols(y = returns.hy, x=returns.ig) beta = model.beta.x + +am = arch_model(returns.ig.dropna()) +res = am.fit() |
