private void OnRspArbitrageInstrument(IntPtr pTraderApi, ref DFITCAbiInstrumentRtnField pAbiInstrumentData, ref DFITCErrorRtnField pErrorInfo, bool bIsLast)
 {
     if (0 == pErrorInfo.nErrorID)
     {
         if (pAbiInstrumentData.InstrumentID.Length > 0)
         {
             _dictAbiInstruments[pAbiInstrumentData.InstrumentID] = pAbiInstrumentData;
             if (bIsLast)
             {
                 tdlog.Info("{0} 组合已经接收完成,当前总计{1}", pAbiInstrumentData.ExchangeID, _dictAbiInstruments.Count);
             }
         }
     }
     else
     {
         tdlog.Error("nRequestID:{0},ErrorID:{1},OnRspArbitrageInstrument:{2}", pErrorInfo.requestID, pErrorInfo.nErrorID, pErrorInfo.errorMsg);
         EmitError(pErrorInfo.requestID, pErrorInfo.nErrorID, "OnRspArbitrageInstrument:" + pErrorInfo.errorMsg);
     }
 }
 private static int SortDFITCAbiInstrumentRtnField(DFITCAbiInstrumentRtnField a1, DFITCAbiInstrumentRtnField a2)
 {
     return a1.InstrumentID.CompareTo(a2.InstrumentID);
 }