@Override public BondFutureOptionSensitivity build() { return new BondFutureOptionSensitivity( volatilitiesName, expiry, futureExpiryDate, strikePrice, futurePrice, currency, sensitivity); }
@Override public BondFutureOptionSensitivity withSensitivity(double sensitivity) { return new BondFutureOptionSensitivity( volatilitiesName, expiry, futureExpiryDate, strikePrice, futurePrice, currency, sensitivity); }
@Override public BondFutureOptionSensitivity multipliedBy(double factor) { return new BondFutureOptionSensitivity( volatilitiesName, expiry, futureExpiryDate, strikePrice, futurePrice, currency, sensitivity * factor); }
/** * Obtains an instance based on the security ID. * * @param volatilitiesName the name of the volatilities * @param expiry the time to expiry of the option as a year fraction * @param futureExpiryDate the expiry date of the underlying future * @param strikePrice the strike price of the option * @param futurePrice the price of the underlying future * @param sensitivityCurrency the currency of the sensitivity * @param sensitivity the value of the sensitivity * @return the point sensitivity object */ public static BondFutureOptionSensitivity of( BondFutureVolatilitiesName volatilitiesName, double expiry, LocalDate futureExpiryDate, double strikePrice, double futurePrice, Currency sensitivityCurrency, double sensitivity) { return new BondFutureOptionSensitivity( volatilitiesName, expiry, futureExpiryDate, strikePrice, futurePrice, sensitivityCurrency, sensitivity); }
@Override public BondFutureOptionSensitivity withCurrency(Currency currency) { if (this.currency.equals(currency)) { return this; } return new BondFutureOptionSensitivity( volatilitiesName, expiry, futureExpiryDate, strikePrice, futurePrice, currency, sensitivity); }
@Override public BondFutureOptionSensitivity mapSensitivity(DoubleUnaryOperator operator) { return new BondFutureOptionSensitivity( volatilitiesName, expiry, futureExpiryDate, strikePrice, futurePrice, currency, operator.applyAsDouble(sensitivity)); }