public TrailingStopLimitOrder TrailingStopLimitOrder(Side side, double qty, double delta, double stopPrice, double limitPrice) { TrailingStopLimitOrder trailingStopLimitOrder = new TrailingStopLimitOrder(this.instrument, side, qty, delta, stopPrice, limitPrice); this.Strategy.EB2iXBUSFK((SingleOrder)trailingStopLimitOrder); return(trailingStopLimitOrder); }
private void OnPlaceOrder(object obj) { Order _workingorder = null; switch (_selectedordertype) { case 0: _workingorder = new MarketOrder(_fullsymbol, _selectedbuysell == 0 ? _size : -_size, _globalIdService.GetNextOrderId()); //_workingorder.StopPrice = 0; //_workingorder.LimitPrice = 0; break; case 1: _workingorder = new LimitOrder(_fullsymbol, _selectedbuysell == 0 ? _size : -_size, _price, _globalIdService.GetNextOrderId()); //_workingorder.StopPrice = 0; //_workingorder.LimitPrice = _price; break; case 2: _workingorder = new StopOrder(_fullsymbol, _selectedbuysell == 0 ? _size : -_size, _price, _globalIdService.GetNextOrderId()); //_workingorder.StopPrice = _price; //_workingorder.LimitPrice = 0; break; case 3: _workingorder = new StopLimitOrder(_fullsymbol, _selectedbuysell == 0 ? _size : -_size, _price, _auxprice, _globalIdService.GetNextOrderId()); break; case 4: _workingorder = new TrailingStopOrder(_fullsymbol, _selectedbuysell == 0 ? _size : -_size, _auxprice, _globalIdService.GetNextOrderId()); break; case 5: _workingorder = new TrailingStopLimitOrder(_fullsymbol, _selectedbuysell == 0 ? _size : -_size, _price, _auxprice, _globalIdService.GetNextOrderId()); break; } _workingorder.OrderStatus = OrderStatus.PendingSubmit; _eventaggregator.GetEvent <SendOrderEvent>().Publish(_workingorder); }