Package org.drip.product.definition
Class CreditComponent
java.lang.Object
org.drip.product.definition.Component
org.drip.product.definition.CalibratableComponent
org.drip.product.definition.CreditComponent
- All Implemented Interfaces:
ComponentMarketParamRef
- Direct Known Subclasses:
Bond
,CreditDefaultSwap
public abstract class CreditComponent extends CalibratableComponent
CreditComponent is the base abstract class on top of which all credit components are implemented.
Its methods expose Credit Valuation Parameters, product specific recovery, and coupon/loss cash flows.
- Module = Product Core Module
- Library = Fixed Income Analytics
- Project = Product Components/Baskets for Credit, FRA, FX, Govvie, Rates, and Option AssetClasses
- Package = Fixed Income Components/Baskets Definitions
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description CreditComponent()
-
Method Summary
Modifier and Type Method Description abstract CreditSetting
creditValuationParams()
Get the credit component's Credit Valuation Parametersjava.util.List<LossQuadratureMetrics>
lossFlow(JulianDate dtSpot, CurveSurfaceQuoteContainer csqc)
Generate the loss flow for the credit component based on the pricer parametersabstract java.util.List<LossQuadratureMetrics>
lossFlow(ValuationParams valParams, CreditPricerParams pricerParams, CurveSurfaceQuoteContainer csqc)
Generate the loss flow for the credit component based on the pricer parametersabstract double
recovery(int iDate1, int iDate2, CreditCurve cc)
Get the time-weighted recovery of the credit component between the given datesabstract double
recovery(int iDate, CreditCurve cc)
Get the recovery of the credit component for the given dateMethods inherited from class org.drip.product.definition.CalibratableComponent
calibMeasures, calibPRWC, calibQuoteSet, forwardPRWC, fundingForwardPRWC, fundingPRWC, fxPRWC, govviePRWC, jackDDirtyPVDManifestMeasure, manifestMeasureDFMicroJack, primaryCode, secondaryCode, setPrimaryCode, volatilityPRWC
Methods inherited from class org.drip.product.definition.Component
cashSettleParams, couponMetrics, couponPeriods, customScenarioMeasures, effectiveDate, firstCouponDate, freq, initialNotional, maturityDate, maturityPayDate, measureNames, measures, measureValue, notional, notional, pv, tenor, value
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.drip.product.definition.ComponentMarketParamRef
couponCurrency, creditLabel, forwardLabel, fundingLabel, fxLabel, govvieLabel, name, otcFixFloatLabel, payCurrency, principalCurrency, volatilityLabel
-
Constructor Details
-
CreditComponent
public CreditComponent()
-
-
Method Details
-
lossFlow
public abstract java.util.List<LossQuadratureMetrics> lossFlow(ValuationParams valParams, CreditPricerParams pricerParams, CurveSurfaceQuoteContainer csqc)Generate the loss flow for the credit component based on the pricer parameters- Parameters:
valParams
- ValuationParamspricerParams
- PricerParamscsqc
- ComponentMarketParams- Returns:
- List of ProductLossPeriodCurveMeasures
-
recovery
Get the recovery of the credit component for the given date- Parameters:
iDate
- JulianDatecc
- Credit Curve- Returns:
- Recovery
- Throws:
java.lang.Exception
- Thrown if recovery cannot be calculated
-
recovery
Get the time-weighted recovery of the credit component between the given dates- Parameters:
iDate1
- JulianDate #1iDate2
- JulianDate #2cc
- Credit Curve- Returns:
- Recovery
- Throws:
java.lang.Exception
- Thrown if recovery cannot be calculated
-
creditValuationParams
Get the credit component's Credit Valuation Parameters- Returns:
- CompCRValParams
-
lossFlow
public java.util.List<LossQuadratureMetrics> lossFlow(JulianDate dtSpot, CurveSurfaceQuoteContainer csqc)Generate the loss flow for the credit component based on the pricer parameters- Parameters:
dtSpot
- The Spot Datecsqc
- The Component Market Parameters- Returns:
- List of ProductLossPeriodCurveMeasures
-