hqchart 1.1.15111 → 1.1.15126

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.15111",
3
+ "version": "1.1.15126",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -307,7 +307,7 @@ function JSDialogSearchIndex()
307
307
  var indexItem=cellItem.IndexItem;
308
308
  if (indexItem.Type==0 ) //系统指标
309
309
  {
310
- this.HQChart.ChangeIndex(this.OpData.WindowIndex, indexItem.ID );
310
+ this.HQChart.ChangeIndex(this.OpData.WindowIndex, indexItem.ID, indexItem);
311
311
  }
312
312
  else if(indexItem.Type==4 || indexItem.Type==5) //五彩K线
313
313
  {
@@ -338,6 +338,7 @@ function JSDialogSearchIndex()
338
338
  if (indexItem.Type==0) //系统指标
339
339
  {
340
340
  var obj={ WindowIndex:this.OpData.WindowIndex, IndexName:indexItem.ID };
341
+ if (indexItem.Lock) obj.Lock=indexItem.Lock;
341
342
  this.HQChart.AddOverlayIndex(obj);
342
343
  }
343
344
  else if (indexItem.Type==1) //自定义脚本指标
@@ -802,11 +803,7 @@ JSDialogSearchIndex.GetDefaultIndexData=function()
802
803
  [
803
804
  { Name:"收盘线(后台指标)", ID:"API-DRAWTEXTREL", Type:2, Args:null },
804
805
  { Name:"高低均价(自定义脚本)", ID:"HIGH_LOW_AV", Type:1, Script:"均价:(H+L)/2;高:H;低:L;", Args:[ { Name:'N', Value:20}, { Name:'M', Value:6}]},
805
- {
806
- Name:"波段量能跟庄-波段量能", ID:"TEST_INDEX_4AE0_1", Type:1, Args:null,
807
- Script:TEST_INDEX_4AE0_1,
808
- Lock:{ IsLocked:true }
809
- }
806
+ { Name:"指标异常(后台指标)", ID:"API_ERRORMESSAGE", Type:2, Args:null,}
810
807
  ]
811
808
  },
812
809
  {
@@ -814,11 +811,8 @@ JSDialogSearchIndex.GetDefaultIndexData=function()
814
811
  AryIndex:
815
812
  [
816
813
  { Name:"面积图(后台指标)", ID:"API-DRAWBAND", Type:2, Args:null, Lock:{ IsLocked:true } },
817
- {
818
- Name:"波段量能跟庄-波段量能", ID:"TEST_INDEX_4AE0_1", Type:1, Args:null,
819
- Script:TEST_INDEX_4AE0_1,
820
- Lock:{ IsLocked:true }
821
- }
814
+ { Name:"波段量能跟庄-波段量能", ID:"TEST_INDEX_4AE0_1", Type:0, Lock:{ IsLocked:true } },
815
+ { Name:"飞龙八级进-主图", ID:"TEST_INDEX_4AE0_2", Type:0, Lock:{ IsLocked:true } }
822
816
  ]
823
817
  },
824
818
  {
@@ -1321,6 +1315,7 @@ function JSDialogModifyIndexParam()
1321
1315
  /////////////////////////////////////////////////////////////////////////////////////////////
1322
1316
  //测试指标
1323
1317
 
1318
+
1324
1319
  var TEST_INDEX_4AE0_1=`能量:=SQRT(VOL)*(((C-(H+L)/2))/((H+L)/2));
1325
1320
  平滑能量:=EMA(能量,16);
1326
1321
  能量惯性:EMA(平滑能量,16);
@@ -1337,5 +1332,110 @@ STICKLINE(能量惯性<0,(能量惯性-能量惯性*0.6),(能量惯性-能量惯
1337
1332
  STICKLINE(能量惯性<0,(能量惯性-能量惯性*0.8),(能量惯性-能量惯性*0.95),3,0), COLORFFFF00;`
1338
1333
 
1339
1334
 
1335
+ var TEST_INDEX_4AE0_2=`
1336
+ MA3:MA(CLOSE,3),COLORWHITE;
1337
+ MA17:MA(CLOSE,17),COLORYELLOW;
1338
+ QQ:=0,COLORWHITE;
1339
+ MA1:=MA(CLOSE,3);
1340
+ MA2:=MA(CLOSE,17);
1341
+ JG:=CROSS(MA1,MA2);
1342
+ VOLUME:=VOL,VOLSTICK;
1343
+ MAVOL1:=MA(VOLUME,3);
1344
+ MAVOL2:=MA(VOLUME,17);
1345
+ NL:=CROSS(MAVOL1,MAVOL2);
1346
+ DIF:=EMA(CLOSE,12)-EMA(CLOSE,26);
1347
+ DEA:=EMA(DIF,9);
1348
+ MACD:=(DIF-DEA)*2,COLORSTICK;
1349
+ NA:=CROSS(DIF,DEA);
1350
+ RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
1351
+ K:=SMA(RSV,9,1);
1352
+ D:=SMA(K,9,1);
1353
+ J:=3*K-2*D;
1354
+ KD:=CROSS(K,D) AND CROSS(J,D);
1355
+ 飞龙八级进:DRAWTEXT((JG AND NL AND NA) OR (JG AND NL AND KD) OR
1356
+ (JG AND NA AND KD) OR (NL AND NA AND KD),L*0.95,' 飞龙八级进'),COLORYELLOW;
1357
+ X:=LLV(J,2)=LLV(J,8);
1358
+ Y:=IF(CROSS(J,REF(J+0.01,1)) AND X AND J<20,30,0);
1359
+ DRAWTEXT(CROSS(J,REF(J+0.01,1)) AND X AND J<20,LOW*0.98,''),COLORLIMAGENTA;
1360
+ 空:=EMA(C,5);
1361
+ 均衡:=EMA(空,5),COLORWHITE;
1362
+ 中轨:=HHV(MA(H,13),13),COLORRED,LINETHICK2;
1363
+ VAR5:=FILTER(均衡>REF(均衡,1)AND 中轨<REF(中轨,1)AND C>REF(C,1),11);
1364
+ DRAWTEXT(VAR5,L*0.98,''),COLORYELLOW;
1365
+ PT:=XMA(H,20);
1366
+ PAN:=XMA(CLOSE,7),COLORBROWN;
1367
+ RUO:=MEMA(CLOSE,3),COLORLIBLUE;
1368
+ STICKLINE(CLOSE> REF(CLOSE,1) ,HIGH,LOW,0,1 ),COLORRED;
1369
+ STICKLINE(CLOSE> REF(CLOSE,1) ,OPEN,CLOSE,3,0 ),COLOR000055;
1370
+ STICKLINE(CLOSE> REF(CLOSE,1) ,OPEN,CLOSE,2.7,0 ),COLOR000077;
1371
+ STICKLINE(CLOSE> REF(CLOSE,1) ,OPEN,CLOSE,2.1,0 ),COLOR000099;
1372
+ STICKLINE(CLOSE> REF(CLOSE,1) ,OPEN,CLOSE,1.5,0 ),COLOR0000BB;
1373
+ STICKLINE(CLOSE> REF(CLOSE,1) ,OPEN,CLOSE,0.9,0 ),COLOR0000DD;
1374
+ STICKLINE(CLOSE> REF(CLOSE,1) ,OPEN,CLOSE,0.3,0 ),COLOR0000FF;
1375
+ STICKLINE(CLOSE= REF(CLOSE,1) ,HIGH,LOW,0,1 ),COLORWHITE;
1376
+ STICKLINE(CLOSE= REF(CLOSE,1) ,OPEN,CLOSE,3,0 ),COLOR555555;
1377
+ STICKLINE(CLOSE= REF(CLOSE,1) ,OPEN,CLOSE,2.7,0 ),COLOR777777;
1378
+ STICKLINE(CLOSE= REF(CLOSE,1) ,OPEN,CLOSE,2.1,0 ),COLOR999999;
1379
+ STICKLINE(CLOSE= REF(CLOSE,1) ,OPEN,CLOSE,1.5,0 ),COLORBBBBBB;
1380
+ STICKLINE(CLOSE= REF(CLOSE,1) ,OPEN,CLOSE,0.9,0 ),COLORDDDDDD;
1381
+ STICKLINE(CLOSE= REF(CLOSE,1) ,OPEN,CLOSE,0.3,0 ),COLORFFFFFF;
1382
+ STICKLINE(CLOSE< REF(CLOSE,1) ,HIGH,LOW,0,1 ),COLORCYAN;
1383
+ STICKLINE(CLOSE< REF(CLOSE,1) ,OPEN,CLOSE,3,0 ),COLOR990000;
1384
+ STICKLINE(CLOSE< REF(CLOSE,1) ,OPEN,CLOSE,2.7,0 ),COLORCC0000;
1385
+ STICKLINE(CLOSE< REF(CLOSE,1) ,OPEN,CLOSE,2.1,0 ),COLORFF4400;
1386
+ STICKLINE(CLOSE< REF(CLOSE,1) ,OPEN,CLOSE,1.5,0 ),COLORFF8800;
1387
+ STICKLINE(CLOSE< REF(CLOSE,1) ,OPEN,CLOSE,0.9,0 ),COLORFFCC00;
1388
+ STICKLINE(CLOSE< REF(CLOSE,1) ,OPEN,CLOSE,0.3,0 ),COLORCYAN;
1389
+ 高:=REF(HHV(H,80),3);
1390
+ 低:=REF(LLV(L,80),3);
1391
+ H19:=高-(高-低)*0.191;
1392
+ H38:=高-(高-低)*0.382;
1393
+ H中:=高-(高-低)*0.5;
1394
+ H61:=高-(高-低)*0.618;
1395
+ H80:=高-(高-低)*0.809;
1396
+ 顶点:REFDATE(高,DATE),COLORWHITE;
1397
+ REFDATE(H19,DATE),COLORYELLOW;
1398
+ REFDATE(H38,DATE),COLORMAGENTA;
1399
+ REFDATE(H中,DATE),COLORRED;
1400
+ REFDATE(H61,DATE),COLORMAGENTA;
1401
+ REFDATE(H80,DATE),COLORYELLOW;
1402
+ 低点:REFDATE(低,DATE),COLORWHITE;
1403
+ DRAWTEXT(ISLASTBAR,低点,''),COLORWHITE;
1404
+ `
1405
+
1406
+
1407
+ //添加测试系统指标
1408
+ AddTestSystemIndex=function()
1409
+ {
1410
+ var aryIndex=[];
1411
+
1412
+ aryIndex.push(
1413
+ {
1414
+ ID:"TEST_INDEX_4AE0_1",
1415
+ Name: '波段量能跟庄-波段量能',
1416
+ Script:TEST_INDEX_4AE0_1,
1417
+ Args: null,
1418
+
1419
+ });
1420
+
1421
+
1422
+ aryIndex.push(
1423
+ {
1424
+ ID:"TEST_INDEX_4AE0_2", //指标ID
1425
+ Name:'飞龙八级进-主图', //指标名称
1426
+ Description:'飞龙八级进', //描述信息
1427
+ IsMainIndex:true, //是否是主图指标
1428
+ Condition: { Period:[CONDITION_PERIOD.KLINE_DAY_ID], Message:"指标(飞龙八级进-主图)只支持日线周期" },
1429
+ Args:null, //指标参数
1430
+ Script:TEST_INDEX_4AE0_2,
1431
+ });
1432
+
1433
+ JSIndexScript.AddIndex(aryIndex);
1434
+ }
1435
+
1436
+
1437
+ AddTestSystemIndex();
1438
+
1439
+
1340
1440
 
1341
1441
 
@@ -55865,7 +55865,7 @@ HQData.Minute_RequestMinuteData=function(data, callback)
55865
55865
  }
55866
55866
 
55867
55867
  //盘中
55868
- stockItem.minute.length=50;
55868
+ //stockItem.minute.length=50;
55869
55869
  //测试用 这里可以修改数据
55870
55870
  //var lastItem=srcStock.minute[srcStock.minute.length-1];
55871
55871
  //lastItem.price+=Math.ceil(Math.random()*10)/1000*lastItem.price;
@@ -57481,6 +57481,9 @@ HQData.Report_RequestStockData=function(data, callback)
57481
57481
  var testDate=new Date();
57482
57482
  testDate.setHours(testDate.getHours() + i*2)
57483
57483
  newItem[401]={ DateTime:testDate } ;
57484
+
57485
+
57486
+ newItem[JSCHART_DATA_FIELD_ID.REPORT_EXTENDDATA]={ Value:"ddddd" };
57484
57487
 
57485
57488
 
57486
57489
  item.Data=newItem;
@@ -58198,6 +58201,8 @@ HQData.Report_APIIndex=function(data, callback)
58198
58201
  HQData.APIIndex_SCATTER_PLOT_V2(data, callback);
58199
58202
  else if (request.Data.indexname=="API_KLINE_TABLE")
58200
58203
  HQData.APIIndex_KLINE_TABLE(data, callback);
58204
+ else if (request.Data.indexname=="API_MINUTE_TABLE")
58205
+ HQData.APIIndex_MINUTE_TABLE(data, callback);
58201
58206
  else if (request.Data.indexname=="API_DRAWSVG")
58202
58207
  HQData.APIIndex_DRAWSVG(data, callback);
58203
58208
  else if (request.Data.indexname=="API_BASELINE_BAR")
@@ -58205,6 +58210,9 @@ HQData.Report_APIIndex=function(data, callback)
58205
58210
  else if (request.Data.indexname=="API_VERTLINE")
58206
58211
  HQData.APIIndex_VERTLINE(data, callback);
58207
58212
 
58213
+ else if (request.Data.indexname=="API_ERRORMESSAGE")
58214
+ HQData.APIIndex_ErrorMessage(data, callback);
58215
+
58208
58216
 
58209
58217
  //付费图形
58210
58218
  else if (request.Data.indexname=="API_MARK_AREA_V2")
@@ -59400,6 +59408,114 @@ HQData.APIIndex_KLINE_TABLE=function(data, callback)
59400
59408
  }
59401
59409
 
59402
59410
 
59411
+ HQData.APIIndex_MINUTE_TABLE=function(data, callback)
59412
+ {
59413
+ data.PreventDefault=true;
59414
+ var hqchart=data.HQChart;
59415
+ var kData=data.HQChart.GetKData(); //hqchart图形的分钟数据
59416
+
59417
+ var tableData=
59418
+ {
59419
+ name:'JS_CHART_MINUTETABLE_9DFC', type:1,
59420
+ Draw:
59421
+ {
59422
+ DrawType:'JS_CHART_MINUTETABLE_9DFC',
59423
+ DrawData:[ ] , //数据 [ [ { Text, Color: BGColor }, ...... ], [],]
59424
+
59425
+ Config:
59426
+ {
59427
+ //BGColor:"rgba(238,232,205,0.5)",
59428
+ //BorderColor:"rgb(220,220,220)",
59429
+ TextColor:"rgb(250,250,250)",
59430
+ ItemMergin:{ Left:1, Right:1, Top:0, Bottom:0, YOffset:0 },
59431
+ TextFont:{ Family:'微软雅黑' , FontMaxSize:14*GetDevicePixelRatio(), },
59432
+ Style:1,
59433
+ CellWidth:18*GetDevicePixelRatio(),
59434
+ CellHeight:14*GetDevicePixelRatio(),
59435
+ RowCount:2,
59436
+ LineColor:"rgb(5,105,225)",
59437
+ LineDash:[5*GetDevicePixelRatio(),5*GetDevicePixelRatio()],
59438
+ }
59439
+ },
59440
+
59441
+ };
59442
+
59443
+ for(var i=0;i<kData.Data.length;++i)
59444
+ {
59445
+ var kItem=kData.Data[i];
59446
+
59447
+ //一列数据
59448
+ var colItem={ Date:kItem.Date, Time:kItem.Time, Data:[ ] };
59449
+
59450
+ if (kItem.Time==1030 || kItem.Time==1035)
59451
+ {
59452
+ colItem.Data[0]=
59453
+ {
59454
+ Text:"多", Color:"rgb(250,250,250)", BGColor:'rgb(250,0,0)', TextAlign:"center",
59455
+ Tooltip:
59456
+ {
59457
+ AryText:
59458
+ [
59459
+ {Title:"日期", Text:`${kItem.Date} ${kItem.Time}`},
59460
+ {Title:"买入价", Text:`${kItem.Close.toFixed(2)}`, TextColor:"rgb(250,0,0)"},
59461
+ {Title:"数量", Text:`${HQData.GetRandomTestData(100,400).toFixed(0)}`,TextColor:"rgb(255,165,0)" },
59462
+ ]
59463
+ }
59464
+ };
59465
+ }
59466
+ else if (kItem.Time==1033 || kItem.Time==1025)
59467
+ {
59468
+ colItem.Data[0]=
59469
+ {
59470
+ Text:"空", Color:"rgb(250,250,250)", BGColor:'rgb(0,128,0)', TextAlign:"center",
59471
+ Tooltip:
59472
+ {
59473
+ AryText:
59474
+ [
59475
+ {Title:"日期", Text:`${kItem.Date} ${kItem.Time}`},
59476
+ {Title:"买入价", Text:`${kItem.Close.toFixed(2)}`, TextColor:"rgb(250,0,0)"},
59477
+ {Title:"数量", Text:`${HQData.GetRandomTestData(100,400).toFixed(0)}`,TextColor:"rgb(255,165,0)" },
59478
+ ]
59479
+ }
59480
+ };
59481
+ }
59482
+ else if (kItem.Time==1028 || kItem.Time==1032 || kItem.Time==1034 )
59483
+ {
59484
+ colItem.Data[1]=
59485
+ {
59486
+ Text:"平", Color:"rgb(250,250,250)", BGColor:'rgb(255,165,0)', TextAlign:"center",
59487
+ Tooltip:
59488
+ {
59489
+ AryText:
59490
+ [
59491
+ {Title:"日期", Text:`${kItem.Date} ${kItem.Time}`},
59492
+ {Title:"卖入价", Text:`${kItem.Close.toFixed(2)}`, TextColor:"rgb(34,139,34)"},
59493
+ {Title:"数量", Text:`${HQData.GetRandomTestData(100,400).toFixed(0)}`,TextColor:"rgb(255,165,0)" },
59494
+ ]
59495
+ }
59496
+ };
59497
+ }
59498
+ else
59499
+ {
59500
+ continue;
59501
+ }
59502
+
59503
+
59504
+ tableData.Draw.DrawData.push(colItem);
59505
+ }
59506
+
59507
+ var apiData=
59508
+ {
59509
+ code:0,
59510
+ stock:{ name:hqchart.Name, symbol:hqchart.Symbol },
59511
+ outdata: { date:kData.GetDate(), time:kData.GetTime(), outvar:[tableData] }
59512
+ };
59513
+
59514
+ console.log('[KLineChart::APIIndex_KLINE_TABLE2] apiData ', apiData);
59515
+ callback(apiData);
59516
+ }
59517
+
59518
+
59403
59519
  HQData.APIIndex_DRAWSVG=function(data, callback)
59404
59520
  {
59405
59521
  data.PreventDefault=true;
@@ -59788,3 +59904,11 @@ HQData.API_CHART_AREA_TEXT=function(data, callback)
59788
59904
  }
59789
59905
 
59790
59906
 
59907
+ HQData.APIIndex_ErrorMessage=function(data, callback)
59908
+ {
59909
+ var hqchartData={ outdata:{ date:null, time:null, outvar:[] } , code:0};
59910
+ hqchartData.error={ message:"错误提示信息" };
59911
+ callback(hqchartData);
59912
+ }
59913
+
59914
+