@Test public void testNormalBucketedZeroDelta() { Result<BucketedCurveSensitivities> result = _functionRunner.runFunction( ARGS, createSuppliedData(), new Function<Environment, Result<BucketedCurveSensitivities>>() { @Override public Result<BucketedCurveSensitivities> apply(Environment env) { return _normalIRFutureOptionFn.calculateBucketedZeroIRDelta( env, _irFutureOptionTrade); } }); assertSuccess(result); }
@Test public void testNormalPrice() { Result<Double> result = _functionRunner.runFunction( ARGS, createSuppliedData(), new Function<Environment, Result<Double>>() { @Override public Result<Double> apply(Environment env) { return _normalIRFutureOptionFn.calculateModelPrice(env, _irFutureOptionTrade); } }); assertSuccess(result); Double price = result.getValue(); assertThat(price, is(closeTo(0.072284344, STD_TOLERANCE_PV))); }
@Test public void testNormalPresentValue() { Result<MultipleCurrencyAmount> result = _functionRunner.runFunction( ARGS, createSuppliedData(), new Function<Environment, Result<MultipleCurrencyAmount>>() { @Override public Result<MultipleCurrencyAmount> apply(Environment env) { return _normalIRFutureOptionFn.calculatePV(env, _irFutureOptionTrade); } }); assertSuccess(result); MultipleCurrencyAmount mca = result.getValue(); assertThat( mca.getCurrencyAmount(Currency.USD).getAmount(), is(closeTo(-902.7156551, STD_TOLERANCE_PV))); }