hqchart 1.1.15341 → 1.1.15347
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
|
@@ -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
|
{
|
|
@@ -7449,9 +7458,26 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
7449
7458
|
//用法: STRCAT('多头','开仓')将两个字符串'多头','开仓'相加成一个字符串'多头开仓'
|
|
7450
7459
|
this.STRCAT=function(str1, str2)
|
|
7451
7460
|
{
|
|
7452
|
-
var result=
|
|
7453
|
-
|
|
7454
|
-
|
|
7461
|
+
var result="";
|
|
7462
|
+
|
|
7463
|
+
if (IFrameSplitOperator.IsString(str1)) result+=str1;
|
|
7464
|
+
if (IFrameSplitOperator.IsString(str2)) result+=str2;
|
|
7465
|
+
|
|
7466
|
+
return result;
|
|
7467
|
+
}
|
|
7468
|
+
|
|
7469
|
+
//STRCAT6(A,B,C,D,E,F):将六个字符串A,B,C,D,E,F(非序列化)相加成一个字符串.
|
|
7470
|
+
//用法: STRCAT6('多头','开仓','或者','空头','平仓','')将六个字符串相加成一个字符串
|
|
7471
|
+
this.STRCAT6=function(str1, str2,str3, str4,str5, str6)
|
|
7472
|
+
{
|
|
7473
|
+
var result="";
|
|
7474
|
+
if (IFrameSplitOperator.IsString(str1)) result+=str1;
|
|
7475
|
+
if (IFrameSplitOperator.IsString(str2)) result+=str2;
|
|
7476
|
+
if (IFrameSplitOperator.IsString(str3)) result+=str3;
|
|
7477
|
+
if (IFrameSplitOperator.IsString(str4)) result+=str4;
|
|
7478
|
+
if (IFrameSplitOperator.IsString(str5)) result+=str5;
|
|
7479
|
+
if (IFrameSplitOperator.IsString(str6)) result+=str6;
|
|
7480
|
+
|
|
7455
7481
|
return result;
|
|
7456
7482
|
}
|
|
7457
7483
|
|
|
@@ -7615,7 +7641,9 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
7615
7641
|
//用法: CON2STR(FINANCE(20),3)表示取营业收入,以3位小数转为字符串
|
|
7616
7642
|
this.CON2STR=function(data,n)
|
|
7617
7643
|
{
|
|
7618
|
-
var result=
|
|
7644
|
+
var result="";
|
|
7645
|
+
var dec=0;
|
|
7646
|
+
if (IFrameSplitOperator.IsNumber(n)) dec=n;
|
|
7619
7647
|
if (Array.isArray(data))
|
|
7620
7648
|
{
|
|
7621
7649
|
for(var i=data.length-1 ; i>=0; --i)
|
|
@@ -7623,7 +7651,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
7623
7651
|
var item=data[i];
|
|
7624
7652
|
if (this.IsNumber(item))
|
|
7625
7653
|
{
|
|
7626
|
-
result=item.toFixed(
|
|
7654
|
+
result=item.toFixed(dec);
|
|
7627
7655
|
return result;
|
|
7628
7656
|
}
|
|
7629
7657
|
}
|
|
@@ -7631,7 +7659,7 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
7631
7659
|
else
|
|
7632
7660
|
{
|
|
7633
7661
|
if (this.IsNumber(data))
|
|
7634
|
-
result=data.toFixed(
|
|
7662
|
+
result=data.toFixed(dec);
|
|
7635
7663
|
}
|
|
7636
7664
|
|
|
7637
7665
|
return result;
|
|
@@ -9359,6 +9387,8 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
9359
9387
|
return this.BETWEEN(args[0], args[1], args[2]);
|
|
9360
9388
|
case 'STRCAT':
|
|
9361
9389
|
return this.STRCAT(args[0], args[1]);
|
|
9390
|
+
case "STRCAT6":
|
|
9391
|
+
return this.STRCAT6(args[0], args[1],args[2], args[3],args[4], args[5]);
|
|
9362
9392
|
case 'CON2STR':
|
|
9363
9393
|
return this.CON2STR(args[0], args[1]);
|
|
9364
9394
|
case "VAR2STR":
|
|
@@ -12112,6 +12142,7 @@ function JSSymbolData(ast,option,jsExecute)
|
|
|
12112
12142
|
|
|
12113
12143
|
this.LatestData=new Map(); //最新行情 key=id value=数据
|
|
12114
12144
|
this.IndexData; //大盘指数
|
|
12145
|
+
this.IndustryData; //行业数据
|
|
12115
12146
|
this.LatestIndexData; //最新大盘数据
|
|
12116
12147
|
this.MarginData=new Map(); //融资融券
|
|
12117
12148
|
this.HKToSHSZData=new Map(); //北上资金
|
|
@@ -12504,168 +12535,130 @@ function JSSymbolData(ast,option,jsExecute)
|
|
|
12504
12535
|
this.GetIndexData=function()
|
|
12505
12536
|
{
|
|
12506
12537
|
if (this.IndexData) return this.Execute.RunNextJob();
|
|
12538
|
+
if (!this.NetworkFilter) return this.Execute.RunNextJob();
|
|
12507
12539
|
|
|
12508
|
-
var
|
|
12509
|
-
|
|
12540
|
+
var dateRange=this.Data.GetDateRange();
|
|
12541
|
+
var period=this.Period;
|
|
12542
|
+
var obj=
|
|
12510
12543
|
{
|
|
12511
|
-
|
|
12512
|
-
|
|
12513
|
-
|
|
12514
|
-
|
|
12515
|
-
|
|
12516
|
-
|
|
12517
|
-
|
|
12518
|
-
Period:self.Period,
|
|
12519
|
-
Request:
|
|
12520
|
-
{
|
|
12521
|
-
Url:self.KLineApiUrl, Type:'POST' ,
|
|
12522
|
-
Data:
|
|
12523
|
-
{
|
|
12524
|
-
field:[ "name", "symbol","yclose","open","price","high","low","vol",'up','down','stop','unchanged'],
|
|
12525
|
-
indexSymbol:"000001.sh", symbol: this.Symbol, period:this.Period,
|
|
12526
|
-
dateRange:dateRange
|
|
12527
|
-
}
|
|
12528
|
-
},
|
|
12529
|
-
Self:this,
|
|
12530
|
-
PreventDefault:false
|
|
12531
|
-
};
|
|
12532
|
-
this.NetworkFilter(obj, function(data)
|
|
12544
|
+
Name:'JSSymbolData::GetIndexData', //类名::
|
|
12545
|
+
Explain:'大盘数据',
|
|
12546
|
+
Period:period,
|
|
12547
|
+
Request:
|
|
12548
|
+
{
|
|
12549
|
+
Type:'POST' ,
|
|
12550
|
+
Data:
|
|
12533
12551
|
{
|
|
12534
|
-
|
|
12535
|
-
|
|
12536
|
-
|
|
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
|
+
};
|
|
12537
12560
|
|
|
12538
|
-
|
|
12539
|
-
|
|
12561
|
+
this.NetworkFilter(obj, (data)=>
|
|
12562
|
+
{
|
|
12563
|
+
JSConsole.Complier.Log('[JSSymbolData::GetIndexData] recv data' , data);
|
|
12540
12564
|
|
|
12541
|
-
|
|
12542
|
-
|
|
12543
|
-
|
|
12544
|
-
|
|
12545
|
-
|
|
12546
|
-
|
|
12547
|
-
|
|
12548
|
-
|
|
12549
|
-
|
|
12550
|
-
|
|
12551
|
-
|
|
12552
|
-
|
|
12553
|
-
|
|
12554
|
-
|
|
12555
|
-
|
|
12556
|
-
|
|
12557
|
-
|
|
12558
|
-
|
|
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)) //周期数据
|
|
12559
12593
|
{
|
|
12560
|
-
|
|
12594
|
+
var periodData=result.GetPeriodData(period);
|
|
12595
|
+
result.Data=periodData;
|
|
12561
12596
|
}
|
|
12562
|
-
}
|
|
12597
|
+
}
|
|
12563
12598
|
}
|
|
12564
|
-
else
|
|
12599
|
+
else if (ChartData.IsMinutePeriod(period, true))
|
|
12565
12600
|
{
|
|
12566
|
-
|
|
12567
|
-
|
|
12568
|
-
|
|
12569
|
-
|
|
12570
|
-
{
|
|
12571
|
-
Name:'JSSymbolData::GetIndexData', //类名::
|
|
12572
|
-
Explain:'大盘数据',
|
|
12573
|
-
Period:self.Period,
|
|
12574
|
-
Request:{ Url:self.MinuteKLineApiUrl, Type:'POST' ,
|
|
12575
|
-
Data:
|
|
12576
|
-
{
|
|
12577
|
-
field:["name","symbol","yclose","open","price","high","low","vol"],
|
|
12578
|
-
indexSymbol:"000001.sh", symbol: this.Symbol, period:this.Period,
|
|
12579
|
-
dateRange:dateRange
|
|
12580
|
-
}
|
|
12581
|
-
},
|
|
12582
|
-
Self:this,
|
|
12583
|
-
PreventDefault:false
|
|
12584
|
-
};
|
|
12585
|
-
this.NetworkFilter(obj, function(data)
|
|
12586
|
-
{
|
|
12587
|
-
self.RecvIndexMinuteHistroyData(data);
|
|
12588
|
-
self.Execute.RunNextJob();
|
|
12589
|
-
});
|
|
12601
|
+
var hisData=this.JsonDataToMinuteHistoryData(data);
|
|
12602
|
+
result=new ChartData();
|
|
12603
|
+
result.DataType=1; /*分钟线数据 */
|
|
12604
|
+
result.Data=hisData;
|
|
12590
12605
|
|
|
12591
|
-
|
|
12606
|
+
if (this.IsApiPeriod==true)
|
|
12607
|
+
{
|
|
12608
|
+
result.Period=this.Period;
|
|
12609
|
+
result.Data=this.Data.FixKData(hisData,period);
|
|
12592
12610
|
}
|
|
12611
|
+
else
|
|
12612
|
+
{
|
|
12613
|
+
var aryOverlayData=this.SourceData.GetOverlayMinuteData(result.Data); //和主图数据拟合以后的数据
|
|
12614
|
+
result.Data=aryOverlayData;
|
|
12593
12615
|
|
|
12594
|
-
|
|
12595
|
-
url: self.MinuteKLineApiUrl,
|
|
12596
|
-
data:
|
|
12597
|
-
{
|
|
12598
|
-
"field": ["name","symbol","yclose","open","price","high","low","vol"],
|
|
12599
|
-
"symbol": '000001.sh',
|
|
12600
|
-
"start": -1,
|
|
12601
|
-
"count": self.MaxRequestMinuteDayCount+5
|
|
12602
|
-
},
|
|
12603
|
-
type:"post",
|
|
12604
|
-
dataType: "json",
|
|
12605
|
-
async:true,
|
|
12606
|
-
success: function (data)
|
|
12607
|
-
{
|
|
12608
|
-
self.RecvIndexMinuteHistroyData(data);
|
|
12609
|
-
self.Execute.RunNextJob();
|
|
12610
|
-
},
|
|
12611
|
-
error: function(request)
|
|
12616
|
+
if (ChartData.IsMinutePeriod(period,false)) //周期数据
|
|
12612
12617
|
{
|
|
12613
|
-
|
|
12618
|
+
var periodData=result.GetPeriodData(period);
|
|
12619
|
+
result.Data=periodData;
|
|
12614
12620
|
}
|
|
12615
|
-
}
|
|
12621
|
+
}
|
|
12616
12622
|
}
|
|
12617
12623
|
|
|
12624
|
+
return result;
|
|
12618
12625
|
}
|
|
12619
12626
|
|
|
12620
|
-
|
|
12627
|
+
//获取行业数据
|
|
12628
|
+
this.GetIndustryData=function()
|
|
12621
12629
|
{
|
|
12622
|
-
|
|
12623
|
-
|
|
12624
|
-
let hisData=this.JsonDataToHistoryData(data);
|
|
12625
|
-
this.IndexData=new ChartData();
|
|
12626
|
-
this.IndexData.DataType=0; /*日线数据 */
|
|
12627
|
-
this.IndexData.Data=hisData;
|
|
12630
|
+
if (this.IndustryData) return this.Execute.RunNextJob();
|
|
12631
|
+
if (!this.NetworkFilter) return this.Execute.RunNextJob();
|
|
12628
12632
|
|
|
12629
|
-
|
|
12630
|
-
|
|
12631
|
-
|
|
12632
|
-
this.IndexData.Data=this.Data.FixKData(hisData,this.Period);
|
|
12633
|
-
}
|
|
12634
|
-
else
|
|
12633
|
+
var dateRange=this.Data.GetDateRange();
|
|
12634
|
+
var period=this.Period;
|
|
12635
|
+
var obj=
|
|
12635
12636
|
{
|
|
12636
|
-
|
|
12637
|
-
|
|
12638
|
-
|
|
12639
|
-
|
|
12640
|
-
{
|
|
12641
|
-
|
|
12642
|
-
|
|
12643
|
-
|
|
12644
|
-
|
|
12645
|
-
|
|
12646
|
-
|
|
12647
|
-
|
|
12648
|
-
|
|
12649
|
-
|
|
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
|
+
};
|
|
12650
12653
|
|
|
12651
|
-
|
|
12652
|
-
this.
|
|
12653
|
-
|
|
12654
|
-
|
|
12654
|
+
|
|
12655
|
+
this.NetworkFilter(obj, (data)=>
|
|
12656
|
+
{
|
|
12657
|
+
JSConsole.Complier.Log('[JSSymbolData::GetIndustryData] recv data' , data);
|
|
12655
12658
|
|
|
12656
|
-
|
|
12657
|
-
|
|
12658
|
-
|
|
12659
|
-
this.IndexData.Data=this.Data.FixKData(hisData,this.Period);
|
|
12660
|
-
}
|
|
12661
|
-
else
|
|
12662
|
-
{
|
|
12663
|
-
if (ChartData.IsMinutePeriod(this.Period,false)) //周期数据
|
|
12664
|
-
{
|
|
12665
|
-
let periodData=this.IndexData.GetPeriodData(this.Period);
|
|
12666
|
-
this.IndexData.Data=periodData;
|
|
12667
|
-
}
|
|
12668
|
-
}
|
|
12659
|
+
this.IndustryData=this.APIKDataToChartData(data, period);
|
|
12660
|
+
this.Execute.RunNextJob();
|
|
12661
|
+
});
|
|
12669
12662
|
}
|
|
12670
12663
|
|
|
12671
12664
|
this.GetOtherSymbolParam=function(name)
|
|
@@ -13009,6 +13002,32 @@ function JSSymbolData(ast,option,jsExecute)
|
|
|
13009
13002
|
}
|
|
13010
13003
|
}
|
|
13011
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
|
+
|
|
13012
13031
|
//指数转成对应的板块
|
|
13013
13032
|
this.GetBlockSymbol=function(symbol)
|
|
13014
13033
|
{
|
|
@@ -16951,6 +16970,7 @@ var JS_EXECUTE_JOB_ID=
|
|
|
16951
16970
|
JOB_DOWNLOAD_LATEST_INDEX_DATA:8, //下载最新大盘数据
|
|
16952
16971
|
JOB_DOWNLOAD_OTHER_SYMBOL_DATA:9, //下载其他股票的K线数据
|
|
16953
16972
|
JOB_DOWNLOAD_SYMBOL_PERIOD_DATA:10, //下载周期数据
|
|
16973
|
+
JOB_DOWNLOAD_INDUSTRY_DATA:11, //行业数据
|
|
16954
16974
|
|
|
16955
16975
|
JOB_DOWNLOAD_FINVALUE:301, //引用专业财务数据 FINVALUE(ID),ID为数据编号
|
|
16956
16976
|
JOB_DOWNLOAD_FINONE:302, //引用指定年和月日的某类型的财务数据 FINONE(ID,Y,MMDD),ID为数据编号,Y和MMDD表示年和月日.
|
|
@@ -17237,6 +17257,10 @@ function JSExecute(ast,option)
|
|
|
17237
17257
|
['INDEXA',null],['INDEXC',null],['INDEXH',null],['INDEXL',null],['INDEXO',null],['INDEXV',null],
|
|
17238
17258
|
['INDEXADV',null],['INDEXDEC',null],
|
|
17239
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
|
+
|
|
17240
17264
|
["ADVANCE",null],['DECLINE', null],
|
|
17241
17265
|
|
|
17242
17266
|
['FROMOPEN',null], //已开盘有多长分钟
|
|
@@ -17361,6 +17385,8 @@ function JSExecute(ast,option)
|
|
|
17361
17385
|
return this.SymbolData.GetSymbolPeriodData(jobItem);
|
|
17362
17386
|
case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDEX_DATA:
|
|
17363
17387
|
return this.SymbolData.GetIndexData();
|
|
17388
|
+
case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDUSTRY_DATA:
|
|
17389
|
+
return this.SymbolData.GetIndustryData();
|
|
17364
17390
|
case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_LATEST_INDEX_DATA:
|
|
17365
17391
|
return this.SymbolData.GetLatestIndexData();
|
|
17366
17392
|
case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_INDEX_INCREASE_DATA:
|
|
@@ -17485,6 +17511,16 @@ function JSExecute(ast,option)
|
|
|
17485
17511
|
case 'INDEXADV':
|
|
17486
17512
|
case 'INDEXDEC':
|
|
17487
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);
|
|
17488
17524
|
case 'CURRBARSCOUNT':
|
|
17489
17525
|
return this.SymbolData.GetCurrBarsCount();
|
|
17490
17526
|
case "BARPOS":
|
|
@@ -19800,6 +19836,7 @@ function JSExplainer(ast,option)
|
|
|
19800
19836
|
["STR2CON", { Name:"STR2CON", Param:{ Count:1 }, ToString:function(args) { return `${args[0]}转为数字`; } } ],
|
|
19801
19837
|
["STRLEN", { Name:"STRLEN", Param:{ Count:1 }, ToString:function(args) { return `得到${args[0]}字符串长度`; } } ],
|
|
19802
19838
|
["STRCAT", { Name:"STRCAT", Param:{ Count:2 }, ToString:function(args) { return `字符串相加`; } } ],
|
|
19839
|
+
["STRCAT6",{ Name:"STRCAT6", Param:{ Dynamic:true }, ToString:function(args) { return `字符串相加`; } } ],
|
|
19803
19840
|
["VARCAT", { Name:"VARCAT", Param:{ Count:2 }, ToString:function(args) { return `字符串相加`; } } ],
|
|
19804
19841
|
["STRSPACE", { Name:"STRSPACE", Param:{ Count:1 }, ToString:function(args) { return `字符串${args[0]}加一空格`; } } ],
|
|
19805
19842
|
["SUBSTR", { Name:"SUBSTR", Param:{ Count:3 }, ToString:function(args) { return `字符串${args[0]}中取一部分`; } } ],
|
|
@@ -19917,6 +19954,8 @@ function JSExplainer(ast,option)
|
|
|
19917
19954
|
return `当满足条件${args[0]}时,在${args[1]}位置画${args[2]}号图标`;
|
|
19918
19955
|
case "DRAWTEXT":
|
|
19919
19956
|
return `当满足条件${args[0]}时,在${args[1]}位置书写文字`;
|
|
19957
|
+
case "DRAWFLAGTEXT":
|
|
19958
|
+
return `当满足条件${args[0]}时,在${args[1]}位置书写文字`;
|
|
19920
19959
|
case "DRAWTEXT_FIX":
|
|
19921
19960
|
return `当满足条件${args[0]}时,在横轴${args[1]}纵轴${args[2]}位置书写文字`;
|
|
19922
19961
|
case "DRAWNUMBER":
|
|
@@ -20115,7 +20154,7 @@ function JSExplainer(ast,option)
|
|
|
20115
20154
|
"STICKLINE","DRAWTEXT",'SUPERDRAWTEXT','DRAWLINE','DRAWBAND','DRAWKLINE',"DRAWKLINE1",'DRAWKLINE_IF','PLOYLINE',
|
|
20116
20155
|
'POLYLINE','DRAWNUMBER',"DRAWNUMBER_FIX",'DRAWICON','DRAWCHANNEL','PARTLINE','DRAWTEXT_FIX','DRAWGBK','DRAWTEXT_LINE','DRAWRECTREL',"DRAWTEXTABS",
|
|
20117
20156
|
'DRAWOVERLAYLINE',"FILLRGN", "FILLRGN2","FILLTOPRGN", "FILLBOTTOMRGN", "FILLVERTICALRGN","FLOATRGN","DRAWSL", "DRAWGBK2",
|
|
20118
|
-
"BUY","BUYSHORT","SELL","SELLSHORT",
|
|
20157
|
+
"BUY","BUYSHORT","SELL","SELLSHORT","DRAWFLAGTEXT",
|
|
20119
20158
|
]);
|
|
20120
20159
|
if (setFunctionName.has(name)) return true;
|
|
20121
20160
|
|