Taux d’intérêt - France
Data - BDF
Info
Data on interest rates
source | dataset | .html | .RData |
---|---|---|---|
bdf | FM | 2024-11-19 | 2024-11-19 |
bdf | MIR | 2024-07-26 | 2024-07-01 |
bdf | MIR1 | 2024-11-19 | 2024-11-19 |
bis | CBPOL_D | 2024-11-18 | 2024-05-10 |
bis | CBPOL_M | 2024-11-18 | 2024-04-19 |
ecb | FM | 2024-11-19 | 2024-11-19 |
ecb | MIR | 2024-06-19 | 2024-11-18 |
eurostat | ei_mfir_m | 2024-11-19 | 2024-11-19 |
eurostat | irt_lt_mcby_d | 2024-11-19 | 2024-11-19 |
eurostat | irt_st_m | 2024-11-18 | 2024-11-18 |
fred | r | 2024-11-19 | 2024-11-19 |
oecd | MEI | 2024-04-16 | 2024-06-30 |
oecd | MEI_FIN | 2024-09-15 | 2024-11-19 |
wdi | FR.INR.RINR | 2024-11-18 | 2024-11-18 |
Données sur l’immobilier
source | dataset | .html | .RData |
---|---|---|---|
acpr | as151 | 2024-06-19 | 2024-04-05 |
bdf | BSI1 | 2024-07-26 | 2024-06-14 |
bdf | CPP | 2024-07-26 | 2024-07-01 |
bdf | FM | 2024-11-19 | 2024-11-19 |
bdf | immobilier | 2024-07-26 | 2024-06-18 |
bdf | MIR | 2024-07-26 | 2024-07-01 |
bdf | MIR1 | 2024-11-19 | 2024-11-19 |
bdf | RPP | 2024-07-26 | 2024-07-01 |
cgedd | nombre-vente-maison-appartement-ancien | 2024-09-26 | 2024-09-26 |
insee | CONSTRUCTION-LOGEMENTS | 2024-11-09 | 2024-11-09 |
insee | ENQ-CONJ-ART-BAT | 2024-11-09 | 2024-11-09 |
insee | ENQ-CONJ-IND-BAT | 2024-11-09 | 2024-11-09 |
insee | ENQ-CONJ-PROMO-IMMO | 2024-11-09 | 2024-11-09 |
insee | ENQ-CONJ-TP | 2024-11-09 | 2024-11-09 |
insee | ILC-ILAT-ICC | 2024-11-09 | 2024-11-09 |
insee | INDICES_LOYERS | 2024-11-09 | 2024-11-09 |
insee | IPLA-IPLNA-2015 | 2024-11-09 | 2024-11-09 |
insee | IRL | 2024-11-09 | 2024-11-09 |
insee | PARC-LOGEMENTS | 2024-11-09 | 2023-12-03 |
insee | SERIES_LOYERS | 2024-11-09 | 2024-11-09 |
insee | t_dpe_val | 2024-11-09 | 2024-09-02 |
notaires | arrdt | 2024-06-30 | 2024-09-09 |
notaires | dep | 2024-06-30 | 2024-09-08 |
Data on housing
source | dataset | .html | .RData |
---|---|---|---|
bdf | RPP | 2024-07-26 | 2024-07-01 |
bis | LONG_PP | 2024-08-09 | 2024-05-10 |
bis | SELECTED_PP | 2024-10-31 | 2024-10-31 |
ecb | RPP | 2024-10-08 | 2024-10-30 |
eurostat | ei_hppi_q | 2024-11-08 | 2024-11-09 |
eurostat | hbs_str_t223 | 2024-11-08 | 2024-11-09 |
eurostat | prc_hicp_midx | 2024-11-01 | 2024-11-17 |
eurostat | prc_hpi_q | 2024-11-05 | 2024-10-09 |
fred | housing | 2024-11-18 | 2024-11-18 |
insee | IPLA-IPLNA-2015 | 2024-11-09 | 2024-11-09 |
oecd | housing | 2024-09-15 | 2020-01-18 |
oecd | SNA_TABLE5 | 2024-09-11 | 2023-10-19 |
LAST_COMPILE
LAST_COMPILE |
---|
2024-11-19 |
Last
date | Nobs |
---|---|
2024-12-31 | 19 |
2024-11-30 | 5 |
BS_COUNT_SECTOR
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
left_join(BS_COUNT_SECTOR, by = "BS_COUNT_SECTOR") %>%
group_by(BS_COUNT_SECTOR, Bs_count_sector) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
BS_COUNT_SECTOR | Bs_count_sector | Nobs |
---|---|---|
2240U6 | SNF résidentes | 7175 |
2250 | Ménages et ISBLSM (S14 et S15) | 6896 |
2250U6 | Ménages et ISBLSM résidents | 6840 |
2240 | Sociétés non financières (S11) | 4574 |
2230U6 | Ménages et SNF résidents | 3959 |
2254FR | Particuliers (S14) | 3955 |
2313FR | SNF + EI (2240+2253) | 3088 |
2254U6 | Particuliers résidents | 2892 |
2300U6 | non IFM hors administration centrale résidents | 1305 |
0000U6 | Secteur de contrepartie non précisée (résidents) | 1044 |
2312FR | APU + ISBLSM (2100+2252) | 994 |
2300 | Administrations publiques hors administrations centrales et secteur privé hors IFMs | 522 |
2251 | Ménages | 344 |
2253 | Entrepreneurs individuels | 187 |
2254P | NA | 176 |
MIC_U6 | Micro-entreprises résidentes | 138 |
2254PM | NA | 105 |
2240GE | NA | 97 |
224ETI | NA | 97 |
224PME | NA | 97 |
FREQ
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
left_join(FREQ, by = "FREQ") %>%
group_by(FREQ, Freq) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
FREQ | Freq | Nobs |
---|---|---|
M | Mensuel | 33165 |
Q | Trimestriel | 11320 |
BS_ITEM
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
left_join(BS_ITEM, by = "BS_ITEM") %>%
group_by(BS_ITEM, Bs_item) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F) else .} {
MATURITY_ORIG
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
left_join(MATURITY_ORIG, by = "MATURITY_ORIG") %>%
group_by(MATURITY_ORIG, Maturity_orig) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F) else .} {
DATA_TYPE_MIR
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
left_join(DATA_TYPE_MIR, by = "DATA_TYPE_MIR") %>%
group_by(DATA_TYPE_MIR, Data_type_mir) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
DATA_TYPE_MIR | Data_type_mir | Nobs |
---|---|---|
R | Taux annuel | 19296 |
B | Transactions en volume (encours ou crédits nouveaux) | 9163 |
C | Coût du crédit | 2836 |
Y | Flux mensuels cumulés sur un an | 2610 |
6 | Taux cvs | 2088 |
5 | Flux mensuel cvs | 1827 |
U | Taux d'usure | 1597 |
W | Part dans les crédits totaux | 1320 |
F | Frais | 1220 |
PNL | Part en nombre de lignes | 770 |
D | Durée moyenne | 507 |
4 | Part dans les flux | 275 |
T | Taux théorique hors plancher | 261 |
PTF | Part taux fixe | 165 |
K1 | Premier quartile | 110 |
K3 | Troisième quartile | 110 |
L | Médiane | 110 |
P5 | Cinquième percentile | 110 |
P95 | Quatre vingt quinzième percentile | 110 |
REF_AREA
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
left_join(REF_AREA, by = "REF_AREA") %>%
group_by(REF_AREA, Ref_area) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
REF_AREA | Ref_area | Nobs |
---|---|---|
FR | France | 43265 |
DE | Allemagne | 244 |
ES | Espagne | 244 |
GB | Royaume-Uni | 244 |
IT | Italie | 244 |
U2 | Zone Euro (composition évolutive) | 244 |
Taux de rémunération
Nobs
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
filter(grepl("Taux moyen de rémunération annuel", Variable)) %>%
group_by(variable, Variable) %>%
summarise(Nobs = n()) %>%
print_table_conditional()
variable | Variable | Nobs |
---|---|---|
MIR1.M.FR.B.L20.A.C.A.2300U6.EUR.O | Taux moyen de rémunération annuel des dépôts bancaires | 261 |
MIR1.M.FR.B.L20.A.R.A.2300U6.EUR.O | Taux moyen de rémunération annuel des dépôts bancaires | 261 |
MIR1.M.FR.B.L20.L.C.A.2300U6.EUR.O | Taux moyen de rémunération annuel des dépôts, moins de 2 ans | 261 |
MIR1.M.FR.B.L20.L.R.A.2300U6.EUR.O | Taux moyen de rémunération annuel des dépôts, moins de 2 ans | 261 |
Taux de rémunération des dépôts + immobilier
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.L20.A.C.A.2300U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L20.L.C.A.2300U6.EUR.O", variable)) %>%
%>%
na.omit left_join(MIR1_var, by = "variable") %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.55, 0.9),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, .1),
labels = percent_format(accuracy = .1))
Taux
Nobs
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
filter(FREQ == "M",
== "FR",
REF_AREA == "A22") %>%
BS_ITEM group_by(variable, Variable) %>%
summarise(Nobs = n()) %>%
print_table_conditional()
variable | Variable | Nobs |
---|---|---|
MIR1.M.FR.B.A22.A.5.A.2250U6.EUR.N | Crédits nouveaux à l'habitat des ménages, flux CVS | 261 |
MIR1.M.FR.B.A22.A.5.A.2254U6.EUR.N | Crédits nouveaux à l'habitat des particuliers, flux CVS | 261 |
MIR1.M.FR.B.A22.A.R.A.2250U6.EUR.N | Crédits nouveaux à l'habitat des ménages, taux d'intérêt annuel | 261 |
MIR1.M.FR.B.A22.A.R.A.2254U6.EUR.N | Crédits nouveaux à l'habitat des particuliers, taux d'intérêt annuel | 310 |
MIR1.M.FR.B.A22.A.Y.A.2250U6.EUR.N | Crédits nouveaux à l'habitat des ménages résidents, flux mensuels cumulés sur un an | 261 |
MIR1.M.FR.B.A22.F.R.A.2250U6.EUR.N | Crédits nouveaux à l'habitat des ménages, jusqu'à un an, taux d'intérêt annuel | 261 |
MIR1.M.FR.B.A22.F.R.A.2254U6.EUR.N | Crédits nouveaux à l'habitat des particuliers, jusqu'à un an, taux d'intérêt annuel | 261 |
MIR1.M.FR.B.A22.F.Y.A.2250U6.EUR.N | Crédits nouveaux à l'habitat des ménages résidents, jusqu'à un an, flux mensuels cumulés sur un an | 261 |
MIR1.M.FR.B.A22.K.R.A.2250U6.EUR.N | Crédits nouveaux à l'habitat des ménages, à plus d'un an, taux d'intérêt annuel | 261 |
MIR1.M.FR.B.A22.K.R.A.2254U6.EUR.N | Crédits nouveaux à l'habitat des particuliers, à plus d'un an, taux d'intérêt annuel | 261 |
MIR1.M.FR.B.A22.K.Y.A.2250U6.EUR.N | Crédits nouveaux à l'habitat des ménages résidents, à plus d'un an, flux mensuels cumulés sur un an | 261 |
Livrets réglementés
-Info. html
Taux SNF
Table SNF
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
filter(BS_COUNT_SECTOR == "2240U6") %>%
group_by(Variable) %>%
summarise(Nobs = n(),
date = last(date),
value = last(value)) %>%
print_table_conditional
Catégories montants
Tous
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A20.A.R.0.2240U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A20.A.R.1.2240U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A20.A.R.A.2240U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
left_join(AMOUNT_CAT, by = "AMOUNT_CAT") %>%
arrange(desc(date)) %>%
+ geom_line(aes(x = date, y = value/100, color = Amount_cat)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.8, 0.85),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
labels = percent_format(accuracy = 1))
2010-
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A20.A.R.0.2240U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A20.A.R.1.2240U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A20.A.R.A.2240U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
left_join(AMOUNT_CAT, by = "AMOUNT_CAT") %>%
arrange(desc(date)) %>%
filter(date >= as.Date("2010-01-01")) %>%
+ geom_line(aes(x = date, y = value/100, color = Amount_cat)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.85),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 0.5),
labels = percent_format(accuracy = .1))
Catégories montants
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A20.A.R.0.2240U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A20.A.R.1.2240U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A20.A.R.A.2240U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
left_join(AMOUNT_CAT, by = "AMOUNT_CAT") %>%
arrange(desc(date)) %>%
+ geom_line(aes(x = date, y = value/100, color = Amount_cat)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.7, 0.85),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
labels = percent_format(accuracy = 1))
Livret A, Livret Jeune
Tous
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.L23FRLA.D.R.A.2230U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L23RJ.A.R.A.2300.EUR.O", variable) |
grepl("MIR1.M.FR.B.L23FRLJ.A.R.A.2250U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L23FRLP.H.R.A.2250U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L22FRSP.H.R.A.2250U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
arrange(desc(date)) %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.4, 0.17),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux de rémunération annuel (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
labels = percent_format(accuracy = 1))
2000-
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.L23FRLA.D.R.A.2230U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L23RJ.A.R.A.2300.EUR.O", variable) |
grepl("MIR1.M.FR.B.L23FRLJ.A.R.A.2250U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L23FRLP.H.R.A.2250U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L22FRSP.H.R.A.2250U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
arrange(desc(date)) %>%
filter(date >= as.Date("2000-01-01")) %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.4, 0.85),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux de rémunération annuel (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
labels = percent_format(accuracy = 1))
2010-
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.L23FRLA.D.R.A.2230U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L23RJ.A.R.A.2300.EUR.O", variable) |
grepl("MIR1.M.FR.B.L23FRLJ.A.R.A.2250U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L23FRLP.H.R.A.2250U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.L22FRSP.H.R.A.2250U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
arrange(desc(date)) %>%
filter(date >= as.Date("2010-01-01")) %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.4, 0.8),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux de rémunération annuel (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 0.5),
labels = percent_format(accuracy = .1))
Taux crédits habitat
Tous
Code
%>%
MIR1 left_join(MIR1_var, by = "variable") %>%
filter(FREQ == "M",
== "FR",
REF_AREA == "B",
BS_REP_SECTOR == "A2C",
BS_ITEM == "R",
DATA_TYPE_MIR == "A",
AMOUNT_CAT == "2250U6",
BS_COUNT_SECTOR == "EUR",
CURRENCY_TRANS == "N") %>%
IR_BUS_COV left_join(MATURITY_ORIG, by = "MATURITY_ORIG") %>%
+ geom_line(aes(x = date, y = value/100, color = Maturity_orig)) +
ggplot
theme_minimal() + xlab("") + ylab("Taux d'intérêt (%)") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.15),
legend.title = element_blank(),
legend.direction = "vertical") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
labels = percent_format(accuracy = 1))
Tous
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A22.K.R.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A22.F.R.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A22.A.R.A.2254U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.15),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
labels = percent_format(accuracy = 1))
2016-
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A22.K.R.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A22.F.R.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A22.A.R.A.2254U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
filter(date >= as.Date("2016-01-01")) %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.4, 0.85),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, .1),
labels = percent_format(accuracy = .1))
2018-
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A22.K.R.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A22.F.R.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A22.A.R.A.2254U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
filter(date >= as.Date("2018-01-01")) %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.4, 0.85),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, .1),
labels = percent_format(accuracy = .1))
Taux de rémunération des dépôts + immobilier
Tous
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.A.N30.A.R.A.2230U6.EUR.O", variable) |
grepl("MIR1.M.FR.B.A22.A.R.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.L21.A.R.A.2230U6.EUR.O", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.55, 0.9),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
labels = percent_format(accuracy = 1),
limits = c(0, 0.07))
Part des renégociations
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A22PR.A.W.A.2254FR.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
%>%
na.omit + geom_line(aes(x = date, y = value/100)) +
ggplot theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.15),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Part des renégo dans le total des crédits à l'habitat (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 5),
labels = percent_format(accuracy = 1))
Volumes de crédit
Crédits à la consommation
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A2Z.A.R.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A2B.A.R.A.2254U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.5, 0.9),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 1),
labels = percent_format(accuracy = 1),
limits = c(0.03, 0.15))
Crédits nouveaux à l’habitat
Tous
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A22HR.A.5.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A22.A.5.A.2254U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
+ geom_line(aes(x = date, y = value, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.5, 0.9),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("") +
scale_y_continuous(breaks = seq(0, 100, 2))
2015-
Code
%>%
MIR1 filter(grepl("MIR1.M.FR.B.A22HR.A.5.A.2254U6.EUR.N", variable) |
grepl("MIR1.M.FR.B.A22.A.5.A.2254U6.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
filter(date >= as.Date("2015-01-01")) %>%
+ geom_line(aes(x = date, y = value, color = Variable)) +
ggplot
theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.5, 0.9),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("") +
scale_y_continuous(breaks = seq(0, 100, 2))
Taux d’usure
2017-
Code
%>%
MIR1 filter(grepl("MIR1.Q.FR.R.A22FRF.Q.U.A.2254FR.EUR.N", variable) |
grepl("MIR1.Q.FR.R.A22FRF.R.U.A.2254FR.EUR.N", variable) |
grepl("MIR1.Q.FR.R.A22FRF.S.U.A.2254FR.EUR.N", variable)) %>%
left_join(MIR1_var, by = "variable") %>%
+ geom_line(aes(x = date, y = value/100, color = Variable)) +
ggplot theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.5, 0.9),
legend.title = element_blank(),
legend.direction = "vertical") +
xlab("") + ylab("Taux d'intérêt (%)") +
scale_y_continuous(breaks = 0.01*seq(-10, 100, 0.1),
labels = percent_format(accuracy = .1))