private static BuyOrder[] EntitiesToLogicUnit(BuyOrders[] buyOrders) { var buyOrdersList = new List <BuyOrder>(); if (buyOrders != null) { foreach (var order in buyOrders) { var buyOrder = new BuyOrder(order); buyOrdersList.Add(buyOrder); } } var result = buyOrdersList.ToArray(); return(result); }
public void Sell() { SellDate = DateTimeOffset.Now; var buyOrders = BuyOrder.GetWithPriceGreaterOrEqual(SellPrice); if (buyOrders != null) { foreach (var buyOrder in buyOrders) { var numbersToSell = NumbersToSell; if (buyOrder != null && numbersToSell > 0) { var numbersToBuy = buyOrder.NumbersToBuy; var numbersToTransaction = numbersToSell < numbersToBuy ? numbersToSell : numbersToBuy; numbersToSell -= numbersToTransaction; numbersToBuy -= numbersToTransaction; var transaction = new Transaction { BuyDate = buyOrder.BuyDate, SellDate = SellDate, BuyComment = buyOrder.BuyComment, SellComment = SellComment, CompleteDate = DateTimeOffset.Now, NumbersToTransaction = numbersToTransaction, TransactionPrice = SellPrice }; transaction.Add(); NumbersToSell = numbersToSell; buyOrder.NumbersToBuy = numbersToBuy; buyOrder.Save(); } } } if (NumbersToSell > 0) { Add(); } }
public static BuyOrder[] LoadAll() { var buyOrders = BuyOrders.FindAll(); var buyOrdersList = new List <BuyOrder>(); if (buyOrders != null) { foreach (var order in buyOrders) { var buyOrder = new BuyOrder(order); buyOrdersList.Add(buyOrder); } } var result = buyOrdersList.ToArray(); return(result); }