Exchange Rates
Data - GFD
Info
Data on xrates
source | dataset | .html | .RData |
---|---|---|---|
2024-06-19 | 2024-06-18 | ||
2024-06-19 | 2024-05-10 | ||
2024-06-19 | 2024-05-10 | ||
2024-05-10 | 2024-06-07 | ||
2024-06-19 | 2024-05-10 | ||
2024-06-19 | 2024-06-15 | ||
2024-06-20 | 2024-06-08 | ||
2024-06-20 | 2024-06-08 | ||
2024-06-18 | 2024-06-07 | ||
2024-06-20 | 2021-01-08 | ||
2024-06-19 | 2024-04-30 | ||
2024-06-19 | 2024-04-30 | ||
2024-06-20 | 2024-04-30 |
LAST_COMPILE
LAST_COMPILE |
---|
2024-06-20 |
Last
Code
load_data("gfd/xrates.RData")
%>%
xrates group_by(date) %>%
summarise(Nobs = n()) %>%
arrange(desc(date)) %>%
head(1) %>%
print_table_conditional()
date | Nobs |
---|---|
2021-01-08 | 39 |
Variables
Narrow
Code
%>%
xrates_info select(Ticker, Name, Country) %>%
right_join(xrates %>%
group_by(Ticker) %>%
summarise(Nobs = n()), by = "Ticker") %>%
arrange(-Nobs) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F) else .} {
Wide
Code
%>%
xrates_info select(Ticker, Name, Country) %>%
right_join(xrates %>%
group_by(Ticker) %>%
summarise(Nobs = n(),
start = first(year(date)),
end = last(year(date))), by = "Ticker") %>%
arrange(-Nobs) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F) else .} {
Individual Countries
Brazil
Info (Source: Wikipedia)
- The Portuguese real from the 16th to 18th centuries, with 1,000 réis called the milréis.
- The old Brazilian real from 1747-1942, with 1,000 réis also called the milréis.
- The first cruzeiro from 1942-1967, at 1 cruzeiro = 1 milréis or 1,000 réis.
- The cruzeiro novo from 1967-1970, at 1 cruzeiro novo = 1,000 first cruzeiros. From 1970 it was simply called the (second) cruzeiro and was used until 1986.
- The cruzado from 1986-1989, at 1 cruzado = 1,000 second cruzeiros.
- The cruzado novo from 1989-1990, at 1 cruzado novo = 1,000 cruzados. From 1990 it was renamed the (third) cruzeiro and was used until 1993.
- The cruzeiro real (CR$) from 1993-1994, at 1 cruzeiro real = 1,000 third cruzeiros.
All
Code
%>%
xrates filter(Ticker == "USDBRL") %>%
ggplot() + geom_line(aes(x = date, y = value)) +
theme_minimal() + ylab("Brazil Real per US Dollar") + xlab("") +
scale_x_date(breaks = seq(1800, 2025, 20) %>% paste0(., "-01-01") %>% as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = 10^seq(-20, 1, 1))
1950-1970
Code
%>%
xrates filter(Ticker == "USDBRL",
>= as.Date("1940-01-01"),
date <= as.Date("1970-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) +
theme_minimal() + ylab("Brazil Real per US Dollar") + xlab("") +
scale_x_date(breaks = seq(1800, 2025, 2) %>% paste0(., "-01-01") %>% as.Date(),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(10^seq(-20, 1, 1), 2*10^seq(-20, 1, 1), 5*10^seq(-20, 1, 1)))
Italy (in Pounds)
All
Code
%>%
xrates filter(iso3c == "GBP",
== "ITL") %>%
iso3c_c ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1800, 2025, 20), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(10, 20, 50, 100, 200, 500, 1000, 2000, 5000)) +
ylab("Italian Lira per British Pound") + xlab("")
1940 - 1971
Code
%>%
xrates filter(iso3c == "GBP",
== "ITL") %>%
iso3c_c filter(date >= as.Date("1940-01-01"),
<= as.Date("1971-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1800, 2025, 2), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(10, 20, 50, 100, 200, 500, 1000, 2000, 5000)) +
ylab("Italian Lira per British Pound") + xlab("")
Italy - Real
All
Code
%>%
xrates bind_rows(cpi) %>%
filter(Ticker %in% c("GBPITL", "CPGBRM", "CPITAM"),
>= as.Date("1950-01-01")) %>%
date select(Ticker, date, value) %>%
spread(Ticker, value) %>%
%>%
na.omit mutate(GBPITL_real = GBPITL*CPGBRM/CPITAM,
GBPITL_real = 100*GBPITL_real/GBPITL_real[1]) %>%
ggplot() + geom_line(aes(x = date, y = GBPITL_real)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1800, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(50, 200, 5)) +
ylab("Italian Lira per British Pound") + xlab("")
Italy, France, Germany - Real
1950-
Code
%>%
xrates bind_rows(cpi) %>%
filter(Ticker %in% c("USDGBP", "USDFRF", "USDDEM", "GBPITL", "CPGBRM", "CPITAM", "CPFRAM", "CPDEUM", "CPUSAM"),
>= as.Date("1950-01-01")) %>%
date select(Ticker, date, value) %>%
spread(Ticker, value) %>%
%>%
na.omit transmute(date,
USDITL_real = USDGBP*GBPITL*CPUSAM/CPITAM,
USDDEM_real = USDDEM*CPUSAM/CPDEUM,
USDFRF_real = USDFRF*CPUSAM/CPFRAM) %>%
gather(variable, value, -date) %>%
group_by(variable) %>%
mutate(value = 100*value/value[1]) %>%
ggplot() + geom_line(aes(x = date, y = value, color = variable)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1800, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(50, 200, 5)) +
ylab("Real Exchange Rate") + xlab("") +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.2, 0.80),
legend.title = element_blank())
1950-
Code
%>%
xrates bind_rows(cpi) %>%
filter(Ticker %in% c("USDGBP", "USDFRF", "USDDEM", "GBPITL", "CPGBRM", "CPITAM", "CPFRAM", "CPDEUM", "CPUSAM"),
>= as.Date("1950-01-01"),
date <= as.Date("1975-01-01")) %>%
date select(Ticker, date, value) %>%
spread(Ticker, value) %>%
%>%
na.omit transmute(date,
USDITL_real = USDGBP*GBPITL*CPUSAM/CPITAM,
USDDEM_real = USDDEM*CPUSAM/CPDEUM,
USDFRF_real = USDFRF*CPUSAM/CPFRAM) %>%
gather(variable, value, -date) %>%
group_by(variable) %>%
mutate(value = 100*value/value[1]) %>%
ggplot() + geom_line(aes(x = date, y = value, color = variable)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1800, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(50, 200, 5)) +
ylab("Real Exchange Rate") + xlab("") +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.2, 0.80),
legend.title = element_blank())
France
1914-1927
(ref:france-franc-1914-1927) Franc Exchange Rate (1914-1927)
Code
%>%
xrates filter(iso3c == "USD",
== "FRF",
iso3c_c >= as.Date("1914-01-01"),
date <= as.Date("1927-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 1, 0.01)) +
ylab("") + xlab("")
1920-1960
(ref:france-franc-1920-1960) Franc Exchange Rate (1920-1960)
Code
%>%
xrates filter(iso3c == "USD",
== "FRF",
iso3c_c >= as.Date("1920-01-01"),
date <= as.Date("1960-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 1, 0.1)) +
ylab("") + xlab("")
1940-1973
(ref:france-franc-1940-1973) Franc Exchange Rate (1940-1973)
Code
%>%
xrates filter(iso3c == "USD",
== "FRF",
iso3c_c >= as.Date("1940-01-01"),
date <= as.Date("1973-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 1, 0.1)) +
ylab("") + xlab("")
1940-1973
Code
%>%
xrates filter(iso3c == "USD",
== "FRF",
iso3c_c >= as.Date("1954-01-01"),
date <= as.Date("1970-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 1, 0.05)) +
ylab("1 USD en FRF") + xlab("")
1954-1969
Code
%>%
xrates filter(iso3c == "USD",
== "FRF",
iso3c_c >= as.Date("1954-01-01"),
date <= as.Date("1969-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_reverse(breaks = seq(0, 1, 0.05)) +
ylab("USD vs FRF") + xlab("")
1965-1971
(ref:france-franc-1965-1971) Franc Exchange Rate (1965-1971)
Code
%>%
xrates filter(iso3c == "USD",
== "FRF",
iso3c_c >= as.Date("1968-01-01"),
date <= as.Date("1971-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 1, 0.01)) +
ylab("") + xlab("")
1910-1940
(ref:france-franc-1910-1940) Franc Exchange Rate (1910-1940)
Code
%>%
xrates filter(iso3c == "USD",
== "FRF",
iso3c_c >= as.Date("1910-01-01"),
date <= as.Date("1940-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 1, 0.01)) +
ylab("") + xlab("")
1970-2020
(ref:france-franc-1970-2020) Franc Exchange Rate (1970-2020)
Code
%>%
xrates filter(iso3c == "USD",
== "FRF",
iso3c_c >= as.Date("1970-01-01"),
date <= as.Date("2020-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 5, 0.1)) +
ylab("") + xlab("")
Argentina
1830-1950
Code
%>%
xrates filter(iso3c_c == "ARS",
<= as.Date("1950-01-01")) %>%
date mutate(value = value/value[1]) %>%
ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1700, 2025, 10), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(1, 2, 3, 5, 8, 10, 20, 30, 50, 80, 100)) +
ylab("") + xlab("")
1980-1995
Code
%>%
xrates filter(Ticker == "USDARS",
>= as.Date("1980-01-01"),
date <= as.Date("1995-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 500, 20)) +
ylab("") + xlab("")
Japan
1980-1995
Code
%>%
xrates filter(Ticker == "USDJPY",
>= as.Date("1980-01-01"),
date <= as.Date("1995-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 500, 20)) +
ylab("") + xlab("")
1995-2020
(ref:USDJPY-1995-2020) Japan Exchange Rate (1995-2020)
Code
%>%
xrates filter(Ticker == "USDJPY",
>= as.Date("1995-01-01"),
date <= as.Date("2020-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 500, 10)) +
ylab("") + xlab("")
1914-1927
(ref:USDJPY-1914-1927) Japan Exchange Rate (1914-1927)
Code
%>%
xrates filter(Ticker == "USDJPY",
>= as.Date("1914-01-01"),
date <= as.Date("1927-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(1, 4, 0.1)) +
ylab("") + xlab("")
1910-1940
(ref:USDJPY-1910-1940) Japan Exchange Rate (1910-1940)
Code
%>%
xrates filter(Ticker == "USDJPY",
>= as.Date("1910-01-01"),
date <= as.Date("1940-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 50, 0.5)) +
ylab("") + xlab("")
1940-1973
(ref:USDJPY-1940-1973) Japan Exchange Rate (1940-1973)
Code
%>%
xrates filter(Ticker == "USDJPY",
>= as.Date("1940-01-01"),
date <= as.Date("1973-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 500, 50)) +
ylab("") + xlab("")
1970-2020
(ref:USDJPY-1970-2020) Japan Exchange Rate (1970-2020)
Code
%>%
xrates filter(Ticker == "USDJPY",
>= as.Date("1970-01-01"),
date <= as.Date("2020-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 500, 50)) +
ylab("") + xlab("")
U.K.
1800-1930
(ref:uk-pound-1790-1930) Dollar / Pound Exchange Rate
Code
%>%
xrates filter(Ticker == "GBPUSD",
>= as.Date("1790-01-01"),
date <= as.Date("1930-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1800, 2025, 20), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(2, 15, 1)) +
ylab("") + xlab("")
1860-1930
(ref:uk-pound-1860-1930) Dollar / Pound Exchange Rate
Code
%>%
xrates filter(Ticker == "GBPUSD",
>= as.Date("1860-01-01"),
date <= as.Date("1930-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 10), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(2, 15, 1)) +
ylab("") + xlab("")
1910-1930
(ref:uk-pound-1910-1930) U.K. Dollar / Pound Exchange Rate (1910-1930)
Code
%>%
xrates filter(Ticker == "GBPUSD",
>= as.Date("1910-01-01"),
date <= as.Date("1930-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(2, 15, 0.5)) +
ylab("") + xlab("")
1919-1924
(ref:uk-pound-1919-1924) U.K. Dollar / Pound Exchange Rate (1919-1924)
Code
%>%
xrates filter(Ticker == "GBPUSD",
>= as.Date("1919-01-01"),
date <= as.Date("1924-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(2, 15, 0.5)) +
ylab("") + xlab("")
1914-1927
(ref:uk-pound-1914-1927) U.K. Dollar / Pound Exchange Rate (1914-1927)
Code
%>%
xrates filter(Ticker == "GBPUSD",
>= as.Date("1914-01-01"),
date <= as.Date("1927-01-01")) %>%
date ggplot() + geom_line(aes(x = date, y = value)) + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1850, 2025, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(2, 15, 0.5)) +
ylab("") + xlab("")
GBPUSD, USDFRF
1900-1925
Code
%>%
xrates filter(iso3c %in% c("GBP", "FRF", "USD"),
%in% c("GBP", "USD", "FRF"),
iso3c_c >= as.Date("1910-01-01"),
date <= as.Date("1925-01-01")) %>%
date group_by(Ticker) %>%
ggplot(.) +
geom_line(aes(x = date, y = value, color = Ticker, linetype = Ticker)) +
theme_minimal() + xlab("") + ylab("Exchange Rate") +
scale_x_date(breaks = seq(1600, 2020, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = c(0.1*c(0.1, 0.2, 0.3, 0.5), c(0.1, 0.2, 0.3, 0.5), c(1, 2, 3, 5), seq(10, 100, 10)),
labels = dollar_format(accuracy = 0.01, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.6),
legend.title = element_blank())
1800-1925
(ref:GBPUSD-USDFRF-1800-1925) France, Germany, United Kingdom Exchange Rates (1800-1925).
Code
%>%
xrates filter(iso3c %in% c("GBP", "FRF", "USD"),
%in% c("GBP", "USD", "FRF"),
iso3c_c >= as.Date("1800-01-01"),
date <= as.Date("1925-01-01")) %>%
date group_by(Ticker) %>%
ggplot(.) +
geom_line(aes(x = date, y = value, color = Ticker, linetype = Ticker)) +
theme_minimal() + xlab("") + ylab("Exchange Rate") +
scale_x_date(breaks = seq(1600, 2020, 20) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = c(0.1*c(0.1, 0.2, 0.3, 0.5), c(0.1, 0.2, 0.3, 0.5), c(1, 2, 3, 5), seq(10, 100, 10)),
labels = dollar_format(accuracy = 0.01, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.6),
legend.title = element_blank())
1900-1940
(ref:GBPUSD-USDFRF-1900-1940) France, Germany, United Kingdom Exchange Rates (1900-1940).
Code
%>%
xrates filter(iso3c %in% c("GBP", "FRF", "USD"),
%in% c("GBP", "USD", "FRF"),
iso3c_c >= as.Date("1900-01-01"),
date <= as.Date("1940-01-01")) %>%
date group_by(Ticker) %>%
ggplot(.) +
geom_line(aes(x = date, y = value, color = Ticker, linetype = Ticker)) +
theme_minimal() + xlab("") + ylab("Exchange Rate") +
scale_x_date(breaks = seq(1600, 2020, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = c(0.1*c(0.1, 0.2, 0.3, 0.5), c(0.1, 0.2, 0.3, 0.5), c(1, 2, 3, 5), seq(10, 100, 10)),
labels = dollar_format(accuracy = 0.01, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.6),
legend.title = element_blank())
1925-1970
(ref:GBPUSD-USDFRF-1925-1970) France, Germany, United Kingdom Exchange Rates (1925-1970).
Code
%>%
xrates filter(iso3c %in% c("GBP", "FRF", "USD"),
%in% c("GBP", "USD", "FRF"),
iso3c_c >= as.Date("1925-01-01"),
date <= as.Date("1970-01-01")) %>%
date group_by(Ticker) %>%
ggplot(.) +
geom_line(aes(x = date, y = value, color = Ticker, linetype = Ticker)) +
theme_minimal() + xlab("") + ylab("Exchange Rate") +
scale_x_date(breaks = seq(1925, 2020, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = c(0.01, 0.02, 0.03, 0.05, 0.1, 0.2, 0.3, 0.5, 1, 2, 3, 5, 10, 20, 30, 50),
labels = dollar_format(accuracy = 0.01, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.80),
legend.title = element_blank())
1970-2020
(ref:GBPUSD-USDFRF-1970-2020) France, Germany, United Kingdom Exchange Rates (1970-2020).
Code
%>%
xrates filter(iso3c %in% c("GBP", "FRF", "USD"),
%in% c("GBP", "USD", "FRF"),
iso3c_c >= as.Date("1970-01-01"),
date <= as.Date("2020-01-01")) %>%
date group_by(Ticker) %>%
ggplot(.) +
geom_line(aes(x = date, y = value, color = Ticker, linetype = Ticker)) +
theme_minimal() + xlab("") + ylab("Exchange Rate") +
scale_x_date(breaks = seq(1925, 2020, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 3, 0.1),
labels = dollar_format(accuracy = 0.1, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.8, 0.9),
legend.title = element_blank())
Interwar - 1918-1940
(ref:GBPUSD-USDFRF-1918-1940) France, Germany, United Kingdom Exchange Rates (1800-1970).
Code
%>%
xrates filter(iso3c %in% c("GBP", "FRF", "USD"),
%in% c("GBP", "USD", "FRF"),
iso3c_c >= as.Date("1918-01-01"),
date <= as.Date("1940-01-01")) %>%
date group_by(variable) %>%
ggplot(.) +
geom_line(aes(x = date, y = value, color = Ticker, linetype = Ticker)) +
theme_minimal() + xlab("") + ylab("Exchange Rate") +
scale_x_date(breaks = seq(1600, 2020, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = c(c(0.1, 0.2, 0.3, 0.5), c(1, 2, 3, 5), seq(10, 100, 10)),
labels = dollar_format(accuracy = 0.1, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.80),
legend.title = element_blank())
FRADEM
Weimar Hyperinflation Period
(ref:FRADEM-1900-1940) Weimar Hyperinflation Period (1900-1940).
Code
%>%
xrates filter(iso3c %in% c("DEM", "FRF", "USD"),
%in% c("DEM", "FRF", "USD"),
iso3c_c >= as.Date("1900-01-01"),
date <= as.Date("1940-01-01")) %>%
date select(Ticker, date, value) %>%
spread(Ticker, value) %>%
ggplot(.) +
geom_line(aes(x = date, y = USDDEM/USDFRF)) +
theme_minimal() + xlab("") + ylab("$1 in Deutsche Mark") +
scale_x_date(breaks = seq(1600, 2020, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = 10^seq(-20, 0, 1),
labels = dollar_format(accuracy = 0.0000000000001, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.6),
legend.title = element_blank())
USDDEM
Weimar Hyperinflation Period
(ref:USDDEM-1900-1940) Weimar Hyperinflation Period (1900-1940).
Code
%>%
xrates filter(iso3c %in% c("DEM", "USD"),
%in% c("DEM", "USD"),
iso3c_c >= as.Date("1900-01-01"),
date <= as.Date("1940-01-01")) %>%
date group_by(Ticker) %>%
ggplot(.) +
geom_line(aes(x = date, y = value)) +
theme_minimal() + xlab("") + ylab("$1 in Deutsche Mark") +
scale_x_date(breaks = seq(1600, 2020, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = 10^seq(-20, 0, 1),
labels = dollar_format(accuracy = 0.0000000000001, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.6),
legend.title = element_blank())
1924-1926
(ref:USDDEM-1900-1940) Weimar Hyperinflation Period (1900-1940).
Code
%>%
xrates filter(iso3c %in% c("DEM", "USD"),
%in% c("DEM", "USD"),
iso3c_c >= as.Date("1918-01-01"),
date <= as.Date("1926-01-01")) %>%
date group_by(Ticker) %>%
ggplot(.) +
geom_line(aes(x = date, y = value)) +
theme_minimal() + xlab("") + ylab("$1 in Deutsche Mark") +
scale_x_date(breaks = seq(1600, 2020, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = 10^seq(-20, 0, 1),
labels = dollar_format(accuracy = 0.0000000000001, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.6),
legend.title = element_blank())
1930-1932 Deflation Policy in Germany
1928-1934 1 USD in Deutsch Mark
(ref:USDDEM-1928-1934) Devaluation of the Dollar vis-à-vis Germany.
Code
%>%
xrates filter(iso3c %in% c("DEM", "USD"),
%in% c("DEM", "USD"),
iso3c_c >= as.Date("1928-01-01"),
date <= as.Date("1935-01-01")) %>%
date group_by(Ticker) %>%
ggplot(.) +
geom_line(aes(x = date, y = value)) +
theme_minimal() + xlab("") + ylab("$1 in Deutsche Mark") +
scale_x_date(breaks = seq(1600, 2020, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.01),
labels = dollar_format(accuracy = 0.01, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.6),
legend.title = element_blank())
1928-1934 1 USD in Deutsch Mark
Code
%>%
xrates filter(iso3c %in% c("DEM", "USD", "GBP"),
%in% c("DEM", "USD", "FRF"),
iso3c_c >= as.Date("1929-01-01"),
date <= as.Date("1937-01-01")) %>%
date select(date, Ticker, value) %>%
spread(Ticker, value) %>%
transmute(date,
`Deutschemark per US Dollar` = USDDEM,
`Deutschemark per British Pound` = GBPUSD*USDDEM,
`Deutschemark per French Franc` = USDDEM/USDFRF) %>%
gather(variable, value, -date) %>%
group_by(variable) %>%
mutate(value = 100*value/value[1]) %>%
ggplot(.) + theme_minimal() + xlab("") + ylab("Deutschemark Exchange Rate (Base 100 = 1929)") +
geom_line(aes(x = date, y = value, color = variable)) +
scale_color_manual(values = viridis(4)[1:3]) +
scale_x_date(breaks = seq(1600, 2020, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = dollar_format(accuracy = 1, prefix = "")) +
theme(legend.position = c(0.2, 0.15),
legend.title = element_blank())
1928-1934 1 Pound in Deutsch Mark
(ref:GBPDEM-1928-1934) Devaluation of the Pound vis-à-vis the Mark.
Code
%>%
xrates filter(iso3c %in% c("DEM", "GBP", "USD"),
%in% c("DEM", "GBP", "USD"),
iso3c_c >= as.Date("1928-01-01"),
date <= as.Date("1935-01-01")) %>%
date select(Ticker, date, value) %>%
spread(Ticker, value) %>%
ggplot(.) +
geom_line(aes(x = date, y = USDDEM/USDGBP)) +
theme_minimal() + xlab("") + ylab("1 Pound in Deutsche Mark") +
scale_x_date(breaks = seq(1600, 2020, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 2, 0.1),
labels = dollar_format(accuracy = 0.1, prefix = "")) +
scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.position = c(0.2, 0.6),
legend.title = element_blank())