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
|
@@ -15914,7 +15914,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
15914
15914
|
{
|
|
15915
15915
|
//清空当前鼠标坐标
|
|
15916
15916
|
this.LastPoint.X=null;
|
|
15917
|
-
this.LastPoint.Y=null
|
|
15917
|
+
this.LastPoint.Y=null;
|
|
15918
15918
|
this.HideTooltip();
|
|
15919
15919
|
this.CloseTooltipDialog();
|
|
15920
15920
|
}
|
|
@@ -15923,7 +15923,7 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
|
|
|
15923
15923
|
if (IFrameSplitOperator.IsNumber(data.X) && IFrameSplitOperator.IsNumber(data.Y))
|
|
15924
15924
|
{
|
|
15925
15925
|
//设置鼠标位置
|
|
15926
|
-
if (this.LastPoint && !IFrameSplitOperator.IsNumber(this.LastPoint.X)
|
|
15926
|
+
if (this.LastPoint && (!IFrameSplitOperator.IsNumber(this.LastPoint.X) || !IFrameSplitOperator.IsNumber(this.LastPoint.Y)))
|
|
15927
15927
|
{
|
|
15928
15928
|
this.LastPoint.X=data.X;
|
|
15929
15929
|
this.LastPoint.Y=data.Y;
|
|
@@ -39464,10 +39464,10 @@ function ChartMinuteVolumBar()
|
|
|
39464
39464
|
var unit=this.GetVolUnit();
|
|
39465
39465
|
if (callAutionData.Ver==1.0)
|
|
39466
39466
|
{
|
|
39467
|
-
for(var i
|
|
39467
|
+
for(var i=0;i<callAutionData.Data.length;++i)
|
|
39468
39468
|
{
|
|
39469
39469
|
var item=callAutionData.Data[i];
|
|
39470
|
-
if (!item || !IFrameSplitOperator.IsNumber(item.Vol[0])) continue;
|
|
39470
|
+
if (!item || !IFrameSplitOperator.IsNonEmptyArray(item.Vol) || !IFrameSplitOperator.IsNumber(item.Vol[0])) continue;
|
|
39471
39471
|
|
|
39472
39472
|
if (isBeforeOpen)
|
|
39473
39473
|
{
|
|
@@ -39501,11 +39501,11 @@ function ChartMinuteVolumBar()
|
|
|
39501
39501
|
{
|
|
39502
39502
|
var range={ Max: callAutionData.VolMax, Min:callAutionData.VolMin }
|
|
39503
39503
|
|
|
39504
|
-
for(var i
|
|
39504
|
+
for(var i=0; i<callAutionData.Data.length; ++i)
|
|
39505
39505
|
{
|
|
39506
39506
|
var item=callAutionData.Data[i];
|
|
39507
39507
|
if (!item) continue;
|
|
39508
|
-
if (IFrameSplitOperator.IsPlusNumber(item.Vol[0]))
|
|
39508
|
+
if (item.Vol && IFrameSplitOperator.IsPlusNumber(item.Vol[0]))
|
|
39509
39509
|
{
|
|
39510
39510
|
if (isBeforeOpen)
|
|
39511
39511
|
{
|
|
@@ -39535,7 +39535,7 @@ function ChartMinuteVolumBar()
|
|
|
39535
39535
|
this.Canvas.stroke();
|
|
39536
39536
|
}
|
|
39537
39537
|
|
|
39538
|
-
if (IFrameSplitOperator.IsPlusNumber(item.Vol[1]))
|
|
39538
|
+
if (item.Vol && IFrameSplitOperator.IsPlusNumber(item.Vol[1]))
|
|
39539
39539
|
{
|
|
39540
39540
|
if (isBeforeOpen)
|
|
39541
39541
|
{
|
|
@@ -44515,16 +44515,23 @@ function ChartMinutePriceLine()
|
|
|
44515
44515
|
var item=callAutionData.Data[i];
|
|
44516
44516
|
if (!item || !IFrameSplitOperator.IsNumber(item.Price))
|
|
44517
44517
|
{
|
|
44518
|
-
if (i==0 && isBeforeOpen
|
|
44518
|
+
if (i==0 && isBeforeOpen)
|
|
44519
44519
|
{
|
|
44520
|
-
|
|
44521
|
-
var
|
|
44520
|
+
//盘前集合竞价起始点为昨收或昨结算
|
|
44521
|
+
var price=callAutionData.YClose;
|
|
44522
|
+
if (IFrameSplitOperator.IsNumber(callAutionData.YClearing)) price=callAutionData.YClearing;
|
|
44522
44523
|
|
|
44523
|
-
|
|
44524
|
-
|
|
44525
|
-
|
|
44526
|
-
|
|
44527
|
-
|
|
44524
|
+
if (IFrameSplitOperator.IsNumber(price))
|
|
44525
|
+
{
|
|
44526
|
+
var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);
|
|
44527
|
+
var y=this.ChartFrame.GetLeftExtendYFromData(price);
|
|
44528
|
+
|
|
44529
|
+
this.Canvas.strokeStyle=this.BeforeLineColor;
|
|
44530
|
+
this.Canvas.beginPath();
|
|
44531
|
+
if (isHScreen) this.Canvas.moveTo(y,x);
|
|
44532
|
+
else this.Canvas.moveTo(x,y);
|
|
44533
|
+
bFirstPoint=false;
|
|
44534
|
+
}
|
|
44528
44535
|
}
|
|
44529
44536
|
|
|
44530
44537
|
continue;
|
|
@@ -96693,6 +96700,8 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96693
96700
|
//更新最新的几条数据
|
|
96694
96701
|
this.UpdateLatestMinuteDataV2=function(minuteData)
|
|
96695
96702
|
{
|
|
96703
|
+
if (!minuteData || !IFrameSplitOperator.IsNonEmptyArray(minuteData.Data)) return;
|
|
96704
|
+
|
|
96696
96705
|
if (this.DayCount>1)
|
|
96697
96706
|
{
|
|
96698
96707
|
if (!this.DayData) return;
|
|
@@ -96701,7 +96710,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96701
96710
|
for(var i=0; i<this.DayData.length; ++i)
|
|
96702
96711
|
{
|
|
96703
96712
|
var item=this.DayData[i];
|
|
96704
|
-
if (item.Date===
|
|
96713
|
+
if (item.Date===minuteData.Date)
|
|
96705
96714
|
{
|
|
96706
96715
|
findItem=item;
|
|
96707
96716
|
break;
|
|
@@ -96887,24 +96896,50 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96887
96896
|
this.ColorLineData=aryColorLineData;
|
|
96888
96897
|
}
|
|
96889
96898
|
|
|
96890
|
-
this.UpdateCallCationData=function(beforeOpenData,afterCloseData)
|
|
96899
|
+
this.UpdateCallCationData=function(beforeOpenData,afterCloseData,option)
|
|
96891
96900
|
{
|
|
96892
|
-
|
|
96901
|
+
var dataType=0;
|
|
96902
|
+
if (option && IFrameSplitOperator.IsNumber(option.DataType)) dataType=option.DataType;
|
|
96903
|
+
|
|
96904
|
+
if (dataType==1)
|
|
96893
96905
|
{
|
|
96894
|
-
|
|
96895
|
-
|
|
96896
|
-
this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1]
|
|
96897
|
-
|
|
96898
|
-
|
|
96899
|
-
|
|
96906
|
+
if (beforeOpenData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))
|
|
96907
|
+
{
|
|
96908
|
+
var lastItem=this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1];
|
|
96909
|
+
if (lastItem.Date==beforeOpenData.Date) //增量更新
|
|
96910
|
+
{
|
|
96911
|
+
this.UpdateLatestCallCationData(lastItem, beforeOpenData);
|
|
96912
|
+
}
|
|
96913
|
+
}
|
|
96900
96914
|
|
|
96901
|
-
|
|
96915
|
+
if (afterCloseData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))
|
|
96916
|
+
{
|
|
96917
|
+
var lastItem=this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1];
|
|
96918
|
+
if (lastItem.Date==afterCloseData.Date) //增量更新
|
|
96919
|
+
{
|
|
96920
|
+
this.UpdateLatestCallCationData(lastItem, afterCloseData);
|
|
96921
|
+
}
|
|
96922
|
+
}
|
|
96923
|
+
}
|
|
96924
|
+
else
|
|
96902
96925
|
{
|
|
96903
|
-
|
|
96904
|
-
|
|
96905
|
-
this.
|
|
96906
|
-
|
|
96907
|
-
|
|
96926
|
+
if (beforeOpenData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))
|
|
96927
|
+
{
|
|
96928
|
+
var lastItem=this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1];
|
|
96929
|
+
if (lastItem.Date==beforeOpenData.Date) //存在更新
|
|
96930
|
+
this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1]=beforeOpenData;
|
|
96931
|
+
else if (lastItem.Date<beforeOpenData.Date) //新的一天插入
|
|
96932
|
+
this.MultiDayBeforeOpenData.push(beforeOpenData);
|
|
96933
|
+
}
|
|
96934
|
+
|
|
96935
|
+
if (afterCloseData && IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))
|
|
96936
|
+
{
|
|
96937
|
+
var lastItem=this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1];
|
|
96938
|
+
if (lastItem.Date==afterCloseData.Date)
|
|
96939
|
+
this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1]=afterCloseData;
|
|
96940
|
+
else if (lastItem.Date<afterCloseData.Date)
|
|
96941
|
+
this.MultiDayAfterCloseData.push(afterCloseData);
|
|
96942
|
+
}
|
|
96908
96943
|
}
|
|
96909
96944
|
|
|
96910
96945
|
this.CaclutateCallCationYRange();
|
|
@@ -96920,9 +96955,16 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96920
96955
|
var afterCloseData=MinuteChartContainer.JsonDataToAfterCloseData(data);
|
|
96921
96956
|
var updateTime=MinuteChartContainer.JsonDataToMinuteLastUpdateTime(data); //数据最后的更新时间
|
|
96922
96957
|
|
|
96958
|
+
if (data.LatestPointFlash) //最新数据闪烁
|
|
96959
|
+
{
|
|
96960
|
+
var item=data.LatestPointFlash;
|
|
96961
|
+
if (IFrameSplitOperator.IsNumber(item.FlashCount))
|
|
96962
|
+
this.SetLatestPointFlash(item.FlashCount)
|
|
96963
|
+
}
|
|
96964
|
+
|
|
96923
96965
|
if (this.DayCount>1) //多日走势图
|
|
96924
96966
|
{
|
|
96925
|
-
this.UpdateCallCationData(beforeOpenData,afterCloseData);
|
|
96967
|
+
this.UpdateCallCationData(beforeOpenData,afterCloseData, { DataType:1});
|
|
96926
96968
|
this.UpdateLineColorData(aryColorData,minuteData.date);
|
|
96927
96969
|
this.UpdateLatestMinuteDataV2(minuteData);
|
|
96928
96970
|
this.UpdateHistoryMinuteUI(updateTime);
|
|
@@ -96934,10 +96976,13 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96934
96976
|
return;
|
|
96935
96977
|
}
|
|
96936
96978
|
|
|
96937
|
-
if (this.IsBeforeData && beforeOpenData) this.BeforeOpenData=beforeOpenData;
|
|
96938
|
-
if (this.IsAfterData && afterCloseData) this.AfterCloseData=afterCloseData;
|
|
96979
|
+
//if (this.IsBeforeData && beforeOpenData) this.BeforeOpenData=beforeOpenData;
|
|
96980
|
+
//if (this.IsAfterData && afterCloseData) this.AfterCloseData=afterCloseData;
|
|
96981
|
+
|
|
96982
|
+
//盘前盘后数据更新
|
|
96983
|
+
if (this.IsBeforeData && beforeOpenData) this.UpdateLatestCallCationData(this.BeforeOpenData, beforeOpenData);
|
|
96984
|
+
if (this.IsAfterData && afterCloseData) this.UpdateLatestCallCationData(this.AfterCloseData, afterCloseData);
|
|
96939
96985
|
|
|
96940
|
-
//原始数据
|
|
96941
96986
|
this.UpdateLatestMinuteDataV2(minuteData);
|
|
96942
96987
|
this.UpdateMinuteUI(data.stock[0], {FunctionName:"RecvUpdateMinuteData"});
|
|
96943
96988
|
|
|
@@ -96952,6 +96997,45 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
96952
96997
|
}
|
|
96953
96998
|
}
|
|
96954
96999
|
|
|
97000
|
+
this.UpdateLatestCallCationData=function(destData, updateData)
|
|
97001
|
+
{
|
|
97002
|
+
if (!destData) return;
|
|
97003
|
+
if (!updateData || !IFrameSplitOperator.IsNonEmptyArray(updateData.Data)) return;
|
|
97004
|
+
|
|
97005
|
+
if (destData.Data.length==0)
|
|
97006
|
+
{
|
|
97007
|
+
destData.Data=updateData.Data;
|
|
97008
|
+
destData.VolMax=updateData.VolMax;
|
|
97009
|
+
destData.VolMin=updateData.VolMin;
|
|
97010
|
+
return;
|
|
97011
|
+
}
|
|
97012
|
+
|
|
97013
|
+
//覆盖历史数据
|
|
97014
|
+
var mapData=new Map(updateData.Data.map((obj) => [obj.Time, obj]));
|
|
97015
|
+
var lastTime=null; //最后的时间
|
|
97016
|
+
for(var i=0;i<destData.Data.length;++i)
|
|
97017
|
+
{
|
|
97018
|
+
var item=destData.Data[i];
|
|
97019
|
+
lastTime=item.Time;
|
|
97020
|
+
if (!mapData.has(item.Time)) continue;
|
|
97021
|
+
var newItem=mapData.get(item.Time);
|
|
97022
|
+
if (!newItem || !IFrameSplitOperator.IsNumber(newItem.Price)) continue; //只覆盖有效数据
|
|
97023
|
+
|
|
97024
|
+
destData.Data[i]=newItem;
|
|
97025
|
+
}
|
|
97026
|
+
|
|
97027
|
+
//新数据往后插
|
|
97028
|
+
for(var i=0;i<updateData.Data.length;++i)
|
|
97029
|
+
{
|
|
97030
|
+
var item=updateData.Data[i];
|
|
97031
|
+
if (item.Time<=lastTime) continue;
|
|
97032
|
+
destData.Data.push(item);
|
|
97033
|
+
}
|
|
97034
|
+
|
|
97035
|
+
if (destData.VolMax<updateData.VolMax) destData.VolMax=updateData.VolMax;
|
|
97036
|
+
if (IFrameSplitOperator.IsNumber(updateData.TotalCount) && updateData.TotalCount>destData.TotalCount) updateData.TotalCount=destData.TotalCount;
|
|
97037
|
+
}
|
|
97038
|
+
|
|
96955
97039
|
this.RecvBuySellData=function(data)
|
|
96956
97040
|
{
|
|
96957
97041
|
if (!data) return;
|
|
@@ -97018,7 +97102,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
|
|
|
97018
97102
|
|
|
97019
97103
|
if (this.DayCount>1) //多日走势图
|
|
97020
97104
|
{
|
|
97021
|
-
this.UpdateCallCationData(beforeOpenData,afterCloseData);
|
|
97105
|
+
this.UpdateCallCationData(beforeOpenData,afterCloseData, { DataType:0});
|
|
97022
97106
|
this.UpdateLineColorData(aryColorData,data.stock[0].date);
|
|
97023
97107
|
this.UpdateLatestMinuteData(aryMinuteData, data.stock[0].date, data.stock[0]);
|
|
97024
97108
|
this.UpdateTradeStatusData(data.TradeStatus);
|
|
@@ -98835,7 +98919,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98835
98919
|
var preClose=data.stock[0].yclose; //前一个数据价格
|
|
98836
98920
|
var stockData=data.stock[0];
|
|
98837
98921
|
var date=stockData.date; //日期
|
|
98838
|
-
var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:date };
|
|
98922
|
+
var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:date, YClose:stockData.yclose, YClearing:stockData.yclearing };
|
|
98839
98923
|
var extendDataIndex=JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA; //扩展数据序号
|
|
98840
98924
|
if (stockData.beforeinfo)
|
|
98841
98925
|
{
|
|
@@ -98871,7 +98955,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98871
98955
|
else if (beforeOpenData.Ver==2.0)
|
|
98872
98956
|
{
|
|
98873
98957
|
var max=0;
|
|
98874
|
-
for(var i
|
|
98958
|
+
for(var i=0;i<stockData.before.length;++i)
|
|
98875
98959
|
{
|
|
98876
98960
|
var item=new BeforeOpenData();
|
|
98877
98961
|
var jsData=stockData.before[i];
|
|
@@ -98883,7 +98967,6 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98883
98967
|
item.Vol[1]=jsData[3]; //未匹配量
|
|
98884
98968
|
item.ColorID=jsData[4]; //柱子颜色ID
|
|
98885
98969
|
if (IFrameSplitOperator.IsNumber(jsData[6])) item.Date=jsData[6] //日期
|
|
98886
|
-
item.DateTime=`${item.Date} ${item.Time})`;
|
|
98887
98970
|
|
|
98888
98971
|
var totalVol=item.Vol[0]+item.Vol[1];
|
|
98889
98972
|
if (IFrameSplitOperator.IsNumber(jsData[5])) totalVol=jsData[5];
|
|
@@ -98895,12 +98978,14 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98895
98978
|
|
|
98896
98979
|
beforeOpenData.VolMax=max/unit;
|
|
98897
98980
|
beforeOpenData.VolMin=0;
|
|
98981
|
+
|
|
98982
|
+
if (stockData.beforeinfo && stockData.beforeinfo.TimeConfig) //固定时间
|
|
98983
|
+
MinuteChartContainer.CompleteCallAuctionData(stockData.beforeinfo.TimeConfig, beforeOpenData);
|
|
98898
98984
|
}
|
|
98899
98985
|
else if (beforeOpenData.Ver==3.0)
|
|
98900
98986
|
{
|
|
98901
98987
|
var max=0;
|
|
98902
|
-
|
|
98903
|
-
for(var i in stockData.before)
|
|
98988
|
+
for(var i=0; i<stockData.before.length; ++i)
|
|
98904
98989
|
{
|
|
98905
98990
|
var item=new BeforeOpenData();
|
|
98906
98991
|
var jsData=stockData.before[i];
|
|
@@ -98911,7 +98996,6 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98911
98996
|
item.AvPrice=jsData[2]; //均价
|
|
98912
98997
|
item.Vol[0]=jsData[3]; //匹配量
|
|
98913
98998
|
item.ColorID=jsData[4]; //柱子颜色ID
|
|
98914
|
-
item.DateTime=date.toString()+" "+item.Time.toString();
|
|
98915
98999
|
|
|
98916
99000
|
var totalVol=item.Vol[0];
|
|
98917
99001
|
if (IFrameSplitOperator.IsNumber(jsData[5])) totalVol=jsData[5];
|
|
@@ -98923,11 +99007,72 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
|
|
|
98923
99007
|
|
|
98924
99008
|
beforeOpenData.VolMax=max/unit;
|
|
98925
99009
|
beforeOpenData.VolMin=0;
|
|
99010
|
+
|
|
99011
|
+
if (stockData.beforeinfo && stockData.beforeinfo.TimeConfig) //固定时间
|
|
99012
|
+
MinuteChartContainer.CompleteCallAuctionData(stockData.beforeinfo.TimeConfig, beforeOpenData);
|
|
98926
99013
|
}
|
|
98927
99014
|
|
|
98928
99015
|
return beforeOpenData;
|
|
98929
99016
|
}
|
|
98930
99017
|
|
|
99018
|
+
|
|
99019
|
+
MinuteChartContainer.CompleteCallAuctionData=function(timeConfig, callAuctionData)
|
|
99020
|
+
{
|
|
99021
|
+
var aryData=MinuteChartContainer.CreateCallAuctionTimeData(timeConfig);
|
|
99022
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(aryData)) return false;
|
|
99023
|
+
|
|
99024
|
+
var mapData=new Map(callAuctionData.Data.map((obj) => [obj.Time, obj]));
|
|
99025
|
+
for(var i=0;i<aryData.length;++i)
|
|
99026
|
+
{
|
|
99027
|
+
var time=aryData[i].Time;
|
|
99028
|
+
if (!mapData.has(time)) continue;
|
|
99029
|
+
|
|
99030
|
+
var item=mapData.get(time);
|
|
99031
|
+
aryData[i]=item;
|
|
99032
|
+
}
|
|
99033
|
+
|
|
99034
|
+
callAuctionData.Data=aryData;
|
|
99035
|
+
callAuctionData.TotalCount=aryData.length;
|
|
99036
|
+
|
|
99037
|
+
return true;
|
|
99038
|
+
}
|
|
99039
|
+
|
|
99040
|
+
//创建集合竞价秒级时间 { AryTime:[ { Start:92500, End:92459, Date:20250101 } ] } hhmmss
|
|
99041
|
+
MinuteChartContainer.CreateCallAuctionTimeData=function(config)
|
|
99042
|
+
{
|
|
99043
|
+
if (!config || !IFrameSplitOperator.IsNonEmptyArray(config.AryTime)) return null;
|
|
99044
|
+
|
|
99045
|
+
var step=1; //1s
|
|
99046
|
+
if (IFrameSplitOperator.IsPlusNumber(config.Step)) step=config.Step;
|
|
99047
|
+
var aryData=[];
|
|
99048
|
+
for(var i=0;i<config.AryTime.length;++i)
|
|
99049
|
+
{
|
|
99050
|
+
var item=config.AryTime[i];
|
|
99051
|
+
|
|
99052
|
+
var value=item.Start;
|
|
99053
|
+
var hour=parseInt(value/10000);
|
|
99054
|
+
var minute=parseInt((value%10000)/100);
|
|
99055
|
+
var second=value%100;
|
|
99056
|
+
var startTime=new Date(2021,5,2, hour,minute, second);
|
|
99057
|
+
|
|
99058
|
+
value=item.End;
|
|
99059
|
+
var hour=parseInt(value/10000);
|
|
99060
|
+
var minute=parseInt((value%10000)/100);
|
|
99061
|
+
var second=value%100;
|
|
99062
|
+
var endTime=new Date(2021,5,2, hour,minute, second);
|
|
99063
|
+
|
|
99064
|
+
for(var j=0; j<5000 && startTime<=endTime; ++j)
|
|
99065
|
+
{
|
|
99066
|
+
var time=startTime.getHours()*10000+startTime.getMinutes()*100+startTime.getSeconds();
|
|
99067
|
+
var secItem={ Time:time, Date:item.Date };
|
|
99068
|
+
aryData.push(secItem);
|
|
99069
|
+
startTime.setSeconds(startTime.getSeconds()+step);
|
|
99070
|
+
}
|
|
99071
|
+
}
|
|
99072
|
+
|
|
99073
|
+
return aryData;
|
|
99074
|
+
}
|
|
99075
|
+
|
|
98931
99076
|
//收盘集合竞价
|
|
98932
99077
|
MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
98933
99078
|
{
|
|
@@ -98938,7 +99083,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
|
98938
99083
|
if (!stockData.afterinfo) return null;
|
|
98939
99084
|
var symbol=data.stock[0].symbol;
|
|
98940
99085
|
var upperSymbol=symbol.toUpperCase();
|
|
98941
|
-
var afterCloseData={ Data:[], TotalCount:3*60, Ver:2.0, Date:date };
|
|
99086
|
+
var afterCloseData={ Data:[], TotalCount:3*60, Ver:2.0, Date:date, YClose:stockData.yclose, YClearing:stockData.yclearing };
|
|
98942
99087
|
var item=stockData.afterinfo;
|
|
98943
99088
|
if (IFrameSplitOperator.IsNumber(item.totalcount)) afterCloseData.TotalCount=item.totalcount;
|
|
98944
99089
|
if (IFrameSplitOperator.IsNumber(item.ver)) afterCloseData.Ver=item.ver;
|
|
@@ -98968,7 +99113,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
|
98968
99113
|
else if (afterCloseData.Ver==2.0)
|
|
98969
99114
|
{
|
|
98970
99115
|
var max=0;
|
|
98971
|
-
for(var i
|
|
99116
|
+
for(var i=0; i<stockData.after.length; ++i)
|
|
98972
99117
|
{
|
|
98973
99118
|
var item=new AfterCloseData();
|
|
98974
99119
|
var jsData=stockData.after[i];
|
|
@@ -98991,6 +99136,9 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
|
98991
99136
|
|
|
98992
99137
|
afterCloseData.VolMax=max/unit;
|
|
98993
99138
|
afterCloseData.VolMin=0;
|
|
99139
|
+
|
|
99140
|
+
if (stockData.afterinfo && stockData.afterinfo.TimeConfig) //固定时间
|
|
99141
|
+
MinuteChartContainer.CompleteCallAuctionData(stockData.afterinfo.TimeConfig, afterCloseData);
|
|
98994
99142
|
}
|
|
98995
99143
|
else if (afterCloseData.Ver==3.0)
|
|
98996
99144
|
{
|
|
@@ -99018,6 +99166,9 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
|
|
|
99018
99166
|
|
|
99019
99167
|
afterCloseData.VolMax=max/unit;
|
|
99020
99168
|
afterCloseData.VolMin=0;
|
|
99169
|
+
|
|
99170
|
+
if (stockData.afterinfo && stockData.afterinfo.TimeConfig) //固定时间
|
|
99171
|
+
MinuteChartContainer.CompleteCallAuctionData(stockData.afterinfo.TimeConfig, afterCloseData);
|
|
99021
99172
|
}
|
|
99022
99173
|
|
|
99023
99174
|
return afterCloseData;
|
|
@@ -99139,12 +99290,13 @@ MinuteChartContainer.JsonDataToUpdateMinuteData=function(data)
|
|
|
99139
99290
|
|
|
99140
99291
|
item.DateTime=`${item.Date} ${item.Time}`;
|
|
99141
99292
|
|
|
99142
|
-
if (IFrameSplitOperator.IsNumber(minuteData.YClose) && item.Close)
|
|
99143
|
-
|
|
99144
|
-
|
|
99145
|
-
|
|
99146
|
-
|
|
99147
|
-
|
|
99293
|
+
if (!IFrameSplitOperator.IsNumber(item.Increase) && IFrameSplitOperator.IsNumber(minuteData.YClose) && item.Close)
|
|
99294
|
+
{
|
|
99295
|
+
if (isFutures && minuteData.YClearing && item.Close)
|
|
99296
|
+
item.Increase=(item.Close-minuteData.YClearing)/minuteData.YClearing*100; //涨幅 (最新价格-昨结算价)/昨结算价*100;
|
|
99297
|
+
else
|
|
99298
|
+
item.Increase=(item.Close-minuteData.YClose)/minuteData.YClose*100; //涨幅 (最新价格-昨收)/昨收*100;
|
|
99299
|
+
}
|
|
99148
99300
|
|
|
99149
99301
|
minuteData.Data.push(item);
|
|
99150
99302
|
}
|
|
@@ -99308,8 +99460,9 @@ MinuteChartContainer.JsonDataToHistoryMinuteLineColorData=function(data)
|
|
|
99308
99460
|
}
|
|
99309
99461
|
|
|
99310
99462
|
|
|
99311
|
-
MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, isBeforeOpen, symbol)
|
|
99463
|
+
MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, isBeforeOpen, symbol, dataInfo)
|
|
99312
99464
|
{
|
|
99465
|
+
if (!IFrameSplitOperator.IsNonEmptyArray(data)) return;
|
|
99313
99466
|
var upperSymbol=symbol?symbol.toUpperCase():null;
|
|
99314
99467
|
var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);
|
|
99315
99468
|
|
|
@@ -99320,7 +99473,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99320
99473
|
if (callAuctionData.Ver==1.0)
|
|
99321
99474
|
{
|
|
99322
99475
|
var preClose=null;
|
|
99323
|
-
for(var i
|
|
99476
|
+
for(var i=0; i<data.length; ++i)
|
|
99324
99477
|
{
|
|
99325
99478
|
var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
|
|
99326
99479
|
var jsData=data[i];
|
|
@@ -99344,7 +99497,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99344
99497
|
else if (callAuctionData.Ver==2.0)
|
|
99345
99498
|
{
|
|
99346
99499
|
var max=0;
|
|
99347
|
-
for(var i
|
|
99500
|
+
for(var i=0; i<data.length; ++i)
|
|
99348
99501
|
{
|
|
99349
99502
|
var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
|
|
99350
99503
|
var jsData=data[i];
|
|
@@ -99356,7 +99509,6 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99356
99509
|
item.Vol[0]=jsData[2]; //匹配量
|
|
99357
99510
|
item.Vol[1]=jsData[3]; //未匹配量
|
|
99358
99511
|
item.ColorID=jsData[4]; //柱子颜色ID
|
|
99359
|
-
item.DateTime=date.toString()+" "+item.Time.toString();
|
|
99360
99512
|
|
|
99361
99513
|
var totalVol=item.Vol[0]+item.Vol[1];
|
|
99362
99514
|
if (IFrameSplitOperator.IsNumber(jsData[5])) totalVol=jsData[5];
|
|
@@ -99368,6 +99520,9 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99368
99520
|
|
|
99369
99521
|
callAuctionData.VolMax=max/unit;
|
|
99370
99522
|
callAuctionData.VolMin=0;
|
|
99523
|
+
|
|
99524
|
+
if (dataInfo && dataInfo.TimeConfig) //固定时间
|
|
99525
|
+
MinuteChartContainer.CompleteCallAuctionData(dataInfo.TimeConfig, callAuctionData);
|
|
99371
99526
|
}
|
|
99372
99527
|
else if (beforeOpenData.Ver==3.0)
|
|
99373
99528
|
{
|
|
@@ -99384,7 +99539,6 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99384
99539
|
item.AvPrice=jsData[2]; //均价
|
|
99385
99540
|
item.Vol[0]=jsData[3]; //匹配量
|
|
99386
99541
|
item.ColorID=jsData[4]; //柱子颜色ID
|
|
99387
|
-
item.DateTime=date.toString()+" "+item.Time.toString();
|
|
99388
99542
|
|
|
99389
99543
|
var totalVol=item.Vol[0];
|
|
99390
99544
|
if (IFrameSplitOperator.IsNumber(jsData[5])) totalVol=jsData[5];
|
|
@@ -99396,6 +99550,9 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
|
|
|
99396
99550
|
|
|
99397
99551
|
callAuctionData.VolMax=max/unit;
|
|
99398
99552
|
callAuctionData.VolMin=0;
|
|
99553
|
+
|
|
99554
|
+
if (dataInfo && dataInfo.TimeConfig) //固定时间
|
|
99555
|
+
MinuteChartContainer.CompleteCallAuctionData(dataInfo.TimeConfig, callAuctionData);
|
|
99399
99556
|
}
|
|
99400
99557
|
}
|
|
99401
99558
|
|
|
@@ -99404,7 +99561,7 @@ MinuteChartContainer.JosnDataToBeforeOpenDataArray=function(data)
|
|
|
99404
99561
|
if (!data || !data.data) return null;
|
|
99405
99562
|
|
|
99406
99563
|
var aryDay=[];
|
|
99407
|
-
for(var i
|
|
99564
|
+
for(var i=0; i<data.data.length; ++i)
|
|
99408
99565
|
{
|
|
99409
99566
|
var dayItem=data.data[i];
|
|
99410
99567
|
var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose, YClearing:dayItem.YClearing };
|
|
@@ -99414,7 +99571,7 @@ MinuteChartContainer.JosnDataToBeforeOpenDataArray=function(data)
|
|
|
99414
99571
|
if (IFrameSplitOperator.IsNumber(dayItem.beforeinfo.ver)) beforeOpenData.Ver=dayItem.beforeinfo.ver;
|
|
99415
99572
|
}
|
|
99416
99573
|
|
|
99417
|
-
MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.before, beforeOpenData, true, data.symbol);
|
|
99574
|
+
MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.before, beforeOpenData, true, data.symbol, dayItem.beforeinfo);
|
|
99418
99575
|
|
|
99419
99576
|
aryDay.push(beforeOpenData);
|
|
99420
99577
|
}
|
|
@@ -99429,7 +99586,7 @@ MinuteChartContainer.JosnDataToAfterCloseDataArray=function(data)
|
|
|
99429
99586
|
if (!data || !data.data) return null;
|
|
99430
99587
|
|
|
99431
99588
|
var aryDay=[];
|
|
99432
|
-
for(var i
|
|
99589
|
+
for(var i=0; i<data.data.length; ++i)
|
|
99433
99590
|
{
|
|
99434
99591
|
var dayItem=data.data[i];
|
|
99435
99592
|
var afterCloseData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose, YClearing:dayItem.YClearing };
|
|
@@ -99440,7 +99597,7 @@ MinuteChartContainer.JosnDataToAfterCloseDataArray=function(data)
|
|
|
99440
99597
|
if (IFrameSplitOperator.IsNumber(dayItem.afterinfo.ver)) afterCloseData.Ver=dayItem.afterinfo.ver;
|
|
99441
99598
|
}
|
|
99442
99599
|
|
|
99443
|
-
MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.after, afterCloseData, false, data.symbol);
|
|
99600
|
+
MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.after, afterCloseData, false, data.symbol, dayItem.afterinfo);
|
|
99444
99601
|
|
|
99445
99602
|
aryDay.push(afterCloseData);
|
|
99446
99603
|
}
|
|
@@ -162614,7 +162771,7 @@ function HQChartScriptWorker()
|
|
|
162614
162771
|
|
|
162615
162772
|
|
|
162616
162773
|
|
|
162617
|
-
var HQCHART_VERSION="1.1.
|
|
162774
|
+
var HQCHART_VERSION="1.1.14952";
|
|
162618
162775
|
|
|
162619
162776
|
function PrintHQChartVersion()
|
|
162620
162777
|
{
|