Class TreasuryFuturesAPI

java.lang.Object
org.drip.service.product.TreasuryFuturesAPI

public class TreasuryFuturesAPI
extends java.lang.Object
TreasuryFuturesAPI demonstrates the Details behind the Pricing and the Scenario Runs behind a Treasury Futures Contract. It provides the following Functionality:
  • Generate a Full Map Invocation of the Treasury Futures Run Use Case
  • Generate the Treasury Curve Tenor Key Rate Sensitivity/Duration
  • Return Attribution for the Treasury Futures
  • Generate the Horizon Treasury Curve Tenor Key Rate Sensitivity/Duration

Module Computational Core Module
Library Computation Support
Project Environment, Product/Definition Containers, and Scenario/State Manipulation APIs
Package Product Horizon PnL Attribution Decomposition

Author:
Lakshmi Krishnamurthy
  • Constructor Summary

    Constructors
    Constructor Description
    TreasuryFuturesAPI()  
  • Method Summary

    Modifier and Type Method Description
    static java.util.List<PositionChangeComponents> HorizonChangeAttribution​(java.lang.String treasuryCode, JulianDate[] effectiveDateArray, JulianDate[] maturityDateArray, double[] couponArray, JulianDate[] expiryDateArray, JulianDate[] spotDateArray, double[] cleanPriceArray, double[] conversionFactorArray)
    Return Attribution for the Treasury Futures
    static java.util.List<TenorDurationNodeMetrics> HorizonKeyRateDuration​(java.lang.String treasuryType, JulianDate[] effectiveDateArray, JulianDate[] maturityDateArray, double[] couponArray, JulianDate[] expiryDateArray, JulianDate[] spotDateArray, double[] cleanPriceArray, java.lang.String[] benchmarkTenorArray, double[][] govvieCurveTreasuryYieldArray)
    Generate the Horizon Treasury Curve Tenor Key Rate Sensitivity/Duration
    static java.util.Map<java.lang.String,​java.lang.Double> KeyRateDuration​(java.lang.String futuresCodeArray, int[] futuresComponentTreasuryEffectiveDateArray, int[] futuresComponentTreasuryMaturityDateArray, double[] futuresComponentTreasuryCouponArray, double[] futuresComponentConversionFactorArray, int spotDate, int[] govvieCurveTreasuryEffectiveDateArray, int[] govvieCurveTreasuryMaturityDateArray, double[] govvieCurveTreasuryCouponArray, double[] govvieCurveTreasuryYieldArray, java.lang.String govvieCurveTreasuryMeasure, double[] futuresComponentTreasuryPriceArray)
    Generate the Treasury Curve Tenor Key Rate Sensitivity/Duration
    static java.util.Map<java.lang.String,​java.lang.Double> ValuationMetrics​(java.lang.String futuresCodeArray, int[] futuresComponentTreasuryEffectiveDateArray, int[] futuresComponentTreasuryMaturityDateArray, double[] futuresComponentTreasuryCouponArray, double[] futuresComponentConversionFactorArray, int spotDate, java.lang.String[] fundingCurveDepositTenorArray, double[] fundingCurveDepositQuoteArray, java.lang.String fundingCurveDepositMeasure, double[] fundingCurveFuturesQuoteArray, java.lang.String fundingCurveFuturesMeasure, java.lang.String[] fundingCurveFixFloatTenorArray, double[] fundingCurveFixFloatQuoteArray, java.lang.String fundingFixFloatMeasure, int[] govvieCurveTreasuryEffectiveDateArray, int[] govvieCurveTreasuryMaturityDateArray, double[] govvieCurveTreasuryCouponArray, double[] govvieCurveTreasuryYieldArray, java.lang.String govvieCurveTreasuryMeasure, double[] futuresComponentTreasuryPriceArray)
    Generate a Full Map Invocation of the Treasury Futures Run Use Case

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • TreasuryFuturesAPI

      public TreasuryFuturesAPI()
  • Method Details

    • ValuationMetrics

      public static final java.util.Map<java.lang.String,​java.lang.Double> ValuationMetrics​(java.lang.String futuresCodeArray, int[] futuresComponentTreasuryEffectiveDateArray, int[] futuresComponentTreasuryMaturityDateArray, double[] futuresComponentTreasuryCouponArray, double[] futuresComponentConversionFactorArray, int spotDate, java.lang.String[] fundingCurveDepositTenorArray, double[] fundingCurveDepositQuoteArray, java.lang.String fundingCurveDepositMeasure, double[] fundingCurveFuturesQuoteArray, java.lang.String fundingCurveFuturesMeasure, java.lang.String[] fundingCurveFixFloatTenorArray, double[] fundingCurveFixFloatQuoteArray, java.lang.String fundingFixFloatMeasure, int[] govvieCurveTreasuryEffectiveDateArray, int[] govvieCurveTreasuryMaturityDateArray, double[] govvieCurveTreasuryCouponArray, double[] govvieCurveTreasuryYieldArray, java.lang.String govvieCurveTreasuryMeasure, double[] futuresComponentTreasuryPriceArray)
      Generate a Full Map Invocation of the Treasury Futures Run Use Case
      Parameters:
      futuresCodeArray - The Treasury Futures Code
      futuresComponentTreasuryEffectiveDateArray - Array of the Treasury Futures Component Effective Date
      futuresComponentTreasuryMaturityDateArray - Array of the Treasury Futures Component Maturity Date
      futuresComponentTreasuryCouponArray - Array of the Treasury Futures Component Coupon
      futuresComponentConversionFactorArray - Array of the Treasury Futures Component Conversion Factor
      spotDate - Spot Date
      fundingCurveDepositTenorArray - Deposit Instruments Tenor (for Funding Curve)
      fundingCurveDepositQuoteArray - Deposit Instruments Quote (for Funding Curve)
      fundingCurveDepositMeasure - Deposit Instruments Measure (for Funding Curve)
      fundingCurveFuturesQuoteArray - Futures Instruments Tenor (for Funding Curve)
      fundingCurveFuturesMeasure - Futures Instruments Measure (for Funding Curve)
      fundingCurveFixFloatTenorArray - Fix-Float Instruments Tenor (for Funding Curve)
      fundingCurveFixFloatQuoteArray - Fix-Float Instruments Quote (for Funding Curve)
      fundingFixFloatMeasure - Fix-Float Instruments Tenor (for Funding Curve)
      govvieCurveTreasuryEffectiveDateArray - Array of the Treasury Instrument Effective Date (for Treasury Curve)
      govvieCurveTreasuryMaturityDateArray - Array of the Treasury Instrument Maturity Date (for Treasury Curve)
      govvieCurveTreasuryCouponArray - Array of the Treasury Instrument Coupon (for Treasury Curve)
      govvieCurveTreasuryYieldArray - Array of the Treasury Instrument Yield (for Treasury Curve)
      govvieCurveTreasuryMeasure - Treasury Instrument Measure (for Govvie Curve)
      futuresComponentTreasuryPriceArray - Array of the Treasury Futures Component Clean Prices
      Returns:
      The Output Measure Map
    • KeyRateDuration

      public static final java.util.Map<java.lang.String,​java.lang.Double> KeyRateDuration​(java.lang.String futuresCodeArray, int[] futuresComponentTreasuryEffectiveDateArray, int[] futuresComponentTreasuryMaturityDateArray, double[] futuresComponentTreasuryCouponArray, double[] futuresComponentConversionFactorArray, int spotDate, int[] govvieCurveTreasuryEffectiveDateArray, int[] govvieCurveTreasuryMaturityDateArray, double[] govvieCurveTreasuryCouponArray, double[] govvieCurveTreasuryYieldArray, java.lang.String govvieCurveTreasuryMeasure, double[] futuresComponentTreasuryPriceArray)
      Generate the Treasury Curve Tenor Key Rate Sensitivity/Duration
      Parameters:
      futuresCodeArray - The Treasury Futures Code
      futuresComponentTreasuryEffectiveDateArray - Array of the Treasury Futures Component Effective Date
      futuresComponentTreasuryMaturityDateArray - Array of the Treasury Futures Component Maturity Date
      futuresComponentTreasuryCouponArray - Array of the Treasury Futures Component Coupon
      futuresComponentConversionFactorArray - Array of the Treasury Futures Component Conversion Factor
      spotDate - Spot Date
      govvieCurveTreasuryEffectiveDateArray - Array of the Treasury Instrument Effective Date (for Treasury Curve)
      govvieCurveTreasuryMaturityDateArray - Array of the Treasury Instrument Maturity Date (for Treasury Curve)
      govvieCurveTreasuryCouponArray - Array of the Treasury Instrument Coupon (for Treasury Curve)
      govvieCurveTreasuryYieldArray - Array of the Treasury Instrument Yield (for Treasury Curve)
      govvieCurveTreasuryMeasure - Treasury Instrument Measure (for Govvie Curve)
      futuresComponentTreasuryPriceArray - Array of the Treasury Futures Component Clean Prices
      Returns:
      The Treasury Curve Tenor Sensitivity/Duration
    • HorizonChangeAttribution

      public static final java.util.List<PositionChangeComponents> HorizonChangeAttribution​(java.lang.String treasuryCode, JulianDate[] effectiveDateArray, JulianDate[] maturityDateArray, double[] couponArray, JulianDate[] expiryDateArray, JulianDate[] spotDateArray, double[] cleanPriceArray, double[] conversionFactorArray)
      Return Attribution for the Treasury Futures
      Parameters:
      treasuryCode - The Treasury Code
      effectiveDateArray - Array of Effective Dates
      maturityDateArray - Array of Maturity Dates
      couponArray - Array of Coupons
      expiryDateArray - Array of Futures Expiry Dates
      spotDateArray - Array of Spot Dates
      cleanPriceArray - Array of Closing Clean Prices
      conversionFactorArray - Array of the Conversion Factor
      Returns:
      List of the Position Change Components
    • HorizonKeyRateDuration

      public static final java.util.List<TenorDurationNodeMetrics> HorizonKeyRateDuration​(java.lang.String treasuryType, JulianDate[] effectiveDateArray, JulianDate[] maturityDateArray, double[] couponArray, JulianDate[] expiryDateArray, JulianDate[] spotDateArray, double[] cleanPriceArray, java.lang.String[] benchmarkTenorArray, double[][] govvieCurveTreasuryYieldArray)
      Generate the Horizon Treasury Curve Tenor Key Rate Sensitivity/Duration
      Parameters:
      treasuryType - The Treasury Type
      effectiveDateArray - Array of Effective Dates
      maturityDateArray - Array of Maturity Dates
      couponArray - Array of Coupons
      expiryDateArray - Array of Futures Expiry Dates
      spotDateArray - Array of Spot Dates
      cleanPriceArray - Array of Closing Clean Prices
      benchmarkTenorArray - Array of Benchmark Tenors
      govvieCurveTreasuryYieldArray - Array of the Treasury Instrument Yield (for Treasury Curve)
      Returns:
      The Treasury Curve Tenor Sensitivity/Duration