hqchart 1.1.14947 → 1.1.14953
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 +47 -29
- package/package.json +1 -1
- package/src/jscommon/umychart.NetworkFilterTest.js +287 -33
- package/src/jscommon/umychart.js +215 -58
- package/src/jscommon/umychart.testdata.js +286 -32
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +216 -59
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.NetworkFilterTest.vue.js +287 -33
- package/src/jscommon/umychart.vue/umychart.vue.js +216 -59
|
@@ -15870,7 +15870,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
15870
15870
|
{
|
|
15871
15871
|
//清空当前鼠标坐标
|
|
15872
15872
|
this.LastPoint.X=null;
|
|
15873
|
-
this.LastPoint.Y=null
|
|
15873
|
+
this.LastPoint.Y=null;
|
|
15874
15874
|
this.HideTooltip();
|
|
15875
15875
|
this.CloseTooltipDialog();
|
|
15876
15876
|
}
|
|
@@ -15879,7 +15879,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
15879
15879
|
if (IFrameSplitOperator.IsNumber(data.X) && IFrameSplitOperator.IsNumber(data.Y))
|
|
15880
15880
|
{
|
|
15881
15881
|
//设置鼠标位置
|
|
15882
|
-
if (this.LastPoint && !IFrameSplitOperator.IsNumber(this.LastPoint.X)
|
|
15882
|
+
if (this.LastPoint && (!IFrameSplitOperator.IsNumber(this.LastPoint.X) || !IFrameSplitOperator.IsNumber(this.LastPoint.Y)))
|
|
15883
15883
|
{
|
|
15884
15884
|
this.LastPoint.X=data.X;
|
|
15885
15885
|
this.LastPoint.Y=data.Y;
|
|
@@ -39420,10 +39420,10 @@ function ChartMinuteVolumBar()
|
|
|
39420
39420
|
var unit=this.GetVolUnit();
|
|
39421
39421
|
if (callAutionData.Ver==1.0)
|
|
39422
39422
|
{
|
|
39423
|
-
for(var i
|
|
39423
|
+
for(var i=0;i<callAutionData.Data.length;++i)
|
|
39424
39424
|
{
|
|
39425
39425
|
var item=callAutionData.Data[i];
|
|
39426
|
-
if (!item || !IFrameSplitOperator.IsNumber(item.Vol[0])) continue;
|
|
39426
|
+
if (!item || !IFrameSplitOperator.IsNonEmptyArray(item.Vol) || !IFrameSplitOperator.IsNumber(item.Vol[0])) continue;
|
|
39427
39427
|
|
|
39428
39428
|
if (isBeforeOpen)
|
|
39429
39429
|
{
|
|
@@ -39457,11 +39457,11 @@ function ChartMinuteVolumBar()
|
|
|
39457
39457
|
{
|
|
39458
39458
|
var range={ Max: callAutionData.VolMax, Min:callAutionData.VolMin }
|
|
39459
39459
|
|
|
39460
|
-
for(var i
|
|
39460
|
+
for(var i=0; i<callAutionData.Data.length; ++i)
|
|
39461
39461
|
{
|
|
39462
39462
|
var item=callAutionData.Data[i];
|
|
39463
39463
|
if (!item) continue;
|
|
39464
|
-
if (IFrameSplitOperator.IsPlusNumber(item.Vol[0]))
|
|
39464
|
+
if (item.Vol && IFrameSplitOperator.IsPlusNumber(item.Vol[0]))
|
|
39465
39465
|
{
|
|
39466
39466
|
if (isBeforeOpen)
|
|
39467
39467
|
{
|
|
@@ -39491,7 +39491,7 @@ function ChartMinuteVolumBar()
|
|
|
39491
39491
|
this.Canvas.stroke();
|
|
39492
39492
|
}
|
|
39493
39493
|
|
|
39494
|
-
if (IFrameSplitOperator.IsPlusNumber(item.Vol[1]))
|
|
39494
|
+
if (item.Vol && IFrameSplitOperator.IsPlusNumber(item.Vol[1]))
|
|
39495
39495
|
{
|
|
39496
39496
|
if (isBeforeOpen)
|
|
39497
39497
|
{
|
|
@@ -44471,16 +44471,23 @@ function ChartMinutePriceLine()
|
|
|
44471
44471
|
var item=callAutionData.Data[i];
|
|
44472
44472
|
if (!item || !IFrameSplitOperator.IsNumber(item.Price))
|
|
44473
44473
|
{
|
|
44474
|
-
if (i==0 && isBeforeOpen
|
|
44474
|
+
if (i==0 && isBeforeOpen)
|
|
44475
44475
|
{
|
|
44476
|
-
|
|
44477
|
-
var
|
|
44476
|
+
//盘前集合竞价起始点为昨收或昨结算
|
|
44477
|
+
var price=callAutionData.YClose;
|
|
44478
|
+
if (IFrameSplitOperator.IsNumber(callAutionData.YClearing)) price=callAutionData.YClearing;
|
|
44478
44479
|
|
|
44479
|
-
|
|
44480
|
-
|
|
44481
|
-
|
|
44482
|
-
|
|
44483
|
-
|
|
44480
|
+
if (IFrameSplitOperator.IsNumber(price))
|
|
44481
|
+
{
|
|
44482
|
+
var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);
|
|
44483
|
+
var y=this.ChartFrame.GetLeftExtendYFromData(price);
|
|
44484
|
+
|
|
44485
|
+
this.Canvas.strokeStyle=this.BeforeLineColor;
|
|
44486
|
+
this.Canvas.beginPath();
|
|
44487
|
+
if (isHScreen) this.Canvas.moveTo(y,x);
|
|
44488
|
+
else this.Canvas.moveTo(x,y);
|
|
44489
|
+
bFirstPoint=false;
|
|
44490
|
+
}
|
|
44484
44491
|
}
|
|
44485
44492
|
|
|
44486
44493
|
continue;
|
|
@@ -96649,6 +96656,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96649
96656
|
//更新最新的几条数据
|
|
96650
96657
|
this.UpdateLatestMinuteDataV2=function(minuteData)
|
|
96651
96658
|
{
|
|
96659
|
+
if (!minuteData || !IFrameSplitOperator.IsNonEmptyArray(minuteData.Data)) return;
|
|
96660
|
+
|
|
96652
96661
|
if (this.DayCount>1)
|
|
96653
96662
|
{
|
|
96654
96663
|
if (!this.DayData) return;
|
|
@@ -96657,7 +96666,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96657
96666
|
for(var i=0; i<this.DayData.length; ++i)
|
|
96658
96667
|
{
|
|
96659
96668
|
var item=this.DayData[i];
|
|
96660
|
-
if (item.Date===
|
|
96669
|
+
if (item.Date===minuteData.Date)
|
|
96661
96670
|
{
|
|
96662
96671
|
findItem=item;
|
|
96663
96672
|
break;
|
|
@@ -96843,24 +96852,50 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96843
96852
|
this.ColorLineData=aryColorLineData;
|
|
96844
96853
|
}
|
|
96845
96854
|
|
|
96846
|
-
this.UpdateCallCationData=function(beforeOpenData,afterCloseData)
|
|
96855
|
+
this.UpdateCallCationData=function(beforeOpenData,afterCloseData,option)
|
|
96847
96856
|
{
|
|
96848
|
-
|
|
96857
|
+
var dataType=0;
|
|
96858
|
+
if (option && IFrameSplitOperator.IsNumber(option.DataType)) dataType=option.DataType;
|
|
96859
|
+
|
|
96860
|
+
if (dataType==1)
|
|
96849
96861
|
{
|
|
96850
|
-
|
|
96851
|
-
|
|
96852
|
-
this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1]
|
|
96853
|
-
|
|
96854
|
-
|
|
96855
|
-
|
|
96862
|
+
if (beforeOpenData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))
|
|
96863
|
+
{
|
|
96864
|
+
var lastItem=this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1];
|
|
96865
|
+
if (lastItem.Date==beforeOpenData.Date) //增量更新
|
|
96866
|
+
{
|
|
96867
|
+
this.UpdateLatestCallCationData(lastItem, beforeOpenData);
|
|
96868
|
+
}
|
|
96869
|
+
}
|
|
96856
96870
|
|
|
96857
|
-
|
|
96871
|
+
if (afterCloseData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))
|
|
96872
|
+
{
|
|
96873
|
+
var lastItem=this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1];
|
|
96874
|
+
if (lastItem.Date==afterCloseData.Date) //增量更新
|
|
96875
|
+
{
|
|
96876
|
+
this.UpdateLatestCallCationData(lastItem, afterCloseData);
|
|
96877
|
+
}
|
|
96878
|
+
}
|
|
96879
|
+
}
|
|
96880
|
+
else
|
|
96858
96881
|
{
|
|
96859
|
-
|
|
96860
|
-
|
|
96861
|
-
this.
|
|
96862
|
-
|
|
96863
|
-
|
|
96882
|
+
if (beforeOpenData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))
|
|
96883
|
+
{
|
|
96884
|
+
var lastItem=this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1];
|
|
96885
|
+
if (lastItem.Date==beforeOpenData.Date) //存在更新
|
|
96886
|
+
this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1]=beforeOpenData;
|
|
96887
|
+
else if (lastItem.Date<beforeOpenData.Date) //新的一天插入
|
|
96888
|
+
this.MultiDayBeforeOpenData.push(beforeOpenData);
|
|
96889
|
+
}
|
|
96890
|
+
|
|
96891
|
+
if (afterCloseData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))
|
|
96892
|
+
{
|
|
96893
|
+
var lastItem=this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1];
|
|
96894
|
+
if (lastItem.Date==afterCloseData.Date)
|
|
96895
|
+
this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1]=afterCloseData;
|
|
96896
|
+
else if (lastItem.Date<afterCloseData.Date)
|
|
96897
|
+
this.MultiDayAfterCloseData.push(afterCloseData);
|
|
96898
|
+
}
|
|
96864
96899
|
}
|
|
96865
96900
|
|
|
96866
96901
|
this.CaclutateCallCationYRange();
|
|
@@ -96876,9 +96911,16 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96876
96911
|
var afterCloseData=MinuteChartContainer.JsonDataToAfterCloseData(data);
|
|
96877
96912
|
var updateTime=MinuteChartContainer.JsonDataToMinuteLastUpdateTime(data); //数据最后的更新时间
|
|
96878
96913
|
|
|
96914
|
+
if (data.LatestPointFlash) //最新数据闪烁
|
|
96915
|
+
{
|
|
96916
|
+
var item=data.LatestPointFlash;
|
|
96917
|
+
if (IFrameSplitOperator.IsNumber(item.FlashCount))
|
|
96918
|
+
this.SetLatestPointFlash(item.FlashCount)
|
|
96919
|
+
}
|
|
96920
|
+
|
|
96879
96921
|
if (this.DayCount>1) //多日走势图
|
|
96880
96922
|
{
|
|
96881
|
-
this.UpdateCallCationData(beforeOpenData,afterCloseData);
|
|
96923
|
+
this.UpdateCallCationData(beforeOpenData,afterCloseData, { DataType:1});
|
|
96882
96924
|
this.UpdateLineColorData(aryColorData,minuteData.date);
|
|
96883
96925
|
this.UpdateLatestMinuteDataV2(minuteData);
|
|
96884
96926
|
this.UpdateHistoryMinuteUI(updateTime);
|
|
@@ -96890,10 +96932,13 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96890
96932
|
return;
|
|
96891
96933
|
}
|
|
96892
96934
|
|
|
96893
|
-
if (this.IsBeforeData && beforeOpenData) this.BeforeOpenData=beforeOpenData;
|
|
96894
|
-
if (this.IsAfterData && afterCloseData) this.AfterCloseData=afterCloseData;
|
|
96935
|
+
//if (this.IsBeforeData && beforeOpenData) this.BeforeOpenData=beforeOpenData;
|
|
96936
|
+
//if (this.IsAfterData && afterCloseData) this.AfterCloseData=afterCloseData;
|
|
96937
|
+
|
|
96938
|
+
//盘前盘后数据更新
|
|
96939
|
+
if (this.IsBeforeData && beforeOpenData) this.UpdateLatestCallCationData(this.BeforeOpenData, beforeOpenData);
|
|
96940
|
+
if (this.IsAfterData && afterCloseData) this.UpdateLatestCallCationData(this.AfterCloseData, afterCloseData);
|
|
96895
96941
|
|
|
96896
|
-
//原始数据
|
|
96897
96942
|
this.UpdateLatestMinuteDataV2(minuteData);
|
|
96898
96943
|
this.UpdateMinuteUI(data.stock[0], {FunctionName:"RecvUpdateMinuteData"});
|
|
96899
96944
|
|
|
@@ -96908,6 +96953,45 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96908
96953
|
}
|
|
96909
96954
|
}
|
|
96910
96955
|
|
|
96956
|
+
this.UpdateLatestCallCationData=function(destData, updateData)
|
|
96957
|
+
{
|
|
96958
|
+
if (!destData) return;
|
|
96959
|
+
if (!updateData || !IFrameSplitOperator.IsNonEmptyArray(updateData.Data)) return;
|
|
96960
|
+
|
|
96961
|
+
if (destData.Data.length==0)
|
|
96962
|
+
{
|
|
96963
|
+
destData.Data=updateData.Data;
|
|
96964
|
+
destData.VolMax=updateData.VolMax;
|
|
96965
|
+
destData.VolMin=updateData.VolMin;
|
|
96966
|
+
return;
|
|
96967
|
+
}
|
|
96968
|
+
|
|
96969
|
+
//覆盖历史数据
|
|
96970
|
+
var mapData=new Map(updateData.Data.map((obj) => [obj.Time, obj]));
|
|
96971
|
+
var lastTime=null; //最后的时间
|
|
96972
|
+
for(var i=0;i<destData.Data.length;++i)
|
|
96973
|
+
{
|
|
96974
|
+
var item=destData.Data[i];
|
|
96975
|
+
lastTime=item.Time;
|
|
96976
|
+
if (!mapData.has(item.Time)) continue;
|
|
96977
|
+
var newItem=mapData.get(item.Time);
|
|
96978
|
+
if (!newItem || !IFrameSplitOperator.IsNumber(newItem.Price)) continue; //只覆盖有效数据
|
|
96979
|
+
|
|
96980
|
+
destData.Data[i]=newItem;
|
|
96981
|
+
}
|
|
96982
|
+
|
|
96983
|
+
//新数据往后插
|
|
96984
|
+
for(var i=0;i<updateData.Data.length;++i)
|
|
96985
|
+
{
|
|
96986
|
+
var item=updateData.Data[i];
|
|
96987
|
+
if (item.Time<=lastTime) continue;
|
|
96988
|
+
destData.Data.push(item);
|
|
96989
|
+
}
|
|
96990
|
+
|
|
96991
|
+
if (destData.VolMax<updateData.VolMax) destData.VolMax=updateData.VolMax;
|
|
96992
|
+
if (IFrameSplitOperator.IsNumber(updateData.TotalCount) && updateData.TotalCount>destData.TotalCount) updateData.TotalCount=destData.TotalCount;
|
|
96993
|
+
}
|
|
96994
|
+
|
|
96911
96995
|
this.RecvBuySellData=function(data)
|
|
96912
96996
|
{
|
|
96913
96997
|
if (!data) return;
|
|
@@ -96974,7 +97058,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96974
97058
|
|
|
96975
97059
|
if (this.DayCount>1) //多日走势图
|
|
96976
97060
|
{
|
|
96977
|
-
this.UpdateCallCationData(beforeOpenData,afterCloseData);
|
|
97061
|
+
this.UpdateCallCationData(beforeOpenData,afterCloseData, { DataType:0});
|
|
96978
97062
|
this.UpdateLineColorData(aryColorData,data.stock[0].date);
|
|
96979
97063
|
this.UpdateLatestMinuteData(aryMinuteData, data.stock[0].date, data.stock[0]);
|
|
96980
97064
|
this.UpdateTradeStatusData(data.TradeStatus);
|
|
@@ -98791,7 +98875,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98791
98875
|
var preClose=data.stock[0].yclose; //前一个数据价格
|
|
98792
98876
|
var stockData=data.stock[0];
|
|
98793
98877
|
var date=stockData.date; //日期
|
|
98794
|
-
var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:date };
|
|
98878
|
+
var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:date, YClose:stockData.yclose, YClearing:stockData.yclearing };
|
|
98795
98879
|
var extendDataIndex=JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA; //扩展数据序号
|
|
98796
98880
|
if (stockData.beforeinfo)
|
|
98797
98881
|
{
|
|
@@ -98827,7 +98911,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98827
98911
|
else if (beforeOpenData.Ver==2.0)
|
|
98828
98912
|
{
|
|
98829
98913
|
var max=0;
|
|
98830
|
-
for(var i
|
|
98914
|
+
for(var i=0;i<stockData.before.length;++i)
|
|
98831
98915
|
{
|
|
98832
98916
|
var item=new BeforeOpenData();
|
|
98833
98917
|
var jsData=stockData.before[i];
|
|
@@ -98839,7 +98923,6 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98839
98923
|
item.Vol[1]=jsData[3]; //未匹配量
|
|
98840
98924
|
item.ColorID=jsData[4]; //柱子颜色ID
|
|
98841
98925
|
if (IFrameSplitOperator.IsNumber(jsData[6])) item.Date=jsData[6] //日期
|
|
98842
|
-
item.DateTime=`${item.Date} ${item.Time})`;
|
|
98843
98926
|
|
|
98844
98927
|
var totalVol=item.Vol[0]+item.Vol[1];
|
|
98845
98928
|
if (IFrameSplitOperator.IsNumber(jsData[5])) totalVol=jsData[5];
|
|
@@ -98851,12 +98934,14 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98851
98934
|
|
|
98852
98935
|
beforeOpenData.VolMax=max/unit;
|
|
98853
98936
|
beforeOpenData.VolMin=0;
|
|
98937
|
+
|
|
98938
|
+
if (stockData.beforeinfo && stockData.beforeinfo.TimeConfig) //固定时间
|
|
98939
|
+
MinuteChartContainer.CompleteCallAuctionData(stockData.beforeinfo.TimeConfig, beforeOpenData);
|
|
98854
98940
|
}
|
|
98855
98941
|
else if (beforeOpenData.Ver==3.0)
|
|
98856
98942
|
{
|
|
98857
98943
|
var max=0;
|
|
98858
|
-
|
|
98859
|
-
for(var i in stockData.before)
|
|
98944
|
+
for(var i=0; i<stockData.before.length; ++i)
|
|
98860
98945
|
{
|
|
98861
98946
|
var item=new BeforeOpenData();
|
|
98862
98947
|
var jsData=stockData.before[i];
|
|
@@ -98867,7 +98952,6 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98867
98952
|
item.AvPrice=jsData[2]; //均价
|
|
98868
98953
|
item.Vol[0]=jsData[3]; //匹配量
|
|
98869
98954
|
item.ColorID=jsData[4]; //柱子颜色ID
|
|
98870
|
-
item.DateTime=date.toString()+" "+item.Time.toString();
|
|
98871
98955
|
|
|
98872
98956
|
var totalVol=item.Vol[0];
|
|
98873
98957
|
if (IFrameSplitOperator.IsNumber(jsData[5])) totalVol=jsData[5];
|
|
@@ -98879,11 +98963,72 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98879
98963
|
|
|
98880
98964
|
beforeOpenData.VolMax=max/unit;
|
|
98881
98965
|
beforeOpenData.VolMin=0;
|
|
98966
|
+
|
|
98967
|
+
if (stockData.beforeinfo && stockData.beforeinfo.TimeConfig) //固定时间
|
|
98968
|
+
MinuteChartContainer.CompleteCallAuctionData(stockData.beforeinfo.TimeConfig, beforeOpenData);
|
|
98882
98969
|
}
|
|
98883
98970
|
|
|
98884
98971
|
return beforeOpenData;
|
|
98885
98972
|
}
|
|
98886
98973
|
|
|
98974
|
+
|
|
98975
|
+
MinuteChartContainer.CompleteCallAuctionData=function(timeConfig, callAuctionData)
|
|
98976
|
+
{
|
|
98977
|
+
var aryData=MinuteChartContainer.CreateCallAuctionTimeData(timeConfig);
|
|
98978
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(aryData)) return false;
|
|
98979
|
+
|
|
98980
|
+
var mapData=new Map(callAuctionData.Data.map((obj) => [obj.Time, obj]));
|
|
98981
|
+
for(var i=0;i<aryData.length;++i)
|
|
98982
|
+
{
|
|
98983
|
+
var time=aryData[i].Time;
|
|
98984
|
+
if (!mapData.has(time)) continue;
|
|
98985
|
+
|
|
98986
|
+
var item=mapData.get(time);
|
|
98987
|
+
aryData[i]=item;
|
|
98988
|
+
}
|
|
98989
|
+
|
|
98990
|
+
callAuctionData.Data=aryData;
|
|
98991
|
+
callAuctionData.TotalCount=aryData.length;
|
|
98992
|
+
|
|
98993
|
+
return true;
|
|
98994
|
+
}
|
|
98995
|
+
|
|
98996
|
+
//创建集合竞价秒级时间 { AryTime:[ { Start:92500, End:92459, Date:20250101 } ] } hhmmss
|
|
98997
|
+
MinuteChartContainer.CreateCallAuctionTimeData=function(config)
|
|
98998
|
+
{
|
|
98999
|
+
if (!config || !IFrameSplitOperator.IsNonEmptyArray(config.AryTime)) return null;
|
|
99000
|
+
|
|
99001
|
+
var step=1; //1s
|
|
99002
|
+
if (IFrameSplitOperator.IsPlusNumber(config.Step)) step=config.Step;
|
|
99003
|
+
var aryData=[];
|
|
99004
|
+
for(var i=0;i<config.AryTime.length;++i)
|
|
99005
|
+
{
|
|
99006
|
+
var item=config.AryTime[i];
|
|
99007
|
+
|
|
99008
|
+
var value=item.Start;
|
|
99009
|
+
var hour=parseInt(value/10000);
|
|
99010
|
+
var minute=parseInt((value%10000)/100);
|
|
99011
|
+
var second=value%100;
|
|
99012
|
+
var startTime=new Date(2021,5,2, hour,minute, second);
|
|
99013
|
+
|
|
99014
|
+
value=item.End;
|
|
99015
|
+
var hour=parseInt(value/10000);
|
|
99016
|
+
var minute=parseInt((value%10000)/100);
|
|
99017
|
+
var second=value%100;
|
|
99018
|
+
var endTime=new Date(2021,5,2, hour,minute, second);
|
|
99019
|
+
|
|
99020
|
+
for(var j=0; j<5000 && startTime<=endTime; ++j)
|
|
99021
|
+
{
|
|
99022
|
+
var time=startTime.getHours()*10000+startTime.getMinutes()*100+startTime.getSeconds();
|
|
99023
|
+
var secItem={ Time:time, Date:item.Date };
|
|
99024
|
+
aryData.push(secItem);
|
|
99025
|
+
startTime.setSeconds(startTime.getSeconds()+step);
|
|
99026
|
+
}
|
|
99027
|
+
}
|
|
99028
|
+
|
|
99029
|
+
return aryData;
|
|
99030
|
+
}
|
|
99031
|
+
|
|
98887
99032
|
//收盘集合竞价
|
|
98888
99033
|
MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
98889
99034
|
{
|
|
@@ -98894,7 +99039,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
|
98894
99039
|
if (!stockData.afterinfo) return null;
|
|
98895
99040
|
var symbol=data.stock[0].symbol;
|
|
98896
99041
|
var upperSymbol=symbol.toUpperCase();
|
|
98897
|
-
var afterCloseData={ Data:[], TotalCount:3*60, Ver:2.0, Date:date };
|
|
99042
|
+
var afterCloseData={ Data:[], TotalCount:3*60, Ver:2.0, Date:date, YClose:stockData.yclose, YClearing:stockData.yclearing };
|
|
98898
99043
|
var item=stockData.afterinfo;
|
|
98899
99044
|
if (IFrameSplitOperator.IsNumber(item.totalcount)) afterCloseData.TotalCount=item.totalcount;
|
|
98900
99045
|
if (IFrameSplitOperator.IsNumber(item.ver)) afterCloseData.Ver=item.ver;
|
|
@@ -98924,7 +99069,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
|
98924
99069
|
else if (afterCloseData.Ver==2.0)
|
|
98925
99070
|
{
|
|
98926
99071
|
var max=0;
|
|
98927
|
-
for(var i
|
|
99072
|
+
for(var i=0; i<stockData.after.length; ++i)
|
|
98928
99073
|
{
|
|
98929
99074
|
var item=new AfterCloseData();
|
|
98930
99075
|
var jsData=stockData.after[i];
|
|
@@ -98947,6 +99092,9 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
|
98947
99092
|
|
|
98948
99093
|
afterCloseData.VolMax=max/unit;
|
|
98949
99094
|
afterCloseData.VolMin=0;
|
|
99095
|
+
|
|
99096
|
+
if (stockData.afterinfo && stockData.afterinfo.TimeConfig) //固定时间
|
|
99097
|
+
MinuteChartContainer.CompleteCallAuctionData(stockData.afterinfo.TimeConfig, afterCloseData);
|
|
98950
99098
|
}
|
|
98951
99099
|
else if (afterCloseData.Ver==3.0)
|
|
98952
99100
|
{
|
|
@@ -98974,6 +99122,9 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
|
98974
99122
|
|
|
98975
99123
|
afterCloseData.VolMax=max/unit;
|
|
98976
99124
|
afterCloseData.VolMin=0;
|
|
99125
|
+
|
|
99126
|
+
if (stockData.afterinfo && stockData.afterinfo.TimeConfig) //固定时间
|
|
99127
|
+
MinuteChartContainer.CompleteCallAuctionData(stockData.afterinfo.TimeConfig, afterCloseData);
|
|
98977
99128
|
}
|
|
98978
99129
|
|
|
98979
99130
|
return afterCloseData;
|
|
@@ -99095,12 +99246,13 @@ MinuteChartContainer.JsonDataToUpdateMinuteData=function(data)
|
|
|
99095
99246
|
|
|
99096
99247
|
item.DateTime=`${item.Date} ${item.Time}`;
|
|
99097
99248
|
|
|
99098
|
-
if (IFrameSplitOperator.IsNumber(minuteData.YClose) && item.Close)
|
|
99099
|
-
|
|
99100
|
-
|
|
99101
|
-
|
|
99102
|
-
|
|
99103
|
-
|
|
99249
|
+
if (!IFrameSplitOperator.IsNumber(item.Increase) && IFrameSplitOperator.IsNumber(minuteData.YClose) && item.Close)
|
|
99250
|
+
{
|
|
99251
|
+
if (isFutures && minuteData.YClearing && item.Close)
|
|
99252
|
+
item.Increase=(item.Close-minuteData.YClearing)/minuteData.YClearing*100; //涨幅 (最新价格-昨结算价)/昨结算价*100;
|
|
99253
|
+
else
|
|
99254
|
+
item.Increase=(item.Close-minuteData.YClose)/minuteData.YClose*100; //涨幅 (最新价格-昨收)/昨收*100;
|
|
99255
|
+
}
|
|
99104
99256
|
|
|
99105
99257
|
minuteData.Data.push(item);
|
|
99106
99258
|
}
|
|
@@ -99264,8 +99416,9 @@ MinuteChartContainer.JsonDataToHistoryMinuteLineColorData=function(data)
|
|
|
99264
99416
|
}
|
|
99265
99417
|
|
|
99266
99418
|
|
|
99267
|
-
MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, isBeforeOpen, symbol)
|
|
99419
|
+
MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, isBeforeOpen, symbol, dataInfo)
|
|
99268
99420
|
{
|
|
99421
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(data)) return;
|
|
99269
99422
|
var upperSymbol=symbol?symbol.toUpperCase():null;
|
|
99270
99423
|
var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);
|
|
99271
99424
|
|
|
@@ -99276,7 +99429,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99276
99429
|
if (callAuctionData.Ver==1.0)
|
|
99277
99430
|
{
|
|
99278
99431
|
var preClose=null;
|
|
99279
|
-
for(var i
|
|
99432
|
+
for(var i=0; i<data.length; ++i)
|
|
99280
99433
|
{
|
|
99281
99434
|
var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
|
|
99282
99435
|
var jsData=data[i];
|
|
@@ -99300,7 +99453,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99300
99453
|
else if (callAuctionData.Ver==2.0)
|
|
99301
99454
|
{
|
|
99302
99455
|
var max=0;
|
|
99303
|
-
for(var i
|
|
99456
|
+
for(var i=0; i<data.length; ++i)
|
|
99304
99457
|
{
|
|
99305
99458
|
var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
|
|
99306
99459
|
var jsData=data[i];
|
|
@@ -99312,7 +99465,6 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99312
99465
|
item.Vol[0]=jsData[2]; //匹配量
|
|
99313
99466
|
item.Vol[1]=jsData[3]; //未匹配量
|
|
99314
99467
|
item.ColorID=jsData[4]; //柱子颜色ID
|
|
99315
|
-
item.DateTime=date.toString()+" "+item.Time.toString();
|
|
99316
99468
|
|
|
99317
99469
|
var totalVol=item.Vol[0]+item.Vol[1];
|
|
99318
99470
|
if (IFrameSplitOperator.IsNumber(jsData[5])) totalVol=jsData[5];
|
|
@@ -99324,6 +99476,9 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99324
99476
|
|
|
99325
99477
|
callAuctionData.VolMax=max/unit;
|
|
99326
99478
|
callAuctionData.VolMin=0;
|
|
99479
|
+
|
|
99480
|
+
if (dataInfo && dataInfo.TimeConfig) //固定时间
|
|
99481
|
+
MinuteChartContainer.CompleteCallAuctionData(dataInfo.TimeConfig, callAuctionData);
|
|
99327
99482
|
}
|
|
99328
99483
|
else if (beforeOpenData.Ver==3.0)
|
|
99329
99484
|
{
|
|
@@ -99340,7 +99495,6 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99340
99495
|
item.AvPrice=jsData[2]; //均价
|
|
99341
99496
|
item.Vol[0]=jsData[3]; //匹配量
|
|
99342
99497
|
item.ColorID=jsData[4]; //柱子颜色ID
|
|
99343
|
-
item.DateTime=date.toString()+" "+item.Time.toString();
|
|
99344
99498
|
|
|
99345
99499
|
var totalVol=item.Vol[0];
|
|
99346
99500
|
if (IFrameSplitOperator.IsNumber(jsData[5])) totalVol=jsData[5];
|
|
@@ -99352,6 +99506,9 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99352
99506
|
|
|
99353
99507
|
callAuctionData.VolMax=max/unit;
|
|
99354
99508
|
callAuctionData.VolMin=0;
|
|
99509
|
+
|
|
99510
|
+
if (dataInfo && dataInfo.TimeConfig) //固定时间
|
|
99511
|
+
MinuteChartContainer.CompleteCallAuctionData(dataInfo.TimeConfig, callAuctionData);
|
|
99355
99512
|
}
|
|
99356
99513
|
}
|
|
99357
99514
|
|
|
@@ -99360,7 +99517,7 @@ MinuteChartContainer.JosnDataToBeforeOpenDataArray=function(data)
|
|
|
99360
99517
|
if (!data || !data.data) return null;
|
|
99361
99518
|
|
|
99362
99519
|
var aryDay=[];
|
|
99363
|
-
for(var i
|
|
99520
|
+
for(var i=0; i<data.data.length; ++i)
|
|
99364
99521
|
{
|
|
99365
99522
|
var dayItem=data.data[i];
|
|
99366
99523
|
var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose, YClearing:dayItem.YClearing };
|
|
@@ -99370,7 +99527,7 @@ MinuteChartContainer.JosnDataToBeforeOpenDataArray=function(data)
|
|
|
99370
99527
|
if (IFrameSplitOperator.IsNumber(dayItem.beforeinfo.ver)) beforeOpenData.Ver=dayItem.beforeinfo.ver;
|
|
99371
99528
|
}
|
|
99372
99529
|
|
|
99373
|
-
MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.before, beforeOpenData, true, data.symbol);
|
|
99530
|
+
MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.before, beforeOpenData, true, data.symbol, dayItem.beforeinfo);
|
|
99374
99531
|
|
|
99375
99532
|
aryDay.push(beforeOpenData);
|
|
99376
99533
|
}
|
|
@@ -99385,7 +99542,7 @@ MinuteChartContainer.JosnDataToAfterCloseDataArray=function(data)
|
|
|
99385
99542
|
if (!data || !data.data) return null;
|
|
99386
99543
|
|
|
99387
99544
|
var aryDay=[];
|
|
99388
|
-
for(var i
|
|
99545
|
+
for(var i=0; i<data.data.length; ++i)
|
|
99389
99546
|
{
|
|
99390
99547
|
var dayItem=data.data[i];
|
|
99391
99548
|
var afterCloseData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose, YClearing:dayItem.YClearing };
|
|
@@ -99396,7 +99553,7 @@ MinuteChartContainer.JosnDataToAfterCloseDataArray=function(data)
|
|
|
99396
99553
|
if (IFrameSplitOperator.IsNumber(dayItem.afterinfo.ver)) afterCloseData.Ver=dayItem.afterinfo.ver;
|
|
99397
99554
|
}
|
|
99398
99555
|
|
|
99399
|
-
MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.after, afterCloseData, false, data.symbol);
|
|
99556
|
+
MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.after, afterCloseData, false, data.symbol, dayItem.afterinfo);
|
|
99400
99557
|
|
|
99401
99558
|
aryDay.push(afterCloseData);
|
|
99402
99559
|
}
|
|
@@ -151239,7 +151396,7 @@ function ScrollBarBGChart()
|
|
|
151239
151396
|
|
|
151240
151397
|
|
|
151241
151398
|
|
|
151242
|
-
var HQCHART_VERSION="1.1.
|
|
151399
|
+
var HQCHART_VERSION="1.1.14952";
|
|
151243
151400
|
|
|
151244
151401
|
function PrintHQChartVersion()
|
|
151245
151402
|
{
|