Issuance and Holdings of Securities - France - SC1

Data - Banque de France

🇫🇷 Version française

Info

Last observation: Mensuel: 30 jui 2026 (N = 24,521) · Trimestriel: 31 mar 2026 (N = 7,081)

First observation: Mensuel: 31 déc 1989 (N = 24,521) · Trimestriel: 31 mar 2008 (N = 7,081)

Last data update: 10 aoû 2026, 23:44. Last compile: 14 aoû 2026, 22:34

Structure

LAST_DOWNLOAD

LAST_DOWNLOAD
2026-08-10

LAST_COMPILE

LAST_COMPILE
2026-08-14

Last

date Nobs
2026-06-30 73

Outstanding Debt Securities by Issuing Sector

Since 2008

Code
SC1 |>

  filter(REF_AREA == "FR",
         SEC_ISSUING_SECTOR %in% c("100Z", "1100", "122Z", "123Z", "1300"),
         SEC_ITEM == "F33000",
         DATA_TYPE_SEC == "1",
         CURRENCY == "Z01",
         SERIES_DENOM == "E",
         SEC_SUFFIX == "Z",
         FREQ == "Q") |>
  mutate(Sector = recode(SEC_ISSUING_SECTOR,
                           "100Z" = "All residents",
                           "1100" = "Non-financial corporations",
                           "122Z" = "Credit institutions",
                           "123Z" = "Other financial institutions",
                           "1300" = "General government")) |>
  arrange(date) |>
  ggplot() + geom_line(aes(x = date, y = value / 1000, color = Sector)) +
  theme_minimal() + xlab("") + ylab("€bn") +
  scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(labels = dollar_format(prefix = "", suffix = " €bn")) +
  theme(legend.position = c(0.25, 0.75),
        legend.title = element_blank())

Last 5 Years

Code
SC1 |>

  filter(REF_AREA == "FR",
         SEC_ISSUING_SECTOR %in% c("100Z", "1100", "122Z", "123Z", "1300"),
         SEC_ITEM == "F33000",
         DATA_TYPE_SEC == "1",
         CURRENCY == "Z01",
         SERIES_DENOM == "E",
         SEC_SUFFIX == "Z",
         FREQ == "Q") |>
  filter(date >= Sys.Date() - years(5)) |>
  mutate(Sector = recode(SEC_ISSUING_SECTOR,
                           "100Z" = "All residents",
                           "1100" = "Non-financial corporations",
                           "122Z" = "Credit institutions",
                           "123Z" = "Other financial institutions",
                           "1300" = "General government")) |>
  arrange(date) |>
  ggplot() + geom_line(aes(x = date, y = value / 1000, color = Sector)) +
  theme_minimal() + xlab("") + ylab("€bn") +
  scale_x_date(breaks = "6 months",
               labels = date_format("%b %Y")) +
  scale_y_continuous(labels = dollar_format(prefix = "", suffix = " €bn")) +
  theme(legend.position = c(0.25, 0.75),
        legend.title = element_blank(),
        axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1))

Net Issuance of Debt Securities (12-Month Cumulative)

Code
SC1 |>

  filter(REF_AREA == "FR",
         SEC_ISSUING_SECTOR %in% c("100Z", "1100", "122Z", "123Z", "1300"),
         SEC_ITEM == "F33000",
         DATA_TYPE_SEC == "4",
         CURRENCY == "Z01",
         SERIES_DENOM == "M",
         SEC_SUFFIX == "Z",
         FREQ == "M") |>
  mutate(Sector = recode(SEC_ISSUING_SECTOR,
                           "100Z" = "All residents",
                           "1100" = "Non-financial corporations",
                           "122Z" = "Credit institutions",
                           "123Z" = "Other financial institutions",
                           "1300" = "General government")) |>
  arrange(date) |>
  ggplot() + geom_line(aes(x = date, y = value / 1000, color = Sector)) +
  theme_minimal() + xlab("") + ylab("12-month cumulative, €bn") +
  scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
               labels = date_format("%Y")) +
  scale_y_continuous(labels = dollar_format(prefix = "", suffix = " €bn")) +
  geom_hline(yintercept = 0, linetype = "dashed", color = "black") +
  theme(legend.position = c(0.25, 0.8),
        legend.title = element_blank())

Outstanding by Sector - Latest Period

Code
SC1 |>

  filter(REF_AREA == "FR",
         SEC_ISSUING_SECTOR %in% c("100Z", "1100", "122Z", "123Z", "1300"),
         SEC_ITEM == "F33000",
         DATA_TYPE_SEC == "1",
         CURRENCY == "Z01",
         SERIES_DENOM == "E",
         SEC_SUFFIX == "Z",
         FREQ == "Q") |>
  mutate(Sector = recode(SEC_ISSUING_SECTOR,
                           "100Z" = "All residents",
                           "1100" = "Non-financial corporations",
                           "122Z" = "Credit institutions",
                           "123Z" = "Other financial institutions",
                           "1300" = "General government")) |>
  filter(date == max(date)) |>
  transmute(Sector, `Outstanding (€bn)` = round(value / 1000, 1), Date = date) |>
  arrange(desc(`Outstanding (€bn)`)) |>
  print_table_conditional()
Sector Outstanding (€bn) Date
All residents 5748.5 2026-03-31
General government 3138.3 2026-03-31
Credit institutions 1506.0 2026-03-31
Non-financial corporations 742.3 2026-03-31
Other financial institutions 361.9 2026-03-31