//------------------------------------------------------------------------- public virtual void test_summarize() { IborFutureOptionTrade trade = sut(); PortfolioItemSummary expected = PortfolioItemSummary.builder().id(TRADE_INFO.Id.orElse(null)).portfolioItemType(PortfolioItemType.TRADE).productType(ProductType.IBOR_FUTURE_OPTION).currencies(Currency.USD).description("IborFutureOption x 35").build(); assertEquals(trade.summarize(), expected); }
public virtual void test_withPrice() { IborFutureOptionTrade @base = sut(); double price = 0.95; IborFutureOptionTrade computed = @base.withPrice(price); IborFutureOptionTrade expected = IborFutureOptionTrade.builder().info(TRADE_INFO).product(PRODUCT).quantity(QUANTITY).price(price).build(); assertEquals(computed, expected); }
//------------------------------------------------------------------------- public virtual void test_withQuantity() { IborFutureOptionTrade @base = sut(); double quantity = 65243; IborFutureOptionTrade computed = @base.withQuantity(quantity); IborFutureOptionTrade expected = IborFutureOptionTrade.builder().info(TRADE_INFO).product(PRODUCT).quantity(quantity).price(PRICE).build(); assertEquals(computed, expected); }
//------------------------------------------------------------------------- public virtual void test_resolve() { IborFutureOptionTrade test = sut(); ResolvedIborFutureOptionTrade resolved = test.resolve(REF_DATA); assertEquals(resolved.Info, TRADE_INFO); assertEquals(resolved.Product, PRODUCT.resolve(REF_DATA)); assertEquals(resolved.Quantity, QUANTITY); assertEquals(resolved.TradedPrice, TradedPrice.of(TRADE_DATE, PRICE)); }
//------------------------------------------------------------------------- public virtual void test_builder() { IborFutureOptionTrade test = sut(); assertEquals(test.Info, TRADE_INFO); assertEquals(test.Product, PRODUCT); assertEquals(test.Quantity, QUANTITY); assertEquals(test.Price, PRICE); assertEquals(test.Currency, PRODUCT.Currency); assertEquals(test.withInfo(TRADE_INFO).Info, TRADE_INFO); assertEquals(test.withQuantity(129).Quantity, 129d, 0d); assertEquals(test.withPrice(129).Price, 129d, 0d); }
public override bool Equals(object obj) { if (obj == this) { return(true); } if (obj != null && obj.GetType() == this.GetType()) { IborFutureOptionTrade other = (IborFutureOptionTrade)obj; return(JodaBeanUtils.equal(info, other.info) && JodaBeanUtils.equal(product, other.product) && JodaBeanUtils.equal(quantity, other.quantity) && JodaBeanUtils.equal(price, other.price)); } return(false); }
//------------------------------------------------------------------------- public virtual void test_createProduct() { IborFutureOptionSecurity test = sut(); ReferenceData refData = ImmutableReferenceData.of(FUTURE_ID, FUTURE_SECURITY); assertEquals(test.createProduct(refData), OPTION); TradeInfo tradeInfo = TradeInfo.of(date(2016, 6, 30)); IborFutureOptionTrade expectedTrade = IborFutureOptionTrade.builder().info(tradeInfo).product(OPTION).quantity(100).price(123.50).build(); assertEquals(test.createTrade(tradeInfo, 100, 123.50, refData), expectedTrade); PositionInfo positionInfo = PositionInfo.empty(); IborFutureOptionPosition expectedPosition1 = IborFutureOptionPosition.builder().info(positionInfo).product(OPTION).longQuantity(100).build(); TestHelper.assertEqualsBean(test.createPosition(positionInfo, 100, refData), expectedPosition1); IborFutureOptionPosition expectedPosition2 = IborFutureOptionPosition.builder().info(positionInfo).product(OPTION).longQuantity(100).shortQuantity(50).build(); assertEquals(test.createPosition(positionInfo, 100, 50, refData), expectedPosition2); }
internal virtual IborFutureOptionTrade sut2() { return(IborFutureOptionTrade.builder().product(PRODUCT2).quantity(QUANTITY2).price(PRICE2).build()); }
//------------------------------------------------------------------------- internal static IborFutureOptionTrade sut() { return(IborFutureOptionTrade.builder().info(TRADE_INFO).product(PRODUCT).quantity(QUANTITY).price(PRICE).build()); }