Exchange Rate - EXR

Data - Banque de France

🇫🇷 Version française

Info

Last observation: D: 2026-08-14 (N = 29) · M: 2026-07-31 (N = 58)

First observation: D: 1999-01-04 (N = 33) · M: 1999-01-31 (N = 52)

Last data update: 16 août 2026, 00:19. Last compile: 30 août 2026, 10:26

Structure

source dataset Title Updated
bdf EXR Exchange Rate - EXR 2026-08-15

Swiss Franc, Dollar, Pound

All

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF", "GBP"),
         CURRENCY_DENOM == "EUR") |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0.1, 3, 0.1),
                     labels = dollar_format(accuracy = .1, prefix = "", suffix = "/€")) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2008-

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF", "GBP"),
         CURRENCY_DENOM == "EUR") |>
  filter(date >= as.Date("2008-01-01")) |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0.1, 3, 0.1),
                     labels = dollar_format(accuracy = .1, prefix = "", suffix = "/€")) +
  
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2021-

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF", "GBP"),
         CURRENCY_DENOM == "EUR") |>
  filter(date >= as.Date("2021-01-01")) |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "3 months",
               labels = date_format("%b %Y")) +
  scale_y_continuous(breaks = seq(0.1, 3, 0.05),
                     labels = dollar_format(accuracy = .1, prefix = "", suffix = "/€")) +
  
  theme(legend.position = c(0.8, 0.9),
        legend.title = element_blank(),
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))

2 years before

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF", "GBP"),
         CURRENCY_DENOM == "EUR") |>
  filter(date >= Sys.Date() - years(2)) |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "2 months",
               labels = date_format("%b %Y")) +
  scale_y_continuous(breaks = seq(0.1, 3, 0.05),
                     labels = dollar_format(accuracy = .01, prefix = "", suffix = "/€")) +
  
  theme(legend.position = c(0.8, 0.9),
        legend.title = element_blank(),
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))

2022-

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF", "GBP"),
         CURRENCY_DENOM == "EUR") |>
  filter(date >= as.Date("2022-01-01")) |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "1 month",
               labels = date_format("%b %Y")) +
  scale_y_continuous(breaks = seq(0.1, 3, 0.05),
                     labels = dollar_format(accuracy = .1, prefix = "", suffix = "/€")) +
  
  theme(legend.position = c(0.8, 0.9),
        legend.title = element_blank(),
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))

1 year-before

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF", "GBP"),
         CURRENCY_DENOM == "EUR") |>
  filter(date >= Sys.Date() - years(1)) |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "1 month",
               labels = date_format("%b %Y")) +
  scale_y_log10(breaks = seq(0.1, 3, 0.04),
                     labels = dollar_format(accuracy = .01, prefix = "", suffix = "/€")) +
  
  theme(legend.position = c(0.15, 0.9),
        legend.title = element_blank(),
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))

6 months

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF", "GBP"),
         CURRENCY_DENOM == "EUR") |>
  filter(date >= Sys.Date() - months(6)) |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "7 days",
               labels = date_format("%d %b %Y")) +
  scale_y_log10(breaks = seq(0.1, 3, 0.04),
                     labels = dollar_format(accuracy = .01, prefix = "", suffix = "/€")) +
  
  theme(legend.position = c(0.15, 0.3),
        legend.title = element_blank(),
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  geom_text_repel(aes(x = date, y = value, label = value),
                  fontface ="plain", color = "black", size = 3)

3 months

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF", "GBP"),
         CURRENCY_DENOM == "EUR") |>
  filter(date >= Sys.Date() - months(3)) |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "1 day",
               labels = date_format("%d %b %Y")) +
  scale_y_log10(breaks = seq(0.1, 3, 0.04),
                     labels = dollar_format(accuracy = .01, prefix = "", suffix = "/€")) +
  
  theme(legend.position = c(0.15, 0.3),
        legend.title = element_blank(),
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  geom_text_repel(aes(x = date, y = value, label = value),
                  fontface ="plain", color = "black", size = 3)

1 month

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF", "GBP"),
         CURRENCY_DENOM == "EUR") |>
  filter(date >= Sys.Date() - months(1)) |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = "1 day",
               labels = date_format("%d %b %Y")) +
  scale_y_log10(breaks = seq(0.1, 3, 0.04),
                     labels = dollar_format(accuracy = .01, prefix = "", suffix = "/€")) +
  
  theme(legend.position = c(0.15, 0.75),
        legend.title = element_blank(),
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  geom_text_repel(aes(x = date, y = value, label = value), fontface ="plain", color = "black", size = 3)

Swiss Franc, Dollar

All

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF"),
         CURRENCY_DENOM == "EUR") |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0.1, 3, 0.1),
                     labels = dollar_format(accuracy = .1, prefix = "", suffix = "/€")) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2008-

Code
EXR |>
  
  filter(FREQ == "D",
         CURRENCY %in% c("USD", "CHF"),
         CURRENCY_DENOM == "EUR") |>
  filter(date >= as.Date("2008-01-01")) |>
  arrange(desc(date)) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Variable)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0.1, 3, 0.1),
                     labels = dollar_format(accuracy = .1, prefix = "", suffix = "/€")) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())