diff options
| -rw-r--r-- | R/curve_trades.R | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/R/curve_trades.R b/R/curve_trades.R index 179ad673..ceaa61b9 100644 --- a/R/curve_trades.R +++ b/R/curve_trades.R @@ -13,18 +13,25 @@ ig26 <- index.quotes %>% ig26.close <- ig26 %>% select(date, tenor, closeprice) %>% collect() %>% - spread(tenor, closeprice) - -ig26.close <- ig26.close %>% + spread(tenor, closeprice) %>% mutate(package = 3*`5yr`-2*`3yr`-`10yr`, pnl = c(0, diff(package)), cumpnl = cumsum(pnl)) +ig26.theta <- ig26 %>% + select(date, tenor, theta) %>% + collect() %>% + spread(tenor, theta) %>% + mutate(package = 3*`5yr`-2*`3yr`-`10yr`) + +ig26.theta %>% + ggplot(aes(date, package)) + geom_line() + ig26.close %>% - ggplot(aes(x=date)) + geom_line(aes(y=pnl)) + ggplot(aes(date, pnl)) + geom_line() ig26.close %>% - ggplot(aes(x=date)) + geom_line(aes(y=cumpnl)) + ggplot(aes(date, cumpnl)) + geom_line() ##ig25 ig25 <- index.quotes %>% @@ -41,19 +48,15 @@ ig25.theta <- ig25 %>% select(date, tenor, theta) %>% collect() %>% spread(tenor, theta) %>% - mutate(theta = 3*`5yr`-2*`3yr`-`10yr`) %>% - select(date, theta) + mutate(package = 3*`5yr`-2*`3yr`-`10yr`) ig25.close <- ig25.close %>% mutate(package = 3*`5yr`-2*`3yr`-`10yr`, - r = (package-lag(package))/lag(package)) %>% - select(date, r) %>% left_join(ig25.theta) + pnl = package-lag(package), + cumpnl = package-package[1], + r = pnl/lag(package)) -ig25.theta <- ig25.theta %>% - mutate(package = 3*`5yr`-2*`3yr`-`10yr`) - -ig25.close %>% - ggplot(aes(x=date)) + geom_line(aes(y=package-first(package))) +ig25.theta %>% ggplot(aes(date, package)) + geom_line() ig25.close %>% - ggplot(aes(x=date)) + geom_line(aes(y=cumpnl)) + ggplot(aes(date, cumpnl)) + geom_line() |
