Skip to content

Climate Risk and Carbon Emissions

The Climate Risk and Carbon Emissions listing holds ten views under the EMMI schema, each documented in its own section below.

Public equity carbon emissions

EMMI.PUBLIC_EQUITY_CARBON_EMISSIONS holds Scope 1, 2 and 3 emissions for listed companies, one row per company per fiscal year.

Primary key: ISIN, FISCAL_END_DATE.

Columns

Column Type Unit Example Description
ISIN string IT0003128367 International Securities Identification Number of the listing.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the company.
NAME string Enel SpA Name of the company.
COUNTRY string Italy Country the company is in.
FACTSET_INDUSTRY string Electric Utilities FactSet Industry classification of the equity.
SCOPE1_EMISSIONS float / null tCO2e 20210000 Scope 1 emissions by the entity.
SCOPE2_EMISSIONS float / null tCO2e 4900000 Scope 2 emissions by the entity.
SCOPE3_EMISSIONS float / null tCO2e 46260000 Scope 3 emissions by the entity.
SCOPE1_PCAF int between 1 and 5 / null Score 2 The PCAF score for Scope 1. PCAF is a method for recognising the quality of estimation. 1 = reported and verified, 2 = reported, 3 = estimated using historical emissions, 4 = estimated with financials only.
SCOPE2_PCAF int between 1 and 5 / null Score 2 The PCAF score for Scope 2. PCAF is a method for recognising the quality of estimation. 1 = reported and verified, 2 = reported, 3 = estimated using historical emissions, 4 = estimated with financials only.
SCOPE3_PCAF int between 1 and 5 / null Score 3 The PCAF score for Scope 3. PCAF is a method for recognising the quality of estimation. 1 = reported and verified, 2 = reported, 3 = estimated using historical emissions, 4 = estimated with financials only.
SCOPE1_EMISSION_REPORTING_STATUS string reported Status of emissions reporting for Scope 1. reported, estimated or unavailable.
SCOPE2_EMISSION_REPORTING_STATUS string reported Status of emissions reporting for Scope 2. reported, estimated or unavailable.
SCOPE3_EMISSION_REPORTING_STATUS string estimated Status of emissions reporting for Scope 3. reported, estimated or unavailable.
WACI_S1 float tCO2e per million revenue 246.7 Weighted Average Carbon Intensity of Scope 1. Emissions as a factor of company revenue.
WACI_S12 float tCO2e per million revenue 306.5 Weighted Average Carbon Intensity of Scopes 1 + 2. Emissions as a factor of company revenue.
WACI_S123 float tCO2e per million revenue 871.2 Weighted Average Carbon Intensity of Scopes 1 + 2 + 3. Emissions as a factor of company revenue.
EVIC_CARBON_INTENSITY_S12 float tCO2e per million EVIC 123.45 An intensity measure of Scope 1 and 2 emissions, as a factor of EVIC.
EVIC_CARBON_INTENSITY_S123 float tCO2e per million EVIC 123.45 An intensity measure of all emissions, as a factor of EVIC.

Examples

Emissions history for Enel since 2020.

SELECT ISIN, FISCAL_END_DATE, NAME, SCOPE1_EMISSIONS, SCOPE2_EMISSIONS, SCOPE3_EMISSIONS,
       SCOPE1_EMISSION_REPORTING_STATUS
FROM EMMI.PUBLIC_EQUITY_CARBON_EMISSIONS
WHERE ISIN = 'IT0003128367'
ORDER BY FISCAL_END_DATE;
ISIN FISCAL_END_DATE NAME SCOPE1_EMISSIONS SCOPE2_EMISSIONS SCOPE3_EMISSIONS SCOPE1_EMISSION_REPORTING_STATUS
IT0003128367 2020-12-31 Enel SpA 45260000 2250000 47700000 reported
IT0003128367 2021-12-31 Enel SpA 51570000 7110000 69150000 reported
IT0003128367 2022-12-31 Enel SpA 53070000 6060000 85268434 reported
IT0003128367 2023-12-31 Enel SpA 34510557 4506161 56533423 reported
IT0003128367 2024-12-31 Enel SpA 20210000 4900000 46260000 reported
IT0003128367 2025-12-31 Enel SpA 19706800 4857722 47641505 estimated

Fiscal year 2024 emissions for a five-stock portfolio.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN, h.WEIGHT, e.NAME, e.FACTSET_INDUSTRY,
       e.SCOPE1_EMISSIONS, e.SCOPE2_EMISSIONS, e.SCOPE3_EMISSIONS,
       ROUND(e.WACI_S12, 1) AS WACI_S12
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
WHERE YEAR(e.FISCAL_END_DATE) = 2024
ORDER BY h.WEIGHT DESC;
ISIN WEIGHT NAME FACTSET_INDUSTRY SCOPE1_EMISSIONS SCOPE2_EMISSIONS SCOPE3_EMISSIONS WACI_S12
IT0003128367 0.30 Enel SpA Electric Utilities 20210000 4900000 46260000 306.5
CH0038863350 0.25 Nestlé SA Food: Major Diversified 3080000 260000 71350000 31.6
DE0007236101 0.20 Siemens AG Industrial Machinery 347000 94000 416758000 5.4
NL0010273215 0.15 ASML Holding NV Semiconductors 23500 9300 12038800 1.1
DK0010244508 0.10 A.P. Møller-Mærsk A/S Marine Shipping 33939000 356000 49232000 614.3

Weighted carbon intensity of the portfolio, and how much of it reports Scope 1.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT ROUND(SUM(h.WEIGHT * e.WACI_S12), 1)  AS PORTFOLIO_WACI_S12,
       ROUND(SUM(h.WEIGHT * e.WACI_S123), 1) AS PORTFOLIO_WACI_S123,
       SUM(IFF(e.SCOPE1_EMISSION_REPORTING_STATUS = 'reported', h.WEIGHT, 0)) AS WEIGHT_WITH_REPORTED_SCOPE1
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
WHERE YEAR(e.FISCAL_END_DATE) = 2024;
PORTFOLIO_WACI_S12 PORTFOLIO_WACI_S123 WEIGHT_WITH_REPORTED_SCOPE1
162.5 1670.0 1.00

Public equity climate risk

EMMI.PUBLIC_EQUITY_CLIMATE_RISK holds transition and physical value at risk for listed companies, one row per company, fiscal year, risk year and scenario. Risk years are the fiscal year itself plus 2030, 2035, 2040, 2045 and 2050.

Primary key: ISIN, FISCAL_END_DATE, RISK_YEAR, TRANSITION_RISK_SCENARIO.

Value at risk and reduction columns are decimal fractions: 1 = 100%, 0.5 = 50%, 0 = 0%.

Columns

Column Type Unit Example Description
ISIN string IT0003128367 International Securities Identification Number of the listing.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the company.
RISK_YEAR int Year 2030 Year for emission reductions, transition and physical risk analysis.
TRANSITION_RISK_SCENARIO string NGFS_NetZero2050 Which climate scenario was used to create the row. See Climate scenarios for the full list.
NAME string Enel SpA Name of the company.
EMISSIONS_USED string reported Whether the analysis used reported, estimated or mix-of-estimated-reported emissions.
TRANSITION_VAR float % 0.288 Value at risk based on carbon pricing in the scenario at the risk year. Also called Potential Carbon Liability (PCL).
REDUCTION float % 0.416 Emission reduction required for the entity's Scope 1+2+3 emissions to be aligned with the scenario at the risk year.
ACUTE_PHYSICAL_VAR float % 0.001 Value at risk based on acute climate events caused by the baseline risk and anthropogenic climate change in the scenario at the risk year.
CHRONIC_PHYSICAL_VAR float % 0.000 Value at risk based on chronic climate events caused by the baseline risk and anthropogenic climate change in the scenario at the risk year.
BASELINE_PHYSICAL_VAR float % 0.000 Non anthropogenic physical risk.
TOTAL_PHYSICAL_VAR float % 0.001 Potential capital loss based on acute and chronic physical risk.
TOTAL_CLIMATE_VAR float % 0.289 Total value at risk based on transition and physical risk (baseline and anthropogenic) for the given scenario and risk year.

Examples

Enel's climate risk at each risk year under the NGFS Net Zero 2050 scenario.

SELECT RISK_YEAR,
       ROUND(REDUCTION, 3)          AS REDUCTION,
       ROUND(TRANSITION_VAR, 3)     AS TRANSITION_VAR,
       ROUND(TOTAL_PHYSICAL_VAR, 3) AS TOTAL_PHYSICAL_VAR,
       ROUND(TOTAL_CLIMATE_VAR, 3)  AS TOTAL_CLIMATE_VAR
FROM EMMI.PUBLIC_EQUITY_CLIMATE_RISK
WHERE ISIN = 'IT0003128367'
  AND FISCAL_END_DATE = '2024-12-31'
  AND TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
ORDER BY RISK_YEAR;
RISK_YEAR REDUCTION TRANSITION_VAR TOTAL_PHYSICAL_VAR TOTAL_CLIMATE_VAR
2024 0.299 0.091 0.000 0.091
2030 0.416 0.288 0.001 0.289
2035 0.527 0.587 0.002 0.589
2040 0.835 1.000 0.002 1.000
2045 0.959 1.000 0.003 1.000
2050 0.966 1.000 0.004 1.000

Enel's 2030 transition risk under every scenario, highest first.

SELECT TRANSITION_RISK_SCENARIO,
       ROUND(REDUCTION, 3)         AS REDUCTION,
       ROUND(TRANSITION_VAR, 3)    AS TRANSITION_VAR,
       ROUND(TOTAL_CLIMATE_VAR, 3) AS TOTAL_CLIMATE_VAR
FROM EMMI.PUBLIC_EQUITY_CLIMATE_RISK
WHERE ISIN = 'IT0003128367'
  AND FISCAL_END_DATE = '2024-12-31'
  AND RISK_YEAR = 2030
ORDER BY TRANSITION_VAR DESC;
TRANSITION_RISK_SCENARIO REDUCTION TRANSITION_VAR TOTAL_CLIMATE_VAR
IPCC_AR6_HighRen 0.754 0.522 0.523
IPCC_AR6_1p5NegEm 0.743 0.515 0.516
IPCC_AR6_SustDev 0.691 0.479 0.480
IPCC_AR6_LowDemand 0.712 0.298 0.299
NGFS_NetZero2050 0.416 0.288 0.289
NGFS_LowDemand 0.360 0.151 0.152
IPCC_AR6_ModAction 0.452 0.144 0.145
NGFS_NDC 0.310 0.099 0.100
IPR_FPS 0.389 0.070 0.071
IPCC_AR6_Gradual 0.280 0.034 0.035
NGFS_TwoDeg 0.109 0.013 0.014
IPCC_AR6_BAU 0.154 0.006 0.007
IPCC_AR6_Current 0.150 0.006 0.007
NGFS_Delayed 0.001 0.000 0.001
NGFS_Fragmented 0.001 0.000 0.001
NGFS_Current 0.001 0.000 0.001

Weighted value at risk for a five-stock portfolio at 2030 and 2050.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT r.RISK_YEAR,
       ROUND(SUM(h.WEIGHT * r.TRANSITION_VAR), 4)     AS PORTFOLIO_TRANSITION_VAR,
       ROUND(SUM(h.WEIGHT * r.TOTAL_PHYSICAL_VAR), 4) AS PORTFOLIO_PHYSICAL_VAR,
       ROUND(SUM(h.WEIGHT * r.TOTAL_CLIMATE_VAR), 4)  AS PORTFOLIO_TOTAL_CLIMATE_VAR
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_CLIMATE_RISK r ON r.ISIN = h.ISIN
WHERE YEAR(r.FISCAL_END_DATE) = 2024
  AND r.TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
  AND r.RISK_YEAR IN (2030, 2050)
GROUP BY r.RISK_YEAR
ORDER BY r.RISK_YEAR;
RISK_YEAR PORTFOLIO_TRANSITION_VAR PORTFOLIO_PHYSICAL_VAR PORTFOLIO_TOTAL_CLIMATE_VAR
2030 0.4323 0.0029 0.4343
2050 0.9245 0.0155 0.9261

Public equity temperature alignment

EMMI.PUBLIC_EQUITY_TEMPERATURE_ALIGNMENT holds the implied temperature alignment of listed companies, one row per company, fiscal year and risk year.

Primary key: ISIN, FISCAL_END_DATE, RISK_YEAR.

Columns

Column Type Unit Example Description
ISIN string IT0003128367 International Securities Identification Number of the listing.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the company.
RISK_YEAR int Year 2030 Year the alignment is assessed at. The fiscal year itself plus 2030, 2035, 2040, 2045 and 2050.
NAME string Enel SpA Name of the company.
TEMPERATURE_ALIGNMENT float °C 1.69 Temperature alignment indicates the global warming scenario that a company's current carbon footprint is consistent with.

Examples

Enel's temperature alignment at each risk year.

SELECT RISK_YEAR, ROUND(TEMPERATURE_ALIGNMENT, 2) AS TEMPERATURE_ALIGNMENT
FROM EMMI.PUBLIC_EQUITY_TEMPERATURE_ALIGNMENT
WHERE ISIN = 'IT0003128367'
  AND FISCAL_END_DATE = '2024-12-31'
ORDER BY RISK_YEAR;
RISK_YEAR TEMPERATURE_ALIGNMENT
2024 1.53
2030 1.69
2035 1.77
2040 1.84
2045 1.94
2050 2.11

Temperature alignment at 2050 alongside Scope 1 + 2 emissions for a five-stock portfolio.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN, e.NAME, h.WEIGHT, e.SCOPE1_EMISSIONS + e.SCOPE2_EMISSIONS AS SCOPE12_EMISSIONS,
       ROUND(t.TEMPERATURE_ALIGNMENT, 2) AS TEMPERATURE_ALIGNMENT
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
JOIN EMMI.PUBLIC_EQUITY_TEMPERATURE_ALIGNMENT t
  ON t.ISIN = e.ISIN AND t.FISCAL_END_DATE = e.FISCAL_END_DATE
WHERE YEAR(e.FISCAL_END_DATE) = 2024
  AND t.RISK_YEAR = 2050
ORDER BY t.TEMPERATURE_ALIGNMENT;
ISIN NAME WEIGHT SCOPE12_EMISSIONS TEMPERATURE_ALIGNMENT
NL0010273215 ASML Holding NV 0.15 32800 1.67
CH0038863350 Nestlé SA 0.25 3340000 1.99
IT0003128367 Enel SpA 0.30 25110000 2.11
DK0010244508 A.P. Møller-Mærsk A/S 0.10 34295000 3.81
DE0007236101 Siemens AG 0.20 441000 4.00

Weighted temperature alignment of the portfolio at 2050, and the share of it aligned to 2°C or better.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT ROUND(SUM(h.WEIGHT * t.TEMPERATURE_ALIGNMENT) / SUM(h.WEIGHT), 2)         AS PORTFOLIO_TEMPERATURE_ALIGNMENT,
       ROUND(SUM(IFF(t.TEMPERATURE_ALIGNMENT <= 2.0, h.WEIGHT, 0)) / SUM(h.WEIGHT), 2) AS WEIGHT_ALIGNED_TO_2C
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_TEMPERATURE_ALIGNMENT t ON t.ISIN = h.ISIN
WHERE YEAR(t.FISCAL_END_DATE) = 2024
  AND t.RISK_YEAR = 2050;
PORTFOLIO_TEMPERATURE_ALIGNMENT WEIGHT_ALIGNED_TO_2C
2.56 0.40

Public equity projected carbon emissions

EMMI.PUBLIC_EQUITY_PROJECTED_CARBON_EMISSIONS holds a company's emissions in future years, one row per company, fiscal year, emissions year and projection type. Two kinds of projection are provided:

  • Target. The company's own published SBTi target, taken at face value. Emissions move in a straight line from the target's baseline year to its target year and stay there afterwards.
  • Forecast. Emmi's forecast of the company's Scope 1, 2 and 3 emissions to 2030, from its emissions history. The forecast is a probabilistic model and the median path is provided.

Targets and forecasts are two different projections of the same company. Do not sum or combine them.

Primary key: ISIN, FISCAL_END_DATE, EMISSIONS_YEAR, PROJECTION_TYPE. Several fiscal years can be active at once, so filter on FISCAL_END_DATE to read one trajectory per company.

Columns

Column Type Unit Example Description
ISIN string IT0003128367 International Securities Identification Number of the listing.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the company.
EMISSIONS_YEAR int Year 2030 The year that these emissions are forecast/targets for.
PROJECTION_ID int 0 Unique identifier for the projection method. 0 for targets, 1 for forecasts.
PROJECTION_TYPE string Target Whether the projected emissions were generated using targets or forecasts. Target or Forecast.
PROJECTION_METHOD string Stepwise linear glide path The specific method used to generate the projected emissions. Stepwise linear glide path for targets (a straight line between the target's baseline and target years), Monte Carlo Forecast for forecasts.
NAME string Enel SpA Name of the company.
SCOPE1_EMISSIONS float / null tCO2e 19795443 Projected Scope 1 emissions of the entity at the emissions year.
SCOPE2_EMISSIONS float / null tCO2e 977226 Projected Scope 2 emissions of the entity at the emissions year.
SCOPE3_EMISSIONS float / null tCO2e 20980347 Projected Scope 3 emissions of the entity at the emissions year.
TEMP_ALIGNMENT float / null °C 1.5 Temperature alignment of the projected emissions trajectory.

Examples

Enel's emissions under its own targets at each risk year.

SELECT PROJECTION_TYPE, EMISSIONS_YEAR, SCOPE1_EMISSIONS, SCOPE2_EMISSIONS, SCOPE3_EMISSIONS,
       ROUND(TEMP_ALIGNMENT, 2) AS TEMP_ALIGNMENT
FROM EMMI.PUBLIC_EQUITY_PROJECTED_CARBON_EMISSIONS
WHERE ISIN = 'IT0003128367'
  AND FISCAL_END_DATE = '2024-12-31'
  AND PROJECTION_TYPE = 'Target'
  AND EMISSIONS_YEAR IN (2025, 2030, 2035, 2040, 2045, 2050)
ORDER BY EMISSIONS_YEAR;
PROJECTION_TYPE EMISSIONS_YEAR SCOPE1_EMISSIONS SCOPE2_EMISSIONS SCOPE3_EMISSIONS TEMP_ALIGNMENT
Target 2025 29100992.91 1436605.52 30842903.06 1.50
Target 2030 19795442.85 977225.85 20980346.85 1.50
Target 2035 12097215.08 597193.58 11655748.25 1.50
Target 2040 4398987.30 217161.30 2331149.65 1.50
Target 2045 4398987.30 217161.30 2331149.65 1.50
Target 2050 4398987.30 217161.30 2331149.65 1.54

Enel's target against Emmi's forecast at 2030.

SELECT PROJECTION_ID, PROJECTION_TYPE, PROJECTION_METHOD, EMISSIONS_YEAR,
       SCOPE1_EMISSIONS, SCOPE2_EMISSIONS, SCOPE3_EMISSIONS,
       SCOPE1_EMISSIONS + SCOPE2_EMISSIONS AS SCOPE12_EMISSIONS
FROM EMMI.PUBLIC_EQUITY_PROJECTED_CARBON_EMISSIONS
WHERE ISIN = 'IT0003128367'
  AND FISCAL_END_DATE = '2024-12-31'
  AND EMISSIONS_YEAR = 2030
ORDER BY PROJECTION_ID;
PROJECTION_ID PROJECTION_TYPE PROJECTION_METHOD EMISSIONS_YEAR SCOPE1_EMISSIONS SCOPE2_EMISSIONS SCOPE3_EMISSIONS SCOPE12_EMISSIONS
0 Target Stepwise linear glide path 2030 19795442.85 977225.85 20980346.85 20772668.70
1 Forecast Monte Carlo Forecast 2030 3223417.34 2751315.11 23928635.46 5974732.45

Current, target and forecast Scope 1 + 2 at 2030 for a five-stock portfolio.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN, e.NAME,
       e.SCOPE1_EMISSIONS + e.SCOPE2_EMISSIONS AS CURRENT_SCOPE12,
       t.SCOPE1_EMISSIONS + t.SCOPE2_EMISSIONS AS TARGET_SCOPE12_2030,
       f.SCOPE1_EMISSIONS + f.SCOPE2_EMISSIONS AS FORECAST_SCOPE12_2030
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
LEFT JOIN EMMI.PUBLIC_EQUITY_PROJECTED_CARBON_EMISSIONS t
  ON t.ISIN = e.ISIN AND t.FISCAL_END_DATE = e.FISCAL_END_DATE
 AND t.PROJECTION_TYPE = 'Target' AND t.EMISSIONS_YEAR = 2030
LEFT JOIN EMMI.PUBLIC_EQUITY_PROJECTED_CARBON_EMISSIONS f
  ON f.ISIN = e.ISIN AND f.FISCAL_END_DATE = e.FISCAL_END_DATE
 AND f.PROJECTION_TYPE = 'Forecast' AND f.EMISSIONS_YEAR = 2030
WHERE YEAR(e.FISCAL_END_DATE) = 2024
ORDER BY h.WEIGHT DESC;
ISIN NAME CURRENT_SCOPE12 TARGET_SCOPE12_2030 FORECAST_SCOPE12_2030
IT0003128367 Enel SpA 25110000 20772668.70 5974732.45
CH0038863350 Nestlé SA 3340000 2563617.00 2714416.96
DE0007236101 Siemens AG 441000 73104.90 228223.81
NL0010273215 ASML Holding NV 32800 111857.25 48068.80
DK0010244508 A.P. Møller-Mærsk A/S 34295000 21594853.33 33130029.36

Public equity projected climate risk

EMMI.PUBLIC_EQUITY_PROJECTED_CLIMATE_RISK holds transition risk computed on a company's projected emissions rather than its current emissions, one row per company, fiscal year, risk year, projection type and scenario. Risk years are 2025, 2030, 2035, 2040, 2045 and 2050.

See Public equity projected carbon emissions for what Target and Forecast mean.

Primary key: ISIN, FISCAL_END_DATE, RISK_YEAR, PROJECTION_TYPE, TRANSITION_RISK_SCENARIO.

Value at risk and reduction columns are decimal fractions: 1 = 100%, 0.5 = 50%, 0 = 0%.

Columns

Column Type Unit Example Description
ISIN string IT0003128367 International Securities Identification Number of the listing.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the company.
RISK_YEAR int Year 2030 The forecast/target year the risk analysis is done for.
TRANSITION_RISK_SCENARIO string NGFS_NetZero2050 Which climate scenario was used to create the row. See Climate scenarios for the full list.
PROJECTION_ID int 0 Unique identifier for the projection method. 0 for targets, 1 for forecasts.
PROJECTION_TYPE string Target Whether the projected emissions were generated using targets or forecasts. Target or Forecast.
PROJECTION_METHOD string Stepwise linear glide path The specific method used to generate the projected emissions. Stepwise linear glide path for targets, Monte Carlo Forecast for forecasts.
NAME string Enel SpA Name of the company.
TRANSITION_VAR float / null % 0.001 Value at risk based on carbon pricing in the scenario at the risk year, computed on the projected emissions.
REDUCTION float / null % 0.002 Emission reduction still required to meet the scenario carbon budget at the risk year, after the projected emissions are taken into account. 0 when the projection is within budget.

Examples

Transition risk left at 2030 if Enel meets its targets, under three NGFS scenarios.

SELECT TRANSITION_RISK_SCENARIO,
       ROUND(REDUCTION, 3)      AS REDUCTION,
       ROUND(TRANSITION_VAR, 3) AS TRANSITION_VAR
FROM EMMI.PUBLIC_EQUITY_PROJECTED_CLIMATE_RISK
WHERE ISIN = 'IT0003128367'
  AND FISCAL_END_DATE = '2024-12-31'
  AND PROJECTION_TYPE = 'Target'
  AND RISK_YEAR = 2030
  AND TRANSITION_RISK_SCENARIO IN ('NGFS_NetZero2050', 'NGFS_TwoDeg', 'NGFS_Current')
ORDER BY TRANSITION_RISK_SCENARIO;
TRANSITION_RISK_SCENARIO REDUCTION TRANSITION_VAR
NGFS_Current 0.000 0.000
NGFS_NetZero2050 0.002 0.001
NGFS_TwoDeg 0.000 0.000

Reduction required today against reduction still required if targets are met, at 2030 under NGFS Net Zero 2050, for each stock in a portfolio.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN,
       ROUND(c.REDUCTION, 3)      AS CURRENT_REDUCTION,
       ROUND(p.REDUCTION, 3)      AS PROJECTED_REDUCTION,
       ROUND(p.TRANSITION_VAR, 3) AS PROJECTED_TRANSITION_VAR
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_PROJECTED_CLIMATE_RISK p ON p.ISIN = h.ISIN
JOIN EMMI.PUBLIC_EQUITY_CLIMATE_RISK c
  ON c.ISIN = p.ISIN
 AND c.FISCAL_END_DATE = p.FISCAL_END_DATE
 AND c.RISK_YEAR = p.RISK_YEAR
 AND c.TRANSITION_RISK_SCENARIO = p.TRANSITION_RISK_SCENARIO
WHERE YEAR(p.FISCAL_END_DATE) = 2024
  AND p.PROJECTION_TYPE = 'Target'
  AND p.RISK_YEAR = 2030
  AND p.TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
ORDER BY p.REDUCTION DESC;
ISIN CURRENT_REDUCTION PROJECTED_REDUCTION PROJECTED_TRANSITION_VAR
DE0007236101 0.886 0.850 1.000
CH0038863350 0.486 0.356 0.174
NL0010273215 0.320 0.324 0.066
DK0010244508 0.484 0.184 0.147
IT0003128367 0.416 0.002 0.001

Weighted transition risk of the portfolio at 2030 today, against targets and against forecasts.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT p.PROJECTION_TYPE,
       ROUND(SUM(h.WEIGHT * c.TRANSITION_VAR), 4) AS CURRENT_TRANSITION_VAR,
       ROUND(SUM(h.WEIGHT * p.TRANSITION_VAR), 4) AS PROJECTED_TRANSITION_VAR
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_PROJECTED_CLIMATE_RISK p ON p.ISIN = h.ISIN
JOIN EMMI.PUBLIC_EQUITY_CLIMATE_RISK c
  ON c.ISIN = p.ISIN
 AND c.FISCAL_END_DATE = p.FISCAL_END_DATE
 AND c.RISK_YEAR = p.RISK_YEAR
 AND c.TRANSITION_RISK_SCENARIO = p.TRANSITION_RISK_SCENARIO
WHERE YEAR(p.FISCAL_END_DATE) = 2024
  AND p.RISK_YEAR = 2030
  AND p.TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
GROUP BY p.PROJECTION_TYPE
ORDER BY p.PROJECTION_TYPE;
PROJECTION_TYPE CURRENT_TRANSITION_VAR PROJECTED_TRANSITION_VAR
Forecast 0.4323 0.3190
Target 0.4323 0.2685

Fixed income carbon emissions

EMMI.FIXED_INCOME_CARBON_EMISSIONS holds the financed Scope 1, 2 and 3 emissions of each bond, with one row per bond per fiscal year. Note that government bonds carry Scope 1 only.

Primary key: ISIN, FISCAL_END_DATE.

Columns

Column Type Unit Example Description
ISIN string FR0013455821 International Securities Identification Number of the bond.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the underlying equity of the bond.
DEBT_TYPE string Corporate The type of bond. Corporate or Government.
BOND_TYPE string Sovereign Bond security type. Corporate rows are Corporate or Securitized/Collateralized. Government rows are Sovereign, Agency, Local Authority/Political Division or Supranational.
NAME string ENGIE SA 1.25% 24-OCT-2041 Name of the bond.
COUNTRY string France Country of the underlying equity of the bond.
FACTSET_INDUSTRY string Electric Utilities Industry of the underlying equity of the bond. Sovereign or Supranational for government rows.
SCOPE1_EMISSIONS float / null tCO2e 135031.36 Scope 1 emissions attributed to the bond. For government rows, the bond's share of the country's national emissions.
SCOPE2_EMISSIONS float / null tCO2e 4975.83 Scope 2 emissions attributed to the bond. Empty for government rows.
SCOPE3_EMISSIONS float / null tCO2e 828834.69 Scope 3 emissions attributed to the bond. Empty for government rows.
SCOPE1_PCAF int between 1 and 5 / null Score 2 The PCAF score for Scope 1. PCAF is a method for recognising the quality of estimation. 1 = reported and verified, 2 = reported, 3 = estimated using historical emissions, 4 = estimated with financials only.
SCOPE2_PCAF int between 1 and 5 / null Score 2 The PCAF score for Scope 2. PCAF is a method for recognising the quality of estimation. 1 = reported and verified, 2 = reported, 3 = estimated using historical emissions, 4 = estimated with financials only. Empty for government rows.
SCOPE3_PCAF int between 1 and 5 / null Score 2 The PCAF score for Scope 3. PCAF is a method for recognising the quality of estimation. 1 = reported and verified, 2 = reported, 3 = estimated using historical emissions, 4 = estimated with financials only. Empty for government rows.
SCOPE1_EMISSION_REPORTING_STATUS string reported Status of emissions reporting for Scope 1. reported, estimated or unavailable.
SCOPE2_EMISSION_REPORTING_STATUS string reported Status of emissions reporting for Scope 2. reported, estimated or unavailable. Not Applicable for government rows.
SCOPE3_EMISSION_REPORTING_STATUS string reported Status of emissions reporting for Scope 3. reported, estimated or unavailable. Not Applicable for government rows.
WACI_S1 float / null tCO2e per million revenue 123.45 Weighted Average Carbon Intensity of Scope 1. Emissions as a factor of issuer revenue. Empty for government rows.
WACI_S12 float / null tCO2e per million revenue 123.45 Weighted Average Carbon Intensity of Scopes 1 + 2. Emissions as a factor of issuer revenue. Empty for government rows.
WACI_S123 float / null tCO2e per million revenue 123.45 Weighted Average Carbon Intensity of Scopes 1 + 2 + 3. Emissions as a factor of issuer revenue. Empty for government rows.
EVIC_CARBON_INTENSITY_S12 float / null tCO2e per million EVIC 123.45 An intensity measure of Scope 1 and 2 emissions, as a factor of EVIC. Empty for government rows.
EVIC_CARBON_INTENSITY_S123 float / null tCO2e per million EVIC 123.45 An intensity measure of all emissions, as a factor of EVIC. Empty for government rows.

Examples

Financed emissions history for an ENGIE bond since 2020.

SELECT ISIN, FISCAL_END_DATE, DEBT_TYPE, NAME,
       ROUND(SCOPE1_EMISSIONS) AS SCOPE1_EMISSIONS,
       ROUND(SCOPE2_EMISSIONS) AS SCOPE2_EMISSIONS,
       ROUND(SCOPE3_EMISSIONS) AS SCOPE3_EMISSIONS,
       SCOPE1_EMISSION_REPORTING_STATUS
FROM EMMI.FIXED_INCOME_CARBON_EMISSIONS
WHERE ISIN = 'FR0013455821'
  AND FISCAL_END_DATE <= '2025-12-31'
ORDER BY FISCAL_END_DATE;
ISIN FISCAL_END_DATE DEBT_TYPE NAME SCOPE1_EMISSIONS SCOPE2_EMISSIONS SCOPE3_EMISSIONS SCOPE1_EMISSION_REPORTING_STATUS
FR0013455821 2020-12-31 Corporate ENGIE SA 1.25% 24-OCT-2041 300069 18123 1041993 reported
FR0013455821 2021-12-31 Corporate ENGIE SA 1.25% 24-OCT-2041 259989 13319 879161 reported
FR0013455821 2022-12-31 Corporate ENGIE SA 1.25% 24-OCT-2041 226371 5705 1090468 reported
FR0013455821 2023-12-31 Corporate ENGIE SA 1.25% 24-OCT-2041 155476 5376 846271 reported
FR0013455821 2024-12-31 Corporate ENGIE SA 1.25% 24-OCT-2041 135031 4976 828835 reported
FR0013455821 2025-12-31 Corporate ENGIE SA 1.25% 24-OCT-2041 109068 2515 602171 reported

Fiscal year 2024 financed emissions for a six-bond portfolio of corporate and government bonds.

WITH MY_BOND_HOLDINGS AS (
    SELECT * FROM VALUES
        ('FR0013455821', 0.25),
        ('XS3032045398', 0.20),
        ('AU3FN0094520', 0.15),
        ('XS1612943735', 0.10),
        ('DE0001030708', 0.15),
        ('CND000000612', 0.15)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN, h.WEIGHT, e.DEBT_TYPE, e.NAME,
       ROUND(e.SCOPE1_EMISSIONS) AS SCOPE1_EMISSIONS,
       ROUND(e.SCOPE2_EMISSIONS) AS SCOPE2_EMISSIONS,
       ROUND(e.SCOPE3_EMISSIONS) AS SCOPE3_EMISSIONS,
       e.SCOPE1_PCAF
FROM MY_BOND_HOLDINGS h
JOIN EMMI.FIXED_INCOME_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
WHERE YEAR(e.FISCAL_END_DATE) = 2024
ORDER BY h.WEIGHT DESC, h.ISIN;
ISIN WEIGHT DEBT_TYPE NAME SCOPE1_EMISSIONS SCOPE2_EMISSIONS SCOPE3_EMISSIONS SCOPE1_PCAF
FR0013455821 0.25 Corporate ENGIE SA 1.25% 24-OCT-2041 135031 4976 828835 2
XS3032045398 0.20 Corporate Deutsche Post AG 4.0% 24-MAR-2040 80951 845 338492 2
AU3FN0094520 0.15 Corporate Ampol Limited FRN 11-DEC-2054 38368 11492 3211097 2
CND000000612 0.15 Government Government of China 1.64% 15-DEC-2033 9398366 1
DE0001030708 0.15 Government Germany 0.0% 15-AUG-2030 1382578 1
XS1612943735 0.10 Corporate AIA Group Limited 4.47% 23-MAY-2047 12 249 54817 2

Portfolio summary by debt type. Intensity is empty for government bonds because they have no revenue.

WITH MY_BOND_HOLDINGS AS (
    SELECT * FROM VALUES
        ('FR0013455821', 0.25),
        ('XS3032045398', 0.20),
        ('AU3FN0094520', 0.15),
        ('XS1612943735', 0.10),
        ('DE0001030708', 0.15),
        ('CND000000612', 0.15)
    AS H (ISIN, WEIGHT)
)
SELECT e.DEBT_TYPE,
       COUNT(*)      AS BONDS,
       SUM(h.WEIGHT) AS WEIGHT,
       SUM(IFF(e.SCOPE1_EMISSION_REPORTING_STATUS = 'reported', h.WEIGHT, 0)) AS WEIGHT_WITH_REPORTED_SCOPE1,
       ROUND(SUM(h.WEIGHT * e.WACI_S12) / SUM(h.WEIGHT), 1) AS WACI_S12
FROM MY_BOND_HOLDINGS h
JOIN EMMI.FIXED_INCOME_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
WHERE YEAR(e.FISCAL_END_DATE) = 2024
GROUP BY e.DEBT_TYPE
ORDER BY e.DEBT_TYPE;
DEBT_TYPE BONDS WEIGHT WEIGHT_WITH_REPORTED_SCOPE1 WACI_S12
Corporate 4 0.70 0.70 134.6
Government 2 0.30 0.30

Fixed income climate risk

EMMI.FIXED_INCOME_CLIMATE_RISK holds transition risk for corporate and government bonds, one row per bond, fiscal year, risk year and scenario. Risk years are the fiscal year itself plus 2030, 2035, 2040, 2045 and 2050. A bond that has matured by the risk year carries no risk, so its columns read 0 from that year on.

Government rows carry transition risk only.

Primary key: ISIN, FISCAL_END_DATE, RISK_YEAR, TRANSITION_RISK_SCENARIO.

Value at risk and reduction columns are decimal fractions: 1 = 100%, 0.5 = 50%, 0 = 0%.

Columns

Column Type Unit Example Description
ISIN string FR0013455821 International Securities Identification Number of the bond.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the underlying equity of the bond.
RISK_YEAR int Year 2030 Year for emission reductions and transition risk analysis.
TRANSITION_RISK_SCENARIO string NGFS_NetZero2050 Which climate scenario was used to create the row. See Climate scenarios for the full list.
DEBT_TYPE string Corporate The type of bond. Corporate or Government.
NAME string ENGIE SA 1.25% 24-OCT-2041 Name of the bond.
EMISSIONS_USED string reported Whether the analysis used reported, estimated or mix-of-estimated-reported emissions.
TRANSITION_VAR float % 0.319 Value at risk based on carbon pricing in the scenario at the risk year. Also called Potential Carbon Liability (PCL).
REDUCTION float % 0.496 Emission reduction required for the issuer's emissions to be aligned with the scenario at the risk year.
UNDERLYING_TOTAL_PHYSICAL_VAR float / null % 0.001 Value at risk to the equity of the underlying entity that issues the bond. Empty for government rows.
TOTAL_CLIMATE_VAR float / null % 0.502 Total value at risk based on transition and physical risk for the given scenario and risk year. Empty for government rows.

Examples

Climate risk at each risk year for an ENGIE bond maturing in 2041, under the NGFS Net Zero 2050 scenario. The bond has matured by 2045, so risk is 0 from then on.

SELECT RISK_YEAR,
       ROUND(REDUCTION, 3)                     AS REDUCTION,
       ROUND(TRANSITION_VAR, 3)                AS TRANSITION_VAR,
       ROUND(UNDERLYING_TOTAL_PHYSICAL_VAR, 3) AS UNDERLYING_TOTAL_PHYSICAL_VAR,
       ROUND(TOTAL_CLIMATE_VAR, 3)             AS TOTAL_CLIMATE_VAR
FROM EMMI.FIXED_INCOME_CLIMATE_RISK
WHERE ISIN = 'FR0013455821'
  AND FISCAL_END_DATE = '2024-12-31'
  AND TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
ORDER BY RISK_YEAR;
RISK_YEAR REDUCTION TRANSITION_VAR UNDERLYING_TOTAL_PHYSICAL_VAR TOTAL_CLIMATE_VAR
2024 0.416 0.000 0.000 0.000
2030 0.496 0.319 0.001 0.502
2035 0.669 1.000 0.001 1.000
2040 0.931 1.000 0.002 1.000
2045 0.000 0.000 0.002 0.000
2050 0.000 0.000 0.003 0.000

A Chinese government bond at 2030 under three NGFS scenarios. Government rows have no total climate risk.

SELECT TRANSITION_RISK_SCENARIO, DEBT_TYPE, EMISSIONS_USED,
       ROUND(REDUCTION, 3)      AS REDUCTION,
       ROUND(TRANSITION_VAR, 3) AS TRANSITION_VAR,
       TOTAL_CLIMATE_VAR
FROM EMMI.FIXED_INCOME_CLIMATE_RISK
WHERE ISIN = 'CND000000612'
  AND FISCAL_END_DATE = '2024-12-31'
  AND RISK_YEAR = 2030
  AND TRANSITION_RISK_SCENARIO IN ('NGFS_NetZero2050', 'NGFS_TwoDeg', 'NGFS_Current')
ORDER BY TRANSITION_RISK_SCENARIO;
TRANSITION_RISK_SCENARIO DEBT_TYPE EMISSIONS_USED REDUCTION TRANSITION_VAR TOTAL_CLIMATE_VAR
NGFS_Current Government reported 0.240 0.001
NGFS_NetZero2050 Government reported 0.524 0.052
NGFS_TwoDeg Government reported 0.350 0.006

Weighted transition risk at 2030 for a six-bond portfolio, by debt type.

WITH MY_BOND_HOLDINGS AS (
    SELECT * FROM VALUES
        ('FR0013455821', 0.25),
        ('XS3032045398', 0.20),
        ('AU3FN0094520', 0.15),
        ('XS1612943735', 0.10),
        ('DE0001030708', 0.15),
        ('CND000000612', 0.15)
    AS H (ISIN, WEIGHT)
)
SELECT r.DEBT_TYPE,
       ROUND(SUM(h.WEIGHT * r.TRANSITION_VAR) / SUM(h.WEIGHT), 4)    AS TRANSITION_VAR,
       ROUND(SUM(h.WEIGHT * r.TOTAL_CLIMATE_VAR) / SUM(h.WEIGHT), 4) AS TOTAL_CLIMATE_VAR
FROM MY_BOND_HOLDINGS h
JOIN EMMI.FIXED_INCOME_CLIMATE_RISK r ON r.ISIN = h.ISIN
WHERE YEAR(r.FISCAL_END_DATE) = 2024
  AND r.TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
  AND r.RISK_YEAR = 2030
GROUP BY r.DEBT_TYPE
ORDER BY r.DEBT_TYPE;
DEBT_TYPE TRANSITION_VAR TOTAL_CLIMATE_VAR
Corporate 0.3281 0.3935
Government 0.0270

Fixed income temperature alignment

EMMI.FIXED_INCOME_TEMPERATURE_ALIGNMENT holds the implied temperature alignment of the issuer behind each corporate and government bond, one row per bond, fiscal year and risk year.

Primary key: ISIN, FISCAL_END_DATE, RISK_YEAR.

Columns

Column Type Unit Example Description
ISIN string FR0013455821 International Securities Identification Number of the bond.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the underlying equity of the bond.
RISK_YEAR int Year 2030 Year the alignment is assessed at. The fiscal year itself plus 2030, 2035, 2040, 2045 and 2050.
DEBT_TYPE string Corporate The type of bond. Corporate or Government.
NAME string ENGIE SA 1.25% 24-OCT-2041 Name of the bond.
TEMPERATURE_ALIGNMENT float °C 4.0 Temperature alignment indicates the global warming scenario that an issuer's current carbon footprint is consistent with.

Examples

Temperature alignment at each risk year for an ENGIE bond and a Chinese government bond.

SELECT ISIN, DEBT_TYPE, RISK_YEAR, ROUND(TEMPERATURE_ALIGNMENT, 2) AS TEMPERATURE_ALIGNMENT
FROM EMMI.FIXED_INCOME_TEMPERATURE_ALIGNMENT
WHERE ISIN IN ('FR0013455821', 'CND000000612')
  AND FISCAL_END_DATE = '2024-12-31'
ORDER BY ISIN, RISK_YEAR;
ISIN DEBT_TYPE RISK_YEAR TEMPERATURE_ALIGNMENT
CND000000612 Government 2024 4.00
CND000000612 Government 2030 4.00
CND000000612 Government 2035 1.50
CND000000612 Government 2040 1.50
CND000000612 Government 2045 1.50
CND000000612 Government 2050 1.50
FR0013455821 Corporate 2024 4.00
FR0013455821 Corporate 2030 4.00
FR0013455821 Corporate 2035 4.00
FR0013455821 Corporate 2040 4.00
FR0013455821 Corporate 2045 1.50
FR0013455821 Corporate 2050 1.50

Temperature alignment at 2050 alongside financed Scope 1 emissions for a six-bond portfolio.

WITH MY_BOND_HOLDINGS AS (
    SELECT * FROM VALUES
        ('FR0013455821', 0.25),
        ('XS3032045398', 0.20),
        ('AU3FN0094520', 0.15),
        ('XS1612943735', 0.10),
        ('DE0001030708', 0.15),
        ('CND000000612', 0.15)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN, e.NAME, t.DEBT_TYPE, ROUND(e.SCOPE1_EMISSIONS) AS SCOPE1_EMISSIONS,
       ROUND(t.TEMPERATURE_ALIGNMENT, 2) AS TEMPERATURE_ALIGNMENT
FROM MY_BOND_HOLDINGS h
JOIN EMMI.FIXED_INCOME_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
JOIN EMMI.FIXED_INCOME_TEMPERATURE_ALIGNMENT t
  ON t.ISIN = e.ISIN AND t.FISCAL_END_DATE = e.FISCAL_END_DATE
WHERE YEAR(e.FISCAL_END_DATE) = 2024
  AND t.RISK_YEAR = 2050
ORDER BY t.TEMPERATURE_ALIGNMENT DESC, h.ISIN;
ISIN NAME DEBT_TYPE SCOPE1_EMISSIONS TEMPERATURE_ALIGNMENT
AU3FN0094520 Ampol Limited FRN 11-DEC-2054 Corporate 38368 4.00
CND000000612 Government of China 1.64% 15-DEC-2033 Government 9398366 1.50
DE0001030708 Germany 0.0% 15-AUG-2030 Government 1382578 1.50
FR0013455821 ENGIE SA 1.25% 24-OCT-2041 Corporate 135031 1.50
XS1612943735 AIA Group Limited 4.47% 23-MAY-2047 Corporate 12 1.50
XS3032045398 Deutsche Post AG 4.0% 24-MAR-2040 Corporate 80951 1.50

Weighted temperature alignment of the portfolio at 2050, and the share of it aligned to 2°C or better.

WITH MY_BOND_HOLDINGS AS (
    SELECT * FROM VALUES
        ('FR0013455821', 0.25),
        ('XS3032045398', 0.20),
        ('AU3FN0094520', 0.15),
        ('XS1612943735', 0.10),
        ('DE0001030708', 0.15),
        ('CND000000612', 0.15)
    AS H (ISIN, WEIGHT)
)
SELECT ROUND(SUM(h.WEIGHT * t.TEMPERATURE_ALIGNMENT) / SUM(h.WEIGHT), 2)         AS PORTFOLIO_TEMPERATURE_ALIGNMENT,
       ROUND(SUM(IFF(t.TEMPERATURE_ALIGNMENT <= 2.0, h.WEIGHT, 0)) / SUM(h.WEIGHT), 2) AS WEIGHT_ALIGNED_TO_2C
FROM MY_BOND_HOLDINGS h
JOIN EMMI.FIXED_INCOME_TEMPERATURE_ALIGNMENT t ON t.ISIN = h.ISIN
WHERE YEAR(t.FISCAL_END_DATE) = 2024
  AND t.RISK_YEAR = 2050;
PORTFOLIO_TEMPERATURE_ALIGNMENT WEIGHT_ALIGNED_TO_2C
1.88 0.85

Fixed income projected carbon emissions

EMMI.FIXED_INCOME_PROJECTED_CARBON_EMISSIONS holds the financed emissions of a corporate bond in future years, one row per bond, fiscal year, emissions year and projection type. As in Fixed income carbon emissions, the figures are the bond's share of the issuer's emissions. Two kinds of projection are provided:

  • Target. The issuer's own published SBTi target, taken at face value. Emissions move in a straight line from the target's baseline year to its target year and stay there afterwards.
  • Forecast. Emmi's forecast of the issuer's Scope 1, 2 and 3 emissions to 2030, from its emissions history. The forecast is a probabilistic model and the median path is provided.

Targets and forecasts are two different projections of the same issuer. Do not sum or combine them.

Corporate bonds only.

Primary key: ISIN, FISCAL_END_DATE, EMISSIONS_YEAR, PROJECTION_TYPE. Several fiscal years can be active at once, so filter on FISCAL_END_DATE to read one trajectory per bond.

Columns

Column Type Unit Example Description
ISIN string XS3032045398 International Securities Identification Number of the bond.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the underlying equity of the bond.
EMISSIONS_YEAR int Year 2030 The year that these emissions are forecast/targets for.
PROJECTION_ID int 0 Unique identifier for the projection method. 0 for targets, 1 for forecasts.
PROJECTION_TYPE string Target Whether the projected emissions were generated using targets or forecasts. Target or Forecast.
PROJECTION_METHOD string Stepwise linear glide path The specific method used to generate the projected emissions. Stepwise linear glide path for targets (a straight line between the target's baseline and target years), Monte Carlo Forecast for forecasts.
DEBT_TYPE string Corporate Always Corporate.
BOND_TYPE string Corporate Bond security type. Corporate or Securitized/Collateralized.
NAME string Deutsche Post AG 4.0% 24-MAR-2040 Name of the bond.
SCOPE1_EMISSIONS float / null tCO2e 44745 Projected Scope 1 emissions attributed to the bond at the emissions year.
SCOPE2_EMISSIONS float / null tCO2e 1226 Projected Scope 2 emissions attributed to the bond at the emissions year.
SCOPE3_EMISSIONS float / null tCO2e 252522 Projected Scope 3 emissions attributed to the bond at the emissions year.
TEMP_ALIGNMENT float / null °C 1.57 Temperature alignment of the projected emissions trajectory.

Examples

Emissions attributed to a Deutsche Post bond under the issuer's own targets at each risk year.

SELECT PROJECTION_TYPE, EMISSIONS_YEAR,
       ROUND(SCOPE1_EMISSIONS) AS SCOPE1_EMISSIONS,
       ROUND(SCOPE2_EMISSIONS) AS SCOPE2_EMISSIONS,
       ROUND(SCOPE3_EMISSIONS) AS SCOPE3_EMISSIONS,
       ROUND(TEMP_ALIGNMENT, 2) AS TEMP_ALIGNMENT
FROM EMMI.FIXED_INCOME_PROJECTED_CARBON_EMISSIONS
WHERE ISIN = 'XS3032045398'
  AND FISCAL_END_DATE = '2024-12-31'
  AND PROJECTION_TYPE = 'Target'
  AND EMISSIONS_YEAR IN (2025, 2030, 2035, 2040, 2045, 2050)
ORDER BY EMISSIONS_YEAR;
PROJECTION_TYPE EMISSIONS_YEAR SCOPE1_EMISSIONS SCOPE2_EMISSIONS SCOPE3_EMISSIONS TEMP_ALIGNMENT
Target 2025 62746 1719 299285 1.54
Target 2030 44745 1226 252522 1.57
Target 2035 35487 972 197809 1.55
Target 2040 0 0 0 1.54
Target 2045 0 0 0 1.54
Target 2050 0 0 0 1.54

The issuer's target against Emmi's forecast at 2030 for the same bond.

SELECT PROJECTION_ID, PROJECTION_TYPE, PROJECTION_METHOD, EMISSIONS_YEAR,
       ROUND(SCOPE1_EMISSIONS) AS SCOPE1_EMISSIONS,
       ROUND(SCOPE2_EMISSIONS) AS SCOPE2_EMISSIONS,
       ROUND(SCOPE3_EMISSIONS) AS SCOPE3_EMISSIONS
FROM EMMI.FIXED_INCOME_PROJECTED_CARBON_EMISSIONS
WHERE ISIN = 'XS3032045398'
  AND FISCAL_END_DATE = '2024-12-31'
  AND EMISSIONS_YEAR = 2030
ORDER BY PROJECTION_ID;
PROJECTION_ID PROJECTION_TYPE PROJECTION_METHOD EMISSIONS_YEAR SCOPE1_EMISSIONS SCOPE2_EMISSIONS SCOPE3_EMISSIONS
0 Target Stepwise linear glide path 2030 44745 1226 252522
1 Forecast Monte Carlo Forecast 2030 85015 617640

Financed Scope 1 today and at 2030 for a six-bond portfolio. Government bonds and issuers without a target return empty projections.

WITH MY_BOND_HOLDINGS AS (
    SELECT * FROM VALUES
        ('FR0013455821', 0.25),
        ('XS3032045398', 0.20),
        ('AU3FN0094520', 0.15),
        ('XS1612943735', 0.10),
        ('DE0001030708', 0.15),
        ('CND000000612', 0.15)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN, e.NAME, e.DEBT_TYPE,
       ROUND(e.SCOPE1_EMISSIONS) AS CURRENT_SCOPE1,
       ROUND(f.SCOPE1_EMISSIONS) AS FORECAST_SCOPE1_2030,
       ROUND(t.SCOPE1_EMISSIONS) AS TARGET_SCOPE1_2030
FROM MY_BOND_HOLDINGS h
JOIN EMMI.FIXED_INCOME_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
LEFT JOIN EMMI.FIXED_INCOME_PROJECTED_CARBON_EMISSIONS f
  ON f.ISIN = e.ISIN AND f.FISCAL_END_DATE = e.FISCAL_END_DATE
 AND f.PROJECTION_TYPE = 'Forecast' AND f.EMISSIONS_YEAR = 2030
LEFT JOIN EMMI.FIXED_INCOME_PROJECTED_CARBON_EMISSIONS t
  ON t.ISIN = e.ISIN AND t.FISCAL_END_DATE = e.FISCAL_END_DATE
 AND t.PROJECTION_TYPE = 'Target' AND t.EMISSIONS_YEAR = 2030
WHERE YEAR(e.FISCAL_END_DATE) = 2024
ORDER BY h.WEIGHT DESC, h.ISIN;
ISIN NAME DEBT_TYPE CURRENT_SCOPE1 FORECAST_SCOPE1_2030 TARGET_SCOPE1_2030
FR0013455821 ENGIE SA 1.25% 24-OCT-2041 Corporate 135031 56007
XS3032045398 Deutsche Post AG 4.0% 24-MAR-2040 Corporate 80951 85015 44745
AU3FN0094520 Ampol Limited FRN 11-DEC-2054 Corporate 38368 52584
CND000000612 Government of China 1.64% 15-DEC-2033 Government 9398366
DE0001030708 Germany 0.0% 15-AUG-2030 Government 1382578
XS1612943735 AIA Group Limited 4.47% 23-MAY-2047 Corporate 12 6

Fixed income projected climate risk

EMMI.FIXED_INCOME_PROJECTED_CLIMATE_RISK holds transition risk computed on a corporate bond issuer's projected emissions rather than its current emissions, one row per bond, fiscal year, risk year, projection type and scenario. Risk years are 2025, 2030, 2035, 2040, 2045 and 2050.

Corporate bonds only. See Fixed income projected carbon emissions for what Target and Forecast mean.

TRANSITION_VAR here is the bond measure. It is not the same measure as TRANSITION_VAR on Public equity projected climate risk, so do not compare the two across asset classes.

Primary key: ISIN, FISCAL_END_DATE, RISK_YEAR, PROJECTION_TYPE, TRANSITION_RISK_SCENARIO.

Value at risk and reduction columns are decimal fractions: 1 = 100%, 0.5 = 50%, 0 = 0%.

Columns

Column Type Unit Example Description
ISIN string FR0013455821 International Securities Identification Number of the bond.
FISCAL_END_DATE date (yyyy-mm-dd) Date 2024-12-31 Fiscal year end date for the underlying equity of the bond.
RISK_YEAR int Year 2030 The forecast/target year the risk analysis is done for.
TRANSITION_RISK_SCENARIO string NGFS_NetZero2050 Which climate scenario was used to create the row. See Climate scenarios for the full list.
PROJECTION_ID int 0 Unique identifier for the projection method. 0 for targets, 1 for forecasts.
PROJECTION_TYPE string Target Whether the projected emissions were generated using targets or forecasts. Target or Forecast.
PROJECTION_METHOD string Stepwise linear glide path The specific method used to generate the projected emissions. Stepwise linear glide path for targets, Monte Carlo Forecast for forecasts.
DEBT_TYPE string Corporate Always Corporate.
NAME string Deutsche Post AG 4.0% 24-MAR-2040 Name of the bond.
TRANSITION_VAR float / null % 0.0 Value at risk based on carbon pricing in the scenario at the risk year, computed on the projected emissions.
REDUCTION float / null % 0.298 Emission reduction still required to meet the scenario carbon budget at the risk year, after the projected emissions are taken into account. 0 when the projection is within budget.

Examples

Reduction still required at 2030 if ENGIE meets its targets, under three NGFS scenarios.

SELECT TRANSITION_RISK_SCENARIO,
       ROUND(REDUCTION, 3)      AS REDUCTION,
       ROUND(TRANSITION_VAR, 3) AS TRANSITION_VAR
FROM EMMI.FIXED_INCOME_PROJECTED_CLIMATE_RISK
WHERE ISIN = 'FR0013455821'
  AND FISCAL_END_DATE = '2024-12-31'
  AND PROJECTION_TYPE = 'Target'
  AND RISK_YEAR = 2030
  AND TRANSITION_RISK_SCENARIO IN ('NGFS_NetZero2050', 'NGFS_TwoDeg', 'NGFS_Current')
ORDER BY TRANSITION_RISK_SCENARIO;
TRANSITION_RISK_SCENARIO REDUCTION TRANSITION_VAR
NGFS_Current 0.000 0.000
NGFS_NetZero2050 0.298 0.000
NGFS_TwoDeg 0.023 0.000

Reduction required today against reduction still required under each projection, at 2030 under NGFS Net Zero 2050, for each bond in a portfolio. Government bonds return no rows.

WITH MY_BOND_HOLDINGS AS (
    SELECT * FROM VALUES
        ('FR0013455821', 0.25),
        ('XS3032045398', 0.20),
        ('AU3FN0094520', 0.15),
        ('XS1612943735', 0.10),
        ('DE0001030708', 0.15),
        ('CND000000612', 0.15)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN, p.PROJECTION_TYPE,
       ROUND(c.REDUCTION, 3)      AS CURRENT_REDUCTION,
       ROUND(p.REDUCTION, 3)      AS PROJECTED_REDUCTION,
       ROUND(p.TRANSITION_VAR, 3) AS PROJECTED_TRANSITION_VAR
FROM MY_BOND_HOLDINGS h
JOIN EMMI.FIXED_INCOME_PROJECTED_CLIMATE_RISK p ON p.ISIN = h.ISIN
JOIN EMMI.FIXED_INCOME_CLIMATE_RISK c
  ON c.ISIN = p.ISIN
 AND c.FISCAL_END_DATE = p.FISCAL_END_DATE
 AND c.RISK_YEAR = p.RISK_YEAR
 AND c.TRANSITION_RISK_SCENARIO = p.TRANSITION_RISK_SCENARIO
WHERE YEAR(p.FISCAL_END_DATE) = 2024
  AND p.RISK_YEAR = 2030
  AND p.TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
ORDER BY h.ISIN, p.PROJECTION_TYPE;
ISIN PROJECTION_TYPE CURRENT_REDUCTION PROJECTED_REDUCTION PROJECTED_TRANSITION_VAR
AU3FN0094520 Forecast 0.827
FR0013455821 Forecast 0.496 0.447 0.000
FR0013455821 Target 0.496 0.298 0.000
XS1612943735 Forecast 0.609
XS1612943735 Target 0.609 0.608 0.000
XS3032045398 Forecast 0.426
XS3032045398 Target 0.426 0.192 0.000

Weighted reduction and transition risk of the corporate bonds at 2030 today, against targets and against forecasts.

WITH MY_BOND_HOLDINGS AS (
    SELECT * FROM VALUES
        ('FR0013455821', 0.25),
        ('XS3032045398', 0.20),
        ('AU3FN0094520', 0.15),
        ('XS1612943735', 0.10),
        ('DE0001030708', 0.15),
        ('CND000000612', 0.15)
    AS H (ISIN, WEIGHT)
)
SELECT p.PROJECTION_TYPE,
       ROUND(SUM(h.WEIGHT * c.REDUCTION) / SUM(h.WEIGHT), 3)      AS CURRENT_REDUCTION,
       ROUND(SUM(h.WEIGHT * p.REDUCTION) / SUM(h.WEIGHT), 3)      AS PROJECTED_REDUCTION,
       ROUND(SUM(h.WEIGHT * c.TRANSITION_VAR) / SUM(h.WEIGHT), 3) AS CURRENT_TRANSITION_VAR,
       ROUND(SUM(h.WEIGHT * p.TRANSITION_VAR) / SUM(h.WEIGHT), 3) AS PROJECTED_TRANSITION_VAR
FROM MY_BOND_HOLDINGS h
JOIN EMMI.FIXED_INCOME_PROJECTED_CLIMATE_RISK p ON p.ISIN = h.ISIN
JOIN EMMI.FIXED_INCOME_CLIMATE_RISK c
  ON c.ISIN = p.ISIN
 AND c.FISCAL_END_DATE = p.FISCAL_END_DATE
 AND c.RISK_YEAR = p.RISK_YEAR
 AND c.TRANSITION_RISK_SCENARIO = p.TRANSITION_RISK_SCENARIO
WHERE YEAR(p.FISCAL_END_DATE) = 2024
  AND p.RISK_YEAR = 2030
  AND p.TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
GROUP BY p.PROJECTION_TYPE
ORDER BY p.PROJECTION_TYPE;
PROJECTION_TYPE CURRENT_REDUCTION PROJECTED_REDUCTION CURRENT_TRANSITION_VAR PROJECTED_TRANSITION_VAR
Forecast 0.563 0.160 0.328 0.000
Target 0.491 0.316 0.145 0.000

Climate scenarios

The climate risk views carry one row per scenario, for the sixteen scenarios below and no others. Temperature alignment does not change between scenarios, so the temperature alignment views have no scenario column.

Transition risk scenario Warming Description
IPCC_AR6_SustDev 1.2°C Sustainable Development. Pairs deep decarbonisation with broader sustainability goals. Lowest-temperature pathway in the AR6 set. Recommended AR6 low emissions scenario.
IPCC_AR6_LowDemand 1.3°C Low Demand. Reaches below 1.5°C mainly through energy and material efficiency, electrification, and demand-side change, with minimal reliance on carbon dioxide removal.
IPCC_AR6_HighRen 1.4°C High Renewables. Rapid near-term scale-up of solar and wind plus electrification of end uses. Supply-side transformation as the central lever.
NGFS_LowDemand 1.4°C Low Demand. Reaches Paris-aligned outcomes mainly through efficiency, electrification, and behavioural change, with reduced reliance on carbon dioxide removal.
IPCC_AR6_1p5NegEm 1.5°C Negative Emissions Trajectory. Slower fossil phase-out, compensated by large-scale carbon dioxide removal delivering net-negative emissions later in the century.
NGFS_NetZero2050 1.5°C Net Zero 2050. Immediate, coordinated policy action with a smooth carbon-price trajectory to reach global net-zero by 2050. Recommended NGFS low emissions scenario.
NGFS_Delayed 1.6°C Delayed Transition. Climate policy stalls until 2030 then tightens abruptly to catch up, producing sharp repricing and stranded-asset risk.
IPCC_AR6_Gradual 1.7°C Gradual Strengthening. Holds to current NDCs through 2030 then accelerates sharply, capturing the cost of delayed ambition. Recommended AR6 medium emissions scenario.
NGFS_TwoDeg 1.8°C Below 2°C. Gradual strengthening of policy to hold warming below 2°C, less ambitious than Net Zero 2050 but still coordinated. Recommended NGFS medium emissions scenario.
IPR_FPS 2.3°C Inevitable Policy Response, Forecast Policy Scenario. Forecast of the policy response governments are likely to enact as climate impacts intensify. Realistic but late and forceful.
NGFS_NDC 2.5°C NDC. Only the current Nationally Determined Contributions are implemented, with no further tightening, driving high physical risk later in the century.
NGFS_Fragmented 2.6°C Fragmented World. Uncoordinated, region-by-region policy response producing divergent carbon prices and uneven transition costs.
IPCC_AR6_ModAction 2.7°C Moderate Action. Modest tightening beyond today's policies but well short of Paris alignment. Emissions peak late and warming overshoots 2°C.
IPCC_AR6_Current 3.0°C Current Policies. Implements only legislated and operational policies, no new pledges, no NDC tightening, leading to roughly 3°C warming.
NGFS_Current 3.3°C Current Policies. No additional policy action beyond what is already legislated, leading to roughly 3.3°C warming and severe physical risk. Recommended NGFS high emissions scenario.
IPCC_AR6_BAU 3.5°C Business as Usual. High-end stress test based on a CD-LINKS "National Policies Included" baseline: minimal additional climate action and continued high fossil dependence. Recommended AR6 high emissions scenario.

Using the views together

Emissions, 2030 climate risk under NGFS Net Zero 2050 and 2030 temperature alignment for each stock in a five-stock portfolio.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN, e.NAME, h.WEIGHT,
       e.SCOPE1_EMISSIONS + e.SCOPE2_EMISSIONS AS SCOPE12_EMISSIONS,
       ROUND(e.WACI_S12, 1)              AS WACI_S12,
       ROUND(r.TRANSITION_VAR, 3)        AS TRANSITION_VAR,
       ROUND(r.TOTAL_PHYSICAL_VAR, 3)    AS TOTAL_PHYSICAL_VAR,
       ROUND(t.TEMPERATURE_ALIGNMENT, 2) AS TEMPERATURE_ALIGNMENT
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
JOIN EMMI.PUBLIC_EQUITY_CLIMATE_RISK r
  ON r.ISIN = e.ISIN AND r.FISCAL_END_DATE = e.FISCAL_END_DATE
 AND r.RISK_YEAR = 2030 AND r.TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
JOIN EMMI.PUBLIC_EQUITY_TEMPERATURE_ALIGNMENT t
  ON t.ISIN = e.ISIN AND t.FISCAL_END_DATE = e.FISCAL_END_DATE
 AND t.RISK_YEAR = 2030
WHERE YEAR(e.FISCAL_END_DATE) = 2024
ORDER BY h.WEIGHT DESC;
ISIN NAME WEIGHT SCOPE12_EMISSIONS WACI_S12 TRANSITION_VAR TOTAL_PHYSICAL_VAR TEMPERATURE_ALIGNMENT
IT0003128367 Enel SpA 0.30 25110000 306.5 0.288 0.001 1.69
CH0038863350 Nestlé SA 0.25 3340000 31.6 0.299 0.005 1.62
DE0007236101 Siemens AG 0.20 441000 5.4 1.000 0.004 4.00
NL0010273215 ASML Holding NV 0.15 32800 1.1 0.065 0.002 1.50
DK0010244508 A.P. Møller-Mærsk A/S 0.10 34295000 614.3 0.613 0.002 4.00

Temperature alignment of each stock's current emissions at 2030, against the alignment of its target and forecast trajectories at 2030.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('IT0003128367', 0.30),
        ('CH0038863350', 0.25),
        ('DE0007236101', 0.20),
        ('NL0010273215', 0.15),
        ('DK0010244508', 0.10)
    AS H (ISIN, WEIGHT)
)
SELECT h.ISIN, e.NAME,
       ROUND(a.TEMPERATURE_ALIGNMENT, 2) AS CURRENT_ALIGNMENT,
       ROUND(t.TEMP_ALIGNMENT, 2)        AS TARGET_ALIGNMENT,
       ROUND(f.TEMP_ALIGNMENT, 2)        AS FORECAST_ALIGNMENT
FROM MY_HOLDINGS h
JOIN EMMI.PUBLIC_EQUITY_CARBON_EMISSIONS e ON e.ISIN = h.ISIN
JOIN EMMI.PUBLIC_EQUITY_TEMPERATURE_ALIGNMENT a
  ON a.ISIN = e.ISIN AND a.FISCAL_END_DATE = e.FISCAL_END_DATE AND a.RISK_YEAR = 2030
LEFT JOIN EMMI.PUBLIC_EQUITY_PROJECTED_CARBON_EMISSIONS t
  ON t.ISIN = e.ISIN AND t.FISCAL_END_DATE = e.FISCAL_END_DATE
 AND t.PROJECTION_TYPE = 'Target' AND t.EMISSIONS_YEAR = 2030
LEFT JOIN EMMI.PUBLIC_EQUITY_PROJECTED_CARBON_EMISSIONS f
  ON f.ISIN = e.ISIN AND f.FISCAL_END_DATE = e.FISCAL_END_DATE
 AND f.PROJECTION_TYPE = 'Forecast' AND f.EMISSIONS_YEAR = 2030
WHERE YEAR(e.FISCAL_END_DATE) = 2024
ORDER BY h.WEIGHT DESC;
ISIN NAME CURRENT_ALIGNMENT TARGET_ALIGNMENT FORECAST_ALIGNMENT
IT0003128367 Enel SpA 1.69 1.50 1.50
CH0038863350 Nestlé SA 1.62 1.51 1.50
DE0007236101 Siemens AG 4.00 4.00 4.00
NL0010273215 ASML Holding NV 1.50 1.50 1.50
DK0010244508 A.P. Møller-Mærsk A/S 4.00 1.94 4.00

Weighted transition risk at 2030 under NGFS Net Zero 2050 for a portfolio holding both equities and bonds, by asset class.

WITH MY_HOLDINGS AS (
    SELECT * FROM VALUES
        ('Equity', 'IT0003128367', 0.30),
        ('Equity', 'CH0038863350', 0.20),
        ('Equity', 'DK0010244508', 0.10),
        ('Bond',   'FR0013455821', 0.20),
        ('Bond',   'XS3032045398', 0.10),
        ('Bond',   'CND000000612', 0.10)
    AS H (ASSET_CLASS, ISIN, WEIGHT)
),
CLIMATE_RISK AS (
    SELECT ISIN, FISCAL_END_DATE, RISK_YEAR, TRANSITION_RISK_SCENARIO, TRANSITION_VAR
    FROM EMMI.PUBLIC_EQUITY_CLIMATE_RISK
    UNION ALL
    SELECT ISIN, FISCAL_END_DATE, RISK_YEAR, TRANSITION_RISK_SCENARIO, TRANSITION_VAR
    FROM EMMI.FIXED_INCOME_CLIMATE_RISK
)
SELECT h.ASSET_CLASS,
       SUM(h.WEIGHT) AS WEIGHT,
       ROUND(SUM(h.WEIGHT * r.TRANSITION_VAR) / SUM(h.WEIGHT), 4) AS TRANSITION_VAR
FROM MY_HOLDINGS h
JOIN CLIMATE_RISK r ON r.ISIN = h.ISIN
WHERE YEAR(r.FISCAL_END_DATE) = 2024
  AND r.TRANSITION_RISK_SCENARIO = 'NGFS_NetZero2050'
  AND r.RISK_YEAR = 2030
GROUP BY h.ASSET_CLASS
ORDER BY h.ASSET_CLASS;
ASSET_CLASS WEIGHT TRANSITION_VAR
Bond 0.40 0.1724
Equity 0.60 0.3460