hqchart 1.1.13921 → 1.1.13933

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. package/lib/umychart.NetworkFilterTest.vue.js +2 -2
  2. package/lib/umychart.vue.js +53 -37
  3. package/package.json +1 -1
  4. package/src/jscommon/umychart.DialogTooltip.js +166 -66
  5. package/src/jscommon/umychart.NetworkFilterTest.js +17 -0
  6. package/src/jscommon/umychart.js +144 -5
  7. package/src/jscommon/umychart.report.js +102 -1
  8. package/src/jscommon/umychart.resource/css/tools.css +11 -1
  9. package/src/jscommon/umychart.style.js +6 -0
  10. package/src/jscommon/umychart.testdata/DayKLine/IFL8.cfe.day.kline.js +8 -0
  11. package/src/jscommon/umychart.testdata/DayKLine/IFL8.cfe.day.kline.json +1 -0
  12. package/src/jscommon/umychart.testdata/DayKLine/IML8.cfe.day.kline.js +7 -0
  13. package/src/jscommon/umychart.testdata/DayKLine/IML8.cfe.day.kline.json +1 -0
  14. package/src/jscommon/umychart.testdata/M1KLine/ICL8.cfe.minute.kline.js +7 -0
  15. package/src/jscommon/umychart.testdata/M1KLine/ICL8.cfe.minute.kline.json +1 -0
  16. package/src/jscommon/umychart.testdata/M1KLine/IFL8.cfe.minute.kline.js +7 -0
  17. package/src/jscommon/umychart.testdata/M1KLine/IFL8.cfe.minute.kline.json +1 -0
  18. package/src/jscommon/umychart.testdata/M1KLine/IML8.cfe.minute.kline.js +7 -0
  19. package/src/jscommon/umychart.testdata/M1KLine/IML8.cfe.minute.kline.json +1 -0
  20. package/src/jscommon/umychart.testdata.js +17 -0
  21. package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +253 -7
  22. package/src/jscommon/umychart.version.js +1 -1
  23. package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +17 -0
  24. package/src/jscommon/umychart.vue/umychart.vue.js +413 -67
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.13921",
3
+ "version": "1.1.13933",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -16,6 +16,7 @@ function JSDialogTooltip()
16
16
  this.DivDialog=null;
17
17
  this.DragTitle=null;
18
18
  this.TitleBox=null; //{ DivTitle, DivName, DivName }
19
+ this.Style=0; //0=一行一个, 1=2行一个
19
20
 
20
21
  this.HQChart=null;
21
22
 
@@ -34,7 +35,7 @@ function JSDialogTooltip()
34
35
  this.PositionColor=g_JSChartResource.DialogTooltip.PositionColor;
35
36
  this.DateTimeColor=g_JSChartResource.DialogTooltip.DateTimeColor;
36
37
  this.LanguageID=JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID;
37
- this.MaxRowCount=18;
38
+ this.MaxRowCount=25;
38
39
 
39
40
  this.AryData=[];
40
41
  this.AryText=[];
@@ -42,9 +43,13 @@ function JSDialogTooltip()
42
43
  this.KItemCache=null;
43
44
  this.KItemCacheID=null;
44
45
 
45
- this.Inital=function(hqchart)
46
+ this.Inital=function(hqchart, option)
46
47
  {
47
- this.HQChart=hqchart;
48
+ this.HQChart=hqchart;
49
+ if (option)
50
+ {
51
+ if (IFrameSplitOperator.IsNumber(option.Style)) this.Style=option.Style;
52
+ }
48
53
  }
49
54
 
50
55
  this.Destroy=function()
@@ -107,36 +112,78 @@ function JSDialogTooltip()
107
112
  table.appendChild(tbody);
108
113
 
109
114
  this.AryData=[];
110
- for(var i=0;i<this.MaxRowCount;++i)
115
+ if (this.Style==1)
111
116
  {
112
- var rowItem={ Tr:null, TitleSpan:null, TextSpan:null };
113
-
114
- var trDom=document.createElement("tr");
115
- trDom.className='UMyChart_Tooltip_Group_Tr';
116
- tbody.appendChild(trDom);
117
- rowItem.Tr=trDom;
118
-
119
- var tdDom=document.createElement("td");
120
- tdDom.className="UMyChart_Tooltip_Title_Td"; //标题
121
- trDom.appendChild(tdDom);
122
-
123
- var spanDom=document.createElement("span");
124
- spanDom.className='UMyChart_Tooltip_Title_Span';
125
- spanDom.innerText='标题';
126
- tdDom.appendChild(spanDom);
127
- rowItem.TitleSpan=spanDom;
128
-
129
- var tdDom=document.createElement("td");
130
- tdDom.className="UMyChart_Tooltip_Text_Td"; //数值
131
- trDom.appendChild(tdDom);
132
-
133
- var spanDom=document.createElement("span");
134
- spanDom.className='UMyChart_Tooltip_Text_Span';
135
- spanDom.innerText='数值';
136
- tdDom.appendChild(spanDom);
137
- rowItem.TextSpan=spanDom;
138
-
139
- this.AryData.push(rowItem);
117
+ for(var i=0;i<this.MaxRowCount;++i)
118
+ {
119
+ var rowItem={ Tr:null, TitleSpan:null, TextSpan:null, Tr2:null };
120
+
121
+ var trDom=document.createElement("tr");
122
+ trDom.className='UMyChart_Tooltip_Group_Tr';
123
+ tbody.appendChild(trDom);
124
+ rowItem.Tr=trDom;
125
+
126
+ var tdDom=document.createElement("td");
127
+ tdDom.className="UMyChart_Tooltip_Text_Sinlge_Td"; //标题
128
+ trDom.appendChild(tdDom);
129
+
130
+ var spanDom=document.createElement("span");
131
+ spanDom.className='UMyChart_Tooltip_Title_Left_Span';
132
+ spanDom.innerText='标题';
133
+ tdDom.appendChild(spanDom);
134
+ rowItem.TitleSpan=spanDom;
135
+
136
+ var trDom=document.createElement("tr");
137
+ trDom.className='UMyChart_Tooltip_Group_Tr';
138
+ tbody.appendChild(trDom);
139
+ rowItem.Tr2=trDom;
140
+
141
+ var tdDom=document.createElement("td");
142
+ tdDom.className="UMyChart_Tooltip_Text_Sinlge_Td"; //数值
143
+ trDom.appendChild(tdDom);
144
+
145
+ var spanDom=document.createElement("span");
146
+ spanDom.className='UMyChart_Tooltip_Text_Span';
147
+ spanDom.innerText='数值';
148
+ tdDom.appendChild(spanDom);
149
+ rowItem.TextSpan=spanDom;
150
+
151
+ this.AryData.push(rowItem);
152
+ }
153
+ }
154
+ else
155
+ {
156
+ for(var i=0;i<this.MaxRowCount;++i)
157
+ {
158
+ var rowItem={ Tr:null, TitleSpan:null, TextSpan:null };
159
+
160
+ var trDom=document.createElement("tr");
161
+ trDom.className='UMyChart_Tooltip_Group_Tr';
162
+ tbody.appendChild(trDom);
163
+ rowItem.Tr=trDom;
164
+
165
+ var tdDom=document.createElement("td");
166
+ tdDom.className="UMyChart_Tooltip_Title_Td"; //标题
167
+ trDom.appendChild(tdDom);
168
+
169
+ var spanDom=document.createElement("span");
170
+ spanDom.className='UMyChart_Tooltip_Title_Span';
171
+ spanDom.innerText='标题';
172
+ tdDom.appendChild(spanDom);
173
+ rowItem.TitleSpan=spanDom;
174
+
175
+ var tdDom=document.createElement("td");
176
+ tdDom.className="UMyChart_Tooltip_Text_Td"; //数值
177
+ trDom.appendChild(tdDom);
178
+
179
+ var spanDom=document.createElement("span");
180
+ spanDom.className='UMyChart_Tooltip_Text_Span';
181
+ spanDom.innerText='数值';
182
+ tdDom.appendChild(spanDom);
183
+ rowItem.TextSpan=spanDom;
184
+
185
+ this.AryData.push(rowItem);
186
+ }
140
187
  }
141
188
 
142
189
 
@@ -196,7 +243,7 @@ function JSDialogTooltip()
196
243
  if (!this.KItemCache) return;
197
244
 
198
245
  if (this.HQChart.ClassName=='KLineChartContainer')
199
- this.AryText=this.GetFormatKlineTooltipText(this.KItemCache);
246
+ this.AryText=this.GetFormatKLineTooltipText(this.KItemCache);
200
247
  else if (this.HQChart.ClassName=='MinuteChartContainer')
201
248
  this.AryText=this.GetFormatMinuteTooltipText(this.KItemCache);
202
249
  else
@@ -213,12 +260,14 @@ function JSDialogTooltip()
213
260
  item.TextSpan.innerText=outItem.Text;
214
261
  item.TextSpan.style.color=outItem.Color;
215
262
  item.Tr.style.display="";
263
+ if (item.Tr2) item.Tr2.style.display="";
216
264
  }
217
265
 
218
266
  for( ; index<this.MaxRowCount; ++index)
219
267
  {
220
268
  var item=this.AryData[index];
221
269
  item.Tr.style.display="none";
270
+ if (item.Tr2) item.Tr2.style.display="none";
222
271
  }
223
272
  }
224
273
 
@@ -296,10 +345,13 @@ function JSDialogTooltip()
296
345
  }
297
346
 
298
347
 
299
- this.GetFormatKlineTooltipText=function(data)
348
+ this.GetFormatKLineTooltipText=function(data)
300
349
  {
301
350
  var defaultfloatPrecision=GetfloatPrecision(this.HQChart.Symbol);//价格小数位数
302
351
  var upperSymbol=this.HQChart.Symbol.toUpperCase();
352
+ var priceFormat=0;
353
+ if (this.Style==1) priceFormat=1;
354
+
303
355
  //日期
304
356
  var dateItem=this.ForamtDate(data.Date,"YYYY/MM/DD/W",'DialogTooltip-Date' );
305
357
 
@@ -310,18 +362,29 @@ function JSDialogTooltip()
310
362
  var yClose=data.YClose; //昨收价|昨结算价
311
363
  var aryText=
312
364
  [
313
- this.ForamtPrice(data.Open,yClose, defaultfloatPrecision,'DialogTooltip-Open'),
314
- this.ForamtPrice(data.High,yClose, defaultfloatPrecision,'DialogTooltip-High'),
315
- this.ForamtPrice(data.Low,yClose, defaultfloatPrecision,'DialogTooltip-Low'),
316
- this.ForamtPrice(data.Close,yClose, defaultfloatPrecision,'DialogTooltip-Close'),
365
+ this.ForamtPrice(data.Open,yClose, defaultfloatPrecision,'DialogTooltip-Open',priceFormat),
366
+ this.ForamtPrice(data.High,yClose, defaultfloatPrecision,'DialogTooltip-High',priceFormat),
367
+ this.ForamtPrice(data.Low,yClose, defaultfloatPrecision,'DialogTooltip-Low',priceFormat),
368
+ this.ForamtPrice(data.Close,yClose, defaultfloatPrecision,'DialogTooltip-Close',priceFormat),
317
369
  this.FormatVol(data.Vol,'DialogTooltip-Vol' ),
318
370
  this.FormatAmount(data.Amount,'DialogTooltip-Amount' ),
319
- this.FormatIncrease(data.Close,yClose,'DialogTooltip-Increase'),
320
- this.FormatAmplitude(data.High,data.Low,yClose,'DialogTooltip-Amplitude'),
371
+ this.FormatIncrease(data.Close,yClose,defaultfloatPrecision,'DialogTooltip-Increase',priceFormat),
372
+ this.FormatAmplitude(data.High,data.Low,yClose,defaultfloatPrecision,'DialogTooltip-Amplitude',priceFormat),
321
373
  ];
322
374
 
323
- if (timeItem) aryText.unshift(timeItem);
324
- aryText.unshift(dateItem);
375
+ if (this.Style==1)
376
+ {
377
+ if (timeItem) aryText.unshift(timeItem);
378
+ var dateItem=this.ForamtDate(data.Date,"YYYY/MM/DD",'DialogTooltip-Date' );
379
+ aryText.unshift(dateItem);
380
+ }
381
+ else
382
+ {
383
+ if (timeItem) aryText.unshift(timeItem);
384
+ aryText.unshift(dateItem);
385
+ }
386
+
387
+
325
388
 
326
389
  //换手率
327
390
  if (MARKET_SUFFIX_NAME.IsSHSZStockA(upperSymbol) && data.FlowCapital>0)
@@ -329,11 +392,18 @@ function JSDialogTooltip()
329
392
  aryText.push(this.FormatExchange(data.Vol,data.FlowCapital,'DialogTooltip-Exchange' ));
330
393
  }
331
394
 
332
- //持仓量
395
+ //持仓量 结算价
333
396
  if (MARKET_SUFFIX_NAME.IsFutures(upperSymbol))
334
397
  {
335
398
  aryText.push(this.FormatPosition(data.Position,'DialogTooltip-Position'));
336
- aryText.push(this.ForamtYClose(data.YClose, defaultfloatPrecision, 'DialogTooltip-YClose'));
399
+ aryText.push(this.ForamtFClose(data.FClose, defaultfloatPrecision, 'DialogTooltip-FClose'));
400
+ }
401
+
402
+ var event=this.HQChart.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_DIALOG_TOOLTIP_TEXT);
403
+ if (event && event.Callback)
404
+ {
405
+ var sendData={ AryText:aryText, Data:data, Symbol:this.HQChart.Symbol, HQChart:this.HQChart, IsKLine:true };
406
+ event.Callback(event, sendData, this);
337
407
  }
338
408
 
339
409
  return aryText;
@@ -342,24 +412,22 @@ function JSDialogTooltip()
342
412
  this.GetFormatMinuteTooltipText=function(data)
343
413
  {
344
414
  var defaultfloatPrecision=GetfloatPrecision(this.HQChart.Symbol);//价格小数位数
345
-
415
+ var aryText=[];
346
416
  if (data.Type==0) //连续交易
347
417
  {
348
418
  var item=data.Data;
349
419
  if (!item) item={ };
350
420
 
351
- var aryText=
421
+ aryText=
352
422
  [
353
- this.ForamtDate(item.Date,"YYYY/MM/DD/W",'DialogTooltip-Date' ),
423
+ this.ForamtDate(item.Date,this.Style==1?"YYYY/MM/DD":"YYYY/MM/DD/W",'DialogTooltip-Date' ),
354
424
  this.FormatTime(item.Time, null, "HH:MM", 'DialogTooltip-Time'),
355
- this.ForamtPrice(item.Close,item.YClose, defaultfloatPrecision,'DialogTooltip-Price'),
425
+ this.ForamtPrice(item.Close,item.YClose, defaultfloatPrecision,'DialogTooltip-Price', 1),
356
426
  this.FormatRisefall(item.Close,item.YClose, defaultfloatPrecision,'DialogTooltip-Risefall'),
357
- this.FormatIncrease(item.Close,item.YClose,'DialogTooltip-Increase'),
427
+ this.FormatIncrease(item.Close,item.YClose,defaultfloatPrecision,'DialogTooltip-Increase', 1),
358
428
  this.FormatVol(item.Vol,'DialogTooltip-Vol' ),
359
429
  this.FormatAmount(item.Amount,'DialogTooltip-Amount' ),
360
430
  ];
361
-
362
- return aryText;
363
431
  }
364
432
  else if (data.Type==1) //集合竞价
365
433
  {
@@ -368,19 +436,28 @@ function JSDialogTooltip()
368
436
 
369
437
  var timeForamt="HH:MM:SS";
370
438
  if (item.Ver===1) timeForamt="HH:MM"
371
- var aryText=
439
+ aryText=
372
440
  [
373
- this.ForamtDate(item.Date,"YYYY/MM/DD/W",'DialogTooltip-Date' ),
441
+ this.ForamtDate(item.Date,this.Style==1?"YYYY/MM/DD":"YYYY/MM/DD/W",'DialogTooltip-Date' ),
374
442
  this.FormatTime(item.Time, null, timeForamt, 'DialogTooltip-Time'),
375
- this.ForamtPrice(item.Price,item.YClose, defaultfloatPrecision,'DialogTooltip-AC-Price'),
376
- this.FormatIncrease(item.Price,item.YClose,'DialogTooltip-AC-Increase'),
443
+ this.ForamtPrice(item.Price,item.YClose, defaultfloatPrecision,'DialogTooltip-AC-Price',1),
444
+ this.FormatIncrease(item.Price,item.YClose,defaultfloatPrecision,'DialogTooltip-AC-Increase',1),
377
445
  this.FormatVol(item.Vol[0],'DialogTooltip-AC-Vol' ),
378
446
  ];
447
+ }
448
+ else
449
+ {
379
450
 
380
- return aryText;
381
451
  }
382
452
 
383
- return [];
453
+ var event=this.HQChart.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_DIALOG_TOOLTIP_TEXT);
454
+ if (event && event.Callback)
455
+ {
456
+ var sendData={ AryText:aryText, Data:data, Symbol:this.HQChart.Symbol, HQChart:this.HQChart, IsMinute:true };
457
+ event.Callback(event, sendData, this);
458
+ }
459
+
460
+ return aryText
384
461
  }
385
462
 
386
463
  this.GetColor=function(price,yClose)
@@ -434,7 +511,7 @@ function JSDialogTooltip()
434
511
 
435
512
  /////////////////////////////////////////////////////////////////////////////////////////////
436
513
  //数据格式化
437
- this.ForamtPrice=function(price, yClose, defaultfloatPrecision, TitleID)
514
+ this.ForamtPrice=function(price, yClose, defaultfloatPrecision, TitleID, format)
438
515
  {
439
516
  var item=
440
517
  {
@@ -445,7 +522,17 @@ function JSDialogTooltip()
445
522
 
446
523
  if (!IFrameSplitOperator.IsNumber(price)) return item;
447
524
 
448
- item.Text=price.toFixed(defaultfloatPrecision);
525
+ if (IFrameSplitOperator.IsNumber(yClose) && format!=1)
526
+ {
527
+ var value=(price-yClose)/yClose*100;
528
+ item.Text=`${price.toFixed(defaultfloatPrecision)}(${value.toFixed(2)}%)`;
529
+ }
530
+ else
531
+ {
532
+ item.Text=price.toFixed(defaultfloatPrecision);
533
+ }
534
+
535
+
449
536
  item.Color=this.GetColor(price, yClose);
450
537
 
451
538
  return item;
@@ -462,7 +549,7 @@ function JSDialogTooltip()
462
549
 
463
550
  if (!IFrameSplitOperator.IsNumber(vol)) return item;
464
551
 
465
- item.Text=IFrameSplitOperator.FormatValueString(vol,2,this.LanguageID);
552
+ item.Text=IFrameSplitOperator.FormatValueStringV2(vol,0,2,this.LanguageID);
466
553
 
467
554
  return item;
468
555
  }
@@ -483,7 +570,7 @@ function JSDialogTooltip()
483
570
  return item;
484
571
  }
485
572
 
486
- this.FormatIncrease=function(price, yClose, TitleID)
573
+ this.FormatIncrease=function(price, yClose, defaultfloatPrecision, TitleID, fromat)
487
574
  {
488
575
  //涨幅
489
576
  var item=
@@ -495,8 +582,19 @@ function JSDialogTooltip()
495
582
 
496
583
  if (!IFrameSplitOperator.IsNumber(price) || !IFrameSplitOperator.IsNumber(yClose)) return item;
497
584
 
585
+
586
+
587
+ var diffValue=price-yClose;
498
588
  var value=(price-yClose)/yClose;
499
- item.Text=`${(value*100).toFixed(2)}%`;
589
+ if (fromat==1)
590
+ {
591
+ item.Text=`${(value*100).toFixed(2)}%`;
592
+ }
593
+ else
594
+ {
595
+ item.Text=`${diffValue.toFixed(defaultfloatPrecision)}(${(value*100).toFixed(2)}%)`;
596
+ }
597
+
500
598
  item.Color=this.GetColor(value,0);
501
599
 
502
600
  return item;
@@ -521,9 +619,9 @@ function JSDialogTooltip()
521
619
  return item;
522
620
  }
523
621
 
524
- this.FormatAmplitude=function(high, low, yClose, TitleID)
622
+ this.FormatAmplitude=function(high, low, yClose, defaultfloatPrecision, TitleID, fromat)
525
623
  {
526
- //涨幅
624
+ //振幅
527
625
  var item=
528
626
  {
529
627
  Title:g_JSChartLocalization.GetText(TitleID,this.LanguageID),
@@ -534,8 +632,10 @@ function JSDialogTooltip()
534
632
 
535
633
  if (!IFrameSplitOperator.IsNumber(high) || !IFrameSplitOperator.IsNumber(low) || !IFrameSplitOperator.IsNumber(yClose)) return item;
536
634
 
635
+ var diffValue=high-low;
537
636
  var value=(high-low)/yClose;
538
- item.Text=`${(value*100).toFixed(2)}%`;
637
+ if (fromat==1) item.Text=`${(value*100).toFixed(2)}%`;
638
+ else item.Text=`${diffValue.toFixed(defaultfloatPrecision)}(${(value*100).toFixed(2)}%)`;
539
639
  item.Color=this.GetColor(value,0);
540
640
 
541
641
  return item;
@@ -621,7 +721,7 @@ function JSDialogTooltip()
621
721
  }
622
722
 
623
723
  //结算价
624
- this.ForamtYClose=function(value, defaultfloatPrecision, TitleID)
724
+ this.ForamtFClose=function(value, defaultfloatPrecision, TitleID)
625
725
  {
626
726
  var item=
627
727
  {
@@ -56846,6 +56846,8 @@ HQData.Keyboard_RequestSymbolList=function(data, callback)
56846
56846
  }
56847
56847
 
56848
56848
  arySymbol.push( { Symbol:"ICL8.cfe", Name:"中证主连", ShortSymbol:"ICL8", Spell:"ICL8", Type:"期货", TypeName:"期货", Data:{ Symbol:"ICL8.cfe", Type:0 } } );
56849
+ arySymbol.push( { Symbol:"IML8.cfe", Name:"中千主连", ShortSymbol:"IML8", Spell:"IML8", Type:"期货", TypeName:"期货", Data:{ Symbol:"IML8.cfe", Type:0 } } );
56850
+ arySymbol.push( { Symbol:"IFL8.cfe", Name:"沪深主连", ShortSymbol:"IFL8", Spell:"IFL8", Type:"期货", TypeName:"期货", Data:{ Symbol:"IFL8.cfe", Type:0 } } );
56849
56851
 
56850
56852
  arySymbol.push( { Symbol:"01", Name:"分时成交明细", TypeName:"功能键", Priority:1, Color:"rgb(220,20,60)" , Data:{ PageName:"分时成交明细", Type:2 }} );
56851
56853
  arySymbol.push( { Symbol:"02", Name:"分价表", TypeName:"功能键", Priority:1, Color:"rgb(220,20,60)" ,Data:{ PageName:"分价表", Type:2 }} );
@@ -56904,6 +56906,15 @@ HQData.GetM1KLineDataBySymbol=function(symbol)
56904
56906
  case "399006.sz":
56905
56907
  data=SZ_399006_M1_KLINE;
56906
56908
  break;
56909
+ case "ICL8.cfe":
56910
+ data=CFE_ICL8_M1_KLINE;
56911
+ break;
56912
+ case "IML8.cfe":
56913
+ data=CFE_IML8_M1_KLINE;
56914
+ break;
56915
+ case "IFL8.cfe":
56916
+ data=CFE_IFL8_M1_KLINE;
56917
+ break;
56907
56918
  default:
56908
56919
  data=SZ_000001_M1_KLINE;
56909
56920
  break;
@@ -56947,6 +56958,12 @@ HQData.GetDayKLineDataBySymbol=function(symbol)
56947
56958
  case "ICL8.cfe":
56948
56959
  data=CFE_ICL8_DAY_KLINE;
56949
56960
  break;
56961
+ case "IML8.cfe":
56962
+ data=CFE_IML8_DAY_KLINE;
56963
+ break;
56964
+ case "IFL8.cfe":
56965
+ data=CFE_IFL8_DAY_KLINE;
56966
+ break;
56950
56967
  default:
56951
56968
  data=SZ_000001_DAY_KLINE;
56952
56969
  break;