Currency Crosses with Euro - currency_crosses_EUR

Data - Investing

name

Code
currency_crosses_EUR %>%
  left_join(name, by = "name") %>%
  group_by(name, Name) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

US Dollar Pound, Swiss Franc

All

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("USD", "CHF", "GBP")) %>%
  left_join(name, by = "name") %>%
  ggplot + geom_line(aes(x = date, y = Close, color = Name)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2020, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%y")) +
  scale_y_log10(breaks = seq(0, 3, 0.2),
                     labels = dollar_format(accuracy = 0.1, prefix = "")) +
  scale_color_manual(values = viridis(5)[1:4]) +
  theme(legend.position = c(0.85, 0.9),
        legend.title = element_blank())

2010-

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("USD", "CHF", "GBP"),
         date >= as.Date("2010-01-01")) %>%
  left_join(name, by = "name") %>%
  ggplot + geom_line(aes(x = date, y = Close, color = Name)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2020, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%y")) +
  scale_y_log10(breaks = seq(0, 3, 0.2),
                     labels = dollar_format(accuracy = 0.1, prefix = "")) +
  scale_color_manual(values = viridis(5)[1:4]) +
  theme(legend.position = c(0.85, 0.9),
        legend.title = element_blank())

2018-

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("USD", "CHF", "GBP"),
         date >= as.Date("2018-01-01")) %>%
  left_join(name, by = "name") %>%
  ggplot + geom_line(aes(x = date, y = Close, color = Name)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "6 months",
               labels = date_format("%b %y")) +
  scale_y_log10(breaks = seq(0, 3, 0.05),
                     labels = dollar_format(accuracy = 0.01, prefix = "")) +
  scale_color_manual(values = viridis(5)[1:4]) +
  theme(legend.position = c(0.65, 0.9),
        legend.title = element_blank())

Australian, Canadian, New Zealand Dollars

All

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("AUD", "NZD", "CAD")) %>%
  left_join(name, by = "name") %>%
  ggplot + geom_line(aes(x = date, y = Close, color = Name)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2020, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%y")) +
  scale_y_log10(breaks = seq(0, 3, 0.2),
                     labels = dollar_format(accuracy = 0.1, prefix = "")) +
  scale_color_manual(values = viridis(5)[1:4]) +
  theme(legend.position = c(0.85, 0.9),
        legend.title = element_blank())

2010-

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("AUD", "NZD", "CAD"),
         date >= as.Date("2010-01-01")) %>%
  left_join(name, by = "name") %>%
  ggplot + geom_line(aes(x = date, y = Close, color = Name)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2020, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%y")) +
  scale_y_log10(breaks = seq(0, 3, 0.2),
                     labels = dollar_format(accuracy = 0.1, prefix = "")) +
  scale_color_manual(values = viridis(5)[1:4]) +
  theme(legend.position = c(0.85, 0.9),
        legend.title = element_blank())

2018-

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("AUD", "NZD", "CAD"),
         date >= as.Date("2018-01-01")) %>%
  left_join(name, by = "name") %>%
  ggplot + geom_line(aes(x = date, y = Close, color = Name)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "6 months",
               labels = date_format("%b %y")) +
  scale_y_log10(breaks = seq(0, 3, 0.05),
                     labels = dollar_format(accuracy = 0.01, prefix = "")) +
  scale_color_manual(values = viridis(5)[1:4]) +
  theme(legend.position = c(0.25, 0.9),
        legend.title = element_blank())

Canada, Japan, United States

2018-

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("CAD", "USD", "JPY"),
         date >= as.Date("2018-03-01")) %>%
  left_join(name, by = "name") %>%
  group_by(Currency) %>%
  mutate(Close = 100*Close /Close[date == as.Date("2020-03-01")]) %>%
  ggplot + geom_line(aes(x = date, y = Close, color = Name)) + 
  theme_minimal() + xlab("") + ylab("100 = January 1, 2020") +
  scale_x_date(breaks = "6 months",
               labels = date_format("%b %y")) +
  scale_y_log10(breaks = seq(80, 200, 1),
                     labels = dollar_format(accuracy = 1, prefix = "")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.2, 0.2),
        legend.title = element_blank()) + 
  geom_hline(yintercept = 100, linetype = "dashed", color = "black")

2020-

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("CAD", "USD", "JPY"),
         date >= as.Date("2020-03-01")) %>%
  left_join(name, by = "name") %>%
  group_by(Currency) %>%
  mutate(Close = 100*Close /Close[date == as.Date("2020-03-01")]) %>%
  ggplot + geom_line(aes(x = date, y = Close, color = Name)) + 
  theme_minimal() + xlab("") + ylab("100 = January 1, 2020") +
  scale_x_date(breaks = "1 month",
               labels = date_format("%b %y")) +
  scale_y_log10(breaks = seq(80, 200, 1),
                     labels = dollar_format(accuracy = 1, prefix = "")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.2),
        legend.title = element_blank()) + 
  geom_hline(yintercept = 100, linetype = "dashed", color = "black")

Canada, United States

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("CAD", "USD"),
         date >= as.Date("2018-01-01")) %>%
  left_join(name, by = "name") %>%
  ggplot + geom_line(aes(x = date, y = Close, color = Name)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "6 months",
               labels = date_format("%b %y")) +
  scale_y_log10(breaks = seq(0, 3, 0.05),
                     labels = dollar_format(accuracy = 0.01, prefix = "")) +
  scale_color_manual(values = viridis(3)[1:2]) +
  theme(legend.position = c(0.25, 0.9),
        legend.title = element_blank())

Yen

Code
currency_crosses_EUR %>%
  filter(Currency %in% c("JPY"),
         date >= as.Date("2018-01-01")) %>%
  left_join(name, by = "name") %>%
  ggplot + geom_line(aes(x = date, y = Close)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "6 months",
               labels = date_format("%b %y")) +
  scale_y_log10(breaks = seq(0, 300, 5),
                     labels = dollar_format(accuracy = 1, prefix = "")) +
  scale_color_manual(values = viridis(3)[1:2]) +
  theme(legend.position = c(0.25, 0.9),
        legend.title = element_blank())