void MBTQUOTELib.IMbtQuotesNotify.OnTSData(ref TSRECORD pRec) { TickImpl k = new TickImpl(); k.symbol = pRec.bstrSymbol; enumTickType tt = (enumTickType)pRec.lType; switch (tt) { case enumTickType.ttAskTick: k.ask = (decimal)pRec.dPrice; k.oe = pRec.bstrExchange; k.os = pRec.lSize; break; case enumTickType.ttBidTick: k.bid = (decimal)pRec.dPrice; k.be = pRec.bstrExchange; k.bs = pRec.lSize; break; case enumTickType.ttTradeTick: k.trade = (decimal)pRec.dPrice; k.ex = pRec.bstrExchange; k.size = pRec.lSize; break; } tl.newTick(k); }
void MBTQUOTELib.IMbtQuotesNotify.OnTSData(ref TSRECORD pRec) { lock ( tsDataLocker) { try { ProcessTimeAndSales(ref pRec); } catch (Exception ex) { log.Notice(ex.ToString()); } } }
public void ProcessTimeAndSales(ref TSRECORD pTimeAndSales) { if (trace) { log.Trace("TimeAndSale: " + pTimeAndSales.bstrExchange + ", " + pTimeAndSales.bstrSymbol + ", " + pTimeAndSales.cond + ", " + pTimeAndSales.dPrice + ", " + pTimeAndSales.lSize + ", " + pTimeAndSales.lType + ", " + pTimeAndSales.status + ", " + pTimeAndSales.tick + ", " + pTimeAndSales.type + ", " + pTimeAndSales.UTCDateTime); } int InsideMarketHours = 30030; if (pTimeAndSales.status == enumTickStatus.tsNormal && pTimeAndSales.type == enumTickType.ttTradeTick && pTimeAndSales.cond == enumTickCondition.tcTrade_RegularSale && pTimeAndSales.lType == InsideMarketHours) { CreateTick(); lastAsk = lastBid = pTimeAndSales.dPrice; CheckSignalSync(); tick.SetTrade(pTimeAndSales.dPrice, pTimeAndSales.lSize); if (Symbol.QuoteType == QuoteType.Level1) { TryAddLevel1(); } else if (Symbol.QuoteType == QuoteType.Level2) { TryAddLevel2(); } SendTick(); } }
void MBTQUOTELib.IMbtQuotesNotify.OnTSData(ref TSRECORD pRec) { TickImpl k = new TickImpl(); k.symbol = pRec.bstrSymbol; enumTickType tt = (enumTickType)pRec.lType; switch (tt) { case enumTickType.ttAskTick: k.ask = (decimal)pRec.dPrice; k.oe = pRec.bstrExchange; k.os = pRec.lSize; break; case enumTickType.ttBidTick: k.bid = (decimal)pRec.dPrice; k.be = pRec.bstrExchange; k.bs= pRec.lSize; break; case enumTickType.ttTradeTick: k.trade = (decimal)pRec.dPrice; k.ex = pRec.bstrExchange; k.size= pRec.lSize; break; } tl.newTick(k); }
void IMbtQuotesNotify.OnTSData (ref TSRECORD data) { }
void IMbtQuotesNotify.OnTSData(ref TSRECORD pRec) { throw new NotImplementedException(); }