Package org.drip.analytics.cashflow
Class Bullet
java.lang.Object
org.drip.analytics.cashflow.Bullet
public class Bullet
extends java.lang.Object
Bullet is designed to hold the Point Realizations of the Latent States relevant to Terminal
Valuation of a Bullet Cash Flow. Current it contains the Period Dates, Period Latent State Identifiers,
and the "Extensive" Fields.
- Module = Product Core Module
- Library = Fixed Income Analytics
- Project = Date, Cash Flow, and Cash Flow Period Measure Generation Utilities
- Package = Unit and Composite Cash Flow Periods
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description Bullet(int iTerminalDate, int iPayDate, int iFXFixingDate, double dblBaseNotional, Array2D a2DNotionalSchedule, java.lang.String strPayCurrency, java.lang.String strCouponCurrency, EntityCDSLabel creditLabel)
Construct a Bullet Instance from the specified Parameters -
Method Summary
Modifier and Type Method Description double
baseNotional()
Get the Base NotionalCollateralLabel
collateralLabel()
Return the Collateral Labeljava.lang.String
couponCurrency()
Retrieve the Coupon CurrencyEntityCDSLabel
creditLabel()
Return the Credit LabelFundingLabel
fundingLabel()
Return the Funding LabelPredictorResponseWeightConstraint
fundingPRWC(int iValueDate, CurveSurfaceQuoteContainer csqc, ProductQuoteSet pqs)
Generate the Funding Predictor/Response Constraintdouble
fx(CurveSurfaceQuoteContainer csqc)
Coupon Period FXint
fxFixingDate()
Retrieve the Period FX Fixing DateFXLabel
fxLabel()
Return the FX Labelboolean
isFXMTM()
Is the Cash Flow FX MTM?BulletMetrics
metrics(int iValueDate, CurveSurfaceQuoteContainer csqc)
Compute the Metrics at the specified Valuation Datedouble
notional(int iDate)
Notional corresponding to the specified Datedouble
notional(int iDate1, int iDate2)
Notional Aggregated over the specified DatesArray2D
notionalSchedule()
Get the Notional Schedulejava.lang.String
payCurrency()
Retrieve the Pay Currencyint
payDate()
Retrieve the Period Pay Dateint
terminalDate()
Retrieve the Terminal DateMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
Bullet
public Bullet(int iTerminalDate, int iPayDate, int iFXFixingDate, double dblBaseNotional, Array2D a2DNotionalSchedule, java.lang.String strPayCurrency, java.lang.String strCouponCurrency, EntityCDSLabel creditLabel) throws java.lang.ExceptionConstruct a Bullet Instance from the specified Parameters- Parameters:
iTerminalDate
- Period End DateiPayDate
- Period Pay DateiFXFixingDate
- FX Fixing Date for non-MTM Cash-flowdblBaseNotional
- Coupon Period Base Notionala2DNotionalSchedule
- Coupon Period Notional SchedulestrPayCurrency
- Pay CurrencystrCouponCurrency
- Coupon CurrencycreditLabel
- Credit Label- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
-
Method Details
-
terminalDate
public int terminalDate()Retrieve the Terminal Date- Returns:
- Terminal Date
-
payDate
public int payDate()Retrieve the Period Pay Date- Returns:
- Period Pay Date
-
fxFixingDate
public int fxFixingDate()Retrieve the Period FX Fixing Date- Returns:
- Period FX Fixing Date
-
fx
Coupon Period FX- Parameters:
csqc
- Market Parameters- Returns:
- Period FX
- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
isFXMTM
public boolean isFXMTM()Is the Cash Flow FX MTM?- Returns:
- true - FX MTM is on (i.e., FX is not driven by FX Fixing)
-
payCurrency
public java.lang.String payCurrency()Retrieve the Pay Currency- Returns:
- The Pay Currency
-
couponCurrency
public java.lang.String couponCurrency()Retrieve the Coupon Currency- Returns:
- The Coupon Currency
-
baseNotional
public double baseNotional()Get the Base Notional- Returns:
- Base Notional
-
notionalSchedule
Get the Notional Schedule- Returns:
- Notional Schedule
-
notional
public double notional(int iDate) throws java.lang.ExceptionNotional corresponding to the specified Date- Parameters:
iDate
- The Specified Date- Returns:
- The Corresponding to the specified Date
- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
notional
public double notional(int iDate1, int iDate2) throws java.lang.ExceptionNotional Aggregated over the specified Dates- Parameters:
iDate1
- The Date #1iDate2
- The Date #2- Returns:
- The Notional Aggregated over the specified Dates
- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
collateralLabel
Return the Collateral Label- Returns:
- The Collateral Label
-
creditLabel
Return the Credit Label- Returns:
- The Credit Label
-
fundingLabel
Return the Funding Label- Returns:
- The Funding Label
-
fxLabel
Return the FX Label- Returns:
- The FX Label
-
metrics
Compute the Metrics at the specified Valuation Date- Parameters:
iValueDate
- Valuation Datecsqc
- The Market Curve Surface/Quote Set- Returns:
- The Metrics at the specified Valuation Date
-
fundingPRWC
public PredictorResponseWeightConstraint fundingPRWC(int iValueDate, CurveSurfaceQuoteContainer csqc, ProductQuoteSet pqs)Generate the Funding Predictor/Response Constraint- Parameters:
iValueDate
- Valuation Datecsqc
- Market Curve Surface/Quote Setpqs
- Calibration Product Quote Set- Returns:
- The Funding Predictor/Response Constraint
-