@Override public EtdOptionPosition withQuantity(double quantity) { return EtdOptionPosition.ofNet(info, security, quantity); }
@Override public EtdOptionPosition createPosition( PositionInfo positionInfo, double longQuantity, double shortQuantity, ReferenceData refData) { return EtdOptionPosition.ofLongShort(positionInfo, this, longQuantity, shortQuantity); }
/** * Obtains an instance from the security and net quantity. * <p> * The net quantity is the long quantity minus the short quantity, which may be negative. * If the quantity is positive it is treated as a long quantity. * Otherwise it is treated as a short quantity. * * @param security the underlying security * @param netQuantity the net quantity of the underlying security * @return the position */ public static EtdOptionPosition ofNet(EtdOptionSecurity security, double netQuantity) { return ofNet(PositionInfo.empty(), security, netQuantity); }
public void test_ofNet_short() { EtdOptionPosition test = EtdOptionPosition.ofNet(SECURITY, -1000); assertEquals(test.getLongQuantity(), 0d, 0d); assertEquals(test.getShortQuantity(), 1000d, 0d); assertEquals(test.getSecurity(), SECURITY); assertEquals(test.getQuantity(), -1000d, 0d); }
public void test_ofNet_withInfo() { EtdOptionPosition test = EtdOptionPosition.ofNet(POSITION_INFO, SECURITY, 1000); assertEquals(test.getLongQuantity(), 1000d, 0d); assertEquals(test.getShortQuantity(), 0d, 0d); assertEquals(test.getInfo(), POSITION_INFO); assertEquals(test.getSecurity(), SECURITY); assertEquals(test.getQuantity(), 1000d, 0d); }
public void test_ofNet() { EtdOptionPosition test = EtdOptionPosition.ofNet(SECURITY, 1000); assertEquals(test.getLongQuantity(), 1000d, 0d); assertEquals(test.getShortQuantity(), 0d, 0d); assertEquals(test.getSecurity(), SECURITY); assertEquals(test.getQuantity(), 1000d, 0d); assertEquals(test.withInfo(POSITION_INFO).getInfo(), POSITION_INFO); assertEquals(test.withQuantity(129).getQuantity(), 129d, 0d); assertEquals(test.withQuantity(-129).getQuantity(), -129d, 0d); }
public void test() { EtdOptionSecurity test = sut(); assertEquals(test.getVariant(), EtdVariant.MONTHLY); assertEquals(test.getType(), EtdType.OPTION); assertEquals(test.getCurrency(), Currency.GBP); assertEquals(test.getUnderlyingIds(), ImmutableSet.of()); assertEquals(test.createProduct(REF_DATA), test); assertEquals( test.createTrade(TradeInfo.empty(), 1, 2, ReferenceData.empty()), EtdOptionTrade.of(TradeInfo.empty(), test, 1, 2)); assertEquals( test.createPosition(PositionInfo.empty(), 1, ReferenceData.empty()), EtdOptionPosition.ofNet(PositionInfo.empty(), test, 1)); assertEquals( test.createPosition(PositionInfo.empty(), 1, 2, ReferenceData.empty()), EtdOptionPosition.ofLongShort(PositionInfo.empty(), test, 1, 2)); }