Bank Lending Survey Statistics - BLS

Data - ECB

Info

source dataset .html .RData
ecb BLS 2024-12-29 2025-05-18

Data on monetary policy

source dataset .html .RData
bdf FM 2025-03-27 2025-03-27
bdf MIR 2025-03-09 2025-01-22
bdf MIR1 2025-03-09 2025-01-22
bis CBPOL 2024-12-29 2024-12-29
ecb BSI 2024-12-29 2024-11-19
ecb BSI_PUB 2024-12-29 2025-05-18
ecb FM 2025-02-07 2025-05-18
ecb ILM 2024-12-29 2025-05-18
ecb ILM_PUB 2024-12-29 2024-09-10
ecb liq_daily 2024-12-29 2024-09-11
ecb MIR 2024-06-19 2025-05-18
ecb RAI 2024-12-29 2025-05-18
ecb SUP 2024-12-29 2025-05-18
ecb YC 2024-12-29 2024-11-19
ecb YC_PUB 2024-12-29 2025-05-18
eurostat ei_mfir_m 2025-04-28 2025-04-28
eurostat irt_st_m 2025-02-07 2025-05-18
fred r 2025-05-18 2025-05-18
oecd MEI 2024-04-16 2025-02-25
oecd MEI_FIN 2024-09-15 2025-02-25

LAST_COMPILE

LAST_COMPILE
2025-05-18

Last

Code
BLS %>%
  group_by(TIME_PERIOD, FREQ) %>%
  summarise(Nobs = n()) %>%
  ungroup %>%
  select(FREQ, TIME_PERIOD, Nobs) %>%
  group_by(FREQ) %>%
  arrange(desc(TIME_PERIOD)) %>%
  filter(row_number() < 5) %>%
  arrange(FREQ) %>%
  print_table_conditional()
FREQ TIME_PERIOD Nobs
Q 2025-Q2 14774
Q 2025-Q1 15446
Q 2024-Q4 14798
Q 2024-Q3 15254

BLS_ITEM

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

Données

Données PCE

Code
BLS %>%
  filter(KEY %in% c("BLS.Q.U2.ALL.Z.H.H.B3.ZZ.D.WFNET",
                    "BLS.Q.U2.ALL.Z.H.C.B3.ZZ.D.WFNET")) %>%
  left_join(BLS_COUNT_DETAIL ,  by = "BLS_COUNT_DETAIL") %>%
  quarter_to_date() %>%
  select_if(~ n_distinct(.) > 1) %>%
  ggplot + geom_line(aes(x = date, y = OBS_VALUE/100, color = Bls_count_detail)) +
  xlab("") + ylab("") + theme_minimal() +
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2024, 2), "-01-01")),
               labels = date_format("%Y")) +
  scale_color_manual(values = c("blue", "red")) +
  theme(legend.position = c(0.65, 0.25),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(-100, 90, 10),
                     labels = scales::percent_format(accuracy = 1)) +
  geom_hline(yintercept = 0, linetype = "dashed")

Consumer credit, Loans for house purchase

Code
BLS %>%
  filter(KEY %in% c("BLS.Q.U2.ALL.Z.H.H.B3.ZZ.D.WFNET",
                    "BLS.Q.U2.ALL.Z.H.C.B3.ZZ.D.WFNET")) %>%
  left_join(BLS_COUNT_DETAIL ,  by = "BLS_COUNT_DETAIL") %>%
  quarter_to_date() %>%
  select_if(~ n_distinct(.) > 1) %>%
  ggplot + geom_line(aes(x = date, y = OBS_VALUE/100, color = Bls_count_detail)) +
  xlab("") + ylab("") + theme_minimal() +
  scale_x_date(breaks = as.Date(paste0(seq(1940, 2024, 2), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.65, 0.25),
        legend.title = element_blank()) +
  scale_y_continuous(breaks = 0.01*seq(-100, 90, 10),
                     labels = scales::percent_format(accuracy = 1)) +
  geom_hline(yintercept = 0, linetype = "dashed")