aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--R/curve_trades.R33
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()