@@ -31,7 +31,9 @@ public class DataReceiver:ApiBase
3131 public string IncludeFilterListFileName = @"IncludeFilterList.json" ;
3232 public string ExcludeFilterListFileName = @"ExcludeFilterList.json" ;
3333
34- public string SaveAsInstrumentInfoListFileName = @"InstrumentInfoList.json" ;
34+ public string SaveAsFilteredInstrumentInfoListFileName = @"FilteredInstrumentInfoList.json" ;
35+ public string SaveAsSubscribedInstrumentInfoListFileName = @"SubscribedInstrumentInfoList.json" ;
36+
3537 public string SaveAsTradingDayFileName = @"TradingDay.json" ;
3638
3739 public string ScheduleTasksListFileName = @"ScheduleTasks.json" ;
@@ -133,6 +135,7 @@ public void ProcessConfig(string fullPath)
133135 SaveAsInstrumentInfoList ( ) ;
134136 }
135137
138+ // 可用于定时订阅
136139 public void ReSubscribe ( )
137140 {
138141 Log . Info ( "重新订阅:{0}" , InstrumentInfoList . Count ( ) ) ;
@@ -209,11 +212,11 @@ public void Save()
209212 }
210213
211214 /// <summary>
212- /// 这里保存的是过滤后的合约列表,也就是正在订阅的合约列表,保存在其它地方可供用户下载或检测
215+ /// 这里保存的是过滤后的合约列表,这不是订阅成功的列表
213216 /// </summary>
214217 public void SaveAsInstrumentInfoList ( )
215218 {
216- Save ( DataPath , SaveAsInstrumentInfoListFileName , InstrumentInfoList ) ;
219+ Save ( DataPath , SaveAsFilteredInstrumentInfoListFileName , InstrumentInfoList ) ;
217220 }
218221
219222 public void SaveAsTradingDay ( )
@@ -288,6 +291,15 @@ public void Connect()
288291 }
289292 }
290293
294+ // 可用来定时断开连接
295+ //public void Disconnect()
296+ //{
297+ // foreach(var api in XApiList)
298+ // {
299+ // api.Disconnect();
300+ // }
301+ //}
302+
291303 public bool Contains ( string szInstrument , string szExchange )
292304 {
293305 foreach ( var api in XApiList )
@@ -354,6 +366,8 @@ public void RemoveInstrument(InstrumentInfo i)
354366 /// <param name="list"></param>
355367 public int Subscribe ( IEnumerable < InstrumentInfo > list )
356368 {
369+ List < InstrumentInfo > SubscribedInstrumentInfoList = new List < InstrumentInfo > ( ) ;
370+
357371 int x = 0 ;
358372 foreach ( var i in list )
359373 {
@@ -369,6 +383,7 @@ public int Subscribe(IEnumerable<InstrumentInfo> list)
369383 api . Subscribe ( i . Instrument , i . Exchange ) ;
370384 api . Log . Debug ( "尝试订阅:{0}.{1}" , i . Instrument , i . Exchange ) ;
371385 bSubscribe = true ;
386+ SubscribedInstrumentInfoList . Add ( i ) ;
372387 break ;
373388 }
374389 }
@@ -379,6 +394,10 @@ public int Subscribe(IEnumerable<InstrumentInfo> list)
379394 ++ x ;
380395 }
381396 }
397+
398+ // 记录实际订阅的合约
399+ Save ( DataPath , SaveAsSubscribedInstrumentInfoListFileName , SubscribedInstrumentInfoList ) ;
400+
382401 return x ;
383402 }
384403
0 commit comments