//-------------------------------------------------------------------------
        public virtual void test_createTrade()
        {
            IborFutureTemplate @base    = IborFutureTemplate.of(YEAR_MONTH, CONVENTION);
            LocalDate          date     = LocalDate.of(2015, 10, 20);
            double             quantity = 3;
            double             price    = 0.99;
            double             notional = 100.0;
            SecurityId         secId    = SecurityId.of("OG-Future", "GBP-LIBOR-3M-Jun16");
            IborFutureTrade    trade    = @base.createTrade(date, secId, quantity, notional, price, REF_DATA);
            IborFutureTrade    expected = CONVENTION.createTrade(date, secId, YEAR_MONTH, quantity, notional, price, REF_DATA);

            assertEquals(trade, expected);
        }
Пример #2
0
        public virtual void test_toTrade()
        {
            LocalDate            date       = LocalDate.of(2015, 10, 20);
            Period               start      = Period.ofMonths(2);
            int                  number     = 2; // Future should be 20 Dec 15 + 2 IMM = effective 15-Jun-2016, fixing 13-Jun-2016
            IborFutureConvention convention = ImmutableIborFutureConvention.of(USD_LIBOR_3M, QUARTERLY_IMM);
            double               quantity   = 3;
            double               price      = 0.99;
            SecurityId           secId      = SecurityId.of("OG-Future", "GBP-LIBOR-3M-Jun16");
            IborFutureTrade      trade      = convention.createTrade(date, secId, start, number, quantity, NOTIONAL_1M, price, REF_DATA);

            assertEquals(trade.Product.FixingDate, LocalDate.of(2016, 6, 13));
            assertEquals(trade.Product.Index, USD_LIBOR_3M);
            assertEquals(trade.Product.Notional, NOTIONAL_1M);
            assertEquals(trade.Product.AccrualFactor, 0.25);
            assertEquals(trade.Quantity, quantity);
            assertEquals(trade.Price, price);
        }