This section provides a more detailed look at some of the more
advanced use cases of the pacta.multi.loanbook
package for
PACTA for Supervisors analysis. First, we will touch on the technical
side of adjusting the analysis to your needs. Then, we will look at some
research questions that may occur in the field of banking supervision
with regard to climate transition risk and how the
pacta.multi.loanbook
package can help answer them.
Any adjustment to the analysis that you may want to make and that is
supported by the pacta.multi.loanbook
package can be done
by adjusting the config.yml
file. For information on each
of the parameters and the values they accept, please refer to
vignette("config_yml")
. Here, we will provide some examples
of how you can adjust the analysis to your needs.
Rationale: Supervisors need a systemic overview of transition risks across the financial sector to understand vulnerabilities that could affect financial stability.
Method: By analyzing different types of banks (e.g., systemically important banks, credit unions, specialized banks - lending to specific sectors) or banks with public commitments (e.g., targets, transition plans), supervisors can determine if transition risks are concentrated within particular bank categories. For instance, specialized banks focusing on fossil fuel sectors may face a higher transition risk if these exposures are significant across the sector. Identifying these patterns helps pinpoint specific areas of the financial system that could destabilize the broader economy.
The pacta.multi.loanbook
package can help supervisors
check if certain bank types show significant patterns of misalignment
and exposure that could warrant additional focus. For example, if we
know that certain specialized banks are focused on fossil fuel sectors,
we can check if these banks are more misaligned than others and if they
have a higher exposure to misaligned companies. This can be done by
comparing the net aggregate alignment metrics of different bank types
and also comparing this to the system-wide misalignment.
In terms of implementation, suppose we want to run the analysis at
the aggregate system level as a reference and then determine how the
different bank types compare to this. We can obtain the required
results, by running the functions prioritise_and_diagnose()
and analyse()
twice, with different parameter settings,
using the following steps:
by_group
parameter. The aggregate result can be obtained by
setting by_group = "NULL"
(this always works) and the bank
type results can be obtained by setting
by_group = "bank_type"
(this assumes that the raw and
matched loan books contain a variable called bank_type
with
the relevant classification). The results can then be compared to see if
there are any significant differences in the net aggregate alignment
metrics between the different bank types and the aggregate system
level.prioritise_and_diagnose()
, we first set the output
to something like:
dir_prioritized_loanbooks_and_diagnostics: "path/to/prioritized_loanbooks_and_diagnostics_aggregate"
and in the second run to
dir_prioritized_loanbooks_and_diagnostics: "path/to/prioritized_loanbooks_and_diagnostics_bank_type"
.analyse()
, we set the output to something like:
dir_analysis: "path/to/analysis_aggregate"
and in the
second run to dir_analysis: "path/to/analysis_bank_type"
.
We also need to make sure that when we run analyse()
, the
config.yml file points to the correct output directories for both the
prioritized_loanbooks_and_diagnostics
and
analyse
functions, so the correct input files can be
accessed.Assuming you have followed the naming convention described here, your project folder should look something like this:
project_folder
├── config.yml
├── input
│ ├── ABCD.xlsx
│ ├── loanbooks
│ │ ├── raw_loanbook_1.csv
│ │ ├── raw_loanbook_2.csv
│ │ └── ...
│ ├── scenario_data_tms.csv
│ ├── scenario_data_sda.csv
│ └── ...
├── prepared_abcd
├── matched_loanbooks
├── prioritized_loanbooks_and_diagnostics_aggregate
├── prioritized_loanbooks_and_diagnostics_bank_type
├── analysis_aggregate
└── analysis_bank_type
Some important things to analyse when making such a comparison are:
../prioritized_loanbooks_and_diagnostics_*/plot_match_success_rate_rel_*.png
to identify groups with low match success rates. Alternatively you can
use the file
../prioritized_loanbooks_and_diagnostics_*/lbk_match_success_rate_*.csv
for the precise numbers.../prioritized_loanbooks_and_diagnostics_*/plot_match_success_rate_abs_*.png
to identify the financial exposures (matched and total) of each group to
each of the sectors. Alternatively you can use the file
../prioritized_loanbooks_and_diagnostics_*/lbk_match_success_rate_*.csv
for the precise numbers.../analysis_*/plot_scatter_alignment_exposure_*.png
to see
the distribution of the net alignment metric by financial exposure for
each of the sectors and each group. This will help you identify if there
are any groups that are especially misaligned in a sector (y-axis) and
if this value corresponds to high financial exposure (x-axis). Things to
look out for are: any dot that is far away from the 0 intercept of the
y-axis indicates a strong deviation from the scenario. The values below
zero are groups that are misaligned. On the system level, any dot with a
high exposure and significant misalignment is a potential candidate for
further analysis.Rationale: Understanding the transition alignment of individual institutions supports targeted oversight and informed dialogue with entities facing significant transition exposures by tailoring their engagement and expectations based on each institution’s specific risk profile and capabilities.
Method: Comparing institutions against benchmarks (e.g., industry benchmarks -corporate economy-; financial benchmarks -rest of banks-.) also highlights those needing improvement or with best practices. This enables a more precise understanding of each institution’s potential for transition risk and informs supervisory assessments and actions.
The pacta.multi.loanbook
package can help supervisors
assess individual financial institutions’ alignment and transition risk
by providing detailed insights into the exposure and alignment of each
institution. For example, supervisors can compare the net aggregate
alignment metrics by financial exposure split by each of the banks and
the sectors they operate in. This helps identify which banks have
material exposures that are especially misaligned. Once identified, the
standard PACTA for banks results can be used for a deep dive into the
source of the misalignment of the identified institutions. For some
sectors, this will be especially helpful, when PACTA can be used to
identify misalignment at the technology level. If any particularly
material sources of misalignment can be found for a bank, the supervisor
may want to consider using this insight as part of their supervisory
review and urge the bank to clarify if and how this exposure is
accounted for in their risk management.
The implementation of this use case is relatively straight-forward:
"group_id"
, which can be
used here. We thus set by_group: "group_id"
in the
config.yml
.dir_analysis: "path/to/analysis_group_id"
and
dir_prioritized_loanbooks_and_diagnostics: "path/to/prioritized_loanbooks_and_diagnostics_group_id"
to ensure that the results are not overwritten when rerunning the
functions, in case any other calculations have been made before.Assuming you have followed the naming convention described here, your project folder should look something like this:
project_folder
├── config.yml
├── input
│ ├── ABCD.xlsx
│ ├── loanbooks
│ │ ├── raw_loanbook_1.csv
│ │ ├── raw_loanbook_2.csv
│ │ └── ...
│ ├── scenario_data_tms.csv
│ ├── scenario_data_sda.csv
│ └── ...
├── prepared_abcd
├── matched_loanbooks
├── prioritized_loanbooks_and_diagnostics_group_id
└── analysis_group_id
Some steps in identifying financial institutions that may warrant a deeper individual analysis are:
../prioritized_loanbooks_and_diagnostics_group_id/plot_match_success_rate_rel_*.png
to identify banks with low match success rates. Alternatively you can
use the file
../prioritized_loanbooks_and_diagnostics_group_id/lbk_match_success_rate_*.csv
for the precise numbers.../prioritized_loanbooks_and_diagnostics_group_id/plot_match_success_rate_abs_*.png
to identify the financial exposures (matched and total) of each bank to
each of the sectors. Alternatively you can use the file
../prioritized_loanbooks_and_diagnostics_group_id/lbk_match_success_rate_*.csv
for the precise numbers.../analysis_group_id/aggregate/plot_scatter_alignment_exposure_*.png
to see the distribution of the net alignment metric by financial
exposure for each of the sectors and each bank. This will help you
identify if there are any banks that are especially misaligned in a
sector (y-axis) and if this value corresponds to high financial exposure
(x-axis).../analysis_group_id/standard/<bank name>/plot_trajectory_<sector>_<technology>.png
to see how far the projected pathway of production capacity deviates
from technology pathways. The further the line is in the red at time t5,
the higher the potential for this technology to drive misalignment.
However, you should also check the technology mix of the sector for the
identified bank, using the plots in
../analysis_group_id/standard/<bank name>/plot_tech_mix_<sector>.png
.
You can check if the technologies that are strongly misaligned in t5
make up a relevant share of the portfolio technology mix. If for
example, you have a bank that is misaligned in the power sector and you
identify that both coal-fired power and gas-fired power seem to be far
off their scenario values in t5, you still need to check if these
technologies make up a relevant share of the power capacity financed by
this bank. If the tech mix shows that the majority of the underlying
power capacity for this bank is concentrated in gas-fired power, whereas
the share of coal-fired power is minimal, then the misalignment from
gas-fired power has a greater impact on the overall alginment of the
bank and is therefore more important for its risk profile.Rationale: Supervisors need to identify concentrations of transition risks within certain sectors or interlinkages across institutions to prevent risk contagion.
Method: Pinpointing sectors with heightened risk exposures and identifying companies with high exposure across institutions. This could be a proxy to identify concentrated risk exposures.
The pacta.multi.loanbook
package can help supervisors
identify hotspots and interlinkages of risk exposure by providing
detailed insights into the exposure and alignment of each institution.
For example, supervisors can compare the net aggregate alignment metrics
by financial exposure split by each of the sectors and the banks that
operate in them. This helps identify which sectors have material
exposures that are especially misaligned. Once identified, the company
level net aggregate alignment results can be used to analyze, if the
banks have similar exposures to misaligned sectors and companies.
This use case can use the same implementation as the previous one,
using results grouped by "group_id"
. We can again identify
banks and sectors with high exposure and misalignment using the plot in
../analysis_group_id/aggregate/plot_scatter_alignment_exposure_*.png
.
Any sectors that have multiple significantly misaligned banks are of
particular interest here. We now use the file
../analysis_group_id/aggregate/company_exposure_net_aggregate_alignment_by_group_id.csv
.
We sort by "alignment_metric"
and filter by the final year
of the analysis. This will show the companies with the highest
misalignment at the top, including the exposure each bank has to the
companies. Companies with strong misalignment and large exposures across
banks can be considered a particularly important source of potential
transition risk and the exposure across banks implies some contagion
risk.
Rationale: Many banks have made public commitments to align their portfolios with the Paris Agreement and signed up to initiatives that proclaim this target. Not following up on such commitments could lead to reputational risks for the banks, which should be managed.
Method: Depending on the type of commitment made, it may be relevant to check if future alignment is broadly aligned across sectors for a bank, or alternatively, if the relevant sectors are aligned with the bank’s commitments. The caveat to this exercise is that forward looking alignment does not capture past efforts the bank may already have made to align its portfolio. However, it can be a useful complementary tool to check if the bank is on track to meet its commitments in the future.
The following steps should be followed to implement this use case:
group_id
(that is by bank) and once by
net_zero_pledge
. The bank level result can be obtained by
setting by_group = "group_id"
(this always works) and the
results by net zero pledge can be obtained by setting
by_group = "net_zero_pledge"
(this assumes that the raw and
matched loan books contain a variable called
net_zero_pledge
with the relevant classification).prioritise_and_diagnose()
, we first set the output
to something like:
dir_prioritized_loanbooks_and_diagnostics: "path/to/prioritized_loanbooks_and_diagnostics_group_id"
and in the second run to
dir_prioritized_loanbooks_and_diagnostics: "path/to/prioritized_loanbooks_and_diagnostics_net_zero_pledge"
.analyse()
, we set the output to something like:
dir_analysis: "path/to/analysis_group_id"
and in the second
run to dir_analysis: "path/to/analysis_net_zero_pledge"
. We
also need to make sure that when we run analyse()
, the
config.yml file points to the correct output directories for both the
prioritized_loanbooks_and_diagnostics
and
analyse
functions, so the correct input files can be
accessed.Assuming you have followed the naming convention described here, your project folder should look something like this:
project_folder
├── config.yml
├── input
│ ├── ABCD.xlsx
│ ├── loanbooks
│ │ ├── raw_loanbook_1.csv
│ │ ├── raw_loanbook_2.csv
│ │ └── ...
│ ├── scenario_data_tms.csv
│ ├── scenario_data_sda.csv
│ └── ...
├── prepared_abcd
├── matched_loanbooks
├── prioritized_loanbooks_and_diagnostics_group_id
├── prioritized_loanbooks_and_diagnostics_net_zero_pledge
├── analysis_group_id
└── analysis_net_zero_pledge
We can now check if:
../analysis_net_zero_pledge/aggregate/plot_scatter_alignment_exposure_*.png
to see the distribution of the net alignment metric by financial
exposure for each of the sectors and each group. This will help us
identify if there are any sectors that are especially misaligned for
banks that have made a net zero pledge.PREVIOUS CHAPTER: 4 - Interpretation of Results