Marché financier, taux

Data - BDF

Info

theme Title .html
interest-rates Data on interest rates 2025-02-07
taux-dinteret Données de taux d'intérêt 2025-02-07

LAST_COMPILE

source dataset .html .RData
bdf FM 2025-01-31 2025-02-07

Last

date Nobs
2025-02-06 17

FREQ Frequency

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  left_join(FREQ, by = "FREQ") %>%
  group_by(FREQ, Freq) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
FREQ Freq Nobs
D Daily 172746
M Monthly 9431
NA NA 242

INSTRUMENT_FM

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  left_join(INSTRUMENT_FM, by = "INSTRUMENT_FM") %>%
  group_by(INSTRUMENT_FM, Instrument_fm) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
INSTRUMENT_FM Instrument_fm Nobs
BB Benchmark bond 79785
MR Money market rates 37000
KR Key ECB interest rate 29469
MM Money Market 15996
TR Reference rate 12817
LIR NA 6938
NA NA 242
MF Money market funds 172

PROVIDER_FM

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  left_join(PROVIDER_FM, by = "PROVIDER_FM") %>%
  group_by(PROVIDER_FM, Provider_fm) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
PROVIDER_FM Provider_fm Nobs
FR2 Banque de France 152246
4F ECB 29469
FR6 Caisse des Depots et Consignations 462
NA NA 242

PROVIDER_FM_ID

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  left_join(PROVIDER_FM_ID, by = "PROVIDER_FM_ID") %>%
  group_by(PROVIDER_FM_ID, Provider_fm_id) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()

Taux d’intérêt

BCE - Facilité de dépôt, refinancements

All

Code
FM %>%
  filter(grepl("FM.D.U2.EUR.4F.KR.MRR_FR.LEV", variable) |
           grepl("FM.D.U2.EUR.4F.KR.MLFR.LEV", variable) |
           grepl("FM.D.U2.EUR.4F.KR.DFR.LEV", variable)) %>%
  left_join(variable, by = "variable") %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = as.Date(paste0(seq(1960,2100, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.35, 0.1),
        legend.title = element_blank(),
        legend.direction = "vertical") +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
                labels = percent_format(accuracy = 1))

2022-

Code
FM %>%
  filter(grepl("FM.D.U2.EUR.4F.KR.MRR_FR.LEV", variable) |
           grepl("FM.D.U2.EUR.4F.KR.MLFR.LEV", variable) |
           grepl("FM.D.U2.EUR.4F.KR.DFR.LEV", variable)) %>%
  filter(date >= as.Date("2022-01-01")) %>%
  left_join(variable, by = "variable") %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = "1 month",
               labels = date_format("%b %Y")) +
  theme(legend.position = c(0.3, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical",
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
                labels = percent_format(accuracy = 1))

Bons du Trésor

30 ans, 10 ans, 1 mois

Tous

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC30", "FRMOYTEC10"),
         date >= as.Date("2018-01-01"),
          FREQ == "D") %>%
  #select_if(function(col) length(unique(col)) > 1) %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = as.Date(paste0(seq(1960,2100, 1), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.2, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical") +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .2),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

30 ans

Tous

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC30"),
         date >= as.Date("2018-01-01"),
          FREQ == "D") %>%
  #select_if(function(col) length(unique(col)) > 1) %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = as.Date(paste0(seq(1960,2100, 1), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.2, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical") +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .2),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

30 ans, 10 ans, 5 ans

Tous

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC10", "FRMOYTEC5", "FRMOYTEC30"),
         date >= as.Date("2018-01-01"),
          FREQ == "D") %>%
  select_if(function(col) length(unique(col)) > 1) %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = as.Date(paste0(seq(1960,2100, 1), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.2, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical") +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .2),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

March 2020-

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC10", "FRMOYTEC5", "FRMOYTEC30"),
         date >= as.Date("2020-01-01"),
          FREQ == "D") %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = "3 months",
               labels = date_format("%b %y")) +
  theme(legend.position = c(0.2, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical",
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .2),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

2021-

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC10", "FRMOYTEC5", "FRMOYTEC30"),
         date >= as.Date("2021-01-01"),
          FREQ == "D") %>%
  arrange(desc(date)) %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = "2 months",
               labels = date_format("%b %y")) +
  theme(legend.position = c(0.2, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical",
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .2),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

2 years

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC10", "FRMOYTEC5", "FRMOYTEC30"),
         date >= Sys.Date() - years(2),
          FREQ == "D") %>%
  arrange(desc(date)) %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = "1 month",
               labels = date_format("%b %y")) +
  theme(legend.position = c(0.2, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical",
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .5),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

1 an, 5 ans, 10 ans

Tous

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC10", "FRMOYTEC5", "FRMOYTEC1"),
         date >= as.Date("2018-01-01"),
          FREQ == "D") %>%
  select_if(function(col) length(unique(col)) > 1) %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2030, 1), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.35, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical") +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .2),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

March 2020-

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC10", "FRMOYTEC5", "FRMOYTEC1"),
         date >= as.Date("2020-03-01"),
          FREQ == "D") %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = "3 months",
               labels = date_format("%b %y")) +
  theme(legend.position = c(0.3, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical",
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .2),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

2021-

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC10", "FRMOYTEC5", "FRMOYTEC1"),
         date >= as.Date("2021-01-01"),
          FREQ == "D") %>%
  arrange(desc(date)) %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = "2 months",
               labels = date_format("%b %y")) +
  theme(legend.position = c(0.3, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical",
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .2),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

2 years

Code
FM %>%
  left_join(FM_var, by = "variable") %>%
  filter(PROVIDER_FM_ID %in% c("FRMOYTEC10", "FRMOYTEC5", "FRMOYTEC1"),
         date >= Sys.Date() - years(2),
          FREQ == "D") %>%
  arrange(desc(date)) %>%
  ggplot + geom_line(aes(x = date, y = value/100, color = Variable)) +
  
  theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
  scale_x_date(breaks = "1 month",
               labels = date_format("%b %y")) +
  theme(legend.position = c(0.25, 0.9),
        legend.title = element_blank(),
        legend.direction = "vertical",
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 100, .5),
                labels = percent_format(accuracy = .1)) +
  geom_hline(yintercept =  0, linetype = "dashed")

Pour en savoir plus…

Données sur les taux d’intérêt

source dataset .html .RData
bdf FM 2025-01-31 2025-02-07
bdf MIR 2025-01-26 2025-01-22
bdf MIR1 2025-01-27 2025-01-22
bis CBPOL_D 2025-01-31 2024-05-10
bis CBPOL_M 2025-01-31 2024-04-19
ecb FM 2025-01-31 2025-01-31
ecb MIR 2024-06-19 2025-01-31

Données sur l’immobilier

source dataset .html .RData
acpr as151 2024-06-19 2024-04-05
bdf BSI1 2025-01-31 2025-01-31
bdf CPP 2025-01-26 2024-07-01
bdf FM 2025-01-31 2025-02-07
bdf immobilier 2025-01-31 2025-01-31
bdf MIR 2025-01-26 2025-01-22
bdf MIR1 2025-01-27 2025-01-22
bdf RPP 2025-01-31 2025-01-31
cgedd nombre-vente-maison-appartement-ancien 2024-09-26 2024-09-26
insee CONSTRUCTION-LOGEMENTS 2025-01-31 2025-02-01
insee ENQ-CONJ-ART-BAT 2025-01-31 2025-02-01
insee ENQ-CONJ-IND-BAT 2025-01-31 2025-02-01
insee ENQ-CONJ-PROMO-IMMO 2025-01-31 2025-02-01
insee ENQ-CONJ-TP 2025-01-31 2025-02-01
insee ILC-ILAT-ICC 2025-01-31 2025-02-01
insee INDICES_LOYERS 2025-01-31 2025-02-01
insee IPLA-IPLNA-2015 2025-01-31 2025-02-01
insee IRL 2025-01-31 2025-01-31
insee PARC-LOGEMENTS 2025-01-31 2023-12-03
insee SERIES_LOYERS 2025-01-31 2025-02-01
insee t_dpe_val 2025-01-31 2025-01-13
notaires arrdt 2025-01-05 2025-01-05
notaires dep 2025-01-05 2025-01-05