hqchart 1.1.15343 → 1.1.15349
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/lib/umychart.vue.js +144 -138
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +34 -0
- package/src/jscommon/umychart.complier.js +154 -139
- package/src/jscommon/umychart.js +17 -0
- package/src/jscommon/umychart.testdata.js +34 -0
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +172 -140
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +34 -0
- package/src/jscommon/umychart.vue/umychart.vue.js +172 -140
package/package.json
CHANGED
|
@@ -55672,6 +55672,10 @@ HQData.NetworkFilter=function(data, callback)
|
|
|
55672
55672
|
HQData.INDEX_RequestData(data,callback);
|
|
55673
55673
|
break;
|
|
55674
55674
|
|
|
55675
|
+
case "JSSymbolData::GetIndustryData":
|
|
55676
|
+
HQData.INDUSTRY_RequestData(data,callback);
|
|
55677
|
+
break;
|
|
55678
|
+
|
|
55675
55679
|
case 'JSSymbolData::GetSymbolData':
|
|
55676
55680
|
//HQChart使用教程30-K线图如何对接第3方数据38-通达信指标K线数据
|
|
55677
55681
|
HQData.RequestSymbolData(data,callback); //计算指标需要的K线数据
|
|
@@ -57324,6 +57328,30 @@ HQData.INDEX_RequestData=function(data,callback)
|
|
|
57324
57328
|
callback(hqchartData);
|
|
57325
57329
|
}
|
|
57326
57330
|
|
|
57331
|
+
HQData.INDUSTRY_RequestData=function(data, callback)
|
|
57332
|
+
{
|
|
57333
|
+
data.PreventDefault=true;
|
|
57334
|
+
var period=data.Period;
|
|
57335
|
+
var symbol=data.Request.Data.symbol;
|
|
57336
|
+
var indexSymbol="399001.sz";
|
|
57337
|
+
var dateRange=data.Request.Data.dateRange;
|
|
57338
|
+
var aryData=[];
|
|
57339
|
+
if (ChartData.IsMinutePeriod(period, true))
|
|
57340
|
+
{
|
|
57341
|
+
var fullData=HQData.GetM1KLineDataBySymbol(symbol);
|
|
57342
|
+
if (fullData) aryData=HQData.GetKLineDataByDateTime(fullData, dateRange.Start.Date, dateRange.Start.Time, dateRange.End.Date, dateRange.End.Time);
|
|
57343
|
+
}
|
|
57344
|
+
else if (ChartData.IsDayPeriod(period,true))
|
|
57345
|
+
{
|
|
57346
|
+
var fullData=HQData.GetDayKLineDataBySymbol(indexSymbol);
|
|
57347
|
+
if (fullData) aryData=HQData.GetKLineDataByDate(fullData, dateRange.Start.Date, dateRange.End.Date);
|
|
57348
|
+
}
|
|
57349
|
+
|
|
57350
|
+
var hqchartData={ name:indexSymbol, symbol:indexSymbol, data:aryData, ver:2.0 };
|
|
57351
|
+
|
|
57352
|
+
callback(hqchartData);
|
|
57353
|
+
}
|
|
57354
|
+
|
|
57327
57355
|
HQData.RequestSymbolData=function(data,callback)
|
|
57328
57356
|
{
|
|
57329
57357
|
data.PreventDefault=true;
|
|
@@ -59003,6 +59031,7 @@ HQData.APIIndex_MULTI_BAR=function(data, callback)
|
|
|
59003
59031
|
//{Date:20190916, Time: Value:15.5, Value2:0 },
|
|
59004
59032
|
],
|
|
59005
59033
|
//Width:10
|
|
59034
|
+
AdWidth:{ Type:1, Value:0.8 }
|
|
59006
59035
|
};
|
|
59007
59036
|
|
|
59008
59037
|
var point2=
|
|
@@ -59016,6 +59045,7 @@ HQData.APIIndex_MULTI_BAR=function(data, callback)
|
|
|
59016
59045
|
//{Date:20190916, Time: Value:15.5, Value2:0 },
|
|
59017
59046
|
],
|
|
59018
59047
|
//Width:10
|
|
59048
|
+
AdWidth:{ Type:1, Value:0.5 }
|
|
59019
59049
|
};
|
|
59020
59050
|
|
|
59021
59051
|
for(var i=0;i<kData.Data.length;++i)
|
|
@@ -59342,6 +59372,8 @@ HQData.APIIndex_SCATTER_PLOT_V2=function(data, callback)
|
|
|
59342
59372
|
};
|
|
59343
59373
|
}
|
|
59344
59374
|
|
|
59375
|
+
//if ((i%6)==2) item.Radius2=20;
|
|
59376
|
+
|
|
59345
59377
|
|
|
59346
59378
|
item.Tooltip=
|
|
59347
59379
|
[
|
|
@@ -59404,6 +59436,7 @@ HQData.APIIndex_KLINE_TABLE=function(data, callback)
|
|
|
59404
59436
|
{ Name:"账户4", DayCount:8, OperatorID:0 },
|
|
59405
59437
|
]
|
|
59406
59438
|
|
|
59439
|
+
|
|
59407
59440
|
for(var i=0;i<kData.Data.length;++i)
|
|
59408
59441
|
{
|
|
59409
59442
|
var kItem=kData.Data[i];
|
|
@@ -59464,6 +59497,7 @@ HQData.APIIndex_KLINE_TABLE=function(data, callback)
|
|
|
59464
59497
|
|
|
59465
59498
|
tableData.Draw.DrawData.push(colItem);
|
|
59466
59499
|
}
|
|
59500
|
+
|
|
59467
59501
|
|
|
59468
59502
|
var apiData=
|
|
59469
59503
|
{
|
|
@@ -1212,6 +1212,7 @@ var Syntax = {
|
|
|
1212
1212
|
function Node(ErrorHandler)
|
|
1213
1213
|
{
|
|
1214
1214
|
this.IsNeedIndexData=false; //是否需要大盘数据
|
|
1215
|
+
this.IsNeedIndustryData=false; //行业数据下载
|
|
1215
1216
|
this.IsNeedLatestIndexData=false; //是否需要下载最新大盘数据
|
|
1216
1217
|
this.IsNeedSymbolData=false; //是否需要下载股票数据
|
|
1217
1218
|
this.IsNeedMarginData=new Set();
|
|
@@ -1239,6 +1240,7 @@ function Node(ErrorHandler)
|
|
|
1239
1240
|
if (this.IsNeedSymbolData) jobs.push({ID:JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_SYMBOL_DATA});
|
|
1240
1241
|
if (this.IsNeedIndexData) jobs.push({ID:JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDEX_DATA});
|
|
1241
1242
|
if (this.IsNeedLatestIndexData) jobs.push({ID:JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_LATEST_INDEX_DATA});
|
|
1243
|
+
if (this.IsNeedIndustryData) jobs.push({ID:JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDUSTRY_DATA});
|
|
1242
1244
|
|
|
1243
1245
|
//最新的个股行情数据
|
|
1244
1246
|
for(var i=0;i<this.Dynainfo.length;++i)
|
|
@@ -1325,6 +1327,13 @@ function Node(ErrorHandler)
|
|
|
1325
1327
|
return;
|
|
1326
1328
|
}
|
|
1327
1329
|
|
|
1330
|
+
let setIndustryName=new Set(['HY_INDEXA','HY_INDEXC','HY_INDEXH','HY_INDEXL',"HY_INDEXO","HY_INDEXV",'HY_INDEXADV','HY_INDEXDEC']);
|
|
1331
|
+
if (setIndustryName.has(varName))
|
|
1332
|
+
{
|
|
1333
|
+
this.IsNeedIndustryData=true;
|
|
1334
|
+
return;
|
|
1335
|
+
}
|
|
1336
|
+
|
|
1328
1337
|
let setSymbolDataName=new Set(['CLOSE','C','VOL','V','OPEN','O','HIGH','H','LOW','L','AMOUNT','AMO','VOLINSTK']);
|
|
1329
1338
|
if (setSymbolDataName.has(varName))
|
|
1330
1339
|
{
|
|
@@ -12133,6 +12142,7 @@ function JSSymbolData(ast,option,jsExecute)
|
|
|
12133
12142
|
|
|
12134
12143
|
this.LatestData=new Map(); //最新行情 key=id value=数据
|
|
12135
12144
|
this.IndexData; //大盘指数
|
|
12145
|
+
this.IndustryData; //行业数据
|
|
12136
12146
|
this.LatestIndexData; //最新大盘数据
|
|
12137
12147
|
this.MarginData=new Map(); //融资融券
|
|
12138
12148
|
this.HKToSHSZData=new Map(); //北上资金
|
|
@@ -12525,168 +12535,130 @@ function JSSymbolData(ast,option,jsExecute)
|
|
|
12525
12535
|
this.GetIndexData=function()
|
|
12526
12536
|
{
|
|
12527
12537
|
if (this.IndexData) return this.Execute.RunNextJob();
|
|
12538
|
+
if (!this.NetworkFilter) return this.Execute.RunNextJob();
|
|
12528
12539
|
|
|
12529
|
-
var
|
|
12530
|
-
|
|
12540
|
+
var dateRange=this.Data.GetDateRange();
|
|
12541
|
+
var period=this.Period;
|
|
12542
|
+
var obj=
|
|
12531
12543
|
{
|
|
12532
|
-
|
|
12533
|
-
|
|
12534
|
-
|
|
12535
|
-
|
|
12536
|
-
|
|
12537
|
-
|
|
12538
|
-
|
|
12539
|
-
Period:self.Period,
|
|
12540
|
-
Request:
|
|
12541
|
-
{
|
|
12542
|
-
Url:self.KLineApiUrl, Type:'POST' ,
|
|
12543
|
-
Data:
|
|
12544
|
-
{
|
|
12545
|
-
field:[ "name", "symbol","yclose","open","price","high","low","vol",'up','down','stop','unchanged'],
|
|
12546
|
-
indexSymbol:"000001.sh", symbol: this.Symbol, period:this.Period,
|
|
12547
|
-
dateRange:dateRange
|
|
12548
|
-
}
|
|
12549
|
-
},
|
|
12550
|
-
Self:this,
|
|
12551
|
-
PreventDefault:false
|
|
12552
|
-
};
|
|
12553
|
-
this.NetworkFilter(obj, function(data)
|
|
12544
|
+
Name:'JSSymbolData::GetIndexData', //类名::
|
|
12545
|
+
Explain:'大盘数据',
|
|
12546
|
+
Period:period,
|
|
12547
|
+
Request:
|
|
12548
|
+
{
|
|
12549
|
+
Type:'POST' ,
|
|
12550
|
+
Data:
|
|
12554
12551
|
{
|
|
12555
|
-
|
|
12556
|
-
|
|
12557
|
-
|
|
12552
|
+
field:[ "name", "symbol","yclose","open","price","high","low","vol",'up','down','stop','unchanged'],
|
|
12553
|
+
indexSymbol:"000001.sh", symbol: this.Symbol, period:period,
|
|
12554
|
+
dateRange:dateRange
|
|
12555
|
+
}
|
|
12556
|
+
},
|
|
12557
|
+
Self:this,
|
|
12558
|
+
PreventDefault:false
|
|
12559
|
+
};
|
|
12558
12560
|
|
|
12559
|
-
|
|
12560
|
-
|
|
12561
|
+
this.NetworkFilter(obj, (data)=>
|
|
12562
|
+
{
|
|
12563
|
+
JSConsole.Complier.Log('[JSSymbolData::GetIndexData] recv data' , data);
|
|
12561
12564
|
|
|
12562
|
-
|
|
12563
|
-
|
|
12564
|
-
|
|
12565
|
-
|
|
12566
|
-
|
|
12567
|
-
|
|
12568
|
-
|
|
12569
|
-
|
|
12570
|
-
|
|
12571
|
-
|
|
12572
|
-
|
|
12573
|
-
|
|
12574
|
-
|
|
12575
|
-
|
|
12576
|
-
|
|
12577
|
-
|
|
12578
|
-
|
|
12579
|
-
|
|
12565
|
+
this.IndexData=this.APIKDataToChartData(data, period);
|
|
12566
|
+
this.Execute.RunNextJob();
|
|
12567
|
+
});
|
|
12568
|
+
|
|
12569
|
+
}
|
|
12570
|
+
|
|
12571
|
+
|
|
12572
|
+
this.APIKDataToChartData=function(data, period)
|
|
12573
|
+
{
|
|
12574
|
+
var result=null;
|
|
12575
|
+
if (ChartData.IsDayPeriod(period,true)) //请求日线数据
|
|
12576
|
+
{
|
|
12577
|
+
var hisData=this.JsonDataToHistoryData(data);
|
|
12578
|
+
result=new ChartData();
|
|
12579
|
+
result.DataType=0; /*日线数据 */
|
|
12580
|
+
result.Data=hisData;
|
|
12581
|
+
|
|
12582
|
+
if (this.IsApiPeriod==true)
|
|
12583
|
+
{
|
|
12584
|
+
result.Period=period;
|
|
12585
|
+
result.Data=this.Data.FixKData(hisData,period);
|
|
12586
|
+
}
|
|
12587
|
+
else
|
|
12588
|
+
{
|
|
12589
|
+
var aryOverlayData=this.SourceData.GetOverlayData(result.Data); //和主图数据拟合以后的数据
|
|
12590
|
+
result.Data=aryOverlayData;
|
|
12591
|
+
|
|
12592
|
+
if (ChartData.IsDayPeriod(period,false)) //周期数据
|
|
12580
12593
|
{
|
|
12581
|
-
|
|
12594
|
+
var periodData=result.GetPeriodData(period);
|
|
12595
|
+
result.Data=periodData;
|
|
12582
12596
|
}
|
|
12583
|
-
}
|
|
12597
|
+
}
|
|
12584
12598
|
}
|
|
12585
|
-
else
|
|
12599
|
+
else if (ChartData.IsMinutePeriod(period, true))
|
|
12586
12600
|
{
|
|
12587
|
-
|
|
12588
|
-
|
|
12589
|
-
|
|
12590
|
-
|
|
12591
|
-
{
|
|
12592
|
-
Name:'JSSymbolData::GetIndexData', //类名::
|
|
12593
|
-
Explain:'大盘数据',
|
|
12594
|
-
Period:self.Period,
|
|
12595
|
-
Request:{ Url:self.MinuteKLineApiUrl, Type:'POST' ,
|
|
12596
|
-
Data:
|
|
12597
|
-
{
|
|
12598
|
-
field:["name","symbol","yclose","open","price","high","low","vol"],
|
|
12599
|
-
indexSymbol:"000001.sh", symbol: this.Symbol, period:this.Period,
|
|
12600
|
-
dateRange:dateRange
|
|
12601
|
-
}
|
|
12602
|
-
},
|
|
12603
|
-
Self:this,
|
|
12604
|
-
PreventDefault:false
|
|
12605
|
-
};
|
|
12606
|
-
this.NetworkFilter(obj, function(data)
|
|
12607
|
-
{
|
|
12608
|
-
self.RecvIndexMinuteHistroyData(data);
|
|
12609
|
-
self.Execute.RunNextJob();
|
|
12610
|
-
});
|
|
12601
|
+
var hisData=this.JsonDataToMinuteHistoryData(data);
|
|
12602
|
+
result=new ChartData();
|
|
12603
|
+
result.DataType=1; /*分钟线数据 */
|
|
12604
|
+
result.Data=hisData;
|
|
12611
12605
|
|
|
12612
|
-
|
|
12606
|
+
if (this.IsApiPeriod==true)
|
|
12607
|
+
{
|
|
12608
|
+
result.Period=this.Period;
|
|
12609
|
+
result.Data=this.Data.FixKData(hisData,period);
|
|
12613
12610
|
}
|
|
12611
|
+
else
|
|
12612
|
+
{
|
|
12613
|
+
var aryOverlayData=this.SourceData.GetOverlayMinuteData(result.Data); //和主图数据拟合以后的数据
|
|
12614
|
+
result.Data=aryOverlayData;
|
|
12614
12615
|
|
|
12615
|
-
|
|
12616
|
-
url: self.MinuteKLineApiUrl,
|
|
12617
|
-
data:
|
|
12616
|
+
if (ChartData.IsMinutePeriod(period,false)) //周期数据
|
|
12618
12617
|
{
|
|
12619
|
-
|
|
12620
|
-
|
|
12621
|
-
"start": -1,
|
|
12622
|
-
"count": self.MaxRequestMinuteDayCount+5
|
|
12623
|
-
},
|
|
12624
|
-
type:"post",
|
|
12625
|
-
dataType: "json",
|
|
12626
|
-
async:true,
|
|
12627
|
-
success: function (data)
|
|
12628
|
-
{
|
|
12629
|
-
self.RecvIndexMinuteHistroyData(data);
|
|
12630
|
-
self.Execute.RunNextJob();
|
|
12631
|
-
},
|
|
12632
|
-
error: function(request)
|
|
12633
|
-
{
|
|
12634
|
-
self.RecvError(request);
|
|
12618
|
+
var periodData=result.GetPeriodData(period);
|
|
12619
|
+
result.Data=periodData;
|
|
12635
12620
|
}
|
|
12636
|
-
}
|
|
12621
|
+
}
|
|
12637
12622
|
}
|
|
12638
12623
|
|
|
12624
|
+
return result;
|
|
12639
12625
|
}
|
|
12640
12626
|
|
|
12641
|
-
|
|
12627
|
+
//获取行业数据
|
|
12628
|
+
this.GetIndustryData=function()
|
|
12642
12629
|
{
|
|
12643
|
-
|
|
12644
|
-
|
|
12645
|
-
let hisData=this.JsonDataToHistoryData(data);
|
|
12646
|
-
this.IndexData=new ChartData();
|
|
12647
|
-
this.IndexData.DataType=0; /*日线数据 */
|
|
12648
|
-
this.IndexData.Data=hisData;
|
|
12630
|
+
if (this.IndustryData) return this.Execute.RunNextJob();
|
|
12631
|
+
if (!this.NetworkFilter) return this.Execute.RunNextJob();
|
|
12649
12632
|
|
|
12650
|
-
|
|
12651
|
-
|
|
12652
|
-
|
|
12653
|
-
this.IndexData.Data=this.Data.FixKData(hisData,this.Period);
|
|
12654
|
-
}
|
|
12655
|
-
else
|
|
12633
|
+
var dateRange=this.Data.GetDateRange();
|
|
12634
|
+
var period=this.Period;
|
|
12635
|
+
var obj=
|
|
12656
12636
|
{
|
|
12657
|
-
|
|
12658
|
-
|
|
12659
|
-
|
|
12660
|
-
|
|
12661
|
-
{
|
|
12662
|
-
|
|
12663
|
-
|
|
12664
|
-
|
|
12665
|
-
|
|
12666
|
-
|
|
12667
|
-
|
|
12668
|
-
|
|
12669
|
-
|
|
12670
|
-
|
|
12637
|
+
Name:'JSSymbolData::GetIndustryData', //类名::
|
|
12638
|
+
Explain:'行业数据',
|
|
12639
|
+
Period:period,
|
|
12640
|
+
Request:
|
|
12641
|
+
{
|
|
12642
|
+
Url:self.KLineApiUrl, Type:'POST' ,
|
|
12643
|
+
Data:
|
|
12644
|
+
{
|
|
12645
|
+
field:[ "name", "symbol","yclose","open","price","high","low","vol",'up','down','stop','unchanged'],
|
|
12646
|
+
symbol: this.Symbol, period:period,
|
|
12647
|
+
dateRange:dateRange
|
|
12648
|
+
}
|
|
12649
|
+
},
|
|
12650
|
+
Self:this,
|
|
12651
|
+
PreventDefault:false
|
|
12652
|
+
};
|
|
12671
12653
|
|
|
12672
|
-
|
|
12673
|
-
this.
|
|
12674
|
-
|
|
12675
|
-
|
|
12654
|
+
|
|
12655
|
+
this.NetworkFilter(obj, (data)=>
|
|
12656
|
+
{
|
|
12657
|
+
JSConsole.Complier.Log('[JSSymbolData::GetIndustryData] recv data' , data);
|
|
12676
12658
|
|
|
12677
|
-
|
|
12678
|
-
|
|
12679
|
-
|
|
12680
|
-
this.IndexData.Data=this.Data.FixKData(hisData,this.Period);
|
|
12681
|
-
}
|
|
12682
|
-
else
|
|
12683
|
-
{
|
|
12684
|
-
if (ChartData.IsMinutePeriod(this.Period,false)) //周期数据
|
|
12685
|
-
{
|
|
12686
|
-
let periodData=this.IndexData.GetPeriodData(this.Period);
|
|
12687
|
-
this.IndexData.Data=periodData;
|
|
12688
|
-
}
|
|
12689
|
-
}
|
|
12659
|
+
this.IndustryData=this.APIKDataToChartData(data, period);
|
|
12660
|
+
this.Execute.RunNextJob();
|
|
12661
|
+
});
|
|
12690
12662
|
}
|
|
12691
12663
|
|
|
12692
12664
|
this.GetOtherSymbolParam=function(name)
|
|
@@ -13030,6 +13002,32 @@ function JSSymbolData(ast,option,jsExecute)
|
|
|
13030
13002
|
}
|
|
13031
13003
|
}
|
|
13032
13004
|
|
|
13005
|
+
//获取大盘指数缓存数据
|
|
13006
|
+
this.GetIndustryCacheData=function(dataName)
|
|
13007
|
+
{
|
|
13008
|
+
if (!this.IndustryData) return [];
|
|
13009
|
+
|
|
13010
|
+
switch(dataName)
|
|
13011
|
+
{
|
|
13012
|
+
case 'HY_INDEXA':
|
|
13013
|
+
return this.IndustryData.GetAmount();
|
|
13014
|
+
case 'HY_INDEXC':
|
|
13015
|
+
return this.IndustryData.GetClose();
|
|
13016
|
+
case 'HY_INDEXH':
|
|
13017
|
+
return this.IndustryData.GetHigh();
|
|
13018
|
+
case 'HY_INDEXL':
|
|
13019
|
+
return this.IndustryData.GetLow();
|
|
13020
|
+
case 'HY_INDEXO':
|
|
13021
|
+
return this.IndustryData.GetOpen();
|
|
13022
|
+
case 'HY_INDEXV':
|
|
13023
|
+
return this.IndustryData.GetVol();
|
|
13024
|
+
case 'HY_INDEXADV':
|
|
13025
|
+
return this.IndustryData.GetUp();
|
|
13026
|
+
case 'HY_INDEXDEC':
|
|
13027
|
+
return this.IndustryData.GetDown();
|
|
13028
|
+
}
|
|
13029
|
+
}
|
|
13030
|
+
|
|
13033
13031
|
//指数转成对应的板块
|
|
13034
13032
|
this.GetBlockSymbol=function(symbol)
|
|
13035
13033
|
{
|
|
@@ -16972,6 +16970,7 @@ var JS_EXECUTE_JOB_ID=
|
|
|
16972
16970
|
JOB_DOWNLOAD_LATEST_INDEX_DATA:8, //下载最新大盘数据
|
|
16973
16971
|
JOB_DOWNLOAD_OTHER_SYMBOL_DATA:9, //下载其他股票的K线数据
|
|
16974
16972
|
JOB_DOWNLOAD_SYMBOL_PERIOD_DATA:10, //下载周期数据
|
|
16973
|
+
JOB_DOWNLOAD_INDUSTRY_DATA:11, //行业数据
|
|
16975
16974
|
|
|
16976
16975
|
JOB_DOWNLOAD_FINVALUE:301, //引用专业财务数据 FINVALUE(ID),ID为数据编号
|
|
16977
16976
|
JOB_DOWNLOAD_FINONE:302, //引用指定年和月日的某类型的财务数据 FINONE(ID,Y,MMDD),ID为数据编号,Y和MMDD表示年和月日.
|
|
@@ -17258,6 +17257,10 @@ function JSExecute(ast,option)
|
|
|
17258
17257
|
['INDEXA',null],['INDEXC',null],['INDEXH',null],['INDEXL',null],['INDEXO',null],['INDEXV',null],
|
|
17259
17258
|
['INDEXADV',null],['INDEXDEC',null],
|
|
17260
17259
|
|
|
17260
|
+
//行业数据
|
|
17261
|
+
["HY_INDEXA",null],["HY_INDEXC",null],["HY_INDEXH",null],["HY_INDEXL",null],["HY_INDEXO",null],["HY_INDEXV",null],
|
|
17262
|
+
["HY_INDEXADV",null],["HY_INDEXDEC",null],
|
|
17263
|
+
|
|
17261
17264
|
["ADVANCE",null],['DECLINE', null],
|
|
17262
17265
|
|
|
17263
17266
|
['FROMOPEN',null], //已开盘有多长分钟
|
|
@@ -17382,6 +17385,8 @@ function JSExecute(ast,option)
|
|
|
17382
17385
|
return this.SymbolData.GetSymbolPeriodData(jobItem);
|
|
17383
17386
|
case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDEX_DATA:
|
|
17384
17387
|
return this.SymbolData.GetIndexData();
|
|
17388
|
+
case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDUSTRY_DATA:
|
|
17389
|
+
return this.SymbolData.GetIndustryData();
|
|
17385
17390
|
case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_LATEST_INDEX_DATA:
|
|
17386
17391
|
return this.SymbolData.GetLatestIndexData();
|
|
17387
17392
|
case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDEX_INCREASE_DATA:
|
|
@@ -17506,6 +17511,16 @@ function JSExecute(ast,option)
|
|
|
17506
17511
|
case 'INDEXADV':
|
|
17507
17512
|
case 'INDEXDEC':
|
|
17508
17513
|
return this.SymbolData.GetIndexCacheData(name);
|
|
17514
|
+
//行业数据
|
|
17515
|
+
case 'HY_INDEXA':
|
|
17516
|
+
case 'HY_INDEXC':
|
|
17517
|
+
case 'HY_INDEXH':
|
|
17518
|
+
case 'HY_INDEXL':
|
|
17519
|
+
case 'HY_INDEXO':
|
|
17520
|
+
case 'HY_INDEXV':
|
|
17521
|
+
case 'HY_INDEXADV':
|
|
17522
|
+
case 'HY_INDEXDEC':
|
|
17523
|
+
return this.SymbolData.GetIndustryCacheData(name);
|
|
17509
17524
|
case 'CURRBARSCOUNT':
|
|
17510
17525
|
return this.SymbolData.GetCurrBarsCount();
|
|
17511
17526
|
case "BARPOS":
|
package/src/jscommon/umychart.js
CHANGED
|
@@ -34462,6 +34462,7 @@ function ChartKLineTable()
|
|
|
34462
34462
|
this.MapCache=null; //key=date/date-time value={ Date:, Time:, Data:[ ] }
|
|
34463
34463
|
this.GetKValue=ChartData.GetKValue;
|
|
34464
34464
|
this.AryCellRect=[]; //保存单元格信息
|
|
34465
|
+
this.AryNameRect=[]; //右侧行的名字
|
|
34465
34466
|
|
|
34466
34467
|
|
|
34467
34468
|
this.SetOption=function(option)
|
|
@@ -34564,6 +34565,7 @@ function ChartKLineTable()
|
|
|
34564
34565
|
this.Draw=function()
|
|
34565
34566
|
{
|
|
34566
34567
|
this.AryCellRect=[];
|
|
34568
|
+
this.AryNameRect=[];
|
|
34567
34569
|
if (!this.IsShow || this.ChartFrame.IsMinSize || !this.IsVisible) return;
|
|
34568
34570
|
if (this.IsShowIndexTitleOnly()) return;
|
|
34569
34571
|
if (this.IsHideScriptIndex()) return;
|
|
@@ -34770,6 +34772,8 @@ function ChartKLineTable()
|
|
|
34770
34772
|
this.Canvas.textBaseline='bottom';
|
|
34771
34773
|
this.Canvas.textAlign='left';
|
|
34772
34774
|
this.Canvas.fillText(item.Name,rtBG.Left+2,yText);
|
|
34775
|
+
|
|
34776
|
+
this.AryNameRect.push({ Rect:rtBG, Item:item, Index:i });
|
|
34773
34777
|
}
|
|
34774
34778
|
|
|
34775
34779
|
y+=this.RowHeight;
|
|
@@ -89324,6 +89328,19 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
89324
89328
|
this.ChartCorssCursor.OnDBClick(data);
|
|
89325
89329
|
bDraw=data.Draw
|
|
89326
89330
|
}
|
|
89331
|
+
|
|
89332
|
+
if (this.TryDBClickChartTooltipData) //外部预留接口
|
|
89333
|
+
{
|
|
89334
|
+
var data={ e:e, X:x, Y:y, Draw:false, PreventDefault:false };
|
|
89335
|
+
this.TryDBClickChartTooltipData(data, this);
|
|
89336
|
+
if (data.Draw) bDraw=true;
|
|
89337
|
+
|
|
89338
|
+
if (data.PreventDefault)
|
|
89339
|
+
{
|
|
89340
|
+
if (bDraw) this.Draw();
|
|
89341
|
+
return;
|
|
89342
|
+
}
|
|
89343
|
+
}
|
|
89327
89344
|
|
|
89328
89345
|
if (this.EnableYDrag && (this.EnableYDrag.Left || this.EnableYDrag.Right) && this.Frame && this.Frame.PtInFrameY)
|
|
89329
89346
|
{
|
|
@@ -158,6 +158,10 @@ HQData.NetworkFilter=function(data, callback)
|
|
|
158
158
|
HQData.INDEX_RequestData(data,callback);
|
|
159
159
|
break;
|
|
160
160
|
|
|
161
|
+
case "JSSymbolData::GetIndustryData":
|
|
162
|
+
HQData.INDUSTRY_RequestData(data,callback);
|
|
163
|
+
break;
|
|
164
|
+
|
|
161
165
|
case 'JSSymbolData::GetSymbolData':
|
|
162
166
|
//HQChart使用教程30-K线图如何对接第3方数据38-通达信指标K线数据
|
|
163
167
|
HQData.RequestSymbolData(data,callback); //计算指标需要的K线数据
|
|
@@ -1810,6 +1814,30 @@ HQData.INDEX_RequestData=function(data,callback)
|
|
|
1810
1814
|
callback(hqchartData);
|
|
1811
1815
|
}
|
|
1812
1816
|
|
|
1817
|
+
HQData.INDUSTRY_RequestData=function(data, callback)
|
|
1818
|
+
{
|
|
1819
|
+
data.PreventDefault=true;
|
|
1820
|
+
var period=data.Period;
|
|
1821
|
+
var symbol=data.Request.Data.symbol;
|
|
1822
|
+
var indexSymbol="399001.sz";
|
|
1823
|
+
var dateRange=data.Request.Data.dateRange;
|
|
1824
|
+
var aryData=[];
|
|
1825
|
+
if (ChartData.IsMinutePeriod(period, true))
|
|
1826
|
+
{
|
|
1827
|
+
var fullData=HQData.GetM1KLineDataBySymbol(symbol);
|
|
1828
|
+
if (fullData) aryData=HQData.GetKLineDataByDateTime(fullData, dateRange.Start.Date, dateRange.Start.Time, dateRange.End.Date, dateRange.End.Time);
|
|
1829
|
+
}
|
|
1830
|
+
else if (ChartData.IsDayPeriod(period,true))
|
|
1831
|
+
{
|
|
1832
|
+
var fullData=HQData.GetDayKLineDataBySymbol(indexSymbol);
|
|
1833
|
+
if (fullData) aryData=HQData.GetKLineDataByDate(fullData, dateRange.Start.Date, dateRange.End.Date);
|
|
1834
|
+
}
|
|
1835
|
+
|
|
1836
|
+
var hqchartData={ name:indexSymbol, symbol:indexSymbol, data:aryData, ver:2.0 };
|
|
1837
|
+
|
|
1838
|
+
callback(hqchartData);
|
|
1839
|
+
}
|
|
1840
|
+
|
|
1813
1841
|
HQData.RequestSymbolData=function(data,callback)
|
|
1814
1842
|
{
|
|
1815
1843
|
data.PreventDefault=true;
|
|
@@ -3489,6 +3517,7 @@ HQData.APIIndex_MULTI_BAR=function(data, callback)
|
|
|
3489
3517
|
//{Date:20190916, Time: Value:15.5, Value2:0 },
|
|
3490
3518
|
],
|
|
3491
3519
|
//Width:10
|
|
3520
|
+
AdWidth:{ Type:1, Value:0.8 }
|
|
3492
3521
|
};
|
|
3493
3522
|
|
|
3494
3523
|
var point2=
|
|
@@ -3502,6 +3531,7 @@ HQData.APIIndex_MULTI_BAR=function(data, callback)
|
|
|
3502
3531
|
//{Date:20190916, Time: Value:15.5, Value2:0 },
|
|
3503
3532
|
],
|
|
3504
3533
|
//Width:10
|
|
3534
|
+
AdWidth:{ Type:1, Value:0.5 }
|
|
3505
3535
|
};
|
|
3506
3536
|
|
|
3507
3537
|
for(var i=0;i<kData.Data.length;++i)
|
|
@@ -3828,6 +3858,8 @@ HQData.APIIndex_SCATTER_PLOT_V2=function(data, callback)
|
|
|
3828
3858
|
};
|
|
3829
3859
|
}
|
|
3830
3860
|
|
|
3861
|
+
//if ((i%6)==2) item.Radius2=20;
|
|
3862
|
+
|
|
3831
3863
|
|
|
3832
3864
|
item.Tooltip=
|
|
3833
3865
|
[
|
|
@@ -3890,6 +3922,7 @@ HQData.APIIndex_KLINE_TABLE=function(data, callback)
|
|
|
3890
3922
|
{ Name:"账户4", DayCount:8, OperatorID:0 },
|
|
3891
3923
|
]
|
|
3892
3924
|
|
|
3925
|
+
|
|
3893
3926
|
for(var i=0;i<kData.Data.length;++i)
|
|
3894
3927
|
{
|
|
3895
3928
|
var kItem=kData.Data[i];
|
|
@@ -3950,6 +3983,7 @@ HQData.APIIndex_KLINE_TABLE=function(data, callback)
|
|
|
3950
3983
|
|
|
3951
3984
|
tableData.Draw.DrawData.push(colItem);
|
|
3952
3985
|
}
|
|
3986
|
+
|
|
3953
3987
|
|
|
3954
3988
|
var apiData=
|
|
3955
3989
|
{
|