Loading the Dataset

Before we begin, we first need to use the function we created in class to create individual datasets for each subtopic.

sus_debt <- process_iif_gb_issuance(range = "B4:G41", issuance_type = "Sustainable debt")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(sus_debt)

sustainable_bonds <- process_iif_gb_issuance(range = "I4:N41", issuance_type = "Sustainable bonds")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(sustainable_bonds)

loans <- process_iif_gb_issuance(range = "P4:U41", 
                                           issuance_type = "Sustainable loans")
iif_issuance_data <- iif_issuance_data %>%
  bind_rows(loans)

green_bonds <- process_iif_gb_issuance(range = "W4:AB41", 
                                           issuance_type = "Green bonds")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(green_bonds)

green_abs <- process_iif_gb_issuance(range = "AD4:AI41", 
                                           issuance_type = "Green ABS")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(green_abs)

sustainability_bonds <- process_iif_gb_issuance(range = "AK4:AP41", 
                                           issuance_type = "Sustainability bonds")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(sustainability_bonds)

social_bonds <- process_iif_gb_issuance(range = "AR4:AW41", 
                                           issuance_type = "Social bonds")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(social_bonds)

green_municipal_bonds <- process_iif_gb_issuance(range = "AY4:BD41", 
                                           issuance_type = "Green municipal bonds")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(green_municipal_bonds)

sustainability_linked_bonds <- process_iif_gb_issuance(range = "BF4:BK41", 
                                           issuance_type = "Sustainability-linked bonds")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(sustainability_linked_bonds)

green_loans <- process_iif_gb_issuance(range = "BM4:BR41", 
                                           issuance_type = "Green loans")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(green_loans)

sustainability_linked_loans <- process_iif_gb_issuance(range = "BT4:BY41", 
                                           issuance_type = "Sustainability-linked loans")

iif_issuance_data <- iif_issuance_data %>%
  bind_rows(sustainability_linked_loans)
iif_issuance_data %>% glimpse()
## Rows: 2,405
## Columns: 4
## $ date            <date> 2013-03-31, 2013-03-31, 2013-03-31, 2013-03-31, 2013-…
## $ geography       <chr> "Mature markets", "Emerging markets", "Offshore center…
## $ issuance_bn_usd <dbl> 6.18958089, 0.45115568, 0.00000000, 1.15915118, 7.7998…
## $ issuance_type   <chr> "Sustainable debt (bonds and loans)", "Sustainable deb…

Dominance of China in Green Bonds Among Emerging Markets

China first started issuing green bonds in 2015. By the end of 2016, Chinese green bond issuances grew to US$36.2 billion, accounting for 39% of global green bond issuances. How does China compare to other Emerging Markets?

iif_EM_data <- here("01_data_raw", "iif", "Sustainable_debt_monitor.xlsx") %>% 
  #specify the sheet + the range of cells in excel
  read_excel(sheet = "3a_EM&FM by country",
             range = "B4:J41") %>%
  # rename the first column to "date"
  rename(date = `$ billion`) %>%
  # Tidy the dataset by making the column names into long format
  pivot_longer(cols = -date, names_to = "country", values_to = "issuance_bn_usd") %>%
  # coerce the date column into a date object using lubridate::ymd() (year-month_date)
  mutate(date = ymd(date)) %>%
  # Add a column that includes the name of this specific data
  add_column(issuance_type = "Green bonds")

library(ggplot2)
library(dplyr)
library (ggthemes)

iif_EM_data %>%
  filter(country != "Other EMs") %>%
ggplot(aes(x=date, y=issuance_bn_usd, fill=country)) + 
  geom_line(aes(color=country))+
  labs(
    x = "Date",
    y = "Issuance (USD Billions)",
    title = "China's Dominance of EM Green Bonds 
                        Began in 2016",
    subtitle = "2013-2022",
    caption = "Data source: Institute of International Finance",
    col = "Country"
    )+
  theme_pander()

Are Germany and U.S. Still the Dominant Players in the Mature Market?

While Germany and the U.S. are the two largest individual countries in the market, the combination of issuances in other mature markets began to overtake them starting in 2021.

iif_MM_data <- here("01_data_raw", "iif", "Sustainable_debt_monitor.xlsx") %>% 
  #specify the sheet + the range of cells in excel
  read_excel(sheet = "2a_MM by country",
             range = "B4:J41") %>%
  # rename the first column to "date"
  rename(date = `$ billion`) %>%
  # Tidy the dataset by making the column names into long format
  pivot_longer(cols = -date, names_to = "country", values_to = "issuance_bn_usd") %>%
  # coerce the date column into a date object using lubridate::ymd() (year-month_date)
  mutate(date = ymd(date)) %>%
  # Add a column that includes the name of this specific data
  add_column(issuance_type = "Green bonds")

library(ggplot2)
library(dplyr)
library (ggthemes)

iif_MM_data %>%
  filter(country == "U.S." | country=="Germany" | country=="Other MMs") %>%
ggplot(aes(x=date, y=issuance_bn_usd, fill=country)) + 
  geom_line(aes(color=country))+
  labs(
    x = "Date",
    y = "Issuance (USD Billions)",
    title = "Germany & U.S. Overtaken by Other 
                    MMs in 2021",
    subtitle = "2013-2022",
    caption = "Data source: Institute of International Finance",
    col = "Country"
    )+
  theme_pander()