/** * Gets the surface name. * * @return the surface name */ public default SurfaceName getName() { return getMetadata().getSurfaceName(); }
/** * Creates a constant surface with a specific value. * * @param name the surface name * @param zValue the constant z-value * @return the surface */ public static ConstantSurface of(SurfaceName name, double zValue) { return new ConstantSurface(DefaultSurfaceMetadata.of(name), zValue); }
public void normalVolatilityByExpirySimpleMoneyness_string() { SurfaceMetadata test = Surfaces.normalVolatilityByExpirySimpleMoneyness(NAME, ACT_360, MoneynessType.PRICE); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.SIMPLE_MONEYNESS) .zValueType(ValueType.NORMAL_VOLATILITY) .dayCount(ACT_360) .addInfo(SurfaceInfoType.MONEYNESS_TYPE, MoneynessType.PRICE) .build(); assertEquals(test, expected); }
public void normalVolatilityByExpiryStrike_string() { SurfaceMetadata test = Surfaces.normalVolatilityByExpiryStrike(NAME, ACT_360); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.STRIKE) .zValueType(ValueType.NORMAL_VOLATILITY) .dayCount(ACT_360) .build(); assertEquals(test, expected); }
public void blackVolatilityByExpiryTenor_string() { SurfaceMetadata test = Surfaces.blackVolatilityByExpiryTenor(NAME, ACT_360); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.YEAR_FRACTION) .zValueType(ValueType.BLACK_VOLATILITY) .dayCount(ACT_360) .build(); assertEquals(test, expected); }
public void normalVolatilityByExpiryTenor_string() { SurfaceMetadata test = Surfaces.normalVolatilityByExpiryTenor(NAME, ACT_360); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.YEAR_FRACTION) .zValueType(ValueType.NORMAL_VOLATILITY) .dayCount(ACT_360) .build(); assertEquals(test, expected); }
public void blackVolatilityByExpiryLogMoneyness_string() { SurfaceMetadata test = Surfaces.blackVolatilityByExpiryLogMoneyness(NAME, ACT_360); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.LOG_MONEYNESS) .zValueType(ValueType.BLACK_VOLATILITY) .dayCount(ACT_360) .build(); assertEquals(test, expected); }
public void blackVolatilityByExpiryStrike_string() { SurfaceMetadata test = Surfaces.blackVolatilityByExpiryStrike(NAME, ACT_360); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.STRIKE) .zValueType(ValueType.BLACK_VOLATILITY) .dayCount(ACT_360) .build(); assertEquals(test, expected); }
public void sabrParameterByExpiryTenor_string() { SurfaceMetadata test = Surfaces.sabrParameterByExpiryTenor(NAME, ACT_360, ValueType.SABR_BETA); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.YEAR_FRACTION) .zValueType(ValueType.SABR_BETA) .dayCount(ACT_360) .build(); assertEquals(test, expected); }
@Override public DefaultSurfaceMetadata withParameterMetadata(List<? extends ParameterMetadata> parameterMetadata) { if (parameterMetadata == null) { return this.parameterMetadata != null ? toBuilder().clearParameterMetadata().build() : this; } return toBuilder().parameterMetadata(parameterMetadata).build(); }
@Override public default ParameterMetadata getParameterMetadata(int parameterIndex) { return getMetadata().getParameterMetadata(parameterIndex); }
@Override public ConstantSurface withMetadata(SurfaceMetadata metadata) { return new ConstantSurface(metadata.withParameterMetadata(null), zValue); }
public void normalVolatilityByExpirySimpleMoneyness_surfaceName() { SurfaceMetadata test = Surfaces.normalVolatilityByExpirySimpleMoneyness(SURFACE_NAME, ACT_360, MoneynessType.PRICE); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.SIMPLE_MONEYNESS) .zValueType(ValueType.NORMAL_VOLATILITY) .dayCount(ACT_360) .addInfo(SurfaceInfoType.MONEYNESS_TYPE, MoneynessType.PRICE) .build(); assertEquals(test, expected); }
public void normalVolatilityByExpiryStrike_surfaceName() { SurfaceMetadata test = Surfaces.normalVolatilityByExpiryStrike(SURFACE_NAME, ACT_360); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.STRIKE) .zValueType(ValueType.NORMAL_VOLATILITY) .dayCount(ACT_360) .build(); assertEquals(test, expected); }
public void blackVolatilityByExpiryTenor_surfaceName() { SurfaceMetadata test = Surfaces.blackVolatilityByExpiryTenor(SURFACE_NAME, ACT_360); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.YEAR_FRACTION) .zValueType(ValueType.BLACK_VOLATILITY) .dayCount(ACT_360) .build(); assertEquals(test, expected); }
public void normalVolatilityByExpiryTenor_surfaceName() { SurfaceMetadata test = Surfaces.normalVolatilityByExpiryTenor(SURFACE_NAME, ACT_360); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.YEAR_FRACTION) .zValueType(ValueType.NORMAL_VOLATILITY) .dayCount(ACT_360) .build(); assertEquals(test, expected); }
public void blackVolatilityByExpiryLogMoneyness_surfaceName() { SurfaceMetadata test = Surfaces.blackVolatilityByExpiryLogMoneyness(SURFACE_NAME, ACT_360); SurfaceMetadata expected = DefaultSurfaceMetadata.builder() .surfaceName(SURFACE_NAME) .xValueType(ValueType.YEAR_FRACTION) .yValueType(ValueType.LOG_MONEYNESS) .zValueType(ValueType.BLACK_VOLATILITY) .dayCount(ACT_360) .build(); assertEquals(test, expected); }