示例#1
0
 internal void OnTransReply(TransactionReply reply)
 {
     TransReply?.Invoke(this, reply);
     // this should happen only once per transaction id
     Trace.Assert(TransactionReply == null);
     TransactionReply = reply;
 }
示例#2
0
        private void ConnectToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ((ToolStripMenuItem)sender).Enabled = false;

            ChangeTextMainStatusBar("Загрузка базовых данных...");

            Trader.Connect();
            Trader.Objects.tTrades.OnNew += new MarketEvents <Trade> .eventElement(EventAllTrades);

            Trader.Objects.tSecurities.OnNew += new MarketEvents <Securities> .eventElement(EventNewSec);

            Trader.Objects.tMyTrades.OnNew += new MarketEvents <MyTrade> .eventElement(EventMyTrades);

            Trader.Objects.tOrders.OnNew += new MarketEvents <Order> .eventElement(EventOrders);

            Trader.Objects.tOrders.OnChange += new MarketEvents <Order> .eventElement(EventOrders);

            Trader.Objects.tStopOrders.OnNew += new MarketEvents <StopOrder> .eventElement(EventStopOrders);

            Trader.Objects.tStopOrders.OnChange += new MarketEvents <StopOrder> .eventElement(EventStopOrders);

            Trader.Objects.tPortfolios.OnNew += new MarketEvents <Portfolio> .eventElement(EventPortfolio);

            Trader.Objects.tPortfolios.OnChange += new MarketEvents <Portfolio> .eventElement(EventPortfolio);

            Trader.Objects.tPositions.OnNew += new MarketEvents <Position> .eventElement(EventPositions);

            Trader.Objects.tPositions.OnChange += new MarketEvents <Position> .eventElement(EventPositions);

            Trader.Objects.tQuote.OnChange += new MarketEvents <Quote> .eventElement(EventDepth);//ToolsQuote.eventQuote

            Trader.Objects.tTransaction.OnTransReply += new ToolsTrans.eventTrans((listReply) =>
            {
                Qlog.CatchException(() => {
                    if (listReply.Count() > 0)
                    {
                        TransReply r = listReply.Last();
                        //foreach (TransReply r in listReply)
                        if (r != null)
                        {
                            statusStrip1.GuiAsync(() =>
                            {
                                toolStripStatusLabel1.Text = r.ResultMsg;
                            });

                            ForEachWinDepth((f) =>
                            {
                                f.UpdateTransReply(r.ResultMsg);
                            });
                        }
                    }
                });
            });
        }
示例#3
0
 public void OnTransReply(TransactionReply reply)
 {
     TransReply?.Invoke(_quik, reply);
 }