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.
@@ -48734,6 +48734,14 @@ HQData.NetworkFilter=function(data, callback)
48734
48734
  HQData.RequestIndexVariantData(data,callback);
48735
48735
  break;
48736
48736
 
48737
+ case "JSSymbolData::GetCustomFunctionData": //自定义函数数据下载
48738
+ HQData.CustomFunction_RequestData(data,callback);
48739
+ break;
48740
+
48741
+ case "JSSymbolData::GetCustomVariantData": //自定义函数数据下载
48742
+ HQData.CustomVarData_RequestData(data,callback);
48743
+ break;
48744
+
48737
48745
  case "JSSymbolData::GetOtherSymbolData":
48738
48746
  //HQChart使用教程30-K线图如何对接第3方数据31-获取指定品种的K线数据
48739
48747
  HQData.RequestOtherSymbolData(data, callback);
@@ -48782,6 +48790,10 @@ HQData.NetworkFilter=function(data, callback)
48782
48790
  HQData.TradeDetail_RequestData(data,callback);
48783
48791
  break;
48784
48792
 
48793
+ case "JSSymbolData::GetFinance": //财务数据
48794
+ HQData.Finance_RequestData(data,callback);
48795
+ break;
48796
+
48785
48797
  //////////////////////////////////////////////////////
48786
48798
  //报价列表数据
48787
48799
  case "JSReportChartContainer::RequestStockListData":
@@ -49111,6 +49123,7 @@ HQData.RequestMinuteRealtimeData=function(data,callback)
49111
49123
 
49112
49124
  HQData.RequestIndexVariantData=function(data,callback)
49113
49125
  {
49126
+ data.PreventDefault=true;
49114
49127
  var varName=data.Request.Data.VariantName; //变量名称
49115
49128
  if (varName=="FROMOPEN")
49116
49129
  {
@@ -49120,6 +49133,102 @@ HQData.RequestIndexVariantData=function(data,callback)
49120
49133
  hqchartData.DataType=1;
49121
49134
  callback(hqchartData);
49122
49135
  }
49136
+ else if (varName=="FGBLOCK")
49137
+ {
49138
+ var hqchartData={ DataType:1, Data:{Value:"融资融券 大盘股 MSCI成份 周期股 沪股通标的"} }; //返回所属风格板块.
49139
+ callback(hqchartData);
49140
+ }
49141
+ else if (varName=="GNBLOCK")
49142
+ {
49143
+ var hqchartData={ DataType:1, Data:{ Value:"含可转债 跨境支付CIPS"} }; //返回所属概念板块.
49144
+ callback(hqchartData);
49145
+ }
49146
+ else if (varName=="HYBLOCK")
49147
+ {
49148
+ var hqchartData={ DataType:1, Data:{Value:"全国性银行"}}; //返回品种所属行业.
49149
+ callback(hqchartData);
49150
+ }
49151
+ else if (varName=="DYBLOCK")
49152
+ {
49153
+ var hqchartData={ DataType:1, Data:{Value:"上海板块"} }; //返回品种所属地域..
49154
+ callback(hqchartData);
49155
+ }
49156
+ else if (varName=="CAPITAL")
49157
+ {
49158
+ var hqchartData={ DataType:1, Data:{ Value:29352177375 } }; // 当前流通股本,单位为手,债券1手为10张,其它为100
49159
+ callback(hqchartData);
49160
+ }
49161
+ else if (varName=="LARGEINTRDVOL")
49162
+ {
49163
+ //测试数据
49164
+ var kData=data.Self.Data;
49165
+ var hqchartData={ DataType:2, Data:[] };
49166
+ for(var i=0;i<kData.Data.length;++i)
49167
+ {
49168
+ var kItem=kData.Data[i];
49169
+ hqchartData.Data.push({ Date:kItem.Date, Time:kItem.Time, Value:kItem.Vol*0.15 });
49170
+ }
49171
+ callback(hqchartData);
49172
+ }
49173
+ else if (varName=="LARGEOUTTRDVOL")
49174
+ {
49175
+ //测试数据
49176
+ var kData=data.Self.Data;
49177
+ var hqchartData={ DataType:2, Data:[] };
49178
+ for(var i=0;i<kData.Data.length;++i)
49179
+ {
49180
+ var kItem=kData.Data[i];
49181
+ hqchartData.Data.push({ Date:kItem.Date, Time:kItem.Time, Value:kItem.Vol*0.17 });
49182
+ }
49183
+ callback(hqchartData);
49184
+ }
49185
+
49186
+ }
49187
+
49188
+ HQData.CustomFunction_RequestData=function(data, callback)
49189
+ {
49190
+ data.PreventDefault=true;
49191
+ var funcName=data.Request.Data.FunctionName;
49192
+ var hqchartData=null;
49193
+
49194
+ if (funcName=='L2_VOL')
49195
+ {
49196
+ var args=data.Request.Data.JobItem.Args;
49197
+ var param=[ args[0].Value, args[1].Value ];
49198
+
49199
+ var hqchartData={ DataType:2, Data:[] };
49200
+ var kData=data.Self.Data;
49201
+ for(var i=0;i<kData.Data.length;++i)
49202
+ {
49203
+ var kItem=kData.Data[i];
49204
+ hqchartData.Data.push({ Date:kItem.Date, Time:kItem.Time, Value:kItem.Vol/3 });
49205
+ }
49206
+ }
49207
+
49208
+ callback(hqchartData);
49209
+ }
49210
+
49211
+ HQData.CustomVarData_RequestData=function(data, callback)
49212
+ {
49213
+ data.PreventDefault=true;
49214
+ var varName=data.Request.Data.VariantName;
49215
+ if (varName=="DCLOSE")
49216
+ {
49217
+ var hqchartData={ DataType:2, Data:[] };
49218
+ var kData=data.Self.Data;
49219
+ for(var i=0;i<kData.Data.length;++i)
49220
+ {
49221
+ var kItem=kData.Data[i];
49222
+ hqchartData.Data.push({ Date:kItem.Date, Time:kItem.Time, Value:kItem.Close });
49223
+ }
49224
+
49225
+ callback(hqchartData);
49226
+ }
49227
+ else
49228
+ {
49229
+ throw `${varName} 没有对接. [HQData.CustomVarData_RequestData]`
49230
+ }
49231
+
49123
49232
 
49124
49233
  }
49125
49234
 
@@ -49265,6 +49374,18 @@ HQData.RequestOverlayHistoryMinuteData=function(data, callback)
49265
49374
  }
49266
49375
 
49267
49376
 
49377
+ HQData.Finance_RequestData=function(data,callback)
49378
+ {
49379
+ data.PreventDefault=true;
49380
+ var id=data.Request.Data.id;
49381
+ var hqchartData=null;
49382
+ if (id==7) // 流通股本(随时间可能有变化)
49383
+ hqchartData=TEST_FINANCE_7.data;
49384
+
49385
+ if (hqchartData) callback(hqchartData);
49386
+ }
49387
+
49388
+
49268
49389
  //////////////////////////////////////////////////////////////////////////////////////
49269
49390
  // 报价列表
49270
49391
  //
@@ -116,6 +116,38 @@ var g_JSComplierResource=
116
116
  Data:new Map() //自定义函数 key=变量名, Value:{ Name:变量名, Description:描述信息 }
117
117
  },
118
118
 
119
+ CustomDataFunction: //自定义数据函数
120
+ {
121
+ //自定义函数 key=变量名, Value:{ Name:变量名, Description:描述信息, ArgCount:参数个数 }
122
+ Data:new Map(
123
+ [
124
+ [
125
+ "L2_VOLNUM",
126
+ {
127
+ Name:"L2_VOLNUM",
128
+ Description:"单数分档,按: N(0--1):(超大+大)/(中+小),M(0--1):买/卖二类,沪深京品种的资金流向,仅日线以上周期,用于特定版本",
129
+ ArgCount:2
130
+ }
131
+ ],
132
+ [
133
+ "L2_VOL",
134
+ {
135
+ Name:"L2_VOL",
136
+ Description:"成交量分档,按: N(0--3):超大/大/中/小四档处理,M(0--3):买入/卖出/主买/主卖四类,沪深京品种的资金流向,仅日线以上周期,用于特定版本",
137
+ ArgCount:2
138
+ }
139
+ ],
140
+ [
141
+ "L2_AMO",
142
+ {
143
+ Name:"L2_AMO",
144
+ Description:"成交额分档,按: N(0--3):超大/大/中/小四档处理,M(0--3):买入/卖出/主买/主卖四类,沪深京品种的资金流向,仅日线以上周期,用于特定版本",
145
+ ArgCount:2
146
+ }
147
+ ]
148
+ ])
149
+ },
150
+
119
151
  GetDrawIcon:function(id)
120
152
  {
121
153
  var icon;
@@ -168,6 +200,12 @@ var g_JSComplierResource=
168
200
  {
169
201
  if (g_JSComplierResource.CustomVariant.Data.has(name)) return true;
170
202
  return false;
203
+ },
204
+
205
+ IsCustomDataFunction:function(name)
206
+ {
207
+ if (g_JSComplierResource.CustomDataFunction.Data.has(name)) return true;
208
+ return false;
171
209
  }
172
210
  }
173
211
 
@@ -1074,7 +1112,15 @@ function Node(ErrorHandler)
1074
1112
  "CAPITAL","TOTALCAPITAL","EXCHANGE",
1075
1113
  "HYBLOCK","DYBLOCK","GNBLOCK","FGBLOCK","ZSBLOCK","ZHBLOCK","ZDBLOCK","HYZSCODE",
1076
1114
  "GNBLOCKNUM","FGBLOCKNUM","ZSBLOCKNUM","ZHBLOCKNUM","ZDBLOCKNUM",
1077
- "HYSYL","HYSJL","FROMOPEN"
1115
+ "HYSYL","HYSJL","FROMOPEN",
1116
+ //资金流向
1117
+ "LARGEINTRDVOL","LARGEOUTTRDVOL",
1118
+ "TRADENUM","TRADEINNUM","TRADEOUTNUM",
1119
+ "LARGETRDINNUM","LARGETRDOUTNUM",
1120
+ "CUR_BUYORDER","CUR_SELLORDER",
1121
+ "ACTINVOL","ACTOUTVOL",
1122
+ "BIDORDERVOL","BIDCANCELVOL","AVGBIDPX",
1123
+ "OFFERORDERVOL","OFFERCANCELVOL","AVGOFFERPX",
1078
1124
  ]);
1079
1125
 
1080
1126
  if (setVariantName.has(varName))
@@ -1167,6 +1213,15 @@ function Node(ErrorHandler)
1167
1213
  return;
1168
1214
  }
1169
1215
 
1216
+ //自定义数据函数
1217
+ if (g_JSComplierResource.IsCustomDataFunction(callee.Name))
1218
+ {
1219
+ var item={FunctionName:callee.Name, ID:JS_EXECUTE_JOB_ID.JOB_CUSTOM_DATA_FUNCTION, Args:args}
1220
+ if (token) item.Token={ Index:token.Start, Line:token.LineNumber};
1221
+ this.FunctionData.push(item);
1222
+ return;
1223
+ }
1224
+
1170
1225
  if (callee.Name=='DYNAINFO')
1171
1226
  {
1172
1227
  var item={ ID:JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SYMBOL_LATEST_DATA, Args:args, FunctionName:callee.Name };
@@ -14593,7 +14648,7 @@ function JSSymbolData(ast,option,jsExecute)
14593
14648
  Request:
14594
14649
  {
14595
14650
  Url:"数据地址", Type:'POST',
14596
- Data:{ VariantName:jobItem.VariantName, symbol: this.Symbol, daterange:dateRange, period:this.Period }
14651
+ Data:{ VariantName:jobItem.VariantName, symbol: this.Symbol, daterange:dateRange, period:this.Period, right:this.Right }
14597
14652
  },
14598
14653
  Self:this,
14599
14654
  VariantInfo:variantInfo,
@@ -14636,7 +14691,61 @@ function JSSymbolData(ast,option,jsExecute)
14636
14691
  {
14637
14692
  FunctionName:jobItem.FunctionName,
14638
14693
  symbol: this.Symbol, daterange:dateRange,
14639
- JobItem:jobItem //函数编译信息
14694
+ JobItem:jobItem, //函数编译信息
14695
+ period:this.Period,
14696
+ right:this.Right,
14697
+ }
14698
+ },
14699
+ Self:this,
14700
+ FunctionInfo:functionInfo,
14701
+ PreventDefault:false
14702
+ };
14703
+ this.NetworkFilter(obj, function(recvData)
14704
+ {
14705
+ if (recvData.Error) self.AddStockValueError(key,recvData.Error);
14706
+ else self.RecvStockValue(recvData.Data,jobItem,key,recvData.DataType);
14707
+ self.Execute.RunNextJob();
14708
+ });
14709
+ }
14710
+ else
14711
+ {
14712
+ this.AddStockValueError(key, `自定义函数${key}下载失败`);
14713
+ this.Execute.RunNextJob();
14714
+ }
14715
+ }
14716
+
14717
+
14718
+ this.GetCustomFunctionDataV2=function(jobItem)
14719
+ {
14720
+ var funcName=jobItem.FunctionName;
14721
+ var functionInfo=g_JSComplierResource.CustomDataFunction.Data.get(funcName);
14722
+ if (!functionInfo) return;
14723
+
14724
+ var aryArgs=this.JobArgumentsToArray(jobItem, functionInfo.ArgCount);
14725
+ var key=this.GetStockDataKey(jobItem,aryArgs);
14726
+
14727
+ if (this.StockData.has(key)) return this.Execute.RunNextJob(); //一个函数只能缓存一个数据, 保存多个外部自己保存
14728
+
14729
+ var self=this;
14730
+ if (this.NetworkFilter)
14731
+ {
14732
+ var dateRange=this.Data.GetDateRange();
14733
+ var obj=
14734
+ {
14735
+ Name:'JSSymbolData::GetCustomFunctionData', //类名::函数名
14736
+ Explain:'自定义函数数据下载',
14737
+ JobID:jobItem.ID,
14738
+ Request:
14739
+ {
14740
+ Url:"数据地址", Type:'POST',
14741
+ Data:
14742
+ {
14743
+ FunctionName:jobItem.FunctionName,
14744
+ symbol: this.Symbol, daterange:dateRange,
14745
+ JobItem:jobItem, //函数编译信息
14746
+ Key:key,
14747
+ period:this.Period,
14748
+ right:this.Right,
14640
14749
  }
14641
14750
  },
14642
14751
  Self:this,
@@ -16453,6 +16562,7 @@ var JS_EXECUTE_JOB_ID=
16453
16562
 
16454
16563
  JOB_CUSTOM_FUNCTION_DATA:6000, //自定义函数
16455
16564
  JOB_CUSTOM_VARIANT_DATA:6001, //自定义变量
16565
+ JOB_CUSTOM_DATA_FUNCTION:6002, //自定义数据函数
16456
16566
  //截面数据
16457
16567
  //财务数据 SF(公告期,数据名称) 如: SF(201901,"流动资产");
16458
16568
  JOB_DOWNLOAD_SECTION_SF:20000,
@@ -16693,8 +16803,26 @@ function JSExecute(ast,option)
16693
16803
  ["MACHINEDATE",null],["MACHINETIME",null],["MACHINEWEEK",null],
16694
16804
 
16695
16805
  ["TR", null], //真实波幅
16696
- ["AUTOFILTER", null]
16697
-
16806
+ ["AUTOFILTER", null],
16807
+
16808
+ ['LARGEINTRDVOL', null], //逐笔买入大单成交量,相当于L2_VOL(0,0)+L2_VOL(1,0),沪深京品种的资金流向,仅日线以上周期,用于特定版本
16809
+ ['LARGEOUTTRDVOL', null], //逐笔卖出大单成交量,相当于L2_VOL(0,1)+L2_VOL(1,1),沪深京品种的资金流向,仅日线以上周期,用于特定版本
16810
+ ["TRADENUM", null], //逐笔成交总单数,沪深京品种的资金流向,仅日线以上周期,用于特定版本
16811
+ ["TRADEINNUM", null], //逐笔买入成交单数,相当于L2_VOLNUM(0,0)+L2_VOLNUM(1,0),沪深京品种的资金流向,仅日线以上周期,用于特定版本
16812
+ ["TRADEOUTNUM", null], //逐笔卖出成交单数,相当于L2_VOLNUM(0,1)+L2_VOLNUM(1,1),沪深京品种的资金流向,仅日线以上周期,用于特定版本
16813
+ ["LARGETRDINNUM", null], //逐笔买入大单成交单数,相当于L2_VOLNUM(0,0),沪深京品种的资金流向,仅日线以上周期,用于特定版本
16814
+ ["LARGETRDOUTNUM", null], //逐笔卖出大单成交单数,相当于L2_VOLNUM(0,1),沪深京品种的资金流向,仅日线以上周期,用于特定版本
16815
+ ["CUR_BUYORDER", null], //总委买量,序列数据,专业版等(资金流向功能)沪深京品种行情专用
16816
+ ["CUR_SELLORDER", null], //总委卖量,序列数据,专业版等(资金流向功能)沪深京品种行情专用
16817
+ ["ACTINVOL", null], //主动买成交量,相当于L2_VOL(0,2)+L2_VOL(1,2)+L2_VOL(2,2)+L2_VOL(3,2),沪深京品种的资金流向,仅日线以上周期,用于特定版本
16818
+ ["ACTOUTVOL", null], //主动卖成交量,相当于L2_VOL(0,3)+L2_VOL(1,3)+L2_VOL(2,3)+L2_VOL(3,3),沪深京品种的资金流向,仅日线以上周期,用于特定版本
16819
+ ["BIDORDERVOL", null], //累计总有效委买量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委买量-累计总有效撤买量=总买+总成交量
16820
+ ["BIDCANCELVOL", null], //累计总有效撤买量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委买量-累计总有效撤买量=总买+总成交量
16821
+ ["AVGBIDPX", null], //专业版等(资金流向功能)沪深京品种行情专用:最新委买均价
16822
+ ["OFFERORDERVOL", null], //累计总有效委卖量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委卖量-累计总有效撤卖量=总卖+总成交量
16823
+ ["OFFERCANCELVOL", null], //累计总有效撤卖量,专业版等(资金流向功能)沪深京品种行情专用 累计总有效委卖量-累计总有效撤卖量=总卖+总成交量
16824
+ ["AVGOFFERPX", null], //专业版等(资金流向功能)沪深京品种行情专用:最新委卖均价
16825
+ //["", null],
16698
16826
  ]);
16699
16827
 
16700
16828
  this.SymbolData=new JSSymbolData(this.AST,option,this);
@@ -16819,6 +16947,9 @@ function JSExecute(ast,option)
16819
16947
  case JS_EXECUTE_JOB_ID.JOB_CUSTOM_FUNCTION_DATA:
16820
16948
  return this.SymbolData.GetCustomFunctionData(jobItem);
16821
16949
 
16950
+ case JS_EXECUTE_JOB_ID.JOB_CUSTOM_DATA_FUNCTION:
16951
+ return this.SymbolData.GetCustomFunctionDataV2(jobItem);
16952
+
16822
16953
 
16823
16954
  case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_CUSTOM_API_DATA:
16824
16955
  return this.SymbolData.DownloadCustomAPIData(jobItem);
@@ -16911,6 +17042,24 @@ function JSExecute(ast,option)
16911
17042
  case "HYSJL":
16912
17043
 
16913
17044
  case 'FROMOPEN':
17045
+
17046
+ case "LARGEINTRDVOL":
17047
+ case "LARGEOUTTRDVOL":
17048
+ case "TRADENUM":
17049
+ case "TRADEINNUM":
17050
+ case "TRADEOUTNUM":
17051
+ case "LARGETRDINNUM":
17052
+ case "LARGETRDOUTNUM":
17053
+ case "CUR_BUYORDER":
17054
+ case "CUR_SELLORDER":
17055
+ case "ACTINVOL":
17056
+ case "ACTOUTVOL":
17057
+ case "BIDORDERVOL":
17058
+ case "BIDCANCELVOL":
17059
+ case "AVGBIDPX":
17060
+ case "OFFERORDERVOL":
17061
+ case "OFFERCANCELVOL":
17062
+ case "AVGOFFERPX":
16914
17063
  return this.SymbolData.GetStockCacheData({ VariantName:name, Node:node });
16915
17064
  case 'SETCODE':
16916
17065
  return this.SymbolData.SETCODE();
@@ -16974,8 +17123,9 @@ function JSExecute(ast,option)
16974
17123
  return this.SymbolData.WEEKOFYEAR();
16975
17124
  case "DAYSTOTODAY":
16976
17125
  return this.SymbolData.DAYSTOTODAY();
16977
-
16978
17126
  }
17127
+
17128
+ this.ThrowUnexpectedNode(node, '变量'+name+'不存在', name);
16979
17129
  }
16980
17130
 
16981
17131
  this.ReadCustomVariant=function(name,node)
@@ -17926,6 +18076,15 @@ function JSExecute(ast,option)
17926
18076
  return node.Out;
17927
18077
  }
17928
18078
 
18079
+ if (g_JSComplierResource.IsCustomDataFunction(funcName))
18080
+ {
18081
+ var functionInfo=g_JSComplierResource.CustomDataFunction.Data.get(funcName);
18082
+ node.Out=this.SymbolData.GetStockCacheData( {FunctionName:funcName, Args:args, ArgCount:functionInfo.ArgCount, Node:node } );
18083
+ node.Draw=null;
18084
+
18085
+ return node.Out;
18086
+ }
18087
+
17929
18088
  switch(funcName)
17930
18089
  {
17931
18090
  case 'DYNAINFO': //行情最新数据
@@ -18495,6 +18654,24 @@ function JSExplainer(ast,option)
18495
18654
  ['DRAWNULL',"无效数据"],
18496
18655
  ["TR", "求真实波幅"],
18497
18656
 
18657
+ ["LARGEINTRDVOL","逐笔买入大单成交量"],
18658
+ ["LARGEOUTTRDVOL","逐笔卖出大单成交量"],
18659
+ ["TRADENUM", "逐笔成交总单数"],
18660
+ ["TRADEINNUM", "逐笔买入成交单数"],
18661
+ ["TRADEOUTNUM", "逐笔卖出成交单数"],
18662
+ ["LARGETRDINNUM", "逐笔买入大单成交单数"],
18663
+ ["LARGETRDOUTNUM", "逐笔卖出大单成交单数"],
18664
+ ["CUR_BUYORDER", "总委买量"],
18665
+ ["CUR_SELLORDER", "总委卖量"],
18666
+ ["ACTINVOL", "主动买成交量"],
18667
+ ["ACTOUTVOL", "主动卖成交量"],
18668
+ ["BIDORDERVOL", "累计总有效委买量"],
18669
+ ["BIDCANCELVOL", "累计总有效撤买量"],
18670
+ ["AVGBIDPX", "最新委买均价"],
18671
+ ["OFFERORDERVOL", "累计总有效委卖量"],
18672
+ ["OFFERCANCELVOL", "累计总有效撤卖量"],
18673
+ ["AVGOFFERPX", "最新委卖均价"],
18674
+
18498
18675
  ]);
18499
18676
 
18500
18677
  if (option)
@@ -19086,7 +19263,9 @@ function JSExplainer(ast,option)
19086
19263
  }
19087
19264
  ],
19088
19265
 
19089
-
19266
+ ["L2_VOLNUM", { Name:"L2_VOLNUM", Param:{ Count:2 }, ToString:function(args) { return `单数分档`; } }],
19267
+ ["L2_VOL", { Name:"L2_VOL", Param:{ Count:2 }, ToString:function(args) { return `成交量分档`; } }],
19268
+ ["L2_AMO", { Name:"L2_AMO", Param:{ Count:2 }, ToString:function(args) { return `成交额分档`; } }],
19090
19269
 
19091
19270
  ]
19092
19271
  );
@@ -59,6 +59,14 @@ HQData.NetworkFilter=function(data, callback)
59
59
  HQData.RequestIndexVariantData(data,callback);
60
60
  break;
61
61
 
62
+ case "JSSymbolData::GetCustomFunctionData": //自定义函数数据下载
63
+ HQData.CustomFunction_RequestData(data,callback);
64
+ break;
65
+
66
+ case "JSSymbolData::GetCustomVariantData": //自定义函数数据下载
67
+ HQData.CustomVarData_RequestData(data,callback);
68
+ break;
69
+
62
70
  case "JSSymbolData::GetOtherSymbolData":
63
71
  //HQChart使用教程30-K线图如何对接第3方数据31-获取指定品种的K线数据
64
72
  HQData.RequestOtherSymbolData(data, callback);
@@ -107,6 +115,10 @@ HQData.NetworkFilter=function(data, callback)
107
115
  HQData.TradeDetail_RequestData(data,callback);
108
116
  break;
109
117
 
118
+ case "JSSymbolData::GetFinance": //财务数据
119
+ HQData.Finance_RequestData(data,callback);
120
+ break;
121
+
110
122
  //////////////////////////////////////////////////////
111
123
  //报价列表数据
112
124
  case "JSReportChartContainer::RequestStockListData":
@@ -436,6 +448,7 @@ HQData.RequestMinuteRealtimeData=function(data,callback)
436
448
 
437
449
  HQData.RequestIndexVariantData=function(data,callback)
438
450
  {
451
+ data.PreventDefault=true;
439
452
  var varName=data.Request.Data.VariantName; //变量名称
440
453
  if (varName=="FROMOPEN")
441
454
  {
@@ -445,6 +458,102 @@ HQData.RequestIndexVariantData=function(data,callback)
445
458
  hqchartData.DataType=1;
446
459
  callback(hqchartData);
447
460
  }
461
+ else if (varName=="FGBLOCK")
462
+ {
463
+ var hqchartData={ DataType:1, Data:{Value:"融资融券 大盘股 MSCI成份 周期股 沪股通标的"} }; //返回所属风格板块.
464
+ callback(hqchartData);
465
+ }
466
+ else if (varName=="GNBLOCK")
467
+ {
468
+ var hqchartData={ DataType:1, Data:{ Value:"含可转债 跨境支付CIPS"} }; //返回所属概念板块.
469
+ callback(hqchartData);
470
+ }
471
+ else if (varName=="HYBLOCK")
472
+ {
473
+ var hqchartData={ DataType:1, Data:{Value:"全国性银行"}}; //返回品种所属行业.
474
+ callback(hqchartData);
475
+ }
476
+ else if (varName=="DYBLOCK")
477
+ {
478
+ var hqchartData={ DataType:1, Data:{Value:"上海板块"} }; //返回品种所属地域..
479
+ callback(hqchartData);
480
+ }
481
+ else if (varName=="CAPITAL")
482
+ {
483
+ var hqchartData={ DataType:1, Data:{ Value:29352177375 } }; // 当前流通股本,单位为手,债券1手为10张,其它为100
484
+ callback(hqchartData);
485
+ }
486
+ else if (varName=="LARGEINTRDVOL")
487
+ {
488
+ //测试数据
489
+ var kData=data.Self.Data;
490
+ var hqchartData={ DataType:2, Data:[] };
491
+ for(var i=0;i<kData.Data.length;++i)
492
+ {
493
+ var kItem=kData.Data[i];
494
+ hqchartData.Data.push({ Date:kItem.Date, Time:kItem.Time, Value:kItem.Vol*0.15 });
495
+ }
496
+ callback(hqchartData);
497
+ }
498
+ else if (varName=="LARGEOUTTRDVOL")
499
+ {
500
+ //测试数据
501
+ var kData=data.Self.Data;
502
+ var hqchartData={ DataType:2, Data:[] };
503
+ for(var i=0;i<kData.Data.length;++i)
504
+ {
505
+ var kItem=kData.Data[i];
506
+ hqchartData.Data.push({ Date:kItem.Date, Time:kItem.Time, Value:kItem.Vol*0.17 });
507
+ }
508
+ callback(hqchartData);
509
+ }
510
+
511
+ }
512
+
513
+ HQData.CustomFunction_RequestData=function(data, callback)
514
+ {
515
+ data.PreventDefault=true;
516
+ var funcName=data.Request.Data.FunctionName;
517
+ var hqchartData=null;
518
+
519
+ if (funcName=='L2_VOL')
520
+ {
521
+ var args=data.Request.Data.JobItem.Args;
522
+ var param=[ args[0].Value, args[1].Value ];
523
+
524
+ var hqchartData={ DataType:2, Data:[] };
525
+ var kData=data.Self.Data;
526
+ for(var i=0;i<kData.Data.length;++i)
527
+ {
528
+ var kItem=kData.Data[i];
529
+ hqchartData.Data.push({ Date:kItem.Date, Time:kItem.Time, Value:kItem.Vol/3 });
530
+ }
531
+ }
532
+
533
+ callback(hqchartData);
534
+ }
535
+
536
+ HQData.CustomVarData_RequestData=function(data, callback)
537
+ {
538
+ data.PreventDefault=true;
539
+ var varName=data.Request.Data.VariantName;
540
+ if (varName=="DCLOSE")
541
+ {
542
+ var hqchartData={ DataType:2, Data:[] };
543
+ var kData=data.Self.Data;
544
+ for(var i=0;i<kData.Data.length;++i)
545
+ {
546
+ var kItem=kData.Data[i];
547
+ hqchartData.Data.push({ Date:kItem.Date, Time:kItem.Time, Value:kItem.Close });
548
+ }
549
+
550
+ callback(hqchartData);
551
+ }
552
+ else
553
+ {
554
+ throw `${varName} 没有对接. [HQData.CustomVarData_RequestData]`
555
+ }
556
+
448
557
 
449
558
  }
450
559
 
@@ -590,6 +699,18 @@ HQData.RequestOverlayHistoryMinuteData=function(data, callback)
590
699
  }
591
700
 
592
701
 
702
+ HQData.Finance_RequestData=function(data,callback)
703
+ {
704
+ data.PreventDefault=true;
705
+ var id=data.Request.Data.id;
706
+ var hqchartData=null;
707
+ if (id==7) // 流通股本(随时间可能有变化)
708
+ hqchartData=TEST_FINANCE_7.data;
709
+
710
+ if (hqchartData) callback(hqchartData);
711
+ }
712
+
713
+
593
714
  //////////////////////////////////////////////////////////////////////////////////////
594
715
  // 报价列表
595
716
  //