/** * Obtains an identifier used to find swaption volatilities. * * @param name the name * @return an identifier for the volatilities */ public static SwaptionVolatilitiesId of(String name) { return new SwaptionVolatilitiesId(SwaptionVolatilitiesName.of(name)); }
@Override public SwaptionSurfaceExpiryStrikeParameterMetadata build() { preBuild(this); return new SwaptionSurfaceExpiryStrikeParameterMetadata( yearFraction, strike, label); }
@Override public NormalSwaptionExpiryTenorVolatilities build() { return new NormalSwaptionExpiryTenorVolatilities( convention, valuationDateTime, surface); }
private SabrParametersSwaptionVolatilities replaceSabrParameters( SabrInterestRateParameters sabrParams, SabrParametersSwaptionVolatilities orgVols) { return SabrParametersSwaptionVolatilities.of( SwaptionVolatilitiesName.of("Test-SABR"), orgVols.getConvention(), orgVols.getValuationDateTime(), sabrParams); }
public void test_presentValueSensitivityNormalVolatility_after_expiry() { SwaptionSensitivity sensiRec = PRICER_SWAPTION.presentValueSensitivityModelParamsVolatility(SWAPTION_REC_LONG_PAST, RATE_PROVIDER, VOLS); SwaptionSensitivity sensiPay = PRICER_SWAPTION.presentValueSensitivityModelParamsVolatility(SWAPTION_PAY_SHORT_PAST, RATE_PROVIDER, VOLS); assertEquals(sensiRec.getSensitivity(), 0.0d, NOTIONAL * TOL); assertEquals(sensiPay.getSensitivity(), 0.0d, NOTIONAL * TOL); }
public void present_value_sensitivityBlackVolatility_at_expiry() { SwaptionSensitivity sensiRec = PRICER_SWAPTION_NORMAL.presentValueSensitivityModelParamsVolatility( SWAPTION_REC_AT_EXPIRY, MULTI_USD, NORMAL_VOLS_USD_STD); assertEquals(sensiRec.getSensitivity(), 0d, TOLERANCE_PV); SwaptionSensitivity sensiPay = PRICER_SWAPTION_NORMAL.presentValueSensitivityModelParamsVolatility( SWAPTION_PAY_AT_EXPIRY, MULTI_USD, NORMAL_VOLS_USD_STD); assertEquals(sensiPay.getSensitivity(), 0d, TOLERANCE_PV); }
/** * Compare the AD version of the sensitivity to a finite difference parallel bump of the smile. * Full data set, no missing data. */ public void presentValueSensitivityRawDataParallelSensitivity_full() { presentValueSensitivityRawDataParallelSensitivity(SABR_CALIBRATED_FULL, DATA_RAW_FULL); }
/** * Returns a builder used to create an instance of the bean. * @return the builder, not null */ public static SabrParametersSwaptionVolatilities.Builder builder() { return new SabrParametersSwaptionVolatilities.Builder(); }
@Override public NormalSwaptionExpirySimpleMoneynessVolatilities build() { return new NormalSwaptionExpirySimpleMoneynessVolatilities( convention, valuationDateTime, surface); }
@Override public SabrSwaptionDefinition build() { return new SabrSwaptionDefinition( name, convention, dayCount, interpolator); }
@Override public SwaptionSurfaceExpirySimpleMoneynessParameterMetadata build() { preBuild(this); return new SwaptionSurfaceExpirySimpleMoneynessParameterMetadata( yearFraction, simpleMoneyness, label); }
@Override public NormalSwaptionExpiryStrikeVolatilities build() { return new NormalSwaptionExpiryStrikeVolatilities( convention, valuationDateTime, surface); }
@Override public BlackSwaptionExpiryTenorVolatilities build() { return new BlackSwaptionExpiryTenorVolatilities( convention, valuationDateTime, surface); }
@Override public SwaptionSensitivity build() { return new SwaptionSensitivity( volatilitiesName, expiry, tenor, strike, forward, currency, sensitivity); }
@Override public SabrParametersSwaptionVolatilities build() { return new SabrParametersSwaptionVolatilities( name, convention, valuationDateTime, parameters, dataSensitivityAlpha, dataSensitivityBeta, dataSensitivityRho, dataSensitivityNu); }
/** * Obtains an identifier used to find swaption volatilities. * * @param name the name * @return an identifier for the volatilities */ public static SwaptionVolatilitiesId of(SwaptionVolatilitiesName name) { return new SwaptionVolatilitiesId(name); }
@Override public SwaptionSabrSensitivity build() { return new SwaptionSabrSensitivity( volatilitiesName, expiry, tenor, sensitivityType, currency, sensitivity); }
@Override public SwaptionSurfaceExpiryTenorParameterMetadata build() { preBuild(this); return new SwaptionSurfaceExpiryTenorParameterMetadata( yearFraction, tenor, label); }
/** * Compare the AD version of the sensitivity to a finite difference parallel bump of the smile. * Sparse data set, some raw data are missing in some smiles. */ public void presentValueSensitivityRawDataParallelSensitivity_sparse() { presentValueSensitivityRawDataParallelSensitivity(SABR_CALIBRATED_SPARSE, DATA_RAW_SPARSE); }
/** * Returns a builder that allows this bean to be mutated. * @return the mutable builder, not null */ public Builder toBuilder() { return new Builder(this); }