주요 콘텐츠

aggregate

Aggregate add-ons or exposures at default (EAD) over all portfolios

Since R2024a

Description

AddOnAggregate = aggregate(AddOnAssetClassResultsObject) aggregates add-ons over all asset classes using the AddOnAssetClassResults object. The AddOnAssetClassResults object is returned from the outAddOnResults output when you use addOn.

example

AggregateEAD = aggregate(EADResultsObject) aggregates exposures at default (EADs) over all portfolios using the EADResults object. The EADResults object is returned from the outEADResults output when you use ead.

example

Examples

collapse all

Use the aggregate function to aggregate add-ons over all asset classes.

Define the foreign exchange (FX) spot currency exchange rate table.

Base = ["EUR";"GBP";"GBP"];
Quote = ["USD";"USD";"EUR"];
SpotRate = [1.0543;1.2195;1.1567];
FXSpotTable = table(Base,Quote,SpotRate)
FXSpotTable=3×3 table
    Base     Quote    SpotRate
    _____    _____    ________

    "EUR"    "USD"     1.0543 
    "GBP"    "USD"     1.2195 
    "GBP"    "EUR"     1.1567 

Create the saccr object.

SACCRCRIF = "SACCR_CRIF_Port_7.csv";
mySACCR = saccr(SACCRCRIF,DomesticCurrency="USD", FXSpot=FXSpotTable)
mySACCR = 
  saccr with properties:

                         CRIF: [22×19 table]
                NumPortfolios: 1
                 PortfolioIDs: "Port_007"
              CounterpartyIDs: ""
                   Portfolios: [1×1 saccr.Portfolio]
                   Regulation: "Basel_CRE52"
             DomesticCurrency: "USD"
                        Alpha: 1.4000
                  FXSpotRates: [3×3 table]
          TradeDecompositions: [5×2 table]
           CollateralHaircuts: [200×6 table]
        SupervisoryParameters: [19×7 table]
    MaturityBusinessDaysFloor: 10
          NumBusinessDaysYear: 250

You can then use the addOn function with the saccr object.

outAddOnResults = addOn(mySACCR)
outAddOnResults = 
  AddOnResults with properties:

                        NumPortfolios: 1
                         PortfolioIDs: "Port_007"
                      CounterpartyIDs: ""
                           Regulation: "Basel_CRE52"
                     DomesticCurrency: "USD"
       AddOnAggregateUncollateralized: 1.1177e+06
         AddOnAggregateCollateralized: 3.3218e+05
    AddOnAssetClassesUncollateralized: [1×1 saccr.AddOnAssetClassResults]
      AddOnAssetClassesCollateralized: [1×1 saccr.AddOnAssetClassResults]

The aggregate add-ons are already included in the add-on results.

outAddOnResults.AddOnAggregateUncollateralized
ans = 
1.1177e+06

Alternatively, use aggregate to aggregate add-ons over all asset classes.

AggregateAddOnUncollateralized = aggregate(outAddOnResults.AddOnAssetClassesUncollateralized)
AggregateAddOnUncollateralized = 
1.1177e+06

Use the aggregate function to aggregate exposures at default (EADs) over all portfolios in a saccr object.

Define the foreign exchange (FX) spot currency exchange rate table.

Base = ["EUR";"GBP";"GBP"];
Quote = ["USD";"USD";"EUR"];
SpotRate = [1.0543;1.2195;1.1567];
FXSpotTable = table(Base,Quote,SpotRate)
FXSpotTable=3×3 table
    Base     Quote    SpotRate
    _____    _____    ________

    "EUR"    "USD"     1.0543 
    "GBP"    "USD"     1.2195 
    "GBP"    "EUR"     1.1567 

Create the saccr object.

SACCRCRIF = "SACCR_CRIF_Port_7.csv";
mySACCR = saccr(SACCRCRIF)
mySACCR = 
  saccr with properties:

                         CRIF: [22×19 table]
                NumPortfolios: 1
                 PortfolioIDs: "Port_007"
              CounterpartyIDs: ""
                   Portfolios: [1×1 saccr.Portfolio]
                   Regulation: "Basel_CRE52"
             DomesticCurrency: "USD"
                        Alpha: 1.4000
                  FXSpotRates: [0×0 table]
          TradeDecompositions: [5×2 table]
           CollateralHaircuts: [200×6 table]
        SupervisoryParameters: [19×7 table]
    MaturityBusinessDaysFloor: 10
          NumBusinessDaysYear: 250

You can then use the ead functions with the saccr object.

outAddOnResults = addOn(mySACCR)
outAddOnResults = 
  AddOnResults with properties:

                        NumPortfolios: 1
                         PortfolioIDs: "Port_007"
                      CounterpartyIDs: ""
                           Regulation: "Basel_CRE52"
                     DomesticCurrency: "USD"
       AddOnAggregateUncollateralized: 1.1177e+06
         AddOnAggregateCollateralized: 3.3218e+05
    AddOnAssetClassesUncollateralized: [1×1 saccr.AddOnAssetClassResults]
      AddOnAssetClassesCollateralized: [1×1 saccr.AddOnAssetClassResults]

outEADResults = ead(mySACCR)
outEADResults = 
  EADResults with properties:

       NumPortfolios: 1
        PortfolioIDs: "Port_007"
     CounterpartyIDs: ""
          Regulation: "Basel_CRE52"
    DomesticCurrency: "USD"
                 EAD: 3.7394e+05
               Alpha: 1.4000
                  RC: 0
                 PFE: 2.6710e+05
          Multiplier: 0.8041
      AddOnAggregate: 3.3218e+05
           RCResults: [1×1 saccr.RCResults]
          PFEResults: [1×1 saccr.PFEResults]
        ResultsTable: [1×17 table]

Use aggregate to aggregate exposures at default (EADs) over all portfolios in a saccr object.

AggregateEAD = aggregate(outEADResults)
AggregateEAD = 
3.7394e+05

Input Arguments

collapse all

Add-on asset class results object, specified as an AddOnAssetClassResults object. The AddOnAssetClassResults object is returned from the outAddOnResults output when you use addOn.

Data Types: object

EAD results object, specified as an EADResults object. You create an EADResults object using ead.

Data Types: object

Output Arguments

collapse all

Add-ons aggregated over all asset classes, returned as a NumPortfolios-by-1 vector of add-ons aggregated over all asset classes.

EAD aggregated over all portfolios, returned as a scalar numeric.

More About

collapse all

References

[1] Bank for International Settlements. "CRE52 - Standardised Approach to Counterparty Credit Risk." June 2020. Available at: https://www.bis.org/basel_framework/chapter/CRE/52.htm.

[2] Bank for International Settlements. "CRE22 - Standardised Approach: Credit Risk Migration." November 2020. Available at: https://www.bis.org/basel_framework/chapter/CRE/22.htm.

[3] Bank for International Settlements. "Basel Committee on Banking Supervision: The Standardised Approach for Measuring Counterparty Credit Risk Exposures." April 2014. Available at: https://www.bis.org/publ/bcbs279.pdf.

Version History

Introduced in R2024a