/** * Copyright (C) 2013 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.financial.analytics.model.black; import java.util.List; import com.opengamma.engine.function.config.AbstractFunctionConfigurationBean; import com.opengamma.engine.function.config.FunctionConfiguration; import com.opengamma.engine.function.config.FunctionConfigurationSource; /** * Adds Black pricing and risk functions to the function configuration. */ public class BlackDiscountingPricingFunctions extends AbstractFunctionConfigurationBean { /** * Gets an instance of this class. * @return The instance */ public static FunctionConfigurationSource instance() { return new BlackDiscountingPricingFunctions().getObjectCreating(); } @Override protected void addAllConfigurations(final List<FunctionConfiguration> functions) { functions.add(functionConfiguration(BlackDiscountingBCSCapFloorFunction.class)); functions.add(functionConfiguration(BlackDiscountingPVCapFloorFunction.class)); functions.add(functionConfiguration(BlackDiscountingPV01CapFloorFunction.class)); functions.add(functionConfiguration(BlackDiscountingYCNSCapFloorFunction.class)); functions.add(functionConfiguration(BlackDiscountingBCSFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingCurrencyExposureFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingForwardDeltaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingForwardDriftlessThetaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingForwardGammaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingForwardVegaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingImpliedVolatilityFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingPV01FXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingPVFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingFXPVFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingSpotDeltaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingSpotGammaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueDeltaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueGammaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueGammaSpotFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueThetaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueVannaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueVommaFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingVegaMatrixFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingVegaQuoteMatrixFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingYCNSFXOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingBCSIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingDeltaIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingForwardIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingGammaIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingImpliedVolatilityIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingPositionDeltaIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingPositionGammaIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingPositionVegaIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingPV01IRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingPVIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueDeltaIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueGammaIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueVegaIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingWeightedVegaIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingYCNSIRFutureOptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingBCSSwaptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingImpliedVolatilitySwaptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingPVSwaptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingPV01SwaptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingValueVegaSwaptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingVegaMatrixSwaptionFunction.class)); functions.add(functionConfiguration(BlackDiscountingYCNSSwaptionFunction.class)); functions.add(functionConfiguration(ConstantBlackDiscountingBCSSwaptionFunction.class)); functions.add(functionConfiguration(ConstantBlackDiscountingImpliedVolatilitySwaptionFunction.class)); functions.add(functionConfiguration(ConstantBlackDiscountingPVSwaptionFunction.class)); functions.add(functionConfiguration(ConstantBlackDiscountingPV01SwaptionFunction.class)); functions.add(functionConfiguration(ConstantBlackDiscountingValueVegaSwaptionFunction.class)); functions.add(functionConfiguration(ConstantBlackDiscountingYCNSSwaptionFunction.class)); } }