OAT indexées OATi - list-OATi

Données - AFT

OAT indexées sur l’inflation française (OATi, hors zone euro – voir list-OATeuroi pour les OAT€i indexées sur l’inflation de la zone euro).

Frise chronologique des échéances

Code
timeline <- listOATi |>
  arrange(maturity_date) |>
  mutate(label_y = rep(c(1, -1), length.out = n()),
         label = paste0(round(outstanding / 1e9, 1), " Md€\n",
                         format(maturity_date, "%b %Y")))

ggplot(timeline, aes(x = maturity_date, y = 0)) +
  geom_hline(yintercept = 0, color = "grey70") +
  geom_segment(aes(xend = maturity_date, y = 0, yend = label_y * 0.3), color = "grey70") +
  geom_point(aes(size = outstanding / 1e9, color = coupon_rate)) +
  geom_text(aes(y = label_y * 0.48, label = label), size = 2.9, lineheight = 0.9) +
  scale_size_continuous(range = c(3, 13), guide = "none") +
  scale_color_viridis_c(option = "C", name = "Taux (%)") +
  scale_x_date(date_labels = "%Y", date_breaks = "2 years") +
  coord_cartesian(ylim = c(-0.65, 0.65)) +
  theme_minimal(base_size = 13) +
  theme(axis.title.y = element_blank(), axis.text.y = element_blank(),
        axis.ticks.y = element_blank(), panel.grid.major.y = element_blank(),
        panel.grid.minor = element_blank(), legend.position = "bottom") +
  labs(x = NULL, title = "Échéances et encours des OATi en circulation",
       subtitle = "Taille des points = encours ; couleur = taux du coupon")

Détail par ligne

Code
listOATi |>
  arrange(maturity_date) |>
  transmute(isin, bond, `Échéance` = maturity_date, `Taux (%)` = coupon_rate,
            `Verte` = if_else(green, "Oui", ""), outstanding) |>
  gt() |>
  tab_header(title = "Encours des OATi en circulation") |>
  fmt_date(columns = `Échéance`, date_style = "iso") |>
  fmt_number(columns = outstanding, decimals = 0) |>
  grand_summary_rows(columns = outstanding, fns = list(Total = ~ sum(.)), fmt = ~ fmt_number(., decimals = 0))
Encours des OATi en circulation
isin bond Échéance Taux (%) Verte outstanding
FR0013238268 OATi 0,10 % 1 mars 2028 2028-03-01 0.10 17,612,000,000
FR0000186413 OATi 3,40 % 25 juillet 2029 2029-07-25 3.40 10,176,144,000
FR0014003N51 OATi 0,10 % 1 mars 2032 2032-03-01 0.10 10,064,000,000
FR0013524014 OATi 0,10 % 1 mars 2036 2036-03-01 0.10 12,717,000,000
FR001400IKW5 OATi 0,55 % 1 mars 2039 2039-03-01 0.55 6,227,000,000
Total 56,796,144,000

Tableau interactif

Code
listOATi |>
  arrange(maturity_date) |>
  transmute(isin, bond, `Échéance` = maturity_date, `Taux (%)` = coupon_rate,
            `Verte` = if_else(green, "Oui", "Non"), outstanding) |>
  gt() |>
  fmt_date(columns = `Échéance`, date_style = "iso") |>
  fmt_number(columns = outstanding, decimals = 0) |>
  opt_interactive(use_search = TRUE, use_filters = TRUE, use_sorting = TRUE,
                   use_resizers = TRUE, use_highlight = TRUE,
                   use_compact_mode = TRUE, use_page_size_select = TRUE)