public void implied_volatility() { double[] impliedVolatility = new double[N]; for (int i = 0; i < N; i++) { impliedVolatility[i] = impliedVolatility(DATA[i], OPTIONS[i], PRICES[i]); assertEquals(impliedVolatility[i], SIGMA[i], 1e-6); } }
public void intrinsic_price() { NormalFunctionData data = NormalFunctionData.of(1.0, 1.0, 0.01); EuropeanVanillaOption option1 = EuropeanVanillaOption.of(0.5, 1.0, PutCall.CALL); assertThrowsIllegalArg(() -> impliedVolatility(data, option1, 1e-6)); EuropeanVanillaOption option2 = EuropeanVanillaOption.of(1.5, 1.0, PutCall.PUT); assertThrowsIllegalArg(() -> impliedVolatility(data, option2, 1e-6)); }