java.lang.Object
net.finmath.smartcontract.oracle.interestrates.ValuationOraclePlainSwap
All Implemented Interfaces:
ValuationOracle

public class ValuationOraclePlainSwap extends Object implements ValuationOracle
An oracle for swap valuation which generates values using externally provided historical market data scenarios.
Author:
Peter Kohl-Landgraf, Christian Fries
  • Constructor Details

    • ValuationOraclePlainSwap

      public ValuationOraclePlainSwap(net.finmath.marketdata.products.Swap product, double notionalAmount, List<IRMarketDataSet> scenarioList, DoubleUnaryOperator rounding)
      Oracle will be instantiated based on a Swap product an market data scenario list
      Parameters:
      product - The underlying swap product.
      notionalAmount - The notional of the product.
      scenarioList - The list of market data scenarios to be used for valuation.
      rounding - An operator implementing the rounding.
    • ValuationOraclePlainSwap

      public ValuationOraclePlainSwap(net.finmath.marketdata.products.Swap product, double notionalAmount, List<IRMarketDataSet> scenarioList)
      Oracle will be instantiated based on a Swap product an market data scenario list
      Parameters:
      product - The underlying swap product.
      notionalAmount - The notional of the product.
      scenarioList - The list of market data scenarios to be used for valuation.
  • Method Details

    • getAmount

      public javax.money.MonetaryAmount getAmount(LocalDateTime evaluationTime, LocalDateTime marketDataTime)
      Description copied from interface: ValuationOracle
      Provides the value of the Oracle at a given evaluation time.

      Note: The use of two different dates allows to model the accrual/discounting at a (market data given) accrual rate.

      Specified by:
      getAmount in interface ValuationOracle
      Parameters:
      evaluationTime - The evaluation time.
      marketDataTime - The market data time.
      Returns:
      The amount.
    • getValue

      public Double getValue(LocalDateTime evaluationDate, LocalDateTime marketDataTime)
      Description copied from interface: ValuationOracle
      Provides the value of the Oracle at a given evaluation time using market data from a given time.

      Note: The use of two different dates allows to model the accrual/discounting at a (market data given) accrual rate.

      Specified by:
      getValue in interface ValuationOracle
      Parameters:
      evaluationDate - The evaluation time.
      marketDataTime - The market data time.
      Returns:
      The value.