Esempio n. 1
0
        private void ST74ZxO7ZP([In] object obj0, [In] FIXMarketDataSnapshotEventArgs obj1)
        {
            Console.WriteLine(BeAEwTZGlZaeOmY5cm.J00weU3cM6(4536));
            FIXMarketDataSnapshot snapshotFullRefresh = obj1.MarketDataSnapshotFullRefresh;
            Instrument            instrument          = InstrumentManager.Instruments[(this.mdRequests[(object)snapshotFullRefresh.MDReqID] as RequestRecord).Symbol];
            Trade trade = this.OEp4ErKILr[(object)instrument] as Trade;
            Quote quote = this.Hmv4SHEnBE[(object)instrument] as Quote;

            if (trade == null)
            {
                trade = new Trade();
                this.OEp4ErKILr[(object)instrument] = (object)trade;
            }
            if (quote == null)
            {
                quote = new Quote();
                this.Hmv4SHEnBE[(object)instrument] = (object)quote;
            }
            bool flag1 = false;
            bool flag2 = false;

            for (int i = 0; i < snapshotFullRefresh.NoMDEntries; ++i)
            {
                FIXMDEntriesGroup mdEntriesGroup = snapshotFullRefresh.GetMDEntriesGroup(i);
                switch (mdEntriesGroup.MDEntryType)
                {
                case '0':
                    if (quote.Bid != mdEntriesGroup.MDEntryPx || quote.BidSize != (int)mdEntriesGroup.MDEntrySize)
                    {
                        quote.DateTime = Clock.Now;
                        quote.Bid      = mdEntriesGroup.MDEntryPx;
                        quote.BidSize  = (int)mdEntriesGroup.MDEntrySize;
                        flag2          = true;
                        break;
                    }
                    else
                    {
                        break;
                    }

                case '1':
                    if (quote.Ask != mdEntriesGroup.MDEntryPx || quote.AskSize != (int)mdEntriesGroup.MDEntrySize)
                    {
                        quote.DateTime = Clock.Now;
                        quote.Ask      = mdEntriesGroup.MDEntryPx;
                        quote.AskSize  = (int)mdEntriesGroup.MDEntrySize;
                        flag2          = true;
                        break;
                    }
                    else
                    {
                        break;
                    }

                case '2':
                    if (trade.Price != mdEntriesGroup.MDEntryPx || trade.Size != (int)mdEntriesGroup.MDEntrySize)
                    {
                        trade.DateTime = Clock.Now;
                        trade.Price    = mdEntriesGroup.MDEntryPx;
                        trade.Size     = (int)mdEntriesGroup.MDEntrySize;
                        flag1          = true;
                        break;
                    }
                    else
                    {
                        break;
                    }
                }
            }
            if (flag1 && this.odL46gHXsq != null)
            {
                this.odL46gHXsq((object)this, new TradeEventArgs(new Trade(trade), (IFIXInstrument)instrument, (IMarketDataProvider)this));
            }
            if (flag2 && this.uQX4e0V1fj != null)
            {
                this.uQX4e0V1fj((object)this, new QuoteEventArgs(new Quote(quote), (IFIXInstrument)instrument, (IMarketDataProvider)this));
            }
            if (this.oSc4rhuvbm == null)
            {
                return;
            }
            this.oSc4rhuvbm((object)this, new MarketDataSnapshotEventArgs(obj1.MarketDataSnapshotFullRefresh));
        }
Esempio n. 2
0
        private void hvUXgZCyf([In] object obj0, [In] FIXMarketDataSnapshotEventArgs obj1)
        {
            Console.WriteLine(BeAEwTZGlZaeOmY5cm.J00weU3cM6(2674));
            FIXMarketDataSnapshot snapshotFullRefresh = obj1.MarketDataSnapshotFullRefresh;
            Instrument            instrument          = InstrumentManager.Instruments[(this.mdRequests[(object)snapshotFullRefresh.MDReqID] as RequestRecord).Symbol];
            Trade trade = this.nWHTWovCn[(object)instrument] as Trade;
            Quote quote = this.ojqxnwuNv[(object)instrument] as Quote;

            if (trade == null)
            {
                trade = new Trade();
                this.nWHTWovCn[(object)instrument] = (object)trade;
            }
            if (quote == null)
            {
                quote = new Quote();
                this.ojqxnwuNv[(object)instrument] = (object)quote;
            }
            bool flag1 = false;
            bool flag2 = false;

            for (int i = 0; i < snapshotFullRefresh.NoMDEntries; ++i)
            {
                FIXMDEntriesGroup mdEntriesGroup = snapshotFullRefresh.GetMDEntriesGroup(i);
                switch (mdEntriesGroup.MDEntryType)
                {
                case '0':
                    if (quote.Bid != mdEntriesGroup.MDEntryPx || quote.BidSize != (int)mdEntriesGroup.MDEntrySize)
                    {
                        quote.DateTime = Clock.Now;
                        quote.Bid      = mdEntriesGroup.MDEntryPx;
                        quote.BidSize  = (int)mdEntriesGroup.MDEntrySize;
                        flag2          = true;
                        break;
                    }
                    else
                    {
                        break;
                    }

                case '1':
                    if (quote.Ask != mdEntriesGroup.MDEntryPx || quote.AskSize != (int)mdEntriesGroup.MDEntrySize)
                    {
                        quote.DateTime = Clock.Now;
                        quote.Ask      = mdEntriesGroup.MDEntryPx;
                        quote.AskSize  = (int)mdEntriesGroup.MDEntrySize;
                        flag2          = true;
                        break;
                    }
                    else
                    {
                        break;
                    }

                case '2':
                    if (trade.Price != mdEntriesGroup.MDEntryPx || trade.Size != (int)mdEntriesGroup.MDEntrySize)
                    {
                        trade.DateTime = Clock.Now;
                        trade.Price    = mdEntriesGroup.MDEntryPx;
                        trade.Size     = (int)mdEntriesGroup.MDEntrySize;
                        flag1          = true;
                        break;
                    }
                    else
                    {
                        break;
                    }
                }
            }
            if (flag1 && this.afmKM6OC6L != null)
            {
                this.afmKM6OC6L((object)this, new TradeEventArgs(new Trade(trade), (IFIXInstrument)instrument, (IMarketDataProvider)this));
            }
            if (flag2 && this.C1azfVlsV != null)
            {
                this.C1azfVlsV((object)this, new QuoteEventArgs(new Quote(quote), (IFIXInstrument)instrument, (IMarketDataProvider)this));
            }
            if (this.yT3KaHE6As == null)
            {
                return;
            }
            this.yT3KaHE6As((object)this, new MarketDataSnapshotEventArgs(obj1.MarketDataSnapshotFullRefresh));
        }