Esempio n. 1
0
        /// <summary>
        /// Loads current Copier account orders at creation.
        /// </summary>
        public override void Init()
        {
            int ordersTotal = OrdersTotal();

            for (int i = 0; i < ordersTotal; i++)
            {
                IOrderInfo order = OrderGet(i, SelectionType.SELECT_BY_POS, SelectionPool.MODE_TRADES);
                if (order != null)
                {
                    /*
                     * if (order.GetMagic() != 0)
                     * {
                     *  Console.WriteLine("Closing order: " + order);
                     *  CloseOrder(order);
                     * }
                     * continue;
                     */
                    if (order.GetMagic() != 0)
                    {
                        _ordersMap.Add(
                            order.GetMagic(), // Master's order ticket
                            order.GetTicket()
                            );
                        Info(String.Format("Master order {0} is mapped to {1}", order.GetMagic(), order));
                    }
                    else
                    {
                        Info(String.Format("Custom order {0} left unmanaged", order));

                        //lets try to close this
                        Info(String.Format("Closing orphaned order: {0}", order));
                    }
                }
            }
        }
Esempio n. 2
0
 public bool IsSameLiveOrder(IOrderInfo o)
 {
     return(_symbol == o.GetSymbol() &&
            _tradeOp == o.GetTradeOperation() &&
            _price == o.GetOpenPrice() &&
            _time == o.GetOpenTime() &&
            _magic == o.GetMagic()
            );
 }
Esempio n. 3
0
 public OComparator(IOrderInfo o)
 {
     _closeTime = o.GetCloseTime();
     _symbol    = o.GetSymbol();
     _tradeOp   = o.GetTradeOperation();
     _price     = o.GetOpenPrice();
     _time      = o.GetOpenTime();
     _magic     = o.GetMagic();
 }