Esempio n. 1
0
        public void onChanged(string rowID, O2GRow rowData)
        {
            O2GTableType type = rowData.TableType;

            switch (type)
            {
            case O2GTableType.Offers:
                O2GOfferTableRow offers = (O2GOfferTableRow)(rowData);
                break;

            case O2GTableType.Accounts:
                O2GAccountTableRow account = (O2GAccountTableRow)(rowData);
                break;

            case O2GTableType.Summary:
                O2GSummaryTableRow row = (O2GSummaryTableRow)(rowData);
                break;

            case O2GTableType.ClosedTrades:
                Console.WriteLine("CLOSED TRADES TRIGGERED FROM CHANGED TABLELISTENER!");
                O2GClosedTradeTableRow closed = (O2GClosedTradeTableRow)(rowData);

                break;
            }
        }
Esempio n. 2
0
        public static TableType GetTableType(O2GTableType value)
        {
            switch (value)
            {
            case O2GTableType.Accounts:
                return(TableType.Accounts);

            case O2GTableType.ClosedTrades:
                return(TableType.ClosedTrades);

            case O2GTableType.Messages:
                return(TableType.Messages);

            case O2GTableType.Offers:
                return(TableType.Offers);

            case O2GTableType.Orders:
                return(TableType.Orders);

            case O2GTableType.Summary:
                return(TableType.Summary);

            case O2GTableType.Trades:
                return(TableType.Trades);

            case O2GTableType.TableUnknown:
                return(TableType.Unknown);
            }

            return(TableType.Unknown);
        }
        public void onAdded(string sRowID, O2GRow rowData)
        {
            O2GTableType type = rowData.TableType;

            switch (type)
            {
            case O2GTableType.Orders:
                O2GOrderRow orderRow = (O2GOrderRow)rowData;
                if (mBatchOrderMonitor != null && mRequestIDs.Contains(orderRow.RequestID))
                {
                    Console.WriteLine("The order has been added. Order ID: {0}, Rate: {1}, Time In Force: {2}",
                                      orderRow.OrderID,
                                      orderRow.Rate,
                                      orderRow.TimeInForce);
                    mBatchOrderMonitor.OnOrderAdded(orderRow);
                }
                break;

            case O2GTableType.Trades:
                O2GTradeRow tradeRow = (O2GTradeRow)rowData;
                if (mBatchOrderMonitor != null)
                {
                    mBatchOrderMonitor.OnTradeAdded(tradeRow);
                    if (mBatchOrderMonitor.IsBatchExecuted())
                    {
                        PrintResult();
                        mResponseListener.StopWaiting();
                    }
                }
                break;

            case O2GTableType.ClosedTrades:
                O2GClosedTradeRow closedTradeRow = (O2GClosedTradeRow)rowData;
                if (mBatchOrderMonitor != null)
                {
                    mBatchOrderMonitor.OnClosedTradeAdded(closedTradeRow);
                    if (mBatchOrderMonitor.IsBatchExecuted())
                    {
                        PrintResult();
                        mResponseListener.StopWaiting();
                    }
                }
                break;

            case O2GTableType.Messages:
                O2GMessageRow messageRow = (O2GMessageRow)rowData;
                if (mBatchOrderMonitor != null)
                {
                    mBatchOrderMonitor.OnMessageAdded(messageRow);
                    if (mBatchOrderMonitor.IsBatchExecuted())
                    {
                        PrintResult();
                        mResponseListener.StopWaiting();
                    }
                }
                break;
            }
        }
Esempio n. 4
0
        public void onAdded(string rowID, O2GRow rowData)
        {
            O2GTableType type = rowData.TableType;

            switch (type)
            {
            case O2GTableType.Offers:
                O2GOfferTableRow offers = (O2GOfferTableRow)(rowData);
                break;

            case O2GTableType.Accounts:
                O2GAccountTableRow account = (O2GAccountTableRow)(rowData);
                break;

            case O2GTableType.Trades:
                break;
            }
        }
Esempio n. 5
0
        public void onAdded(string sRowID, O2GRow rowData)
        {
            O2GTableType type = rowData.TableType;

            switch (type)
            {
            case O2GTableType.Orders:
                O2GOrderRow orderRow = (O2GOrderRow)rowData;
                if (mRequestID.Equals(orderRow.RequestID))
                {
                    mOrderID = orderRow.OrderID;
                    PrintOrder("New order is added", orderRow);
                }
                break;

            case O2GTableType.Trades:
                O2GTradeRow tradeRow = (O2GTradeRow)rowData;
                Console.WriteLine("Position is opened: TradeID='{0}', TradeIDOrigin='{1}'",
                                  tradeRow.TradeID, tradeRow.TradeIDOrigin);
                break;

            case O2GTableType.ClosedTrades:
                O2GClosedTradeRow closedTradeRow = (O2GClosedTradeRow)rowData;
                Console.WriteLine("Position is closed: TradeID='{0}'",
                                  closedTradeRow.TradeID);
                break;

            case O2GTableType.Messages:
                O2GMessageRow messageRow = (O2GMessageRow)rowData;
                string        text       = messageRow.Text;
                int           findPos    = text.IndexOf(mOrderID);
                if (findPos >= 0)
                {
                    Console.WriteLine("Feature='{0}', Message='{1}'",
                                      messageRow.Feature, text);
                }
                break;
            }
        }
Esempio n. 6
0
        public void onChanged(string rowID, O2GRow rowData)
        {
            O2GTableType type = rowData.TableType;

            switch (type)
            {
            case O2GTableType.Offers:
                O2GOfferTableRow offers = (O2GOfferTableRow)(rowData);
                break;

            case O2GTableType.Accounts:
                O2GAccountTableRow account = (O2GAccountTableRow)(rowData);
                break;

            case O2GTableType.Trades:
                O2GTradeTableRow trade = (O2GTradeTableRow)(rowData);
                break;

            case O2GTableType.Summary:
                O2GSummaryTableRow row = (O2GSummaryTableRow)(rowData);
                break;
            }
        }
Esempio n. 7
0
        public void onAdded(string sRowID, O2GRow rowData)
        {
            O2GTableType type = rowData.TableType;

            switch (type)
            {
            case O2GTableType.Orders:
                O2GOrderRow orderRow = (O2GOrderRow)rowData;
                if (mRequestID.Equals(orderRow.RequestID))
                {
                    if ((OrderMonitorNetting.IsClosingOrder(orderRow) || OrderMonitorNetting.IsOpeningOrder(orderRow)) &&
                        mOrderMonitor == null)
                    {
                        Console.WriteLine("The order has been added. Order ID: {0}, Rate: {1}, Time In Force: {2}",
                                          orderRow.OrderID,
                                          orderRow.Rate,
                                          orderRow.TimeInForce);
                        O2GTradeRow trade    = null;
                        string      sTradeID = orderRow.TradeID;
                        if (mTradesTable != null)
                        {
                            for (int j = 0; j < mTradesTable.Count; j++)
                            {
                                if (sTradeID.Equals(mTradesTable.getRow(j).TradeID))
                                {
                                    trade = mTradesTable.getRow(j);
                                    break;
                                }
                            }
                        }
                        if (trade == null)
                        {
                            mOrderMonitor = new OrderMonitorNetting(orderRow);
                        }
                        else
                        {
                            mOrderMonitor = new OrderMonitorNetting(orderRow, trade.Amount);
                        }
                    }
                }
                break;

            case O2GTableType.Trades:
                O2GTradeRow tradeRow = (O2GTradeRow)rowData;
                if (mOrderMonitor != null)
                {
                    mOrderMonitor.OnTradeAdded(tradeRow);
                    if (mOrderMonitor.IsOrderCompleted)
                    {
                        PrintResult();
                        mResponseListener.StopWaiting();
                    }
                }
                break;

            case O2GTableType.ClosedTrades:
                O2GClosedTradeRow closedTradeRow = (O2GClosedTradeRow)rowData;
                if (mOrderMonitor != null)
                {
                    mOrderMonitor.OnClosedTradeAdded(closedTradeRow);
                    if (mOrderMonitor.IsOrderCompleted)
                    {
                        PrintResult();
                        mResponseListener.StopWaiting();
                    }
                }
                break;

            case O2GTableType.Messages:
                O2GMessageRow messageRow = (O2GMessageRow)rowData;
                if (mOrderMonitor != null)
                {
                    mOrderMonitor.OnMessageAdded(messageRow);
                    if (mOrderMonitor.IsOrderCompleted)
                    {
                        PrintResult();
                        mResponseListener.StopWaiting();
                    }
                }
                break;
            }
        }
Esempio n. 8
0
        public Dictionary<string, Dictionary<string, string>> getTable(string sTable)
        {
            Dictionary<string, Dictionary<string, string>> curMap = new Dictionary<string, Dictionary<string, string>>();

            try
            {
                CtrlTimer.getInstance().startTimer("getTable." + sTable);
                tableType = GetTableType(sTable);
                curMap = loadMap(sTable);
            }
            catch (Exception ex)
            {
                log.debug("getTable exception: " + sTable + ", " + ex.Message);
            }
            finally
            {
                CtrlTimer.getInstance().stopTimer("getTable." + sTable);
            }
            //putRecentTable(sTable, curMap);
            return curMap;
        }