ACPR - Banque et Assurance en France - ACPR

Données - BDF

🇬🇧 English version

Info

Last observation: A: 2024-12-31 (N = 1313)

First observation: A: 2006-12-31 (N = 4)

Last data update: 11 aoû 2026, 19:22. Last compile: 17 aoû 2026, 21:53

Structure

LAST_DOWNLOAD

LAST_DOWNLOAD
2026-08-11

Ratios prudentiels bancaires (6 principaux groupes bancaires français)

Solvabilité (CET1) et effet de levier

Code
ACPR |>
  
  filter(variable %in% c("ACPR.A.BQ.PRUDENTIEL.RATIO_CET1.361._Z._Z.PHNC._Z.TOP6_AUT_GROUPES",
                          "ACPR.A.BQ.PRUDENTIEL.GB_COR_LEVIER_DISTRIB001_26.144._Z._Z.PHNC._Z.TOP6_AUT_GROUPES")) |>
  mutate(Serie = ifelse(MNE == "RATIO_CET1", "Ratio de solvabilité CET1", "Ratio de levier (médiane)"),
         value = value/100) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Serie)) +
  geom_point(aes(x = date, y = value, color = Serie)) +
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2100, 1) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank())

Liquidité (LCR et NSFR)

Code
ACPR |>
  
  filter(variable %in% c("ACPR.A.BQ.PRUDENTIEL.GB_COR_LCR9719_50.140._Z._Z.PHNC._Z.TOP6_AUT_GROUPES",
                          "ACPR.A.BQ.PRUDENTIEL.NSFR1239300.633._Z._Z.PHNC._Z.TOP6_AUT_GROUPES")) |>
  mutate(Serie = ifelse(MNE == "GB_COR_LCR9719_50", "LCR (médiane)", "NSFR"),
         value = value/100) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Serie)) +
  geom_point(aes(x = date, y = value, color = Serie)) +
  geom_hline(yintercept = 1, linetype = "dashed", color = "black") +
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2100, 1) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank())

Ratios prudentiels : dernière année disponible

Code
ACPR |>
  
  filter(variable %in% c("ACPR.A.BQ.PRUDENTIEL.RATIO_CET1.361._Z._Z.PHNC._Z.TOP6_AUT_GROUPES",
                          "ACPR.A.BQ.PRUDENTIEL.GB_COR_LEVIER_DISTRIB001_26.144._Z._Z.PHNC._Z.TOP6_AUT_GROUPES",
                          "ACPR.A.BQ.PRUDENTIEL.GB_COR_LCR9719_50.140._Z._Z.PHNC._Z.TOP6_AUT_GROUPES",
                          "ACPR.A.BQ.PRUDENTIEL.NSFR1239300.633._Z._Z.PHNC._Z.TOP6_AUT_GROUPES")) |>
  mutate(Serie = case_when(MNE == "RATIO_CET1" ~ "Ratio de solvabilité CET1",
                            MNE == "GB_COR_LEVIER_DISTRIB001_26" ~ "Ratio de levier (médiane)",
                            MNE == "GB_COR_LCR9719_50" ~ "LCR (médiane)",
                            MNE == "NSFR1239300" ~ "NSFR")) |>
  filter(date == max(date)) |>
  select(Serie, date, value) |>
  arrange(Serie) |>
  print_table_conditional()
Serie date value
LCR (médiane) 2024-12-31 239.14
NSFR 2024-12-31 115.63
Ratio de levier (médiane) 2024-12-31 7.21
Ratio de solvabilité CET1 2024-12-31 16.13

Solvabilité II : ratio de couverture du SCR (assurance)

Par segment d’activité

Code
ACPR |>
  
  filter(MNE == "SCR",
         CONSOLIDATION == "SOLO",
         POPULATION %in% c("_Z", "VM", "NV", "BA", "RE")) |>
  mutate(Segment = case_when(POPULATION == "_Z" ~ "Ensemble du secteur",
                              POPULATION == "VM" ~ "Assurance vie",
                              POPULATION == "NV" ~ "Assurance non-vie",
                              POPULATION == "BA" ~ "Bancassureurs",
                              POPULATION == "RE" ~ "Réassurance et holdings"),
         value = value/100) |>
  ggplot() + geom_line(aes(x = date, y = value, color = Segment)) +
  geom_point(aes(x = date, y = value, color = Segment)) +
  geom_hline(yintercept = 1, linetype = "dashed", color = "black") +
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1960, 2100, 1) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
  theme(legend.position = c(0.25, 0.25),
        legend.title = element_blank())

Dernière année disponible

Code
ACPR |>
  
  filter(MNE == "SCR",
         CONSOLIDATION == "SOLO",
         POPULATION %in% c("_Z", "VM", "NV", "BA", "RE")) |>
  mutate(Segment = case_when(POPULATION == "_Z" ~ "Ensemble du secteur",
                              POPULATION == "VM" ~ "Assurance vie",
                              POPULATION == "NV" ~ "Assurance non-vie",
                              POPULATION == "BA" ~ "Bancassureurs",
                              POPULATION == "RE" ~ "Réassurance et holdings")) |>
  filter(date == max(date)) |>
  select(Segment, date, value) |>
  arrange(desc(value)) |>
  print_table_conditional()
Segment date value
Assurance non-vie 2024-12-31 273.3
Ensemble du secteur 2024-12-31 239.4
Assurance vie 2024-12-31 232.6
Réassurance et holdings 2024-12-31 230.6
Bancassureurs 2024-12-31 223.7