예제 #1
0
        public virtual void test_of_spotDateOffset()
        {
            ImmutableThreeLegBasisSwapConvention test = ImmutableThreeLegBasisSwapConvention.of(NAME, FIXED, IBOR6M, IBOR12M, PLUS_ONE_DAY);

            assertEquals(test.Name, NAME);
            assertEquals(test.SpreadLeg, FIXED);
            assertEquals(test.SpreadFloatingLeg, IBOR6M);
            assertEquals(test.FlatFloatingLeg, IBOR12M);
            assertEquals(test.SpotDateOffset, PLUS_ONE_DAY);
        }
예제 #2
0
        public virtual void test_builder()
        {
            ImmutableThreeLegBasisSwapConvention test = ImmutableThreeLegBasisSwapConvention.builder().name(NAME).spreadLeg(FIXED).spreadFloatingLeg(IBOR6M).flatFloatingLeg(IBOR12M).spotDateOffset(PLUS_ONE_DAY).build();

            assertEquals(test.Name, NAME);
            assertEquals(test.SpreadLeg, FIXED);
            assertEquals(test.SpreadFloatingLeg, IBOR6M);
            assertEquals(test.FlatFloatingLeg, IBOR12M);
            assertEquals(test.SpotDateOffset, PLUS_ONE_DAY);
        }
예제 #3
0
        //-------------------------------------------------------------------------
        public virtual void test_of()
        {
            ImmutableThreeLegBasisSwapConvention test = ImmutableThreeLegBasisSwapConvention.of(NAME, FIXED, IBOR6M, IBOR12M);

            assertEquals(test.Name, NAME);
            assertEquals(test.SpreadLeg, FIXED);
            assertEquals(test.SpreadFloatingLeg, IBOR6M);
            assertEquals(test.FlatFloatingLeg, IBOR12M);
            assertEquals(test.SpotDateOffset, EUR_EURIBOR_6M.EffectiveDateOffset);
        }
예제 #4
0
        //-------------------------------------------------------------------------
        public virtual void coverage()
        {
            ImmutableThreeLegBasisSwapConvention test = ImmutableThreeLegBasisSwapConvention.of(NAME, FIXED, IBOR6M, IBOR12M);

            coverImmutableBean(test);
            ImmutableThreeLegBasisSwapConvention test2 = ImmutableThreeLegBasisSwapConvention.of("swap", FIXED, IBOR3M, IBOR6M);

            coverBeanEquals(test, test2);
            ImmutableThreeLegBasisSwapConvention test3 = ImmutableThreeLegBasisSwapConvention.of(NAME, FIXED, IBOR3M, IBOR12M);

            coverBeanEquals(test, test3);
        }
예제 #5
0
        public virtual void test_toTrade_dates()
        {
            ThreeLegBasisSwapConvention @base = ImmutableThreeLegBasisSwapConvention.of(NAME, FIXED, IBOR6M, IBOR12M);
            LocalDate tradeDate = LocalDate.of(2015, 5, 5);
            LocalDate startDate = date(2015, 8, 5);
            LocalDate endDate   = date(2015, 11, 5);
            SwapTrade test      = @base.toTrade(tradeDate, startDate, endDate, BUY, NOTIONAL_2M, 0.25d);
            Swap      expected  = Swap.of(FIXED.toLeg(startDate, endDate, PAY, NOTIONAL_2M, 0.25d), IBOR6M.toLeg(startDate, endDate, PAY, NOTIONAL_2M), IBOR12M.toLeg(startDate, endDate, RECEIVE, NOTIONAL_2M));

            assertEquals(test.Info.TradeDate, tradeDate);
            assertEquals(test.Product, expected);
        }
예제 #6
0
        public virtual void test_toTrade_periodTenor()
        {
            ThreeLegBasisSwapConvention @base = ImmutableThreeLegBasisSwapConvention.of(NAME, FIXED, IBOR6M, IBOR12M);
            LocalDate tradeDate = LocalDate.of(2015, 5, 5);
            LocalDate startDate = date(2015, 8, 7);
            LocalDate endDate   = date(2025, 8, 7);
            SwapTrade test      = @base.createTrade(tradeDate, Period.ofMonths(3), TENOR_10Y, BUY, NOTIONAL_2M, 0.25d, REF_DATA);
            Swap      expected  = Swap.of(FIXED.toLeg(startDate, endDate, PAY, NOTIONAL_2M, 0.25d), IBOR6M.toLeg(startDate, endDate, PAY, NOTIONAL_2M), IBOR12M.toLeg(startDate, endDate, RECEIVE, NOTIONAL_2M));

            assertEquals(test.Info.TradeDate, tradeDate);
            assertEquals(test.Product, expected);
        }
예제 #7
0
 public override bool Equals(object obj)
 {
     if (obj == this)
     {
         return(true);
     }
     if (obj != null && obj.GetType() == this.GetType())
     {
         ImmutableThreeLegBasisSwapConvention other = (ImmutableThreeLegBasisSwapConvention)obj;
         return(JodaBeanUtils.equal(name, other.name) && JodaBeanUtils.equal(spreadLeg, other.spreadLeg) && JodaBeanUtils.equal(spreadFloatingLeg, other.spreadFloatingLeg) && JodaBeanUtils.equal(flatFloatingLeg, other.flatFloatingLeg) && JodaBeanUtils.equal(spotDateOffset, other.spotDateOffset));
     }
     return(false);
 }
예제 #8
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test(dataProvider = "spotLag") public void test_spot_lag(ImmutableThreeLegBasisSwapConvention convention, int lag)
        public virtual void test_spot_lag(ImmutableThreeLegBasisSwapConvention convention, int lag)
        {
            assertEquals(convention.SpotDateOffset.Days, lag);
        }
예제 #9
0
        public virtual void test_serialization()
        {
            ThreeLegBasisSwapConvention test = ImmutableThreeLegBasisSwapConvention.of(NAME, FIXED, IBOR6M, IBOR12M);

            assertSerialization(test);
        }