//------------------------------------------------------------------------- public virtual void test_getters() { ResolvedBondFutureOptionTrade test = sut(); BondFutureOptionTrade @base = BondFutureOptionTradeTest.sut(); assertEquals(test.TradedPrice.get(), TradedPrice.of(@base.Info.TradeDate.get(), @base.Price)); }
public override Builder set(string propertyName, object newValue) { switch (propertyName.GetHashCode()) { case 3237038: // info this.info_Renamed = (PortfolioItemInfo)newValue; break; case -309474065: // product this.product_Renamed = (ResolvedBondFutureOption)newValue; break; case -1285004149: // quantity this.quantity_Renamed = (double?)newValue.Value; break; case -1873824343: // tradedPrice this.tradedPrice_Renamed = (TradedPrice)newValue; break; default: throw new NoSuchElementException("Unknown property: " + propertyName); } return(this); }
/// <summary> /// Restricted copy constructor. </summary> /// <param name="beanToCopy"> the bean to copy from, not null </param> internal Builder(ResolvedBondFutureOptionTrade beanToCopy) { this.info_Renamed = beanToCopy.Info; this.product_Renamed = beanToCopy.Product; this.quantity_Renamed = beanToCopy.Quantity; this.tradedPrice_Renamed = beanToCopy.tradedPrice; }
//------------------------------------------------------------------------- public virtual void test_builder() { ResolvedIborFutureTrade test = sut(); assertEquals(test.Info, TRADE_INFO); assertEquals(test.Product, PRODUCT); assertEquals(test.Quantity, QUANTITY); assertEquals(test.TradedPrice, TradedPrice.of(TRADE_DATE, PRICE)); }
//------------------------------------------------------------------------- public virtual void test_builder() { ResolvedOvernightFutureTrade test = ResolvedOvernightFutureTrade.builder().info(TRADE_INFO).product(PRODUCT).quantity(QUANTITY).tradedPrice(TradedPrice.of(TRADE_DATE, PRICE)).build(); assertEquals(test.Info, TRADE_INFO); assertEquals(test.Product, PRODUCT); assertEquals(test.Quantity, QUANTITY); assertEquals(test.TradedPrice, TradedPrice.of(TRADE_DATE, PRICE)); }
/// <summary> /// Creates an instance. </summary> /// <param name="info"> the value of the property, not null </param> /// <param name="product"> the value of the property, not null </param> /// <param name="quantity"> the value of the property </param> /// <param name="tradedPrice"> the value of the property </param> internal ResolvedBondFutureOptionTrade(PortfolioItemInfo info, ResolvedBondFutureOption product, double quantity, TradedPrice tradedPrice) { JodaBeanUtils.notNull(info, "info"); JodaBeanUtils.notNull(product, "product"); this.info = info; this.product = product; this.quantity = quantity; this.tradedPrice = tradedPrice; }
//------------------------------------------------------------------------- public virtual void test_resolve() { IborFutureTrade test = sut(); ResolvedIborFutureTrade 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_resolve() { OvernightFutureTrade test = OvernightFutureTrade.builder().info(TRADE_INFO).product(PRODUCT).quantity(QUANTITY).price(PRICE).build(); ResolvedOvernightFutureTrade 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 ResolvedOvernightFutureTrade resolve(ReferenceData refData) { if (!info.TradeDate.Present) { throw new System.ArgumentException("Trade date on TradeInfo must be present"); } ResolvedOvernightFuture resolved = Product.resolve(refData); TradedPrice tradedPrice = TradedPrice.of(info.TradeDate.get(), price); return(new ResolvedOvernightFutureTrade(info, resolved, quantity, tradedPrice)); }
internal static ResolvedIborFutureTrade sut2() { return(ResolvedIborFutureTrade.builder().info(TRADE_INFO2).product(PRODUCT2).quantity(QUANTITY2).tradedPrice(TradedPrice.of(TRADE_DATE, PRICE2)).build()); }
//------------------------------------------------------------------------- internal static ResolvedDsfTrade sut() { return(ResolvedDsfTrade.builder().info(TRADE_INFO).product(PRODUCT).quantity(QUANTITY).tradedPrice(TradedPrice.of(TRADE_DATE, PRICE)).build()); }
//------------------------------------------------------------------------- public virtual void test_resolve() { ResolvedBondFutureOptionTrade expected = ResolvedBondFutureOptionTrade.builder().info(TRADE_INFO).product(OPTION_PRODUCT.resolve(REF_DATA)).quantity(QUANTITY).tradedPrice(TradedPrice.of(TRADE_INFO.TradeDate.get(), PRICE.Value)).build(); assertEquals(sut().resolve(REF_DATA), expected); }
//------------------------------------------------------------------------- public virtual void test_resolve() { DsfTrade test = sut(); ResolvedDsfTrade expected = ResolvedDsfTrade.builder().info(TRADE_INFO).product(PRODUCT.resolve(REF_DATA)).quantity(QUANTITY).tradedPrice(TradedPrice.of(TRADE_DATE, PRICE)).build(); assertEquals(test.resolve(REF_DATA), expected); }
public virtual void test_serialization() { ResolvedOvernightFutureTrade test = ResolvedOvernightFutureTrade.builder().info(TRADE_INFO).product(PRODUCT).quantity(QUANTITY).tradedPrice(TradedPrice.of(TRADE_DATE, PRICE)).build(); assertSerialization(test); }
//------------------------------------------------------------------------- public virtual void coverage() { ResolvedOvernightFutureTrade test1 = ResolvedOvernightFutureTrade.builder().info(TRADE_INFO).product(PRODUCT).quantity(QUANTITY).tradedPrice(TradedPrice.of(TRADE_DATE, PRICE)).build(); coverImmutableBean(test1); ResolvedOvernightFutureTrade test2 = ResolvedOvernightFutureTrade.builder().info(TradeInfo.empty()).product(PRODUCT2).quantity(QUANTITY2).tradedPrice(TradedPrice.of(TRADE_DATE, PRICE2)).build(); coverBeanEquals(test1, test2); }
/// <summary> /// Sets the price that was traded, together with the trade date, optional. /// <para> /// This is the price agreed when the trade occurred, in decimal form. /// Strata uses <i>decimal prices</i> for bond futures options in the trade model, pricers and market data. /// This is coherent with the pricing of <seealso cref="BondFuture"/>. /// </para> /// <para> /// This is optional to allow the class to be used to price both trades and positions. /// When the instance represents a trade, the traded price should be present. /// When the instance represents a position, the traded price should be empty. /// </para> /// </summary> /// <param name="tradedPrice"> the new value </param> /// <returns> this, for chaining, not null </returns> public Builder tradedPrice(TradedPrice tradedPrice) { this.tradedPrice_Renamed = tradedPrice; return(this); }