private void ParseTransactionCommon(Commands.AddAutoCloseTransactionCommandBase command) { this.ParseCommon(command); command.CreateTransaction(); TradeOption tradeOption = command.OrderType == OrderType.Limit ? TradeOption.Better : TradeOption.Stop; var addAutoCloseOrderCommand = command.AddOrderCommandFactory.CreateByAutoClose(command.Result, command.OpenOrder, command.ClosePrice, tradeOption); addAutoCloseOrderCommand.Execute(); }
public void ShowTradeOptionDialog(object obj) { if (lastSelectedOption != null) { var newWindow = new TradeOption(); var viewModel = new TradeOptionViewModel(portfolioList, lastSelectedOption); viewModel.RequestClose += newWindow.Close; newWindow.DataContext = viewModel; newWindow.Show(); } }
private static Transaction InnerClose(Order order, Price price, OrderType orderType) { DateTime baseTime = MarketManager.Now; TradeOption tradeOption = orderType == OrderType.Limit ? TradeOption.Better : TradeOption.Stop; var account = order.Owner.Owner; var tran = order.Owner; var closeTran = OrderAutoCloser.CreateTran(tran, orderType, baseTime); Order closeOrder = OrderAutoCloser.CreateOrder(order, price, tradeOption); OrderAutoCloser.CreateOrderRelation(closeOrder, order, order.LotBalance); return(closeTran); }
public bool GetTradeOptionForItem(string itemName, out TradeOption selected) { foreach(TradeOption option in tradeOptions) { if(option.itemName == itemName) { selected = option; return true; } } selected = new TradeOption(); return false; }
public bool GetTradeOptionForItem(string itemName, out TradeOption selected) { foreach (TradeOption option in tradeOptions) { if (option.itemName == itemName) { selected = option; return(true); } } selected = new TradeOption(); return(false); }
private static Order CreateOrder(Order order, Price price, TradeOption tradeOption) { OrderConstructParams orderConstructParams = new OrderConstructParams { Id = Guid.NewGuid(), Phase = OrderPhase.Executed, IsOpen = false, IsBuy = !order.IsBuy, SetPrice = price, ExecutePrice = price, Lot = order.LotBalance, OriginalLot = order.LotBalance, TradeOption = tradeOption }; return(OrderFacade.Default.CreateOrder(order.Owner, orderConstructParams)); }
internal AddDoneOrderParameter(Order openOrder, Price closePrice, TradeOption tradeOption) : base(AddDoneOrderCommandVisitor.Default) { this.CloseInfo = new CloseInfo(openOrder, closePrice, tradeOption); }
internal CloseInfo(Order openOrder, Price closePrice, TradeOption tradeOption) { this.OpenOrder = openOrder; this.ClosePrice = closePrice; this.TradeOption = tradeOption; }
internal AddPhysicalDoneOrderCommand(Transaction tran, Physical.PhysicalOrder openOrder, Price closePrice, TradeOption tradeOption) : base(tran, AddPhysicalOrderCommandService.Default, openOrder, closePrice, tradeOption) { }
protected AddDoneOrderCommandBase(Transaction tran, AddOrderCommandServiceBase commandService, Order openOrder, Price closePrice, TradeOption tradeOption) : base(tran, Visitors.AddDoneOrderCommandVisitor.Default, commandService) { this.OpenOrder = openOrder; this.ClosePrice = closePrice; this.TradeOption = tradeOption; }
internal AddAutoCloseOrderCommand(Transaction tran, Order openOrder, Price closePrice, TradeOption tradeOption) : base(tran, AddOrderCommandService.Default, openOrder, closePrice, tradeOption) { }
internal override AddOrderCommandBase CreateDoneOrder(Transaction tran, Order openOrder, Price closePrice, TradeOption tradeOption) { return(new AddDoneOrderCommand(tran, openOrder, closePrice, tradeOption)); }
internal abstract AddOrderCommandBase CreateDoneOrder(Transaction tran, Order openOrder, Price closePrice, TradeOption tradeOption);
internal override AddOrderCommandBase CreateDoneOrder(Transaction tran, Order openOrder, Price closePrice, TradeOption tradeOption) { throw new NotImplementedException(); }
internal override AddOrderCommandBase CreateByAutoClose(Transaction tran, Order openOrder, Price closePrice, TradeOption tradeOption) { return(new AddAutoClosePhysicalOrderCommand(tran, (Physical.PhysicalOrder)openOrder, closePrice, tradeOption)); }