hqchart 1.1.15360 → 1.1.15368
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 +27 -19
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +63 -2
- package/src/jscommon/umychart.complier.js +47 -7
- package/src/jscommon/umychart.js +46 -27
- package/src/jscommon/umychart.report.js +2 -2
- package/src/jscommon/umychart.testdata.js +63 -2
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +96 -37
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +63 -2
- package/src/jscommon/umychart.vue/umychart.vue.js +96 -37
|
@@ -7193,6 +7193,7 @@ var JSCHART_DATA_FIELD_ID=
|
|
|
7193
7193
|
KLINE_COLOR_DATA:66, //K线自定义颜色数据
|
|
7194
7194
|
KLINE_DAY_EXTENDDATA:25,
|
|
7195
7195
|
KLINE_MINUTE_EXTENDDATA:25,
|
|
7196
|
+
KLINE_TICK_EXTENDDATA:25,
|
|
7196
7197
|
|
|
7197
7198
|
//OrderBook Heatmap
|
|
7198
7199
|
KLINE_HEATMAP:67,
|
|
@@ -11811,6 +11812,23 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
11811
11812
|
this.LastPoint.FrameID=frameID;
|
|
11812
11813
|
if (IFrameSplitOperator.IsNumber(frameID) && frameID>=0) //在K线内部移动,调整K线索引
|
|
11813
11814
|
this.CursorIndex=this.Frame.GetXData(x);
|
|
11815
|
+
|
|
11816
|
+
if (this.TryMouseMoveChartTooltipData)
|
|
11817
|
+
{
|
|
11818
|
+
//DrawDynamic:{ Enable, Option: }
|
|
11819
|
+
var data={ e:e, X:x, Y:y, Draw:false, DrawDynamic:null, PreventDefault:false, MouseStatus:null };
|
|
11820
|
+
this.TryMouseMoveChartTooltipData(data, this);
|
|
11821
|
+
|
|
11822
|
+
if (data.MouseStatus) mouseStatus=data.MouseStatus;
|
|
11823
|
+
|
|
11824
|
+
if (data.PreventDefault)
|
|
11825
|
+
{
|
|
11826
|
+
if (data.Draw) this.Draw();
|
|
11827
|
+
if (data.DrawDynamic && data.DrawDynamic.Enable) this.DrawDynamicInfo(data.DrawDynamic.Option);
|
|
11828
|
+
this.SetCursor(mouseStatus);
|
|
11829
|
+
return;
|
|
11830
|
+
}
|
|
11831
|
+
}
|
|
11814
11832
|
|
|
11815
11833
|
|
|
11816
11834
|
if (this.EnableBorderDrag && this.Frame && !this.CurrentChartDrawPicture)
|
|
@@ -39019,7 +39037,7 @@ function ChartKLineTable()
|
|
|
39019
39037
|
}
|
|
39020
39038
|
}
|
|
39021
39039
|
|
|
39022
|
-
if (rtBG.Width>5)
|
|
39040
|
+
//if (rtBG.Width>5)
|
|
39023
39041
|
{
|
|
39024
39042
|
this.AryCellRect.push({ Item:{ Cell:item, Colunm:data, RowIndex:i, SubCell:subItem, SubIndex:j, Tooltip:subItem.Tooltip, Type:2 }, Rect:rtSubBG });
|
|
39025
39043
|
}
|
|
@@ -39060,7 +39078,7 @@ function ChartKLineTable()
|
|
|
39060
39078
|
}
|
|
39061
39079
|
}
|
|
39062
39080
|
|
|
39063
|
-
if (rtBG.Width>5)
|
|
39081
|
+
//if (rtBG.Width>5)
|
|
39064
39082
|
{
|
|
39065
39083
|
this.AryCellRect.push({ Item:{ Cell:item, Colunm:data, RowIndex:i, Tooltip:item.Tooltip, Type:1 }, Rect:rtBG });
|
|
39066
39084
|
}
|
|
@@ -90299,14 +90317,26 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
90299
90317
|
{
|
|
90300
90318
|
var self=this;
|
|
90301
90319
|
var start=0;
|
|
90302
|
-
|
|
90320
|
+
var hisData=this.GetKData();
|
|
90321
|
+
var dateRange=hisData.GetDateRange();
|
|
90322
|
+
|
|
90303
90323
|
if (this.NetworkFilter)
|
|
90304
90324
|
{
|
|
90325
|
+
var kLineDrawType=this.GetKLineDrawType();
|
|
90305
90326
|
var obj=
|
|
90306
90327
|
{
|
|
90307
90328
|
Name:'KLineChartContainer::RequestTickRealtimeData', //类名::
|
|
90308
90329
|
Explain:'当天最新分笔数据',
|
|
90309
|
-
Request:
|
|
90330
|
+
Request:
|
|
90331
|
+
{
|
|
90332
|
+
Url:self.TickApiUrl,
|
|
90333
|
+
Data:
|
|
90334
|
+
{
|
|
90335
|
+
symbol:self.Symbol, period:this.Period, right:this.Right,
|
|
90336
|
+
dateRange:dateRange, klineDrawType:kLineDrawType
|
|
90337
|
+
},
|
|
90338
|
+
Type:'POST'
|
|
90339
|
+
},
|
|
90310
90340
|
Self:this,
|
|
90311
90341
|
PreventDefault:false
|
|
90312
90342
|
};
|
|
@@ -90319,29 +90349,14 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
90319
90349
|
|
|
90320
90350
|
if (obj.PreventDefault==true) return; //已被上层替换,不调用默认的网络请求
|
|
90321
90351
|
}
|
|
90322
|
-
|
|
90323
|
-
JSNetwork.HttpRequest({
|
|
90324
|
-
url: self.TickApiUrl,
|
|
90325
|
-
data:{"symbol":self.Symbol, start:start-10, end:start+1000 },
|
|
90326
|
-
type:"post",
|
|
90327
|
-
dataType: "json",
|
|
90328
|
-
async:true,
|
|
90329
|
-
success: function (data)
|
|
90330
|
-
{
|
|
90331
|
-
self.ChartSplashPaint.EnableSplash(false);
|
|
90332
|
-
self.RecvTickRealtimeData(data);
|
|
90333
|
-
self.AutoUpdate();
|
|
90334
|
-
}
|
|
90335
|
-
});
|
|
90336
90352
|
}
|
|
90337
90353
|
|
|
90338
90354
|
this.RecvTickRealtimeData=function(data)
|
|
90339
90355
|
{
|
|
90340
|
-
|
|
90341
|
-
|
|
90342
|
-
else
|
|
90343
|
-
|
|
90344
|
-
if (!aryDayData || aryDayData.length<=0) return;
|
|
90356
|
+
var aryDayData=null;
|
|
90357
|
+
if (data.ver==2.0) aryDayData=KLineChartContainer.JsonDataToTickDataV2(data); //增量数据
|
|
90358
|
+
else aryDayData=KLineChartContainer.JsonDataToTickData(data); //增量数据
|
|
90359
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(aryDayData)) return;
|
|
90345
90360
|
|
|
90346
90361
|
var redraw=false; //强制重绘
|
|
90347
90362
|
if (data.redraw==true) redraw=true;
|
|
@@ -90351,7 +90366,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
|
|
|
90351
90366
|
var lastTime=0;
|
|
90352
90367
|
if (source.length>0) lastTime=source[source.length-1].Time;
|
|
90353
90368
|
var newCount=0;
|
|
90354
|
-
for(var i
|
|
90369
|
+
for(var i=0; i<aryDayData.length; ++i)
|
|
90355
90370
|
{
|
|
90356
90371
|
var item=aryDayData[i];
|
|
90357
90372
|
if (item.Time<=lastTime) continue;
|
|
@@ -95336,20 +95351,24 @@ KLineChartContainer.JsonDataToTickDataV2=function(data)
|
|
|
95336
95351
|
{
|
|
95337
95352
|
var aryDayData=[];
|
|
95338
95353
|
if (!IFrameSplitOperator.IsNonEmptyArray(data.data)) return aryDayData;
|
|
95339
|
-
|
|
95354
|
+
var extendDataIndex=JSCHART_DATA_FIELD_ID.KLINE_TICK_EXTENDDATA;
|
|
95340
95355
|
for(var i=0;i<data.data.length;++i)
|
|
95341
95356
|
{
|
|
95342
95357
|
var item = new HistoryData();
|
|
95343
|
-
var tick=data.data[i]; //[ date, time, yClose, price,
|
|
95358
|
+
var tick=data.data[i]; //[ date, time, yClose, price, vol, amount, flag,]
|
|
95344
95359
|
if (!tick) continue;
|
|
95345
95360
|
|
|
95346
95361
|
item.Date = tick[0];
|
|
95347
95362
|
item.Time=tick[1];
|
|
95348
95363
|
item.YClose = tick[2];
|
|
95349
95364
|
item.Low=item.High=item.Close=item.Open = tick[3];
|
|
95365
|
+
item.Vol = tick[4]; //原始单位股
|
|
95366
|
+
item.Amount = tick[5];
|
|
95367
|
+
item.Flag=tick[6];
|
|
95368
|
+
|
|
95350
95369
|
aryDayData.push(item);
|
|
95351
95370
|
|
|
95352
|
-
if (tick[
|
|
95371
|
+
if (tick[extendDataIndex]) item.ExtendData=tick[extendDataIndex];
|
|
95353
95372
|
}
|
|
95354
95373
|
|
|
95355
95374
|
return aryDayData;
|
|
@@ -118420,6 +118439,32 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
118420
118439
|
return result;
|
|
118421
118440
|
}
|
|
118422
118441
|
|
|
118442
|
+
//VARCAT6(A,B,C,D,E,F):将六个字符串A,B,C,D,E,F相加成一个字符串.
|
|
118443
|
+
//每个数据都进行序列运算,若用于多股选股,建议换用STRCAT6
|
|
118444
|
+
//用法: VARCAT6('多头',VAR2STR(C,2),' ',VAR2STR(O,2),' ',VAR2STR(MA(C,5),2))将六个字符串相加成一个字符串
|
|
118445
|
+
this.VARCAT6=function(data,data2,data3,data4,data5)
|
|
118446
|
+
{
|
|
118447
|
+
var aryData=[];
|
|
118448
|
+
if (Array.isArray(data) || IFrameSplitOperator.IsString(data)) aryData.push(data);
|
|
118449
|
+
if (Array.isArray(data2) || IFrameSplitOperator.IsString(data2)) aryData.push(data2);
|
|
118450
|
+
if (Array.isArray(data3) || IFrameSplitOperator.IsString(data3)) aryData.push(data3);
|
|
118451
|
+
if (Array.isArray(data4) || IFrameSplitOperator.IsString(data4)) aryData.push(data4);
|
|
118452
|
+
if (Array.isArray(data5) || IFrameSplitOperator.IsString(data5)) aryData.push(data5);
|
|
118453
|
+
|
|
118454
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(aryData)) return [];
|
|
118455
|
+
if (aryData.length==1) return data;
|
|
118456
|
+
|
|
118457
|
+
var tempData=this.VARCAT(aryData[0], aryData[1]);
|
|
118458
|
+
var result=tempData;
|
|
118459
|
+
for(var i=2;i<aryData.length;++i)
|
|
118460
|
+
{
|
|
118461
|
+
result=this.VARCAT(tempData,aryData[i]);
|
|
118462
|
+
tempData=result;
|
|
118463
|
+
}
|
|
118464
|
+
|
|
118465
|
+
return result;
|
|
118466
|
+
}
|
|
118467
|
+
|
|
118423
118468
|
//FINDSTR(A,B):在字符串A中查找字符串B,如果找到返回1,否则返回0.
|
|
118424
118469
|
//用法: FINDSTR('多头开仓','开仓')在字符串'多头开仓'中查找字符串'开仓',返回1
|
|
118425
118470
|
this.FINDSTR=function(data, data2)
|
|
@@ -118546,6 +118591,8 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
118546
118591
|
this.VAR2STR=function(data,n)
|
|
118547
118592
|
{
|
|
118548
118593
|
var result=[];
|
|
118594
|
+
var dec=0;
|
|
118595
|
+
if (IFrameSplitOperator.IsNumber(n)) dec=n;
|
|
118549
118596
|
if (Array.isArray(data))
|
|
118550
118597
|
{
|
|
118551
118598
|
for(var i=0;i<data.length;++i)
|
|
@@ -118553,13 +118600,13 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
118553
118600
|
result[i]=null;
|
|
118554
118601
|
var item=data[i];
|
|
118555
118602
|
if (this.IsNumber(item))
|
|
118556
|
-
result[i]=item.toFixed(
|
|
118603
|
+
result[i]=item.toFixed(dec);
|
|
118557
118604
|
}
|
|
118558
118605
|
}
|
|
118559
118606
|
else
|
|
118560
118607
|
{
|
|
118561
118608
|
if (this.IsNumber(data))
|
|
118562
|
-
result=data.toFixed(
|
|
118609
|
+
result=data.toFixed(dec);
|
|
118563
118610
|
}
|
|
118564
118611
|
|
|
118565
118612
|
return result;
|
|
@@ -120271,6 +120318,8 @@ function JSAlgorithm(errorHandler,symbolData)
|
|
|
120271
120318
|
return this.VAR2STR(args[0], args[1]);
|
|
120272
120319
|
case "VARCAT":
|
|
120273
120320
|
return this.VARCAT(args[0], args[1]);
|
|
120321
|
+
case "VARCAT6":
|
|
120322
|
+
return this.VARCAT6(args[0], args[1],args[2], args[3],args[4], args[5]);
|
|
120274
120323
|
case "STRSPACE":
|
|
120275
120324
|
return this.STRSPACE(args[0]);
|
|
120276
120325
|
case "FINDSTR":
|
|
@@ -120483,7 +120532,8 @@ function JSDraw(errorHandler,symbolData)
|
|
|
120483
120532
|
var drawData=[];
|
|
120484
120533
|
var result={ DrawData:drawData, DrawType:'DRAWFLAGTEXT' };
|
|
120485
120534
|
if (!text) return result;
|
|
120486
|
-
|
|
120535
|
+
var bArrayText=Array.isArray(text); //是否是数组字符串
|
|
120536
|
+
|
|
120487
120537
|
if (Array.isArray(condition))
|
|
120488
120538
|
{
|
|
120489
120539
|
if (condition.length<=0) return result;
|
|
@@ -120494,14 +120544,18 @@ function JSDraw(errorHandler,symbolData)
|
|
|
120494
120544
|
drawData[i]=null;
|
|
120495
120545
|
|
|
120496
120546
|
if (isNaN(condition[i]) || !condition[i]) continue;
|
|
120547
|
+
|
|
120548
|
+
var outText=null;
|
|
120549
|
+
if (!bArrayText) outText=text;
|
|
120550
|
+
else if (bArrayText && text[i]) outText=text[i];
|
|
120497
120551
|
|
|
120498
120552
|
if (bSinglePrice)
|
|
120499
120553
|
{
|
|
120500
|
-
drawData[i]={ YValue:price, Text:
|
|
120554
|
+
drawData[i]={ YValue:price, Text:outText };
|
|
120501
120555
|
}
|
|
120502
120556
|
else
|
|
120503
120557
|
{
|
|
120504
|
-
if (IFrameSplitOperator.IsNumber(price[i])) drawData[i]={ YValue:price[i], Text:
|
|
120558
|
+
if (IFrameSplitOperator.IsNumber(price[i])) drawData[i]={ YValue:price[i], Text:outText };
|
|
120505
120559
|
}
|
|
120506
120560
|
}
|
|
120507
120561
|
}
|
|
@@ -120510,13 +120564,17 @@ function JSDraw(errorHandler,symbolData)
|
|
|
120510
120564
|
var bSinglePrice=IFrameSplitOperator.IsNumber(price);
|
|
120511
120565
|
for(var i=0;i<this.SymbolData.Data.Data.length;++i)
|
|
120512
120566
|
{
|
|
120567
|
+
var outText=null;
|
|
120568
|
+
if (!bArrayText) outText=text;
|
|
120569
|
+
else if (bArrayText && text[i]) outText=text[i];
|
|
120570
|
+
|
|
120513
120571
|
if (bSinglePrice)
|
|
120514
120572
|
{
|
|
120515
|
-
drawData[i]={ YValue:price, Text:
|
|
120573
|
+
drawData[i]={ YValue:price, Text:outText };
|
|
120516
120574
|
}
|
|
120517
120575
|
else
|
|
120518
120576
|
{
|
|
120519
|
-
if (IFrameSplitOperator.IsNumber(price[i])) drawData[i]={ YValue:price[i], Text:
|
|
120577
|
+
if (IFrameSplitOperator.IsNumber(price[i])) drawData[i]={ YValue:price[i], Text:outText };
|
|
120520
120578
|
}
|
|
120521
120579
|
}
|
|
120522
120580
|
}
|
|
@@ -130714,6 +130772,7 @@ function JSExplainer(ast,option)
|
|
|
130714
130772
|
["STRCAT", { Name:"STRCAT", Param:{ Count:2 }, ToString:function(args) { return `字符串相加`; } } ],
|
|
130715
130773
|
["STRCAT6",{ Name:"STRCAT6", Param:{ Dynamic:true }, ToString:function(args) { return `字符串相加`; } } ],
|
|
130716
130774
|
["VARCAT", { Name:"VARCAT", Param:{ Count:2 }, ToString:function(args) { return `字符串相加`; } } ],
|
|
130775
|
+
["VARCAT6", { Name:"VARCAT", Param:{ Dynamic:true }, ToString:function(args) { return `字符串相加`; } } ],
|
|
130717
130776
|
["STRSPACE", { Name:"STRSPACE", Param:{ Count:1 }, ToString:function(args) { return `字符串${args[0]}加一空格`; } } ],
|
|
130718
130777
|
["SUBSTR", { Name:"SUBSTR", Param:{ Count:3 }, ToString:function(args) { return `字符串${args[0]}中取一部分`; } } ],
|
|
130719
130778
|
["STRCMP", { Name:"STRCMP", Param:{ Count:2 }, ToString:function(args) { return `字符串${args[0]}和字符串${args[1]}比较`; } } ],
|
|
@@ -149654,7 +149713,7 @@ function ChartReport()
|
|
|
149654
149713
|
|
|
149655
149714
|
this.FormaTimeDrawInfo=function(column, stock, drawInfo, data)
|
|
149656
149715
|
{
|
|
149657
|
-
if (!IFrameSplitOperator.IsNumber(stock.Time)) return;
|
|
149716
|
+
if (!stock || !IFrameSplitOperator.IsNumber(stock.Time)) return;
|
|
149658
149717
|
|
|
149659
149718
|
if (column.ValueType==0) //0=hhmm 1=hhmmss 2=hhmmss.fff
|
|
149660
149719
|
{
|
|
@@ -149672,7 +149731,7 @@ function ChartReport()
|
|
|
149672
149731
|
|
|
149673
149732
|
this.FormaDateDrawInfo=function(column, stock, drawInfo, data)
|
|
149674
149733
|
{
|
|
149675
|
-
if (!IFrameSplitOperator.IsNumber(stock.Date)) return;
|
|
149734
|
+
if (!stock || !IFrameSplitOperator.IsNumber(stock.Date)) return;
|
|
149676
149735
|
|
|
149677
149736
|
if (column.FormatType==0)
|
|
149678
149737
|
drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"YYYY-MM-DD");
|
|
@@ -167501,7 +167560,7 @@ function HQChartScriptWorker()
|
|
|
167501
167560
|
|
|
167502
167561
|
|
|
167503
167562
|
|
|
167504
|
-
var HQCHART_VERSION="1.1.
|
|
167563
|
+
var HQCHART_VERSION="1.1.15367";
|
|
167505
167564
|
|
|
167506
167565
|
function PrintHQChartVersion()
|
|
167507
167566
|
{
|