Example #1
0
        public virtual void test_resolve_noRebate()
        {
            FxSingleBarrierOption         @base    = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER);
            ResolvedFxSingleBarrierOption expected = ResolvedFxSingleBarrierOption.of(VANILLA_OPTION.resolve(REF_DATA), BARRIER);

            assertEquals(@base.resolve(REF_DATA), expected);
        }
Example #2
0
        public virtual void test_of_noRebate()
        {
            FxSingleBarrierOption test = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER);

            assertEquals(test.Barrier, BARRIER);
            assertFalse(test.Rebate.Present);
            assertEquals(test.UnderlyingOption, VANILLA_OPTION);
        }
Example #3
0
        //-------------------------------------------------------------------------
        public virtual void coverage()
        {
            FxSingleBarrierOption test1 = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, REBATE);
            FxSingleBarrierOption test2 = FxSingleBarrierOption.of(FxVanillaOption.builder().longShort(SHORT).expiryDate(EXPIRY_DATE).expiryTime(EXPIRY_TIME).expiryZone(EXPIRY_ZONE).underlying(FX).build(), SimpleConstantContinuousBarrier.of(BarrierType.UP, KnockType.KNOCK_IN, 1.5));

            coverImmutableBean(test1);
            coverBeanEquals(test1, test2);
        }
Example #4
0
        public virtual void test_of_fail()
        {
            CurrencyAmount negative = CurrencyAmount.of(USD, -5.0e4);

            assertThrowsIllegalArg(() => FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, negative));
            CurrencyAmount other = CurrencyAmount.of(GBP, 5.0e4);

            assertThrowsIllegalArg(() => FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, other));
        }
Example #5
0
        public virtual void test_of()
        {
            FxSingleBarrierOption test = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, REBATE);

            assertEquals(test.Barrier, BARRIER);
            assertEquals(test.Rebate.get(), REBATE);
            assertEquals(test.UnderlyingOption, VANILLA_OPTION);
            assertEquals(test.CurrencyPair, VANILLA_OPTION.CurrencyPair);
            assertEquals(test.CrossCurrency, true);
            assertEquals(test.allPaymentCurrencies(), ImmutableSet.of(EUR, USD));
            assertEquals(test.allCurrencies(), ImmutableSet.of(EUR, USD));
        }
Example #6
0
        public virtual void test_serialization()
        {
            FxSingleBarrierOption test = FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER, REBATE);

            assertSerialization(test);
        }
        //-------------------------------------------------------------------------
        public virtual void coverage()
        {
            FxSingleBarrierOptionTrade test1 = sut();
            FxSingleBarrierOptionTrade test2 = FxSingleBarrierOptionTrade.builder().product(FxSingleBarrierOption.of(VANILLA_OPTION, BARRIER)).premium(AdjustablePayment.of(CurrencyAmount.of(EUR, NOTIONAL * 0.01), date(2014, 11, 13))).build();

            coverImmutableBean(test1);
            coverBeanEquals(test1, test2);
        }