private void OnData(string strSymbol, int nStatus, int nCount) { string lsymbol = qc.SymbolGetStringData(strSymbol, -1, 0); string labbrname = utility.getAbbrnameFromICEID(lsymbol); double ltime = qc.SymbolGetValueData(strSymbol, -1, 2); double ltrade = qc.SymbolGetValueData(strSymbol, -1, 3) / 1000000; double lvolume = qc.SymbolGetValueData(strSymbol, -1, 6); double lbid = qc.SymbolGetValueData(strSymbol, -1, 30) / 1000000; double lask = qc.SymbolGetValueData(strSymbol, -1, 50) / 1000000; double loi = qc.SymbolGetValueData(strSymbol, -1, 91); if (lvolume < 0) { return; } if (ltrade < 0) { return; } TickReport atick = new TickReport(labbrname, ltime, ltrade, lvolume, lbid, lask, loi); logger.Info(atick.info()); onTick(atick); }