hqchart 1.1.13014 → 1.1.13019

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.13014",
3
+ "version": "1.1.13019",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -1277,6 +1277,15 @@ function Node(ErrorHandler)
1277
1277
  return;
1278
1278
  }
1279
1279
 
1280
+ //"MA.MA1"(10,5,5)"
1281
+ if (callee.Type==Syntax.Literal)
1282
+ {
1283
+ var item={ ID:JS_EXECUTE_JOB_ID.JOB_EXECUTE_INDEX, Args:args, FunctionName:callee.Value, DynamicName:callee.Value };
1284
+ if (token) item.Token={ Index:token.Start, Line:token.LineNumber };
1285
+ this.ExecuteIndex.push(item);
1286
+ return;
1287
+ }
1288
+
1280
1289
  if (callee.Name=='COVER_C' || callee.Name=='COVER_O' || callee.Name=='COVER_H' || callee.Name=='COVER_L' || callee.Name=='COVER_A' || callee.Name=='COVER_V') //跨周期函数
1281
1290
  {
1282
1291
  var periodName=args[0].Value;
@@ -15266,6 +15275,98 @@ function JSSymbolData(ast,option,jsExecute)
15266
15275
 
15267
15276
  }
15268
15277
 
15278
+ this.CallDynamicScriptIndex=function(job, varTable)
15279
+ {
15280
+ var callInfo=job.DynamicName;
15281
+ var indexInfo={ Job:job, PeriodID:this.Period , Symbol:this.Symbol };
15282
+ if (!this.ReadIndexFunctionValue(callInfo,indexInfo)) //读取指标
15283
+ {
15284
+ var token=job.Token;
15285
+ this.Execute.ErrorHandler.ThrowError(token.Index,token.Line,0,`CallDynamicScriptIndex() Error: '${callInfo}' ${indexInfo.Error}`);
15286
+ }
15287
+
15288
+ var systemIndex=new JSIndexScript(); //系统指标
15289
+ var systemItem=systemIndex.Get(indexInfo.Name);
15290
+ if (!systemItem)
15291
+ {
15292
+ var token=job.Token;
15293
+ this.Execute.ErrorHandler.ThrowError(token.Index,token.Line,0,`CallDynamicScriptIndex() Error: '${callInfo}' ${indexInfo.Name} 指标不存在`);
15294
+ }
15295
+
15296
+ indexInfo.SytemIndex=systemItem;
15297
+ if (!this.ReadDynamicIndexArgumentValue(job.Args, indexInfo, varTable))
15298
+ {
15299
+ var token=job.Token;
15300
+ this.Execute.ErrorHandler.ThrowError(token.Index,token.Line,0,`CallDynamicScriptIndex() ${indexInfo.Name} 指标参数错误 : ${indexInfo.Error} `);
15301
+ }
15302
+
15303
+ JSConsole.Complier.Log('[JSSymbolData::CallMemberScriptIndex] call script index', indexInfo);
15304
+
15305
+ var dateTimeRange=this.Data.GetDateRange();
15306
+
15307
+ var option=
15308
+ {
15309
+ HQDataType:this.DataType,
15310
+ Symbol:indexInfo.Symbol,
15311
+ Name:'',
15312
+ Right:this.Right, //复权
15313
+ Period:indexInfo.PeriodID, //周期
15314
+ Data:null,
15315
+ SourceData:null,
15316
+ Callback:(outVar,job, symbolData)=> {
15317
+ this.RecvDynamicScriptIndexData(outVar,job,symbolData);
15318
+ this.Execute.RunNextJob();
15319
+ },
15320
+ CallbackParam:indexInfo,
15321
+ Async:true,
15322
+ MaxRequestDataCount:this.MaxRequestDataCount+30*2,
15323
+ MaxRequestMinuteDayCount:this.MaxRequestMinuteDayCount+2,
15324
+ Arguments:indexInfo.Args,
15325
+ //Condition:this.Condition,
15326
+ IsBeforeData:this.IsBeforeData,
15327
+ NetworkFilter:this.NetworkFilter,
15328
+ IsApiPeriod:this.IsApiPeriod,
15329
+ KLineRange:dateTimeRange //K线数据范围
15330
+ };
15331
+
15332
+ //执行脚本
15333
+ var run=JSComplier.Execute(systemItem.Script,option,(error, indexInfo)=>{this.ExecuteScriptIndexError(error,indexInfo)});
15334
+ }
15335
+
15336
+ this.ReadDynamicIndexArgumentValue=function(args, result, varTable)
15337
+ {
15338
+ result.Args=[];
15339
+ for(var i =0;i<result.SytemIndex.Args.length; ++i) //复制参数
15340
+ {
15341
+ var item=result.SytemIndex.Args[i];
15342
+ result.Args.push({ Value:item.Value, Name:item.Name, IsDefault:true });
15343
+ }
15344
+
15345
+ if (!IFrameSplitOperator.IsNonEmptyArray(args)) return true;
15346
+
15347
+ for(var i=0;i<args.length;++i)
15348
+ {
15349
+ var item=args[i];
15350
+ var argItem=result.Args[i];
15351
+ if (!argItem) continue;
15352
+ if (item.Type==Syntax.Literal)
15353
+ {
15354
+ argItem.Value=item.Value;
15355
+ argItem.IsDefault=false;
15356
+ }
15357
+ else if (item.Type==Syntax.Identifier) //支持传参
15358
+ {
15359
+ if (varTable.has(item.Name))
15360
+ {
15361
+ argItem.Value=varTable.get(item.Name);
15362
+ argItem.IsDefault=false;
15363
+ }
15364
+ }
15365
+ }
15366
+
15367
+ return true;
15368
+ }
15369
+
15269
15370
  /*****************************************************************************************************************************
15270
15371
  脚本调用
15271
15372
 
@@ -15279,10 +15380,13 @@ function JSSymbolData(ast,option,jsExecute)
15279
15380
  CALCSTOCKINDEX('SH600000','KDJ',3)表示上证600000的KDJ指标第3个输出即J之值,第一个参数可在前面加SZ(深市),SH(沪市),BJ(京市),或市场_,,
15280
15381
  CALCSTOCKINDEX('47_IFL0','MACD',2)表示IFL0品种的MACD指标第2个输出值.
15281
15382
 
15383
+ "MA.MA1"(6,12,18)
15384
+
15282
15385
  *******************************************************************************************************************************/
15283
- this.CallScriptIndex=function(job)
15386
+ this.CallScriptIndex=function(job, varTable)
15284
15387
  {
15285
15388
  if (job.Member) return this.CallMemberScriptIndex(job);
15389
+ if (job.DynamicName) return this.CallDynamicScriptIndex(job, varTable);
15286
15390
 
15287
15391
  if (!job.Args || !(job.Args.length>=2))
15288
15392
  {
@@ -15395,6 +15499,42 @@ function JSSymbolData(ast,option,jsExecute)
15395
15499
  }
15396
15500
  }
15397
15501
 
15502
+ this.RecvDynamicScriptIndexData=function(outVar,indexInfo,symbolData)
15503
+ {
15504
+ JSConsole.Complier.Log('[JSSymbolData::RecvDynamicScriptIndexData] ', outVar, indexInfo, symbolData);
15505
+ var kLine=symbolData.Data.Data;
15506
+ var aryOutVar=outVar;
15507
+ var data=this.Data.FitKLineIndex(kLine,aryOutVar,this.Period,indexInfo.PeriodID);
15508
+
15509
+ var objName=indexInfo.Name;
15510
+ var memberValue={};
15511
+ if (this.Execute.VarTable.has(objName))
15512
+ memberValue=this.Execute.VarTable.get(objName);
15513
+ else
15514
+ this.Execute.VarTable.set(objName, memberValue);
15515
+
15516
+ var strValue="";
15517
+ for(var i=0; i<indexInfo.Args.length; ++i)
15518
+ {
15519
+ var item=indexInfo.Args[i];
15520
+ if (item.IsDefault===false)
15521
+ {
15522
+ if (strValue.length>0) strValue+=",";
15523
+ strValue+=`${item.Value}`;
15524
+ }
15525
+ }
15526
+ var strArgs=`(${strValue})`;
15527
+
15528
+ //保存所有的指标数据, 下面用到了就可以不用算了
15529
+ for(var i=0; i<data.length; ++i)
15530
+ {
15531
+ var key=`${outVar[i].Name}#${strArgs}`;
15532
+ if (indexInfo.Period) key+='#'+indexInfo.Period; //带周期的变量
15533
+
15534
+ memberValue[key]=data[i].Data;
15535
+ }
15536
+ }
15537
+
15398
15538
  this.RecvScriptIndexData=function(outVar,indexInfo,symbolData)
15399
15539
  {
15400
15540
  var key=this.GenerateScriptIndexKey(indexInfo);
@@ -16268,7 +16408,8 @@ var JS_EXECUTE_JOB_ID=
16268
16408
  //KDJ.K , KDJ.K#WEEK
16269
16409
  //STKINDI('600000.sh','MA.MA1#WEEK',5,10,20,30,60,120);
16270
16410
  //CALCSTOCKINDEX('SH600000','KDJ',3)表示上证600000的KDJ指标第3个输出即J之值,第一个参数可在前面加SZ(深市),SH(沪市),BJ(京市)
16271
- JOB_EXECUTE_INDEX:30010,
16411
+ //"MA.MA(5,5,5)" 调用动态指标
16412
+ JOB_EXECUTE_INDEX:30010,
16272
16413
 
16273
16414
  JOB_RUN_SCRIPT:10000, //执行脚本
16274
16415
 
@@ -16587,7 +16728,7 @@ function JSExecute(ast,option)
16587
16728
  case JS_EXECUTE_JOB_ID.JOB_DOWNLOAD_CUSTOM_API_DATA:
16588
16729
  return this.SymbolData.DownloadCustomAPIData(jobItem);
16589
16730
  case JS_EXECUTE_JOB_ID.JOB_EXECUTE_INDEX:
16590
- return this.SymbolData.CallScriptIndex(jobItem);
16731
+ return this.SymbolData.CallScriptIndex(jobItem, this.VarTable);
16591
16732
 
16592
16733
  case JS_EXECUTE_JOB_ID.JOB_RUN_SCRIPT:
16593
16734
  if (this.Debug===1 && this.DebugFilter)
@@ -17567,6 +17708,35 @@ function JSExecute(ast,option)
17567
17708
  args.push(value);
17568
17709
  }
17569
17710
 
17711
+ if (node.Callee.Type==Syntax.Literal)
17712
+ {
17713
+ var dynamicName=node.Callee.Value;
17714
+ var aryValue=dynamicName.split(".");
17715
+ if (aryValue.length!=2)
17716
+ {
17717
+ this.ThrowUnexpectedNode(node,`调用指标格式'${dynamicName}'错误`);
17718
+ }
17719
+
17720
+ var name=aryValue[0];
17721
+ var outName=aryValue[1];
17722
+ var strValue="";
17723
+ for(var i=0; i<args.length; ++i)
17724
+ {
17725
+ var value=args[i];
17726
+ if (strValue.length>0) strValue+=",";
17727
+ strValue+=`${value}`;
17728
+ }
17729
+ var strArgs=`(${strValue})`;
17730
+ var key=`${outName}#${strArgs}`;
17731
+
17732
+ node.Out=[];
17733
+ if (!this.VarTable.has(name)) return node.Out;
17734
+ var indexData=this.VarTable.get(name);
17735
+ var value=indexData[key];
17736
+ if (value) node.Out=value;
17737
+ return node.Out;
17738
+ }
17739
+
17570
17740
  if (funcName==="IFC")
17571
17741
  {
17572
17742
  //IFC(X,A,B)若X不为0则执行A,否则执行B.IFC与IF函数的区别:根据X的值来选择性执行A、B表达式.
@@ -18572,6 +18742,13 @@ function JSExplainer(ast,option)
18572
18742
  args.push(value);
18573
18743
  }
18574
18744
 
18745
+ if (node.Callee.Type==Syntax.Literal)
18746
+ {
18747
+ var dynamicName=node.Callee.Value;
18748
+ node.Out=`指标引用'${dynamicName}'`;
18749
+ return node.Out;
18750
+ }
18751
+
18575
18752
  JSConsole.Complier.Log('[JSExplainer::VisitCallExpression]' , funcName, '(', args.toString() ,')');
18576
18753
 
18577
18754
  if (g_JSComplierResource.IsCustomFunction(funcName))
@@ -52403,6 +52403,7 @@ function IChartDrawPicture()
52403
52403
 
52404
52404
  this.IsDrawFirst=false;
52405
52405
  this.IsShowYCoordinate=false; //是否在Y轴显示点的刻度
52406
+ this.IsShow=true; //是否显示
52406
52407
 
52407
52408
  this.LineColor=g_JSChartResource.DrawPicture.LineColor[0]; //线段颜色
52408
52409
  //this.LineColor="#1e90ff"; //线段颜色,input type="color" 不支持rgb和rgba 的格式
@@ -53472,6 +53473,8 @@ function IChartDrawPicture()
53472
53473
  this.GetXYCoordinate_default=function()
53473
53474
  {
53474
53475
  if (this.IsFrameMinSize()) return null;
53476
+ if (!this.IsShow) return null;
53477
+
53475
53478
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:true, IsCheckY:true} );
53476
53479
 
53477
53480
  return this.PointRange(drawPoint);
@@ -53927,6 +53930,7 @@ function ChartDrawPictureLine()
53927
53930
  {
53928
53931
  this.LinePoint=[];
53929
53932
  if (this.IsFrameMinSize()) return;
53933
+ if (!this.IsShow) return;
53930
53934
 
53931
53935
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:true, IsCheckY:true} );
53932
53936
  if (!drawPoint) return;
@@ -53964,6 +53968,7 @@ function ChartDrawPictureLine()
53964
53968
  this.GetYCoordinatePoint=function()
53965
53969
  {
53966
53970
  if (this.IsFrameMinSize()) return null;
53971
+ if (!this.IsShow) return null;
53967
53972
 
53968
53973
  if (this.Status<2) return null;
53969
53974
  if(!this.Point.length || !this.Frame) return null;
@@ -54126,6 +54131,7 @@ function ChartDrawGraffitiLine()
54126
54131
  {
54127
54132
  this.LinePoint=[];
54128
54133
  if (this.IsFrameMinSize()) return;
54134
+ if (!this.IsShow) return;
54129
54135
 
54130
54136
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:true, IsCheckY:true} );
54131
54137
  if (!drawPoint) return;
@@ -54181,6 +54187,7 @@ function ChartDrawArrowLine()
54181
54187
  {
54182
54188
  this.LinePoint=[];
54183
54189
  if (this.IsFrameMinSize()) return;
54190
+ if (!this.IsShow) return;
54184
54191
 
54185
54192
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:true, IsCheckY:true} );
54186
54193
  if (!drawPoint) return;
@@ -54299,6 +54306,7 @@ function ChartDrawPictureHaflLine()
54299
54306
  this.LinePoint=[];
54300
54307
  this.FullLine=null;
54301
54308
  if (this.IsFrameMinSize()) return;
54309
+ if (!this.IsShow) return;
54302
54310
 
54303
54311
  var drawPoint=this.CalculateDrawPoint({IsCheckX:false, IsCheckY:false});
54304
54312
  if (!drawPoint || drawPoint.length!=2) return;
@@ -54377,6 +54385,7 @@ function ChartDrawPictureHorizontalLine()
54377
54385
  {
54378
54386
  this.LinePoint=[];
54379
54387
  if (this.IsFrameMinSize()) return;
54388
+ if (!this.IsShow) return;
54380
54389
 
54381
54390
  var drawPoint=this.CalculateDrawPoint();
54382
54391
  if (!drawPoint || drawPoint.length!=1) return;
@@ -54633,6 +54642,7 @@ function ChartDrawHLine()
54633
54642
  this.ButtonBGWidth=0;
54634
54643
 
54635
54644
  if (this.IsFrameMinSize()) return;
54645
+ if (!this.IsShow) return;
54636
54646
 
54637
54647
  var drawPoint=this.CalculateDrawPoint();
54638
54648
  if (!drawPoint || drawPoint.length!=1) return;
@@ -55030,6 +55040,7 @@ function ChartDrawPictureTrendLine()
55030
55040
  {
55031
55041
  this.LinePoint=[];
55032
55042
  if (this.IsFrameMinSize()) return;
55043
+ if (!this.IsShow) return;
55033
55044
 
55034
55045
  var drawPoint=this.CalculateDrawPoint({IsCheckX:false, IsCheckY:false});
55035
55046
  if (!drawPoint || drawPoint.length!=2) return;
@@ -55072,6 +55083,7 @@ function ChartDrawPictureRect()
55072
55083
  this.Draw=function()
55073
55084
  {
55074
55085
  if (this.IsFrameMinSize()) return;
55086
+ if (!this.IsShow) return;
55075
55087
 
55076
55088
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
55077
55089
  if (!drawPoint || drawPoint.length!=2) return;
@@ -55183,6 +55195,7 @@ function ChartDrawPictureArc()
55183
55195
  this.Draw=function()
55184
55196
  {
55185
55197
  if (this.IsFrameMinSize()) return;
55198
+ if (!this.IsShow) return;
55186
55199
 
55187
55200
  var drawPoint=this.CalculateDrawPoint();
55188
55201
  if (!drawPoint || drawPoint.length!=2) return;
@@ -55414,6 +55427,7 @@ function ChartDrawPictureWaveMW()
55414
55427
  this.LinePoint=[];
55415
55428
  if (!this.Frame) return;
55416
55429
  if (this.IsFrameMinSize()) return;
55430
+ if (!this.IsShow) return;
55417
55431
 
55418
55432
  this.IsHScreen=this.Frame.IsHScreen;
55419
55433
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
@@ -55712,6 +55726,7 @@ function ChartDrawPictureParallelLines()
55712
55726
  this.LinePoint=[];
55713
55727
  this.CenterLine.Line=null;
55714
55728
  if (this.IsFrameMinSize()) return;
55729
+ if (!this.IsShow) return;
55715
55730
 
55716
55731
  var drawPoint=this.CalculateDrawPoint({IsCheckX:false, IsCheckY:false}); //不检测x,y
55717
55732
  if (!drawPoint) return;
@@ -55825,6 +55840,7 @@ function ChartDrawFlatTop()
55825
55840
  {
55826
55841
  this.LinePoint=[];
55827
55842
  if (this.IsFrameMinSize()) return;
55843
+ if (!this.IsShow) return;
55828
55844
 
55829
55845
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
55830
55846
  if (!drawPoint) return;
@@ -56177,6 +56193,7 @@ function ChartDrawPictureParallelChannel()
56177
56193
  {
56178
56194
  this.LinePoint=[];
56179
56195
  if (this.IsFrameMinSize()) return;
56196
+ if (!this.IsShow) return;
56180
56197
 
56181
56198
  var drawPoint=this.CalculateDrawPoint();
56182
56199
  if (!drawPoint) return;
@@ -56327,6 +56344,7 @@ function ChartDrawPictureText()
56327
56344
  {
56328
56345
  this.TextRect=null;
56329
56346
  if (this.IsFrameMinSize()) return;
56347
+ if (!this.IsShow) return;
56330
56348
 
56331
56349
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
56332
56350
  if (!drawPoint || drawPoint.length!=1) return;
@@ -56430,6 +56448,7 @@ function ChartDrawPictureIconFont()
56430
56448
  {
56431
56449
  this.TextRect=null;
56432
56450
  if (this.IsFrameMinSize()) return;
56451
+ if (!this.IsShow) return;
56433
56452
 
56434
56453
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
56435
56454
  if (!drawPoint || drawPoint.length!=1) return;
@@ -56528,6 +56547,7 @@ function ChartDrawPictureGannFan()
56528
56547
  {
56529
56548
  this.LinePoint=[];
56530
56549
  if (this.IsFrameMinSize()) return;
56550
+ if (!this.IsShow) return;
56531
56551
 
56532
56552
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
56533
56553
  if (!drawPoint) return;
@@ -56839,6 +56859,7 @@ function ChartDrawPictureGoldenSection()
56839
56859
  {
56840
56860
  this.LinePoint=[];
56841
56861
  if (this.IsFrameMinSize()) return;
56862
+ if (!this.IsShow) return;
56842
56863
 
56843
56864
  var drawPoint=this.CalculateDrawPoint();
56844
56865
  if (!drawPoint) return;
@@ -57016,6 +57037,7 @@ function ChartDrawPictureTriangle()
57016
57037
  {
57017
57038
  this.LinePoint=[];
57018
57039
  if (this.IsFrameMinSize()) return;
57040
+ if (!this.IsShow) return;
57019
57041
 
57020
57042
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
57021
57043
  if (!drawPoint) return;
@@ -57135,6 +57157,7 @@ function ChartDrawPictureSymmetryAngle()
57135
57157
  {
57136
57158
  this.LinePoint=[];
57137
57159
  if (this.IsFrameMinSize()) return;
57160
+ if (!this.IsShow) return;
57138
57161
 
57139
57162
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
57140
57163
  if (!drawPoint) return;
@@ -57229,6 +57252,7 @@ function ChartDrawPictureCircle()
57229
57252
  {
57230
57253
  this.LinePoint=[];
57231
57254
  if (this.IsFrameMinSize()) return;
57255
+ if (!this.IsShow) return;
57232
57256
 
57233
57257
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
57234
57258
  if (!drawPoint || drawPoint.length!=2) return;
@@ -57292,6 +57316,7 @@ function ChartDrawPictureQuadrangle()
57292
57316
  {
57293
57317
  this.LinePoint=[];
57294
57318
  if (this.IsFrameMinSize()) return;
57319
+ if (!this.IsShow) return;
57295
57320
 
57296
57321
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
57297
57322
  if (!drawPoint) return;
@@ -57388,6 +57413,7 @@ function ChartDrawPictureFibonacci()
57388
57413
  {
57389
57414
  this.LinePoint=[];
57390
57415
  if (this.IsFrameMinSize()) return;
57416
+ if (!this.IsShow) return;
57391
57417
 
57392
57418
  var drawPoint=this.CalculateDrawPoint();
57393
57419
  if (!drawPoint) return;
@@ -57590,6 +57616,7 @@ function ChartDrawLinearRegression(option)
57590
57616
  {
57591
57617
  this.LinePoint=[];
57592
57618
  if (this.IsFrameMinSize()) return;
57619
+ if (!this.IsShow) return;
57593
57620
 
57594
57621
  var drawPoint=this.CalculateDrawPoint( { IsCheckX:true, IsCheckY:true} );
57595
57622
  if (!drawPoint || drawPoint.length!=2)
@@ -57984,6 +58011,7 @@ function ChartDrawPriceLine()
57984
58011
  {
57985
58012
  this.LinePoint=[];
57986
58013
  if (this.IsFrameMinSize()) return;
58014
+ if (!this.IsShow) return;
57987
58015
 
57988
58016
  var drawPoint=this.CalculateDrawPoint( { IsCheckX:false, IsCheckY:true } );
57989
58017
  if (!drawPoint) return;
@@ -58084,6 +58112,7 @@ function ChartDrawPriceLineV2()
58084
58112
  {
58085
58113
  this.LinePoint=[];
58086
58114
  if (this.IsFrameMinSize()) return;
58115
+ if (!this.IsShow) return;
58087
58116
 
58088
58117
  var drawPoint=this.CalculateDrawPoint( { IsCheckX:false, IsCheckY:true } );
58089
58118
  if (!drawPoint) return;
@@ -58254,6 +58283,7 @@ function ChartDrawVerticalLine()
58254
58283
  {
58255
58284
  this.LinePoint=[];
58256
58285
  if (this.IsFrameMinSize()) return;
58286
+ if (!this.IsShow) return;
58257
58287
 
58258
58288
  if (!this.Frame || !this.Frame.Data) return;
58259
58289
  var data=this.Frame.Data;
@@ -58332,6 +58362,7 @@ function ChartDrawWaveRuler()
58332
58362
  {
58333
58363
  this.LinePoint=[];
58334
58364
  if (this.IsFrameMinSize()) return;
58365
+ if (!this.IsShow) return;
58335
58366
 
58336
58367
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
58337
58368
  if (!drawPoint) return;
@@ -58494,6 +58525,7 @@ function ChartDrawWaveRuler2Point()
58494
58525
  {
58495
58526
  this.LinePoint=[];
58496
58527
  if (this.IsFrameMinSize()) return;
58528
+ if (!this.IsShow) return;
58497
58529
 
58498
58530
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
58499
58531
  if (!drawPoint) return;
@@ -58626,6 +58658,7 @@ function ChartDrawBox()
58626
58658
  {
58627
58659
  this.LinePoint=[];
58628
58660
  if (this.IsFrameMinSize()) return;
58661
+ if (!this.IsShow) return;
58629
58662
 
58630
58663
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:true, IsCheckY:true} );
58631
58664
  if (!drawPoint) return;
@@ -58856,6 +58889,7 @@ function ChartDrawTwoPointDemo()
58856
58889
  this.LinePoint=[];
58857
58890
  this.PointInfo=[];
58858
58891
  if (this.IsFrameMinSize()) return;
58892
+ if (!this.IsShow) return;
58859
58893
 
58860
58894
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
58861
58895
  if (!drawPoint) return;
@@ -59093,6 +59127,7 @@ function ChartDrawHLineSegment()
59093
59127
  this.IsHScreen=this.Frame.IsHScreen;
59094
59128
  this.LinePoint=[];
59095
59129
  if (this.IsFrameMinSize()) return;
59130
+ if (!this.IsShow) return;
59096
59131
 
59097
59132
  var drawPoint=this.CalculateDrawPoint( { IsCheckX:false, IsCheckY:true} );
59098
59133
  if (!drawPoint || drawPoint.length!=2) return;
@@ -59748,6 +59783,7 @@ function ChartDrawNote()
59748
59783
  this.TextRect=null;
59749
59784
  this.PtCenter=null;
59750
59785
  if (this.IsFrameMinSize()) return;
59786
+ if (!this.IsShow) return;
59751
59787
 
59752
59788
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
59753
59789
  if (!drawPoint || drawPoint.length!=1) return;
@@ -60131,6 +60167,7 @@ function ChartDrawAnchoredText()
60131
60167
  if (this.Status<2) return;
60132
60168
  if(this.Point.length!=1 || !this.Frame) return;
60133
60169
  if (this.IsFrameMinSize()) return;
60170
+ if (!this.IsShow) return;
60134
60171
 
60135
60172
  var drawPoint=this.CalculateDrawPoint();
60136
60173
  if (!drawPoint || drawPoint.length!=1) return;
@@ -60480,6 +60517,7 @@ function ChartDrawPriceLabel()
60480
60517
  {
60481
60518
  this.TextRect=null;
60482
60519
  if (this.IsFrameMinSize()) return;
60520
+ if (!this.IsShow) return;
60483
60521
 
60484
60522
  var drawPoint=this.CalculateDrawPoint({IsCheckX:true, IsCheckY:true});
60485
60523
  if (!drawPoint || drawPoint.length!=1) return;
@@ -60719,6 +60757,7 @@ function ChartDrawPriceNote()
60719
60757
  this.LinePoint=[];
60720
60758
  this.TextRect=null;
60721
60759
  if (this.IsFrameMinSize()) return;
60760
+ if (!this.IsShow) return;
60722
60761
 
60723
60762
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:true, IsCheckY:true} );
60724
60763
  if (!drawPoint) return;
@@ -61063,6 +61102,7 @@ function ChartDrawFibWedge()
61063
61102
  this.TextAngle=null;
61064
61103
  this.Radius=null;
61065
61104
  if (this.IsFrameMinSize()) return;
61105
+ if (!this.IsShow) return;
61066
61106
 
61067
61107
  var drawPoint=this.CalculateDrawPoint({IsCheckX:false, IsCheckY:false});
61068
61108
  if (!IFrameSplitOperator.IsNonEmptyArray(drawPoint)) return;
@@ -61446,6 +61486,8 @@ function ChartFibRetracement()
61446
61486
  {
61447
61487
  this.LinePoint=[];
61448
61488
  if (this.IsFrameMinSize()) return;
61489
+ if (!this.IsShow) return;
61490
+
61449
61491
  var bCheckXY=true;
61450
61492
  if (this.ExtendLine.Left || this.ExtendLine.Right) bCheckXY=false;
61451
61493
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:bCheckXY, IsCheckY:bCheckXY} );
@@ -61638,6 +61680,8 @@ function ChartFibSpeedResistanceFan()
61638
61680
  {
61639
61681
  this.LinePoint=[];
61640
61682
  if (this.IsFrameMinSize()) return;
61683
+ if (!this.IsShow) return;
61684
+
61641
61685
  var bCheckXY=false;
61642
61686
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:bCheckXY, IsCheckY:bCheckXY} );
61643
61687
  if (!drawPoint) return;
@@ -61903,6 +61947,8 @@ function ChartPriceRange()
61903
61947
  {
61904
61948
  this.LinePoint=[];
61905
61949
  if (this.IsFrameMinSize()) return;
61950
+ if (!this.IsShow) return;
61951
+
61906
61952
  var bCheckXY=true;
61907
61953
  if (this.ExtendLine.Left || this.ExtendLine.Right) bCheckXY=false;
61908
61954
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:bCheckXY, IsCheckY:bCheckXY} );
@@ -62020,6 +62066,8 @@ function ChartDateRange()
62020
62066
  {
62021
62067
  this.LinePoint=[];
62022
62068
  if (this.IsFrameMinSize()) return;
62069
+ if (!this.IsShow) return;
62070
+
62023
62071
  var bCheckXY=true;
62024
62072
  var drawPoint=this.CalculateDrawPoint( {IsCheckX:bCheckXY, IsCheckY:bCheckXY} );
62025
62073
  if (!drawPoint) return;