hqchart 1.1.13682 → 1.1.13689

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.
@@ -98135,6 +98135,38 @@ var g_JSComplierResource=
98135
98135
  Data:new Map() //自定义函数 key=变量名, Value:{ Name:变量名, Description:描述信息 }
98136
98136
  },
98137
98137
 
98138
+ CustomDataFunction: //自定义数据函数
98139
+ {
98140
+ //自定义函数 key=变量名, Value:{ Name:变量名, Description:描述信息, ArgCount:参数个数 }
98141
+ Data:new Map(
98142
+ [
98143
+ [
98144
+ "L2_VOLNUM",
98145
+ {
98146
+ Name:"L2_VOLNUM",
98147
+ Description:"单数分档,按: N(0--1):(超大+大)/(中+小),M(0--1):买/卖二类,沪深京品种的资金流向,仅日线以上周期,用于特定版本",
98148
+ ArgCount:2
98149
+ }
98150
+ ],
98151
+ [
98152
+ "L2_VOL",
98153
+ {
98154
+ Name:"L2_VOL",
98155
+ Description:"成交量分档,按: N(0--3):超大/大/中/小四档处理,M(0--3):买入/卖出/主买/主卖四类,沪深京品种的资金流向,仅日线以上周期,用于特定版本",
98156
+ ArgCount:2
98157
+ }
98158
+ ],
98159
+ [
98160
+ "L2_AMO",
98161
+ {
98162
+ Name:"L2_AMO",
98163
+ Description:"成交额分档,按: N(0--3):超大/大/中/小四档处理,M(0--3):买入/卖出/主买/主卖四类,沪深京品种的资金流向,仅日线以上周期,用于特定版本",
98164
+ ArgCount:2
98165
+ }
98166
+ ]
98167
+ ])
98168
+ },
98169
+
98138
98170
  GetDrawIcon:function(id)
98139
98171
  {
98140
98172
  var icon;
@@ -98187,6 +98219,12 @@ var g_JSComplierResource=
98187
98219
  {
98188
98220
  if (g_JSComplierResource.CustomVariant.Data.has(name)) return true;
98189
98221
  return false;
98222
+ },
98223
+
98224
+ IsCustomDataFunction:function(name)
98225
+ {
98226
+ if (g_JSComplierResource.CustomDataFunction.Data.has(name)) return true;
98227
+ return false;
98190
98228
  }
98191
98229
  }
98192
98230
 
@@ -99093,7 +99131,15 @@ function Node(ErrorHandler)
99093
99131
  "CAPITAL","TOTALCAPITAL","EXCHANGE",
99094
99132
  "HYBLOCK","DYBLOCK","GNBLOCK","FGBLOCK","ZSBLOCK","ZHBLOCK","ZDBLOCK","HYZSCODE",
99095
99133
  "GNBLOCKNUM","FGBLOCKNUM","ZSBLOCKNUM","ZHBLOCKNUM","ZDBLOCKNUM",
99096
- "HYSYL","HYSJL","FROMOPEN"
99134
+ "HYSYL","HYSJL","FROMOPEN",
99135
+ //资金流向
99136
+ "LARGEINTRDVOL","LARGEOUTTRDVOL",
99137
+ "TRADENUM","TRADEINNUM","TRADEOUTNUM",
99138
+ "LARGETRDINNUM","LARGETRDOUTNUM",
99139
+ "CUR_BUYORDER","CUR_SELLORDER",
99140
+ "ACTINVOL","ACTOUTVOL",
99141
+ "BIDORDERVOL","BIDCANCELVOL","AVGBIDPX",
99142
+ "OFFERORDERVOL","OFFERCANCELVOL","AVGOFFERPX",
99097
99143
  ]);
99098
99144
 
99099
99145
  if (setVariantName.has(varName))
@@ -99186,6 +99232,15 @@ function Node(ErrorHandler)
99186
99232
  return;
99187
99233
  }
99188
99234
 
99235
+ //自定义数据函数
99236
+ if (g_JSComplierResource.IsCustomDataFunction(callee.Name))
99237
+ {
99238
+ var item={FunctionName:callee.Name, ID:JS_EXECUTE_JOB_ID.JOB_CUSTOM_DATA_FUNCTION, Args:args}
99239
+ if (token) item.Token={ Index:token.Start, Line:token.LineNumber};
99240
+ this.FunctionData.push(item);
99241
+ return;
99242
+ }
99243
+
99189
99244
  if (callee.Name=='DYNAINFO')
99190
99245
  {
99191
99246
  var item={ ID:JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SYMBOL_LATEST_DATA, Args:args, FunctionName:callee.Name };
@@ -112612,7 +112667,7 @@ function JSSymbolData(ast,option,jsExecute)
112612
112667
  Request:
112613
112668
  {
112614
112669
  Url:"数据地址", Type:'POST',
112615
- Data:{ VariantName:jobItem.VariantName, symbol: this.Symbol, daterange:dateRange, period:this.Period }
112670
+ Data:{ VariantName:jobItem.VariantName, symbol: this.Symbol, daterange:dateRange, period:this.Period, right:this.Right }
112616
112671
  },
112617
112672
  Self:this,
112618
112673
  VariantInfo:variantInfo,
@@ -112655,7 +112710,61 @@ function JSSymbolData(ast,option,jsExecute)
112655
112710
  {
112656
112711
  FunctionName:jobItem.FunctionName,
112657
112712
  symbol: this.Symbol, daterange:dateRange,
112658
- JobItem:jobItem //函数编译信息
112713
+ JobItem:jobItem, //函数编译信息
112714
+ period:this.Period,
112715
+ right:this.Right,
112716
+ }
112717
+ },
112718
+ Self:this,
112719
+ FunctionInfo:functionInfo,
112720
+ PreventDefault:false
112721
+ };
112722
+ this.NetworkFilter(obj, function(recvData)
112723
+ {
112724
+ if (recvData.Error) self.AddStockValueError(key,recvData.Error);
112725
+ else self.RecvStockValue(recvData.Data,jobItem,key,recvData.DataType);
112726
+ self.Execute.RunNextJob();
112727
+ });
112728
+ }
112729
+ else
112730
+ {
112731
+ this.AddStockValueError(key, `自定义函数${key}下载失败`);
112732
+ this.Execute.RunNextJob();
112733
+ }
112734
+ }
112735
+
112736
+
112737
+ this.GetCustomFunctionDataV2=function(jobItem)
112738
+ {
112739
+ var funcName=jobItem.FunctionName;
112740
+ var functionInfo=g_JSComplierResource.CustomDataFunction.Data.get(funcName);
112741
+ if (!functionInfo) return;
112742
+
112743
+ var aryArgs=this.JobArgumentsToArray(jobItem, functionInfo.ArgCount);
112744
+ var key=this.GetStockDataKey(jobItem,aryArgs);
112745
+
112746
+ if (this.StockData.has(key)) return this.Execute.RunNextJob(); //一个函数只能缓存一个数据, 保存多个外部自己保存
112747
+
112748
+ var self=this;
112749
+ if (this.NetworkFilter)
112750
+ {
112751
+ var dateRange=this.Data.GetDateRange();
112752
+ var obj=
112753
+ {
112754
+ Name:'JSSymbolData::GetCustomFunctionData', //类名::函数名
112755
+ Explain:'自定义函数数据下载',
112756
+ JobID:jobItem.ID,
112757
+ Request:
112758
+ {
112759
+ Url:"数据地址", Type:'POST',
112760
+ Data:
112761
+ {
112762
+ FunctionName:jobItem.FunctionName,
112763
+ symbol: this.Symbol, daterange:dateRange,
112764
+ JobItem:jobItem, //函数编译信息
112765
+ Key:key,
112766
+ period:this.Period,
112767
+ right:this.Right,
112659
112768
  }
112660
112769
  },
112661
112770
  Self:this,
@@ -114472,6 +114581,7 @@ var JS_EXECUTE_JOB_ID=
114472
114581
 
114473
114582
  JOB_CUSTOM_FUNCTION_DATA:6000, //自定义函数
114474
114583
  JOB_CUSTOM_VARIANT_DATA:6001, //自定义变量
114584
+ JOB_CUSTOM_DATA_FUNCTION:6002, //自定义数据函数
114475
114585
  //截面数据
114476
114586
  //财务数据 SF(公告期,数据名称) 如: SF(201901,"流动资产");
114477
114587
  JOB_DOWNLOAD_SECTION_SF:20000,
@@ -114712,8 +114822,26 @@ function JSExecute(ast,option)
114712
114822
  ["MACHINEDATE",null],["MACHINETIME",null],["MACHINEWEEK",null],
114713
114823
 
114714
114824
  ["TR", null], //真实波幅
114715
- ["AUTOFILTER", null]
114716
-
114825
+ ["AUTOFILTER", null],
114826
+
114827
+ ['LARGEINTRDVOL', null], //逐笔买入大单成交量,相当于L2_VOL(0,0)+L2_VOL(1,0),沪深京品种的资金流向,仅日线以上周期,用于特定版本
114828
+ ['LARGEOUTTRDVOL', null], //逐笔卖出大单成交量,相当于L2_VOL(0,1)+L2_VOL(1,1),沪深京品种的资金流向,仅日线以上周期,用于特定版本
114829
+ ["TRADENUM", null], //逐笔成交总单数,沪深京品种的资金流向,仅日线以上周期,用于特定版本
114830
+ ["TRADEINNUM", null], //逐笔买入成交单数,相当于L2_VOLNUM(0,0)+L2_VOLNUM(1,0),沪深京品种的资金流向,仅日线以上周期,用于特定版本
114831
+ ["TRADEOUTNUM", null], //逐笔卖出成交单数,相当于L2_VOLNUM(0,1)+L2_VOLNUM(1,1),沪深京品种的资金流向,仅日线以上周期,用于特定版本
114832
+ ["LARGETRDINNUM", null], //逐笔买入大单成交单数,相当于L2_VOLNUM(0,0),沪深京品种的资金流向,仅日线以上周期,用于特定版本
114833
+ ["LARGETRDOUTNUM", null], //逐笔卖出大单成交单数,相当于L2_VOLNUM(0,1),沪深京品种的资金流向,仅日线以上周期,用于特定版本
114834
+ ["CUR_BUYORDER", null], //总委买量,序列数据,专业版等(资金流向功能)沪深京品种行情专用
114835
+ ["CUR_SELLORDER", null], //总委卖量,序列数据,专业版等(资金流向功能)沪深京品种行情专用
114836
+ ["ACTINVOL", null], //主动买成交量,相当于L2_VOL(0,2)+L2_VOL(1,2)+L2_VOL(2,2)+L2_VOL(3,2),沪深京品种的资金流向,仅日线以上周期,用于特定版本
114837
+ ["ACTOUTVOL", null], //主动卖成交量,相当于L2_VOL(0,3)+L2_VOL(1,3)+L2_VOL(2,3)+L2_VOL(3,3),沪深京品种的资金流向,仅日线以上周期,用于特定版本
114838
+ ["BIDORDERVOL", null], //累计总有效委买量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委买量-累计总有效撤买量=总买+总成交量
114839
+ ["BIDCANCELVOL", null], //累计总有效撤买量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委买量-累计总有效撤买量=总买+总成交量
114840
+ ["AVGBIDPX", null], //专业版等(资金流向功能)沪深京品种行情专用:最新委买均价
114841
+ ["OFFERORDERVOL", null], //累计总有效委卖量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委卖量-累计总有效撤卖量=总卖+总成交量
114842
+ ["OFFERCANCELVOL", null], //累计总有效撤卖量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委卖量-累计总有效撤卖量=总卖+总成交量
114843
+ ["AVGOFFERPX", null], //专业版等(资金流向功能)沪深京品种行情专用:最新委卖均价
114844
+ //["", null],
114717
114845
  ]);
114718
114846
 
114719
114847
  this.SymbolData=new JSSymbolData(this.AST,option,this);
@@ -114838,6 +114966,9 @@ function JSExecute(ast,option)
114838
114966
  case JS_EXECUTE_JOB_ID.JOB_CUSTOM_FUNCTION_DATA:
114839
114967
  return this.SymbolData.GetCustomFunctionData(jobItem);
114840
114968
 
114969
+ case JS_EXECUTE_JOB_ID.JOB_CUSTOM_DATA_FUNCTION:
114970
+ return this.SymbolData.GetCustomFunctionDataV2(jobItem);
114971
+
114841
114972
 
114842
114973
  case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_CUSTOM_API_DATA:
114843
114974
  return this.SymbolData.DownloadCustomAPIData(jobItem);
@@ -114930,6 +115061,24 @@ function JSExecute(ast,option)
114930
115061
  case "HYSJL":
114931
115062
 
114932
115063
  case 'FROMOPEN':
115064
+
115065
+ case "LARGEINTRDVOL":
115066
+ case "LARGEOUTTRDVOL":
115067
+ case "TRADENUM":
115068
+ case "TRADEINNUM":
115069
+ case "TRADEOUTNUM":
115070
+ case "LARGETRDINNUM":
115071
+ case "LARGETRDOUTNUM":
115072
+ case "CUR_BUYORDER":
115073
+ case "CUR_SELLORDER":
115074
+ case "ACTINVOL":
115075
+ case "ACTOUTVOL":
115076
+ case "BIDORDERVOL":
115077
+ case "BIDCANCELVOL":
115078
+ case "AVGBIDPX":
115079
+ case "OFFERORDERVOL":
115080
+ case "OFFERCANCELVOL":
115081
+ case "AVGOFFERPX":
114933
115082
  return this.SymbolData.GetStockCacheData({ VariantName:name, Node:node });
114934
115083
  case 'SETCODE':
114935
115084
  return this.SymbolData.SETCODE();
@@ -114993,8 +115142,9 @@ function JSExecute(ast,option)
114993
115142
  return this.SymbolData.WEEKOFYEAR();
114994
115143
  case "DAYSTOTODAY":
114995
115144
  return this.SymbolData.DAYSTOTODAY();
114996
-
114997
115145
  }
115146
+
115147
+ this.ThrowUnexpectedNode(node, '变量'+name+'不存在', name);
114998
115148
  }
114999
115149
 
115000
115150
  this.ReadCustomVariant=function(name,node)
@@ -115945,6 +116095,15 @@ function JSExecute(ast,option)
115945
116095
  return node.Out;
115946
116096
  }
115947
116097
 
116098
+ if (g_JSComplierResource.IsCustomDataFunction(funcName))
116099
+ {
116100
+ var functionInfo=g_JSComplierResource.CustomDataFunction.Data.get(funcName);
116101
+ node.Out=this.SymbolData.GetStockCacheData( {FunctionName:funcName, Args:args, ArgCount:functionInfo.ArgCount, Node:node } );
116102
+ node.Draw=null;
116103
+
116104
+ return node.Out;
116105
+ }
116106
+
115948
116107
  switch(funcName)
115949
116108
  {
115950
116109
  case 'DYNAINFO': //行情最新数据
@@ -116514,6 +116673,24 @@ function JSExplainer(ast,option)
116514
116673
  ['DRAWNULL',"无效数据"],
116515
116674
  ["TR", "求真实波幅"],
116516
116675
 
116676
+ ["LARGEINTRDVOL","逐笔买入大单成交量"],
116677
+ ["LARGEOUTTRDVOL","逐笔卖出大单成交量"],
116678
+ ["TRADENUM", "逐笔成交总单数"],
116679
+ ["TRADEINNUM", "逐笔买入成交单数"],
116680
+ ["TRADEOUTNUM", "逐笔卖出成交单数"],
116681
+ ["LARGETRDINNUM", "逐笔买入大单成交单数"],
116682
+ ["LARGETRDOUTNUM", "逐笔卖出大单成交单数"],
116683
+ ["CUR_BUYORDER", "总委买量"],
116684
+ ["CUR_SELLORDER", "总委卖量"],
116685
+ ["ACTINVOL", "主动买成交量"],
116686
+ ["ACTOUTVOL", "主动卖成交量"],
116687
+ ["BIDORDERVOL", "累计总有效委买量"],
116688
+ ["BIDCANCELVOL", "累计总有效撤买量"],
116689
+ ["AVGBIDPX", "最新委买均价"],
116690
+ ["OFFERORDERVOL", "累计总有效委卖量"],
116691
+ ["OFFERCANCELVOL", "累计总有效撤卖量"],
116692
+ ["AVGOFFERPX", "最新委卖均价"],
116693
+
116517
116694
  ]);
116518
116695
 
116519
116696
  if (option)
@@ -117105,7 +117282,9 @@ function JSExplainer(ast,option)
117105
117282
  }
117106
117283
  ],
117107
117284
 
117108
-
117285
+ ["L2_VOLNUM", { Name:"L2_VOLNUM", Param:{ Count:2 }, ToString:function(args) { return `单数分档`; } }],
117286
+ ["L2_VOL", { Name:"L2_VOL", Param:{ Count:2 }, ToString:function(args) { return `成交量分档`; } }],
117287
+ ["L2_AMO", { Name:"L2_AMO", Param:{ Count:2 }, ToString:function(args) { return `成交额分档`; } }],
117109
117288
 
117110
117289
  ]
117111
117290
  );
@@ -142087,7 +142266,7 @@ function HQChartScriptWorker()
142087
142266
 
142088
142267
 
142089
142268
 
142090
- var HQCHART_VERSION="1.1.13681";
142269
+ var HQCHART_VERSION="1.1.13688";
142091
142270
 
142092
142271
  function PrintHQChartVersion()
142093
142272
  {