public virtual void test_of() { ThreeLegBasisSwapTemplate test = ThreeLegBasisSwapTemplate.of(Period.ofMonths(3), TENOR_10Y, CONV); assertEquals(test.PeriodToStart, Period.ofMonths(3)); assertEquals(test.Tenor, TENOR_10Y); assertEquals(test.Convention, CONV); }
//------------------------------------------------------------------------- public virtual void test_of_spot() { ThreeLegBasisSwapTemplate test = ThreeLegBasisSwapTemplate.of(TENOR_10Y, CONV); assertEquals(test.PeriodToStart, Period.ZERO); assertEquals(test.Tenor, TENOR_10Y); assertEquals(test.Convention, CONV); }
//------------------------------------------------------------------------- public virtual void coverage() { ThreeLegBasisSwapTemplate test = ThreeLegBasisSwapTemplate.of(Period.ofMonths(3), TENOR_10Y, CONV); coverImmutableBean(test); ThreeLegBasisSwapTemplate test2 = ThreeLegBasisSwapTemplate.of(Period.ofMonths(2), TENOR_2Y, CONV2); coverBeanEquals(test, test2); }
//------------------------------------------------------------------------- public virtual void test_createTrade() { ThreeLegBasisSwapTemplate @base = ThreeLegBasisSwapTemplate.of(Period.ofMonths(3), TENOR_10Y, CONV); LocalDate tradeDate = LocalDate.of(2015, 5, 5); LocalDate startDate = date(2015, 8, 7); LocalDate endDate = date(2025, 8, 7); SwapTrade test = @base.createTrade(tradeDate, BUY, NOTIONAL_2M, 0.25d, REF_DATA); Swap expected = Swap.of(FIXED.toLeg(startDate, endDate, PAY, NOTIONAL_2M, 0.25d), IBOR3M.toLeg(startDate, endDate, PAY, NOTIONAL_2M), IBOR6M.toLeg(startDate, endDate, RECEIVE, NOTIONAL_2M)); assertEquals(test.Info.TradeDate, tradeDate); assertEquals(test.Product, expected); }
public override bool Equals(object obj) { if (obj == this) { return(true); } if (obj != null && obj.GetType() == this.GetType()) { ThreeLegBasisSwapTemplate other = (ThreeLegBasisSwapTemplate)obj; return(JodaBeanUtils.equal(periodToStart, other.periodToStart) && JodaBeanUtils.equal(tenor, other.tenor) && JodaBeanUtils.equal(convention, other.convention)); } return(false); }
//------------------------------------------------------------------------- public virtual void test_builder_notEnoughData() { assertThrowsIllegalArg(() => ThreeLegBasisSwapTemplate.builder().tenor(TENOR_2Y).build()); }
public virtual void test_serialization() { ThreeLegBasisSwapTemplate test = ThreeLegBasisSwapTemplate.of(Period.ofMonths(3), TENOR_10Y, CONV); assertSerialization(test); }
/// <summary> /// Creates a template based on the specified period, tenor and convention. /// <para> /// The period from the spot date to the start date is specified. /// /// </para> /// </summary> /// <param name="periodToStart"> the period between the spot date and the start date </param> /// <param name="tenor"> the tenor of the swap </param> /// <param name="convention"> the market convention </param> /// <returns> the template </returns> public static ThreeLegBasisSwapTemplate of(Period periodToStart, Tenor tenor, ThreeLegBasisSwapConvention convention) { return(ThreeLegBasisSwapTemplate.builder().periodToStart(periodToStart).tenor(tenor).convention(convention).build()); }