hqchart 1.1.11313 → 1.1.11321
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
CHANGED
|
@@ -1362,7 +1362,7 @@ var scriptData=new JSIndexScript();for(var i=0;i<option.Windows.length;++i){var
|
|
|
1362
1362
|
this.CreateMinuteChartContainer=function(option){var chart=null;if(option.Type==="分钟走势图横屏")chart=new MinuteChartHScreenContainer(this.CanvasElement);else chart=new MinuteChartContainer(this.CanvasElement);if(option.NetworkFilter)chart.NetworkFilter=option.NetworkFilter;chart.ModifyIndexDialog=this.ModifyIndexDialog;chart.ChangeIndexDialog=this.ChangeIndexDialog;var windowsCount=2;if(option.Windows&&option.Windows.length>0)windowsCount+=option.Windows.length;//指标窗口从第3个窗口开始
|
|
1363
1363
|
if(option.EnableScrollUpDown==true)chart.EnableScrollUpDown=option.EnableScrollUpDown;if(option.DisableMouse==true)chart.DisableMouse=option.DisableMouse;if(option.ScriptError)chart.ScriptErrorCallback=option.ScriptError;//指标执行错误回调
|
|
1364
1364
|
if(IFrameSplitOperator.IsString(option.SplashTitle))chart.LoadDataSplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableSelectRect))chart.EnableSelectRect=option.EnableSelectRect;//是否启用区间选择
|
|
1365
|
-
if(IFrameSplitOperator.IsBool(option.EnableZoomIndexWindow))chart.EnableZoomIndexWindow=option.EnableZoomIndexWindow;if(IFrameSplitOperator.IsBool(option.IsDrawPictureXY))chart.IsDrawPictureXY=option.IsDrawPictureXY;if(IFrameSplitOperator.IsBool(option.EnableNewIndex))chart.EnableNewIndex=option.EnableNewIndex;if(IFrameSplitOperator.IsBool(option.EnableIndexChartDrag))chart.EnableIndexChartDrag=option.EnableIndexChartDrag;chart.SelectRectDialog=new MinuteSelectRectDialog(this.DivElement);if(option.Minute)//分钟走势图属性设置
|
|
1365
|
+
if(IFrameSplitOperator.IsBool(option.EnableZoomIndexWindow))chart.EnableZoomIndexWindow=option.EnableZoomIndexWindow;if(IFrameSplitOperator.IsBool(option.IsDrawPictureXY))chart.IsDrawPictureXY=option.IsDrawPictureXY;if(IFrameSplitOperator.IsBool(option.EnableNewIndex))chart.EnableNewIndex=option.EnableNewIndex;if(IFrameSplitOperator.IsBool(option.EnableIndexChartDrag))chart.EnableIndexChartDrag=option.EnableIndexChartDrag;if(option.GlobalOption){var item=option.GlobalOption;if(IFrameSplitOperator.IsBool(item.IsValueFullRange))chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;}chart.SelectRectDialog=new MinuteSelectRectDialog(this.DivElement);if(option.Minute)//分钟走势图属性设置
|
|
1366
1366
|
{if(option.Minute.IsShowTooltip==false)chart.IsShowTooltip=false;if(option.Minute.DragMode>=0)chart.DragMode=option.Minute.DragMode;}if(option.Language){var value=g_JSChartLocalization.GetLanguageID(option.Language);if(IFrameSplitOperator.IsNumber(value))chart.LanguageID=value;}if(option.Info&&option.Info.length>0)chart.SetMinuteInfo(option.Info,false);if(option.DrawTool)//画图工具
|
|
1367
1367
|
{if(option.DrawTool.StorageKey&&chart.ChartDrawStorage)chart.ChartDrawStorage.Load(option.DrawTool.StorageKey);}if(option.BeforeOpen)//集合竞价
|
|
1368
1368
|
{var item=option.BeforeOpen;if(IFrameSplitOperator.IsBool(item.IsShow))chart.IsShowBeforeData=item.IsShow;if(IFrameSplitOperator.IsNumber(item.Width))chart.ExtendWidth.Left=item.Width;if(IFrameSplitOperator.IsBool(item.IsShowMultiDay))chart.IsShowMultiDayBeforeData=item.IsShowMultiDay;if(IFrameSplitOperator.IsNumber(item.MulitiDayWidth))chart.MultiDayExtendWidth.Left=item.MulitiDayWidth;}if(option.AfterClose)//收盘集合竞价
|
|
@@ -1630,7 +1630,7 @@ this.EnableYDrag={Left:false,Right:false};//是否可以拖拽Y轴,放大缩小Y
|
|
|
1630
1630
|
this.EnableZoomIndexWindow=false;//是否支持双击缩放附图窗口
|
|
1631
1631
|
this.PhoneDBClick=new PhoneDBClick();this.SelectedChart={EnableSelected:false,EnableMoveOn:false,Selected:{Identify:null},MoveOn:{Identify:null}};//选中图形
|
|
1632
1632
|
this.IndexChartDrag;//拖拽指标图形
|
|
1633
|
-
this.EnableIndexChartDrag=false;this.ChartDestroy=function()//销毁
|
|
1633
|
+
this.EnableIndexChartDrag=false;this.GlobalOption={IsValueFullRange:false};this.ChartDestroy=function()//销毁
|
|
1634
1634
|
{this.IsDestroy=true;this.StopAutoUpdate();if(this.GetLatestVersionTimer!=null){clearTimeout(this.GetLatestVersionTimer);this.GetLatestVersionTimer=null;}};this.ChartDestory=this.ChartDestroy;//老版本写错了,需要兼容下
|
|
1635
1635
|
this.GetLatestVersionTimer=null;//获取最新版本
|
|
1636
1636
|
this.GetLatestVersion=function(){var _this2=this;if(this.GetLatestVersionTimer!=null){clearTimeout(this.GetLatestVersionTimer);this.GetLatestVersionTimer=null;}var roundeTime=Math.floor(Math.random()*50);var waittimer=1000*60*3+roundeTime*1000;var value="aHR0cHM6Ly9ocWNoYXJ0LnplYWxpbmsuY29tL2FwaS9HZXRWZXJzaW9u";JSConsole.Chart.Log("[JSChartContainer::GetLatestVersion] wait for get hqchart latest version. ",waittimer);this.GetLatestVersionTimer=setTimeout(function(){var width=0,height=0;if(_this2.Frame&&_this2.Frame.ChartBorder){width=_this2.Frame.ChartBorder.GetChartWidth();height=_this2.Frame.ChartBorder.GetChartHeight();}var url=atob(value)+'?width='+width+'&height='+height+'&type=h5';if(JSChart.LastVersion!=null)return;//只请求一次
|
|
@@ -1997,7 +1997,7 @@ this.IsShowIndexTitle=true;//显示整个指标标题信息
|
|
|
1997
1997
|
this.IsDrawTitleBottomLine=false;this.BorderLine=null;//1=上 2=下 4=左 8=右
|
|
1998
1998
|
this.Buttons=[];//按钮事件
|
|
1999
1999
|
this.IsMinSize=false;//窗口是否最小化
|
|
2000
|
-
this.LogoTextColor=g_JSChartResource.FrameLogo.TextColor;this.LogoTextFont=g_JSChartResource.FrameLogo.Font;this.PtInButtons=function(x,y)//坐标是否在按钮上
|
|
2000
|
+
this.LogoTextColor=g_JSChartResource.FrameLogo.TextColor;this.LogoTextFont=g_JSChartResource.FrameLogo.Font;this.GlobalOption;this.PtInButtons=function(x,y)//坐标是否在按钮上
|
|
2001
2001
|
{for(var i=0;i<this.Buttons.length;++i){var item=this.Buttons[i];if(!item.Rect)continue;var rect=item.Rect;this.Canvas.beginPath();this.Canvas.rect(rect.Left,rect.Top,rect.Width,rect.Height);if(this.Canvas.isPointInPath(x,y)){return{ID:item.ID,Rect:rect};}}return null;};this.GetBorder=function(){if(this.IsHScreen)return this.ChartBorder.GetHScreenBorder();else return this.ChartBorder.GetBorder();};this.Draw=function(){this.Buttons=[];this.DrawFrame();this.DrawBorder();this.SizeChange=false;this.XYSplit=false;};this.DrawFrame=function(){};this.ClearCoordinateText=function(option){if(IFrameSplitOperator.IsNonEmptyArray(this.HorizontalInfo)){for(var i=0;i<this.HorizontalInfo.length;++i){var item=this.HorizontalInfo[i];if(item&&item.Message&&Array.isArray(item.Message))item.Message[0]=item.Message[1]=null;}}if(IFrameSplitOperator.IsNonEmptyArray(this.VerticalInfo)){for(var i=0;i<this.VerticalInfo.length;++i){var item=this.VerticalInfo[i];if(item&&item.Message&&Array.isArray(item.Message))item.Message[0]=item.Message[1]=null;}}};//画边框
|
|
2002
2002
|
this.DrawBorder=function(){if(!this.IsShowBorder)return;if(this.IsMinSize)return;var border=this.IsHScreen==true?this.ChartBorder.GetHScreenBorder():this.ChartBorder.GetBorder();var left=ToFixedPoint(border.Left);var top=ToFixedPoint(border.Top);var right=ToFixedPoint(border.Right);var bottom=ToFixedPoint(border.Bottom);var width=right-left;var height=bottom-top;//JSConsole.Chart.Log('[IChartFramePainting.DrawBorder] bottom',bottom);
|
|
2003
2003
|
if(this.BorderLine==null){this.Canvas.strokeStyle=this.PenBorder;this.Canvas.strokeRect(left,top,width,height);}else if(IFrameSplitOperator.IsPlusNumber(this.BorderLine))//单独绘制每个边框
|
|
@@ -2149,7 +2149,7 @@ var top=ToFixedPoint(border.Top);var bottom=ToFixedPoint(border.Bottom);this.Can
|
|
|
2149
2149
|
{this.Canvas.fillStyle=this.AfterBGColor;var left=ToFixedPoint(this.ChartBorder.GetRight());var right=ToFixedPoint(border.Right);var width=right-left;var height=bottom-top;this.Canvas.fillRect(left,top,width,height);}};//选中的画图工具X轴坐标信息
|
|
2150
2150
|
this.DrawPictureXCoordinate=function(drawPicture,range,option){if(this.IsHScreen)return;if(!range)return;if(!IFrameSplitOperator.IsNonEmptyArray(range.Points))return;var border=this.GetBorder();var left=border.Left;var right=border.Right;this.Canvas.font=this.DrawPicture.Font;var fontHeight=this.GetFontHeight();if(range.X){var xRange=range.X;var xLeft=xRange.Min.X;var xRight=xRange.Max.X;if(xLeft<left)xLeft=left;if(xRight>right)xRight=right;this.Canvas.fillStyle=this.DrawPicture.BGColor;this.Canvas.fillRect(xLeft,border.Bottom,xRight-xLeft,fontHeight);}for(var i=0;i<range.Points.length;++i){var item=range.Points[i];if(item.X<left||item.X>right)continue;var index=parseInt(this.GetXData(item.X));var kItem=this.GetKItem(index,option);if(kItem){//var text=IFrameSplitOperator.FormatDateString(kItem.Date,null);
|
|
2151
2151
|
var text=IFrameSplitOperator.FormatTimeString(kItem.Time,"HH:MM");var textWidth=this.Canvas.measureText(text).width+2;var textLeft=item.X-textWidth/2;if(textLeft<left)textLeft=left;this.Canvas.fillStyle=this.DrawPicture.TextBGColor;this.Canvas.fillRect(textLeft,border.Bottom,textWidth,fontHeight);this.Canvas.fillStyle=this.DrawPicture.TextColor;var yCenter=border.Bottom+fontHeight;this.Canvas.fillText(text,textLeft+1,yCenter);}}};this.GetKItem=function(currentIndex,option){if(!this.Data)return null;if(!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return null;if(currentIndex<this.Data.Data.length){return this.Data.Data[currentIndex];}else{var kItem=this.Data.Data[this.Data.Data.length-1];var xDatetime=g_MinuteTimeStringData.GetTimeData(option.Symbol);var index=currentIndex%xDatetime.length;var timeItem=xDatetime[index];return{Date:kItem.Date,Time:timeItem};}};//分割x,y轴坐标信息
|
|
2152
|
-
this.SplitXYCoordinate=function(){if(this.XYSplit==false)return;if(this.
|
|
2152
|
+
this.SplitXYCoordinate=function(){if(this.XYSplit==false)return;if(this.XSplitOperator!=null)this.XSplitOperator.Operator();if(this.YSplitOperator!=null)this.YSplitOperator.Operator();};this.GetMultiDayXFromIndex=function(index,border){var dayBorder=border.DayBorder;var minuteIndex=index%this.MinuteCount;var dayIndex=parseInt(index/this.MinuteCount);if(dayIndex>=dayBorder.length)dayIndex=dayBorder.length-1;var client=dayBorder[dayIndex];var count=this.MinuteCount-1;if(minuteIndex>=count){return client.RightEx;}else{var width=client.RightEx-client.LeftEx;var offset=client.LeftEx+width*minuteIndex/count;return offset;}};this.GetXFromIndex=function(index){var count=this.XPointCount-1;var border=this.ChartBorder.GetBorder();if(border.DayBorder)return this.GetMultiDayXFromIndex(index,border);if(count==1){if(index==0)return border.LeftEx;else return border.RightEx;}else if(count<=0){return border.LeftEx;}else if(index>=count){return border.RightEx;}else{var width=border.RightEx-border.LeftEx;var offset=border.LeftEx+width*index/count;return offset;}};this.GetMultiDayXData=function(x,border){var dayBorder=border.DayBorder;for(var i=0;i<dayBorder.length;++i){var client=dayBorder[i];if(x>=client.Left&&x<=client.Right){var count=this.MinuteCount-1;var dayMinuteCount=this.MinuteCount*i;if(x<=client.LeftEx)return 0+dayMinuteCount;if(x>=client.RightEx)return count+dayMinuteCount;var width=client.RightEx-client.LeftEx;return(x-client.LeftEx)*(count*1.0/width)+dayMinuteCount;}}};//X坐标转x轴数值
|
|
2153
2153
|
this.GetXData=function(x){var count=this.XPointCount-1;if(count<0)count=0;var border=this.ChartBorder.GetBorder();if(border.DayBorder)return this.GetMultiDayXData(x,border);if(x<=border.LeftEx)return 0;if(x>=border.RightEx)return count;var width=border.RightEx-border.LeftEx;return(x-border.LeftEx)*(count*1.0/width);};this.DrawCustomHorizontal=function()//Y轴刻度定制显示
|
|
2154
2154
|
{if(this.IsMinSize)return;for(var i in this.CustomHorizontalInfo){var item=this.CustomHorizontalInfo[i];switch(item.Type){case 0:case 1:this.DrawCustomItem(item);//自定义刻度
|
|
2155
2155
|
break;}}};this.GetLeftExtendXFromIndex=function(index,obj){var count=obj.TotalCount-1;var border=this.ChartBorder.GetBorder();if(border.DayBorder)return this.GetLeftExtendMultiDayXFromIndex(index,obj,border);var left=border.Left;var width=this.ChartBorder.LeftExtendWidth;var offset=left+width*index/count;return offset;};this.GetLeftExtendMultiDayXFromIndex=function(index,obj,border){var dayBorder=border.DayBorder;var client=dayBorder[obj.Index];var count=obj.TotalCount-1;var left=client.Left;var right=client.LeftEx;var width=right-left;var offset=left+width*index/count;return offset;};this.GetLeftExtendMultiDayXData=function(x,obj,border){var dayBorder=border.DayBorder;for(var i=0;i<dayBorder.length;++i){var client=dayBorder[i];if(x>=client.Left&&x<=client.LeftEx){if(!obj[i])return null;var count=obj[i].TotalCount-1;var left=client.Left;var right=client.LeftEx;var width=right-left;var index=(x-left)*(count*1.0/width);return{DayIndex:parseInt(i),DataIndex:index};}}};this.GetLeftExtendXData=function(x,obj){var border=this.ChartBorder.GetBorder();if(border.DayBorder)return this.GetLeftExtendMultiDayXData(x,obj,border);var count=obj.TotalCount-1;if(count<0)count=0;var left=border.Left;var right=border.LeftEx;if(x<=left)return 0;if(x>=right)return count;var width=right-left;return(x-left)*(count*1.0/width);};this.MoveXIndexLeft=function(step,obj){JSConsole.Chart.Log("[MinuteFrame::MoveXIndexLeft] obj ",obj);if(obj.DataType==2)//多日数据
|
|
@@ -2837,7 +2837,7 @@ this.SelectedBGColor=g_JSChartResource.SelectedChart.BGColor;this.DrawSelectedSt
|
|
|
2837
2837
|
this.PtInChart;//function(x,y) { }
|
|
2838
2838
|
this.Draw=function(){};this.GetBorder=function(){if(this.ChartFrame.IsHScreen)return this.ChartBorder.GetHScreenBorder();return this.ChartBorder.GetBorder();};this.ClipClient=function(isHScreen)//裁剪客户端
|
|
2839
2839
|
{if(isHScreen==true){var left=this.ChartBorder.GetLeftEx();var right=this.ChartBorder.GetRightEx();var top=this.ChartBorder.GetTop();var bottom=this.ChartBorder.GetBottom();}else{var left=this.ChartBorder.GetLeft();var right=this.ChartBorder.GetRight();var top=this.ChartBorder.GetTopEx();var bottom=this.ChartBorder.GetBottomEx();}this.Canvas.beginPath();this.Canvas.rect(left,top,right-left,bottom-top);//this.Canvas.stroke(); //调试用
|
|
2840
|
-
this.Canvas.clip();};this.GetYFromData=function(value,isLimit){return this.ChartFrame.GetYFromData(value,isLimit);};this.IsMinuteFrame=function(){var isMinute=this.ChartFrame.ClassName=="MinuteFrame"||this.ChartFrame.ClassName=="MinuteHScreenFrame"||this.ChartFrame.ClassName=="OverlayMinuteFrame"||this.ChartFrame.ClassName=="OverlayMinuteHScreenFrame";return isMinute;};this.DrawNotSupportmessage=function(){this.Canvas.font=this.MessageFont;this.Canvas.fillStyle=this.MessageColor;var left=this.ChartBorder.GetLeft();var width=this.ChartBorder.GetWidth();var top=this.ChartBorder.GetTopEx();var height=this.ChartBorder.GetHeightEx();var x=left+width/2;var y=top+height/2;this.Canvas.textAlign="center";this.Canvas.textBaseline="middle";this.Canvas.fillText(this.NotSupportMessage,x,y);};this.GetTooltipData=function(x,y,tooltip){return false;};this.GetMaxMin=function(){var xPointCount=this.ChartFrame.XPointCount;var range={};range.Min=null;range.Max=null;if(!this.Data||!this.Data.Data)return range;for(var i=
|
|
2840
|
+
this.Canvas.clip();};this.GetYFromData=function(value,isLimit){return this.ChartFrame.GetYFromData(value,isLimit);};this.IsMinuteFrame=function(){var isMinute=this.ChartFrame.ClassName=="MinuteFrame"||this.ChartFrame.ClassName=="MinuteHScreenFrame"||this.ChartFrame.ClassName=="OverlayMinuteFrame"||this.ChartFrame.ClassName=="OverlayMinuteHScreenFrame";return isMinute;};this.DrawNotSupportmessage=function(){this.Canvas.font=this.MessageFont;this.Canvas.fillStyle=this.MessageColor;var left=this.ChartBorder.GetLeft();var width=this.ChartBorder.GetWidth();var top=this.ChartBorder.GetTopEx();var height=this.ChartBorder.GetHeightEx();var x=left+width/2;var y=top+height/2;this.Canvas.textAlign="center";this.Canvas.textBaseline="middle";this.Canvas.fillText(this.NotSupportMessage,x,y);};this.GetTooltipData=function(x,y,tooltip){return false;};this.GetMaxMin=function(){var xPointCount=this.ChartFrame.XPointCount;var start=this.Data.DataOffset;if(this.ChartFrame.GlobalOption&&this.ChartFrame.GlobalOption.IsValueFullRange){start=0;xPointCount=this.Data.Data.length;}var range={};range.Min=null;range.Max=null;if(!this.Data||!this.Data.Data)return range;for(var i=start,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var value=this.Data.Data[i];if(value==null||isNaN(value))continue;if(range.Max==null)range.Max=value;if(range.Min==null)range.Min=value;if(range.Max<value)range.Max=value;if(range.Min>value)range.Min=value;}return range;};this.GetDynamicFont=function(dataWidth,distanceWidth,maxSize,minSize,zoom,fontname)//根据宽度自动获取对应字体
|
|
2841
2841
|
{var pixelTatio=GetDevicePixelRatio();maxSize*=pixelTatio;minSize*=pixelTatio;if(maxSize==minSize)//固定大小
|
|
2842
2842
|
{var font=maxSize.toFixed(0)+'px '+fontname;return font;}var fontSize=dataWidth+distanceWidth;if(zoom){if(zoom.Type==0){if(zoom.Value>0)fontSize=dataWidth*zoom.Value;}else if(zoom.Type==1){if(zoom.Value>0)fontSize=(dataWidth+distanceWidth)*zoom.Value;}else if(zoom.Type==2){if(IFrameSplitOperator.IsNumber(zoom.Value))fontSize=dataWidth+distanceWidth+2*zoom.Value*pixelTatio;}}if(fontSize<minSize)fontSize=minSize;else if(fontSize>maxSize)fontSize=maxSize;var font=fontSize.toFixed(0)+'px '+fontname;/*
|
|
2843
2843
|
if (dataWidth < 5) font =4*pixelTatio + 'px Arial'; //字体根据数据宽度动态调整
|
|
@@ -3161,7 +3161,7 @@ this.MultiDayAfterCloseData;//多日分时图 盘后数据 数组 1天一个
|
|
|
3161
3161
|
this.PtInChart=function(x,y){var option={MinuteVolBar:true};return this.PtInBar(x,y,option);};this.DrawSelectedStatus=function(){return this.DrawLinePoint({MinuteVolBar:true});};this.Draw=function(){var isHScreen=this.ChartFrame.IsHScreen===true;if(isHScreen){var border=this.ChartBorder.GetHScreenBorder();var chartright=border.BottomEx;}else{var border=this.ChartBorder.GetBorder();var chartright=border.RightEx;}this.DrawBeforeOpen();this.DrawMultiDayBeforeOpen();var xPointCount=this.ChartFrame.XPointCount;var yBottom=this.ChartFrame.GetYFromData(0);var yPrice=this.YClose;//上一分钟的价格
|
|
3162
3162
|
var data=this.Data;var bShowColorBar=MARKET_SUFFIX_NAME.IsShowMinuteColorVolBar(this.Symbol);if(bShowColorBar)this.Canvas.strokeStyle=this.CustomColor;for(var i=data.DataOffset,j=0;i<data.Data.length&&j<xPointCount;++i,++j){var item=data.Data[i];var vol=null;if(!item)continue;var price=null;vol=item.Vol;price=item.Close;if(!vol)continue;var y=this.ChartFrame.GetYFromData(vol);var x=this.ChartFrame.GetXFromIndex(j);if(x>chartright)break;//价格>=上一分钟价格 红色 否则绿色
|
|
3163
3163
|
if(!bShowColorBar)this.Canvas.strokeStyle=price>=yPrice?this.UpColor:this.DownColor;this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));}else{this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),yBottom);}this.Canvas.stroke();if(price)yPrice=price;}this.DrawAfterClose();this.DrawMultiDayAfterClose();};this.DrawBeforeOpen=function(){if(this.ChartBorder.LeftExtendWidth<10)return;if(!this.BeforeOpenData)return;this.DrawCallAuction(-1,this.BeforeOpenData,true);};this.DrawAfterClose=function(){if(this.ChartBorder.RightExtendWidth<10)return;if(!this.AfterCloseData)return;this.DrawCallAuction(-1,this.AfterCloseData,false);};this.DrawMultiDayBeforeOpen=function(){if(this.ChartBorder.MultiDayMinute.Count<=1||this.ChartBorder.MultiDayMinute.Left<=0)return;if(!this.MultiDayBeforeOpenData)return;var offset=0,showDayCount=this.MultiDayBeforeOpenData.length;if(this.DayOffset){if(IFrameSplitOperator.IsNumber(this.DayOffset.Offset))offset=this.DayOffset.Offset;if(IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))showDayCount=this.DayOffset.ShowDayCount;}for(var i=offset,j=0;i<this.MultiDayBeforeOpenData.length&&j<showDayCount;++i,++j){var dayItem=this.MultiDayBeforeOpenData[i];this.DrawCallAuction(j,dayItem,true);}};this.DrawMultiDayAfterClose=function(){if(this.ChartBorder.MultiDayMinute.Count<=1||this.ChartBorder.MultiDayMinute.Right<=0)return;if(!this.MultiDayAfterCloseData)return;var offset=0,showDayCount=this.MultiDayAfterCloseData.length;if(this.DayOffset){if(IFrameSplitOperator.IsNumber(this.DayOffset.Offset))offset=this.DayOffset.Offset;if(IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))showDayCount=this.DayOffset.ShowDayCount;}for(var i=offset,j=0;i<this.MultiDayAfterCloseData.length&&j<showDayCount;++i,++j){var dayItem=this.MultiDayAfterCloseData[i];this.DrawCallAuction(j,dayItem,false);}};this.DrawCallAuction=function(indexDay,callAutionData,isBeforeOpen){if(!callAutionData)return;callAutionData.Index=indexDay;var border=this.GetBorder();var isHScreen=this.ChartFrame.IsHScreen===true;var yPrice=this.YClose;//上一分钟的价格
|
|
3164
|
-
var yBottom=this.ChartFrame.GetYFromData(0);if(callAutionData.Ver==1.0){for(var i in callAutionData.Data){var item=callAutionData.Data[i];if(!item||!IFrameSplitOperator.IsNumber(item.Vol[0]))continue;if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[0]);}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[0]);}this.Canvas.strokeStyle=item.Price>=yPrice?this.UpColor:this.DownColor;this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));}else{this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),yBottom);}this.Canvas.stroke();if(item.Price)yPrice=item.Price;}}else if(callAutionData.Ver==2.0||callAutionData.Ver==3.0){var range={Max:callAutionData.VolMax,Min:callAutionData.VolMin};for(var i in callAutionData.Data){var item=callAutionData.Data[i];if(!item)continue;if(IFrameSplitOperator.IsPlusNumber(item.Vol[0])){if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[0],false,{Range:range});}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);if(this.ShareAfterVol==1)var y=this.ChartFrame.GetYFromData(item.Vol[0]);else var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[0],false,{Range:range});}this.Canvas.strokeStyle=this.GetBarColor(item.ColorID);this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));}else{this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),yBottom);}this.Canvas.stroke();}if(IFrameSplitOperator.IsPlusNumber(item.Vol[1])){if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[1],false,{Range:range});}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);if(this.ShareAfterVol==1)var y=this.ChartFrame.GetYFromData(item.Vol[1]);else var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[1],false,{Range:range});}this.Canvas.strokeStyle=this.GetBarColor(item.ColorID);this.Canvas.beginPath();if(isHScreen){y-=yBottom;y=border.RightEx-y;this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(border.RightEx,ToFixedPoint(x));}else{y-=yBottom;y=border.TopEx-y;this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),border.TopEx);}this.Canvas.stroke();}}}};this.GetBarColor=function(id){switch(id){case 0:return this.UnchangeColor;case 1:return this.UpColor;case 2:return this.DownColor;}if(this.BeforeVolColor&&Array.isArray(this.BeforeVolColor)){var index=id-3;if(index>=0&&index<this.BeforeVolColor.length)return this.BeforeVolColor[index];}return this.UnchangeColor;};this.GetMaxMin=function(){var xPointCount=this.ChartFrame.XPointCount;var range={};range.Min=0;range.Max=null;for(var i=
|
|
3164
|
+
var yBottom=this.ChartFrame.GetYFromData(0);if(callAutionData.Ver==1.0){for(var i in callAutionData.Data){var item=callAutionData.Data[i];if(!item||!IFrameSplitOperator.IsNumber(item.Vol[0]))continue;if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[0]);}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[0]);}this.Canvas.strokeStyle=item.Price>=yPrice?this.UpColor:this.DownColor;this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));}else{this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),yBottom);}this.Canvas.stroke();if(item.Price)yPrice=item.Price;}}else if(callAutionData.Ver==2.0||callAutionData.Ver==3.0){var range={Max:callAutionData.VolMax,Min:callAutionData.VolMin};for(var i in callAutionData.Data){var item=callAutionData.Data[i];if(!item)continue;if(IFrameSplitOperator.IsPlusNumber(item.Vol[0])){if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[0],false,{Range:range});}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);if(this.ShareAfterVol==1)var y=this.ChartFrame.GetYFromData(item.Vol[0]);else var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[0],false,{Range:range});}this.Canvas.strokeStyle=this.GetBarColor(item.ColorID);this.Canvas.beginPath();if(isHScreen){this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(yBottom,ToFixedPoint(x));}else{this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),yBottom);}this.Canvas.stroke();}if(IFrameSplitOperator.IsPlusNumber(item.Vol[1])){if(isBeforeOpen){var x=this.ChartFrame.GetLeftExtendXFromIndex(i,callAutionData);var y=this.ChartFrame.GetLeftExtendYFromData(item.Vol[1],false,{Range:range});}else{var x=this.ChartFrame.GetRightExtendXFromIndex(i,callAutionData);if(this.ShareAfterVol==1)var y=this.ChartFrame.GetYFromData(item.Vol[1]);else var y=this.ChartFrame.GetRightExtendYFromData(item.Vol[1],false,{Range:range});}this.Canvas.strokeStyle=this.GetBarColor(item.ColorID);this.Canvas.beginPath();if(isHScreen){y-=yBottom;y=border.RightEx-y;this.Canvas.moveTo(y,ToFixedPoint(x));this.Canvas.lineTo(border.RightEx,ToFixedPoint(x));}else{y-=yBottom;y=border.TopEx-y;this.Canvas.moveTo(ToFixedPoint(x),y);this.Canvas.lineTo(ToFixedPoint(x),border.TopEx);}this.Canvas.stroke();}}}};this.GetBarColor=function(id){switch(id){case 0:return this.UnchangeColor;case 1:return this.UpColor;case 2:return this.DownColor;}if(this.BeforeVolColor&&Array.isArray(this.BeforeVolColor)){var index=id-3;if(index>=0&&index<this.BeforeVolColor.length)return this.BeforeVolColor[index];}return this.UnchangeColor;};this.GetMaxMin=function(){var xPointCount=this.ChartFrame.XPointCount;var start=this.Data.DataOffset;if(this.ChartFrame.GlobalOption&&this.ChartFrame.GlobalOption.IsValueFullRange===true){xPointCount=this.Data.Data.length;start=0;}var range={};range.Min=0;range.Max=null;for(var i=start,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j){var item=this.Data.Data[i];if(!item||!item.Vol)continue;if(range.Max==null)range.Max=item.Vol;if(range.Max<item.Vol)range.Max=item.Vol;}if(this.ShareAfterVol==1){this.GetAfterCloseMaxMin(range);this.GetMultiDayAfterCloseMaxMin(range);}return range;};this.GetAfterCloseMaxMin=function(range){if(this.ChartBorder.RightExtendWidth<10)return;if(!this.AfterCloseData)return;var callAutionData=this.AfterCloseData;if(range.Max==null||range.Max<callAutionData.VolMax)range.Max=callAutionData.VolMax;};this.GetMultiDayAfterCloseMaxMin=function(range){if(this.ChartBorder.MultiDayMinute.Count<=1||this.ChartBorder.MultiDayMinute.Right<=0)return;if(!this.MultiDayAfterCloseData)return;for(var i=0;i<this.MultiDayAfterCloseData.length;++i){var callAutionData=this.MultiDayAfterCloseData[i];if(callAutionData.Ver==2.0||callAutionData.Ver==3.0){if(range.Max==null||range.Max<callAutionData.VolMax)range.Max=callAutionData.VolMax;}}};}function ChartErrorMessage(){this.newMethod=IChartPainting;//派生
|
|
3165
3165
|
this.newMethod();delete this.newMethod;this.ClassName='ChartErrorMessage';//类名
|
|
3166
3166
|
this.Draw=function(){if(!this.IsShow)return;if(this.NotSupportMessage)this.DrawNotSupportmessage();};}//线段 支持横屏
|
|
3167
3167
|
function ChartLine(){this.newMethod=IChartPainting;//派生
|
|
@@ -3372,7 +3372,8 @@ var ptFirst={};var drawCount=0;var preColor=null;this.Canvas.save();for(var i=da
|
|
|
3372
3372
|
bFirstPoint=false;
|
|
3373
3373
|
preColor=colorItem.Color;
|
|
3374
3374
|
*/}var x=this.ChartFrame.GetXFromIndex(j);var y=this.ChartFrame.GetYFromData(value);if(bFirstPoint){this.Canvas.strokeStyle=colorItem.Color;if(IFrameSplitOperator.IsNumber(colorItem.LineWidth))this.Canvas.lineWidth=colorItem.LineWidth;this.Canvas.beginPath();if(isHScreen)this.Canvas.moveTo(y,x);else this.Canvas.moveTo(x,y);bFirstPoint=false;ptFirst={X:x,Y:y};preColor=colorItem.Color;}else{if(isHScreen)this.Canvas.lineTo(y,x);else this.Canvas.lineTo(x,y);}ptLast.X=x;ptLast.Y=y;ptLast.Price=value;++drawCount;}if(drawCount>0){this.Canvas.stroke();}this.Canvas.restore();};this.GetMaxMin=function(){var xPointCount=this.ChartFrame.XPointCount;var range={};if(this.YClose==null)return range;if(!this.IsShow)return range;range.Min=this.YClose;range.Max=this.YClose;if(this.ChartBorder.LeftExtendWidth>10&&this.BeforeOpenData){for(var i in this.BeforeOpenData.Data){var item=this.BeforeOpenData.Data[i];if(!item)continue;if(IFrameSplitOperator.IsNumber(item.Price)){if(range.Max==null)range.Max=item.Price;if(range.Min==null)range.Min=item.Price;if(range.Max<item.Price)range.Max=item.Price;if(range.Min>item.Price)range.Min=item.Price;}//集合竞价均线统计
|
|
3375
|
-
if(this.BeforeOpenData.Ver==3.0&&IFrameSplitOperator.IsNumber(item.AvPrice)){if(range.Max==null)range.Max=item.AvPrice;if(range.Min==null)range.Min=item.AvPrice;if(range.Max<item.AvPrice)range.Max=item.AvPrice;if(range.Min>item.AvPrice)range.Min=item.AvPrice;}}}
|
|
3375
|
+
if(this.BeforeOpenData.Ver==3.0&&IFrameSplitOperator.IsNumber(item.AvPrice)){if(range.Max==null)range.Max=item.AvPrice;if(range.Min==null)range.Min=item.AvPrice;if(range.Max<item.AvPrice)range.Max=item.AvPrice;if(range.Min>item.AvPrice)range.Min=item.AvPrice;}}}//价格数据
|
|
3376
|
+
var data=this.Data;for(var i=data.DataOffset,j=0;i<data.Data.length&&j<xPointCount;++i,++j){var value=null;value=data.Data[i];if(value==null)continue;if(range.Max==null)range.Max=value;if(range.Min==null)range.Min=value;if(range.Max<value)range.Max=value;if(range.Min>value)range.Min=value;}if(range.Max==this.YClose&&range.Min==this.YClose){range.Max=this.YClose+this.YClose*0.1;range.Min=this.YClose-this.YClose*0.1;return range;}var distance=Math.max(Math.abs(this.YClose-range.Max),Math.abs(this.YClose-range.Min));range.Max=this.YClose+distance;range.Min=this.YClose-distance;return range;};this.GetTooltipData=function(x,y,tooltip){var isHScreen=this.ChartFrame.IsHScreen===true;if(isHScreen)return false;if(!this.IsShow)return false;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return false;var position=this.ChartBorder.PtInClient(x,y,this.Canvas,isHScreen);if(position!=1)return false;var data=this.Data;var index=this.ChartFrame.GetXData(x);var end=Math.ceil(index);var start=Math.floor(index);if(end>=data.Data.length||start>=data.Data.length)return false;var lineWidth=5;if(end==start){var value=data.Data[start];}else{var startValue=data.Data[start];var endValue=data.Data[end];var ptStart={X:this.ChartFrame.GetXFromIndex(start),Y:this.ChartFrame.GetYFromData(startValue)};var ptEnd={X:this.ChartFrame.GetXFromIndex(end),Y:this.ChartFrame.GetYFromData(endValue)};this.Canvas.beginPath();this.Canvas.moveTo(ptStart.X,ptStart.Y+lineWidth);this.Canvas.lineTo(ptStart.X,ptStart.Y-lineWidth);this.Canvas.lineTo(ptEnd.X,ptEnd.Y-lineWidth);this.Canvas.lineTo(ptEnd.X,ptEnd.Y+lineWidth);this.Canvas.closePath();if(this.Canvas.isPointInPath(x,y)){tooltip.Data={Index:index,Start:{Index:start,Item:data.Data[start]},End:{Index:end,Value:data.Data[end]}};tooltip.ChartPaint=this;tooltip.Type=5;//走势图线
|
|
3376
3377
|
return true;}}return false;};}//分钟线叠加 支持横屏
|
|
3377
3378
|
function ChartOverlayMinutePriceLine(){this.newMethod=IChartPainting;//派生
|
|
3378
3379
|
this.newMethod();delete this.newMethod;this.Color="rgb(65,105,225)";this.MainData;//主图数据
|
|
@@ -4004,12 +4005,12 @@ function FrameSplitMinutePriceY(){this.newMethod=IFrameSplitOperator;//派生
|
|
|
4004
4005
|
this.newMethod();delete this.newMethod;this.High=null;//最高最低价
|
|
4005
4006
|
this.Low=null;this.YClose;//昨收
|
|
4006
4007
|
this.Data;//分钟数据
|
|
4007
|
-
this.AverageData;//分钟均线数据
|
|
4008
4008
|
this.SourceData;//原始数据
|
|
4009
4009
|
this.OverlayChartPaint;this.SplitCount=7;this.Symbol;this.SplitType=0;//0=默认根据最大最小值分割 1=涨跌停分割 2=数据最大最大值分割
|
|
4010
4010
|
this.DefaultSplitType=0;this.LimitPrice;//{Max: Min:} 涨跌停价
|
|
4011
4011
|
this.Custom;this.RightTextFormat=0;//右边刻度显示模式 0=百分比 1=价格
|
|
4012
|
-
this.BeforeOpenData;this.IsBeforeData=false;this.AfterCloseData;this.IsAfterData=false;this.MultiDayBeforeOpenData;this.MultiDayAfterCloseData;this.
|
|
4012
|
+
this.BeforeOpenData;this.IsBeforeData=false;this.AfterCloseData;this.IsAfterData=false;this.MultiDayBeforeOpenData;this.MultiDayAfterCloseData;this.DayOffset;this.AverageData;//均线
|
|
4013
|
+
this.DayCount=1;this.GlobalOption;this.IsEnableDragY=function(){return false;};this.Operator=function(){this.Frame.HorizontalInfo=[];this.Frame.CustomHorizontalInfo=[];if(!this.Data)return;var range=this.GetMaxMin();if(this.Symbol&&MARKET_SUFFIX_NAME.IsUSA(this.Symbol.toUpperCase())){this.USASplit(range);}else if(this.SplitType==2){this.USASplit(range);}else{this.DefaultSplit(range);}this.CustomCoordinate();if(this.GetEventCallback){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_SPLIT_YCOORDINATE);if(event&&event.Callback){var data={ID:this.Frame.Identify,Frame:this.Frame};event.Callback(event,data,this);}}};this.CustomCoordinate=function()//自定义刻度
|
|
4013
4014
|
{if(!this.Custom)return;var defaultfloatPrecision=GetfloatPrecision(this.Symbol);for(var i in this.Custom){var item=this.Custom[i];if(item.Type==1)this.CustomFixedCoordinate(item);else if(item.Type==0){var latestItem=this.GetLatestPrice(defaultfloatPrecision,item);if(latestItem)this.Frame.CustomHorizontalInfo.push(latestItem);}}};this.GetLatestPrice=function(floatPrecision,option){if(!this.Data||!this.Data.Data)return null;if(this.Data.Data.length<=0)return null;var price=this.Data.Data[this.Data.Data.length-1];if(!IFrameSplitOperator.IsNumber(price)||!IFrameSplitOperator.IsNumber(this.YClose))return null;var info=new CoordinateInfo();info.Type=0;info.Value=price;info.TextColor=g_JSChartResource.FrameLatestPrice.TextColor;info.LineType=2;//虚线
|
|
4014
4015
|
var strPrice=price.toFixed(floatPrecision);if(option.DateTime=='HH:MM'){var latestItem=this.Frame.Data.Data[this.Frame.Data.Data.length-1];var strTime=IFrameSplitOperator.FormatTimeString(latestItem.Time,option.DateTime);var aryText=[{Text:strPrice},{Text:strTime}];if(option.Position=='left')info.Message[0]=aryText;else info.Message[1]=aryText;}else{if(option.Position=='left')info.Message[0]=strPrice;else info.Message[1]=strPrice;}if(price>this.YClose)info.LineColor=g_JSChartResource.FrameLatestPrice.UpBarColor;else if(price<this.YClose)info.LineColor=g_JSChartResource.FrameLatestPrice.DownBarColor;else info.LineColor=g_JSChartResource.FrameLatestPrice.UnchagneBarColor;if(IFrameSplitOperator.IsNumber(option.LineType))info.LineType=option.LineType;if(IFrameSplitOperator.IsPlusNumber(option.LineWidth))info.LineWidth=option.LineWidth;if(option.LineDash)info.LineDash=option.LineDash;if(option.IsShowLine==false)info.LineType=-1;if(option.PositionEx===1)info.ExtendData={Custom:{Position:1}};//强制画在内部
|
|
4015
4016
|
return info;};this.CustomFixedCoordinate=function(option)//固定坐标刻度
|
|
@@ -4017,9 +4018,11 @@ return info;};this.CustomFixedCoordinate=function(option)//固定坐标刻度
|
|
|
4017
4018
|
if(IFrameSplitOperator.IsNumber(option.LineType))info.LineType=option.LineType;if(IFrameSplitOperator.IsPlusNumber(option.LineWidth))info.LineWidth=option.LineWidth;if(option.LineDash)info.LineDash=option.LineDash;if(option.IsShowLine==false)info.LineType=-1;if(option.PositionEx===1)info.ExtendData={Custom:{Position:1}};//强制画在内部
|
|
4018
4019
|
if(IFrameSplitOperator.IsNumber(item.Increase))//涨幅计算价格
|
|
4019
4020
|
{if(!IFrameSplitOperator.IsNumber(this.YClose))continue;info.Value=this.YClose*(1+item.Increase);}else{info.Value=item.Value;}var text;if(item.Text)text=item.Text;else text=info.Value.toFixed(defaultfloatPrecision);if(option.Position=='left')info.Message[0]=text;else info.Message[1]=text;this.Frame.CustomHorizontalInfo.push(info);}};this.GetCallAuctionMaxMin=function(callAuctionData,range){for(var i in callAuctionData.Data){var item=callAuctionData.Data[i];if(!item)continue;if(IFrameSplitOperator.IsNumber(item.Price)){if(range.Max==null)range.Max=item.Price;if(range.Min==null)range.Min=item.Price;if(range.Max<item.Price)range.Max=item.Price;if(range.Min>item.Price)range.Min=item.Price;}//集合竞价均线统计
|
|
4020
|
-
if(callAuctionData.Ver==3.0&&IFrameSplitOperator.IsNumber(item.AvPrice)){if(range.Max==null)range.Max=item.AvPrice;if(range.Min==null)range.Min=item.AvPrice;if(range.Max<item.AvPrice)range.Max=item.AvPrice;if(range.Min>item.AvPrice)range.Min=item.AvPrice;}}}
|
|
4021
|
-
|
|
4022
|
-
var
|
|
4021
|
+
if(callAuctionData.Ver==3.0&&IFrameSplitOperator.IsNumber(item.AvPrice)){if(range.Max==null)range.Max=item.AvPrice;if(range.Min==null)range.Min=item.AvPrice;if(range.Max<item.AvPrice)range.Max=item.AvPrice;if(range.Min>item.AvPrice)range.Min=item.AvPrice;}}};//多日分时图 集合竞价数据
|
|
4022
|
+
this.GetMultiDayBeforeOpenData=function(){if(!this.MultiDayBeforeOpenData||!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))return null;if(!this.DayOffset)return this.MultiDayBeforeOpenData;if(!IFrameSplitOperator.IsNumber(this.DayOffset.Offset)||!IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))return null;if(this.GlobalOption&&this.GlobalOption.IsValueFullRange===true)return this.MultiDayBeforeOpenData;var showCount=this.DayOffset.ShowDayCount;var offset=this.DayOffset.Offset;var aryData=this.MultiDayBeforeOpenData.slice(offset,offset+showCount);return aryData;};this.GetMultiDayAfterCloseData=function(){if(!this.MultiDayAfterCloseData||!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))return null;if(!this.DayOffset)return this.MultiDayAfterCloseData;if(!IFrameSplitOperator.IsNumber(this.DayOffset.Offset)||!IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))return null;if(this.GlobalOption&&this.GlobalOption.IsValueFullRange===true)return this.MultiDayAfterCloseData;var showCount=this.DayOffset.ShowDayCount;var offset=this.DayOffset.Offset;var aryData=this.MultiDayAfterCloseData.slice(offset,offset+showCount);return aryData;};this.GetMaxMin=function()//计算图中所有的数据的最大最小值
|
|
4023
|
+
{var max=this.YClose;var min=this.YClose;var data=this.Data;var isBerforeData=false;if(this.SourceData){data=this.SourceData;isBerforeData=true;}if(this.DayCount>1)//多日
|
|
4024
|
+
{var offset=this.DayOffset.DataOffset;var showDataCount=this.DayOffset.ShowDataCount;if(this.GlobalOption&&this.GlobalOption.IsValueFullRange===true){offset=0;showDataCount=data.Data.length;}for(var i=offset,j=0;i<data.Data.length&&j<showDataCount;++i,++j){var value=null;if(isBerforeData){var item=data.Data[i];if(item.Before)value=item.Before.Close;else value=item.Close;}else{value=data.Data[i];}if(value==null)continue;if(max<value)max=value;if(min>value)min=value;}if(this.AverageData){for(var i=offset,j=0;i<this.AverageData.Data.length&&j<showDataCount;++i,++j){if(this.AverageData.Data[i]==null)continue;if(max<this.AverageData.Data[i])max=this.AverageData.Data[i];if(min>this.AverageData.Data[i])min=this.AverageData.Data[i];}}}else{for(var i=0;i<data.Data.length;++i){var value=null;if(isBerforeData){var item=data.Data[i];if(item.Before)value=item.Before.Close;else value=item.Close;}else{value=data.Data[i];}if(value==null)continue;if(max<value)max=value;if(min>value)min=value;}if(this.AverageData){for(var i=0;i<this.AverageData.Data.length;++i){if(this.AverageData.Data[i]==null)continue;if(max<this.AverageData.Data[i])max=this.AverageData.Data[i];if(min>this.AverageData.Data[i])min=this.AverageData.Data[i];}}}for(var i in this.OverlayChartPaint){var item=this.OverlayChartPaint[i];//if (item.Status!=OVERLAY_STATUS_ID.STATUS_FINISHED_ID) continue;
|
|
4025
|
+
var range=item.GetMaxMin();if(range.Max&&range.Max>max)max=range.Max;if(range.Min&&range.Min<min)min=range.Min;}if(this.SplitType==1&&this.LimitPrice){if(max<this.LimitPrice.Max)max=this.LimitPrice.Max;if(min>this.LimitPrice.Min)min=this.LimitPrice.Min;}if(IFrameSplitOperator.IsNumber(this.High)&&IFrameSplitOperator.IsNumber(this.Low)){if(max<this.High)max=this.High;if(min>this.Low)min=this.Low;}var range={Max:null,Min:null};if(this.IsAfterData&&this.AfterCloseData){this.GetCallAuctionMaxMin(this.AfterCloseData,range);}if(this.IsBeforeData&&this.BeforeOpenData){this.GetCallAuctionMaxMin(this.BeforeOpenData,range);}var multiDayBeforeOpenData=this.GetMultiDayBeforeOpenData();if(multiDayBeforeOpenData&&this.ChartBorder.MultiDayMinute.Count>1&&this.ChartBorder.MultiDayMinute.Left>0){for(var i=0;i<multiDayBeforeOpenData.length;++i){var dayItem=multiDayBeforeOpenData[i];this.GetCallAuctionMaxMin(dayItem,range);}}var multiDayAfterCloseData=this.GetMultiDayAfterCloseData();if(multiDayAfterCloseData&&this.ChartBorder.MultiDayMinute.Count>1&&this.ChartBorder.MultiDayMinute.Right>0){for(var i=0;i<multiDayAfterCloseData.length;++i){var dayItem=multiDayAfterCloseData[i];this.GetCallAuctionMaxMin(dayItem,range);}}if(IFrameSplitOperator.IsNumber(range.Max)&&max<range.Max)max=range.Max;if(IFrameSplitOperator.IsNumber(range.Min)&&min>range.Min)min=range.Min;return{Max:max,Min:min};};this.USASplit=function(range){var max=range.Max;var min=range.Min;if(max==min){max=max+max*0.1;min=min-min*0.1;}else{var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
|
|
4023
4026
|
var height=this.Frame.ChartBorder.GetHeight();//画布的高度
|
|
4024
4027
|
var spacePrice=5*pixelTatio*(max-min)/height;max+=spacePrice;min-=spacePrice;if(min<0)min=range.Min;}var showCount=this.SplitCount;var distance=(max-min)/(showCount-1);var minDistance=[1,0.1,0.01,0.001,0.0001];var defaultfloatPrecision=GetfloatPrecision(this.Symbol);if(distance<minDistance[defaultfloatPrecision]){distance=minDistance[defaultfloatPrecision];max=min+distance*showCount;//min=this.YClose-(distance*(showCount-1)/2);
|
|
4025
4028
|
}for(var i=0;i<showCount;++i){var price=min+distance*i;if(this.YClose&&price==this.YClose)continue;var coordinate=new CoordinateInfo();coordinate.Value=price;var strPrice=price.toFixed(defaultfloatPrecision);//价格刻度字符串
|
|
@@ -4039,7 +4042,7 @@ this.newMethod();delete this.newMethod;this.ShowText=true;//是否显示坐标
|
|
|
4039
4042
|
this.Symbol=null;//股票代码 x轴刻度根据股票类型来调整
|
|
4040
4043
|
this.DayCount=1;this.ShowDateFormate=1;//0=YYYY-MM-DD 1=MM-DD
|
|
4041
4044
|
this.Operator=function(){this.Frame.VerticalInfo=[];var xPointCount=this.Frame.XPointCount;var width=this.Frame.ChartBorder.GetWidth();var isHScreen=this.Frame.IsHScreen===true;if(isHScreen)width=this.Frame.ChartBorder.GetHeight();width=width/GetDevicePixelRatio();var minuteCoordinate=g_MinuteCoordinateData;var xcoordinateData=minuteCoordinate.GetCoordinateData(this.Symbol,width);var minuteCount=xcoordinateData.Count;var minuteMiddleCount=xcoordinateData.MiddleCount>0?xcoordinateData.MiddleCount:parseInt(minuteCount/2);var xcoordinate=xcoordinateData.Data;this.Frame.XPointCount=minuteCount*this.DayCount;//计算一共显示的数据个数
|
|
4042
|
-
this.Frame.MinuteCount=minuteCount;this.Frame.VerticalInfo=[];if(this.DayCount<=1){this.DayOffset.DataOffset=0;for(var i=0;i<xcoordinate.length;++i){var info=new CoordinateInfo();if(g_JSChartResource.Minute.FrameSplitTextColor)info.TextColor=g_JSChartResource.Minute.FrameSplitTextColor;info.Value=xcoordinate[i][0];if(this.ShowText)info.Message[0]=xcoordinate[i][3];this.Frame.VerticalInfo[i]=info;}}else{var offset=0,showDayCount=this.DayData.length;if(this.DayOffset){if(IFrameSplitOperator.IsNumber(this.DayOffset.Offset))offset=this.DayOffset.Offset;if(IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))showDayCount=this.DayOffset.ShowDayCount;}this.DayOffset.DataOffset=offset*minuteCount;for(var i=this.DayData.length-1-offset,j=0;i>=0&&j<showDayCount;--i,++j){var info=new CoordinateInfo();info.Value=j*minuteCount+minuteMiddleCount;info.LineType=-1;//线段不画
|
|
4045
|
+
this.Frame.MinuteCount=minuteCount;this.Frame.VerticalInfo=[];if(this.DayCount<=1){this.DayOffset.DataOffset=0;for(var i=0;i<xcoordinate.length;++i){var info=new CoordinateInfo();if(g_JSChartResource.Minute.FrameSplitTextColor)info.TextColor=g_JSChartResource.Minute.FrameSplitTextColor;info.Value=xcoordinate[i][0];if(this.ShowText)info.Message[0]=xcoordinate[i][3];this.Frame.VerticalInfo[i]=info;}}else{var offset=0,showDayCount=this.DayData.length;if(this.DayOffset){if(IFrameSplitOperator.IsNumber(this.DayOffset.Offset))offset=this.DayOffset.Offset;if(IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount))showDayCount=this.DayOffset.ShowDayCount;}this.DayOffset.DataOffset=offset*minuteCount;this.DayOffset.ShowDataCount=this.DayOffset.ShowDayCount*minuteCount;for(var i=this.DayData.length-1-offset,j=0;i>=0&&j<showDayCount;--i,++j){var info=new CoordinateInfo();info.Value=j*minuteCount+minuteMiddleCount;info.LineType=-1;//线段不画
|
|
4043
4046
|
if(this.ShowText){info.Message[0]=IFrameSplitOperator.FormatDateString(this.DayData[i].Date,this.ShowFormate==0?'YYYY-MM-DD':'MM-DD');info.BG={Index:{Start:j*minuteCount+1,End:(j+1)*minuteCount-1},Date:this.DayData[i].Date};//背景设置
|
|
4044
4047
|
}this.Frame.VerticalInfo.push(info);var info=new CoordinateInfo();info.Value=(j+1)*minuteCount;this.Frame.VerticalInfo.push(info);}}if(this.GetEventCallback){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_SPLIT_XCOORDINATE);if(event&&event.Callback){var data={ID:this.Frame.Identify,Frame:this.Frame};event.Callback(event,data,this);}}};}function FrameSplitXData(){this.newMethod=IFrameSplitOperator;//派生
|
|
4045
4048
|
this.newMethod();delete this.newMethod;this.ShowText=true;//是否显示坐标信息
|
|
@@ -5964,9 +5967,9 @@ if(this.EnableIndexChartDrag)this.CreateExtendChart("DragMovePaint");//子窗口
|
|
|
5964
5967
|
for(var i in this.Frame.SubFrame){var titlePaint=new DynamicChartTitlePainting();titlePaint.Frame=this.Frame.SubFrame[i].Frame;titlePaint.Canvas=this.Canvas;titlePaint.LanguageID=this.LanguageID;titlePaint.GetEventCallback=function(id){return _this17.GetEventCallback(id);};titlePaint.SelectedChart=this.SelectedChart;this.TitlePaint.push(titlePaint);}this.ChartCorssCursor.StringFormatX.Frame=this.Frame.SubFrame[0].Frame;this.ChartCorssCursor.StringFormatY.Frame=this.Frame;if(this.ChartCorssCursor.CallAcutionXOperator)this.ChartCorssCursor.CallAcutionXOperator.Frame=this.Frame.SubFrame[0].Frame;var bRegisterKeydown=true;var bRegisterWheel=true;if(option){if(option.KeyDown===false){bRegisterKeydown=false;JSConsole.Chart.Log('[MinuteChartContainer::Create] not register keydown event.');}if(option.Wheel===false){bRegisterWheel=false;JSConsole.Chart.Log('[MinuteChartContainer::Create] not register wheel event.');}}if(bRegisterKeydown)this.UIElement.addEventListener("keydown",function(e){_this17.OnKeyDown(e);},true);//键盘消息
|
|
5965
5968
|
if(bRegisterWheel)this.UIElement.addEventListener("wheel",function(e){_this17.OnWheel(e);},true);//上下滚动消息
|
|
5966
5969
|
};//创建子窗口
|
|
5967
|
-
this.CreateChildWindow=function(windowCount){var _this18=this;for(var i=0;i<windowCount;++i){var border=new ChartBorder();border.UIElement=this.UIElement;var frame=new MinuteFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=i;if(i<2)frame.ChartBorder.TitleHeight=0;frame.XPointCount=243;if(i>=2){if(this.ModifyIndexDialog)frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal;//绑定菜单事件
|
|
5968
|
-
if(this.ChangeIndexDialog)frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;}var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];frame.HorizontalMax=DEFAULT_HORIZONTAL[0];frame.HorizontalMin=DEFAULT_HORIZONTAL[DEFAULT_HORIZONTAL.length-1];if(i==0){frame.YSplitOperator=new FrameSplitMinutePriceY();frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('price');frame.YSplitOperator.GetEventCallback=function(id){return _this18.GetEventCallback(id);};}else{frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.GetEventCallback=function(id){return _this18.GetEventCallback(id);};if(i==1)frame.YSplitOperator.ShareAfterVol=this.ShareAfterVol;}frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitMinuteX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.DayOffset=this.DayOffset;frame.XSplitOperator.GetEventCallback=function(id){return _this18.GetEventCallback(id);};if(i!=windowCount-1)frame.XSplitOperator.ShowText=false;frame.XSplitOperator.Operator();for(var j in DEFAULT_HORIZONTAL){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=DEFAULT_HORIZONTAL[j];if(i==0&&j==frame.HorizontalMin)continue;frame.HorizontalInfo[j].Message[1]=DEFAULT_HORIZONTAL[j].toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();subFrame.Frame=frame;if(i==0)subFrame.Height=20;else subFrame.Height=10;this.Frame.SubFrame[i]=subFrame;}};this.CreateSubFrameItem=function(id){var _this19=this;var border=new ChartBorder();border.UIElement=this.UIElement;var frame=new MinuteFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=id;//窗口序号
|
|
5969
|
-
frame.XPointCount=243;if(id>=2){if(this.ModifyIndexDialog)frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal;//绑定菜单事件
|
|
5970
|
+
this.CreateChildWindow=function(windowCount){var _this18=this;for(var i=0;i<windowCount;++i){var border=new ChartBorder();border.UIElement=this.UIElement;var frame=new MinuteFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=i;frame.GlobalOption=this.GlobalOption;if(i<2)frame.ChartBorder.TitleHeight=0;frame.XPointCount=243;if(i>=2){if(this.ModifyIndexDialog)frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal;//绑定菜单事件
|
|
5971
|
+
if(this.ChangeIndexDialog)frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;}var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];frame.HorizontalMax=DEFAULT_HORIZONTAL[0];frame.HorizontalMin=DEFAULT_HORIZONTAL[DEFAULT_HORIZONTAL.length-1];if(i==0){frame.YSplitOperator=new FrameSplitMinutePriceY();frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('price');frame.YSplitOperator.GetEventCallback=function(id){return _this18.GetEventCallback(id);};frame.YSplitOperator.DayOffset=this.DayOffset;frame.YSplitOperator.GlobalOption=this.GlobalOption;}else{frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.GetEventCallback=function(id){return _this18.GetEventCallback(id);};if(i==1)frame.YSplitOperator.ShareAfterVol=this.ShareAfterVol;}frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitMinuteX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.DayOffset=this.DayOffset;frame.XSplitOperator.GetEventCallback=function(id){return _this18.GetEventCallback(id);};if(i!=windowCount-1)frame.XSplitOperator.ShowText=false;frame.XSplitOperator.Operator();for(var j in DEFAULT_HORIZONTAL){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=DEFAULT_HORIZONTAL[j];if(i==0&&j==frame.HorizontalMin)continue;frame.HorizontalInfo[j].Message[1]=DEFAULT_HORIZONTAL[j].toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();subFrame.Frame=frame;if(i==0)subFrame.Height=20;else subFrame.Height=10;this.Frame.SubFrame[i]=subFrame;}};this.CreateSubFrameItem=function(id){var _this19=this;var border=new ChartBorder();border.UIElement=this.UIElement;var frame=new MinuteFrame();frame.Canvas=this.Canvas;frame.ChartBorder=border;frame.Identify=id;//窗口序号
|
|
5972
|
+
frame.XPointCount=243;frame.GlobalOption=this.GlobalOption;if(id>=2){if(this.ModifyIndexDialog)frame.ModifyIndexEvent=this.ModifyIndexDialog.DoModal;//绑定菜单事件
|
|
5970
5973
|
if(this.ChangeIndexDialog)frame.ChangeIndexEvent=this.ChangeIndexDialog.DoModal;}var DEFAULT_HORIZONTAL=[9,8,7,6,5,4,3,2,1];frame.HorizontalMax=DEFAULT_HORIZONTAL[0];frame.HorizontalMin=DEFAULT_HORIZONTAL[DEFAULT_HORIZONTAL.length-1];frame.YSplitOperator=new FrameSplitY();frame.YSplitOperator.LanguageID=this.LanguageID;frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('double');frame.YSplitOperator.Frame=frame;frame.YSplitOperator.ChartBorder=border;frame.XSplitOperator=new FrameSplitMinuteX();frame.XSplitOperator.Frame=frame;frame.XSplitOperator.ChartBorder=border;frame.XSplitOperator.ShowText=false;frame.XSplitOperator.GetEventCallback=function(id){return _this19.GetEventCallback(id);};frame.YSplitOperator.GetEventCallback=function(id){return _this19.GetEventCallback(id);};frame.XSplitOperator.Symbol=this.Symbol;if(this.DayCount>1){frame.XSplitOperator.DayCount=this.DayData.length;frame.XSplitOperator.DayData=this.DayData;frame.DayCount=this.DayData.length;}//K线数据绑定
|
|
5971
5974
|
var xPointCouont=this.Frame.SubFrame[0].Frame.XPointCount;frame.XPointCount=xPointCouont;frame.Data=this.ChartPaint[0].Data;for(var j in DEFAULT_HORIZONTAL){frame.HorizontalInfo[j]=new CoordinateInfo();frame.HorizontalInfo[j].Value=DEFAULT_HORIZONTAL[j];frame.HorizontalInfo[j].Message[1]=DEFAULT_HORIZONTAL[j].toString();frame.HorizontalInfo[j].Font="14px 微软雅黑";}var subFrame=new SubFrameItem();subFrame.Frame=frame;subFrame.Height=10;return subFrame;};this.UpdateXShowText=function(){var bLastFrame=true;for(var i=this.Frame.SubFrame.length-1;i>=0;--i){var item=this.Frame.SubFrame[i].Frame;var subFrame=this.Frame.SubFrame[i];if(bLastFrame){item.XSplitOperator.ShowText=true;if(subFrame.Height>0)bLastFrame=false;}else{item.XSplitOperator.ShowText=false;}}};//删除某一个窗口的指标
|
|
5972
5975
|
this.DeleteIndexPaint=function(windowIndex,bCallDestroy){var paint=new Array();//踢出当前窗口的指标画法
|
|
@@ -6046,10 +6049,11 @@ if(this.DayOffset.ShowDayCount==-1)this.DayOffset.ShowDayCount=this.DayData.leng
|
|
|
6046
6049
|
if(this.DayOffset.Offset==-8888)this.DayOffset.Offset=this.DayOffset.DayCount-this.DayOffset.ShowDayCount;//最后一页
|
|
6047
6050
|
var showDayCount=this.DayOffset.ShowDayCount;this.Frame.SetDayCount(showDayCount);var upperSymbol=this.Symbol.toUpperCase();var yClose=this.DayData[0].YClose;var isFutures=MARKET_SUFFIX_NAME.IsFutures(upperSymbol);if(IFrameSplitOperator.IsNumber(this.DayData[0].YClearing)&&isFutures)yClose=this.DayData[0].YClearing;//期货使用前结算价
|
|
6048
6051
|
this.BindMainData(sourceData,yClose);//外汇 均线暂时不用
|
|
6049
|
-
if(MARKET_SUFFIX_NAME.IsForeignExchange(upperSymbol))this.ChartPaint[1].Data=null;
|
|
6052
|
+
if(MARKET_SUFFIX_NAME.IsForeignExchange(upperSymbol))this.ChartPaint[1].Data=null;for(var _i27=0;_i27<this.Frame.SubFrame.length;++_i27){var item=this.Frame.SubFrame[_i27];item.Frame.XSplitOperator.Symbol=this.Symbol;item.Frame.XSplitOperator.DayCount=showDayCount;item.Frame.XSplitOperator.DayData=this.DayData;item.Frame.XSplitOperator.Operator();//调整X轴个数
|
|
6050
6053
|
item.Frame.XSplitOperator.IsBeforeData=this.IsBeforeData;item.Frame.XSplitOperator.IsAfterData=this.IsAfterData;item.Frame.YSplitOperator.Symbol=this.Symbol;item.Frame.YSplitOperator.IsBeforeData=this.IsBeforeData;item.Frame.YSplitOperator.IsAfterData=this.IsAfterData;for(var j in item.OverlayIndex)//子坐标X轴个数同步
|
|
6051
6054
|
{var overlayItem=item.OverlayIndex[j];overlayItem.Frame.XPointCount=item.Frame.XPointCount;overlayItem.Frame.MinuteCount=item.Frame.MinuteCount;}}this.ChartCorssCursor.StringFormatY.Symbol=this.Symbol;this.ChartCorssCursor.StringFormatX.Symbol=this.Symbol;this.ChartCorssCursor.StringFormatX.IsBeforeData=this.IsBeforeData;this.ChartCorssCursor.StringFormatX.IsAfterData=this.IsAfterData;this.TitlePaint[0].IsShowDate=true;this.UpdateDataOffset();this.UpdateFrameMaxMin();//调整坐标最大 最小值
|
|
6052
|
-
this.Frame.SetSizeChage(true);this.Draw()
|
|
6055
|
+
this.Frame.SetSizeChage(true);this.Draw();//执行脚本
|
|
6056
|
+
if(this.Frame.SubFrame.length>2){var bindData=new ChartData();bindData.Data=allMinuteData;for(var i=2;i<this.Frame.SubFrame.length;++i){this.BindIndexData(i,bindData);}}};this.HistoryMinuteDataToArray=function(data){var result=[];for(var i=data.length-1;i>=0;--i){var item=data[i];for(var j=0;j<item.Data.length;++j){result.push(item.Data[j]);}}return result;};this.UpdateLatestMinuteData=function(data,date){for(var i in this.DayData){var item=this.DayData[i];if(item.Date===date){item.Data=data;break;}}};//请求分钟数据
|
|
6053
6057
|
this.RequestMinuteData=function(){var self=this;var fields=["name","symbol","yclose","open","price","high","low","vol","amount","date","time","minute","minutecount"];var upperSymbol=this.Symbol.toUpperCase();if(MARKET_SUFFIX_NAME.IsFutures(upperSymbol)){//期货的需要加上结算价
|
|
6054
6058
|
fields.push("clearing");fields.push("yclearing");}// 盘前数据(A股)
|
|
6055
6059
|
this.IsBeforeData=false;if(this.IsShowBeforeData&&this.DayCount===1&&MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol)){this.IsBeforeData=true;fields.push('before');}this.IsAfterData=false;if(this.IsShowAfterData&&this.DayCount===1&&MARKET_SUFFIX_NAME.IsSHSZStockA(self.Symbol)){this.IsAfterData=true;}if(this.NetworkFilter){var callCation={Before:this.IsShowBeforeData&&this.DayCount===1,After:this.IsShowAfterData&&this.DayCount===1//集合竞价
|
|
@@ -6102,7 +6106,8 @@ this.ChartPaint[0].Source=minuteData;if(MARKET_SUFFIX_NAME.IsSHSZIndex(this.Symb
|
|
|
6102
6106
|
}//均线
|
|
6103
6107
|
bindData=new ChartData();bindData.Data=minuteData.GetMinuteAvPrice();this.ChartPaint[1].Data=bindData;var upperSymbol=this.Symbol.toUpperCase();if(MARKET_SUFFIX_NAME.IsForeignExchange(upperSymbol))//外汇没有均线
|
|
6104
6108
|
this.ChartPaint[1].Data=null;else if(MARKET_SUFFIX_NAME.IsShowAvPrice&&!MARKET_SUFFIX_NAME.IsShowAvPrice(upperSymbol))//外部控制是否显示均线
|
|
6105
|
-
this.ChartPaint[1].Data=null;firstFrame.YSplitOperator.AverageData=bindData
|
|
6109
|
+
this.ChartPaint[1].Data=null;firstFrame.YSplitOperator.AverageData=bindData;//均线
|
|
6110
|
+
firstFrame.YSplitOperator.OverlayChartPaint=this.OverlayChartPaint;firstFrame.YSplitOperator.LimitPrice=this.LimitPrice;firstFrame.YSplitOperator.MultiDayBeforeOpenData=multiBeforeOpenData;firstFrame.YSplitOperator.MultiDayAfterCloseData=multiAfterCloseData;firstFrame.YSplitOperator.DayCount=this.DayCount;if(extendData){firstFrame.YSplitOperator.High=extendData.High;firstFrame.YSplitOperator.Low=extendData.Low;}else{firstFrame.YSplitOperator.High=null;firstFrame.YSplitOperator.Low=null;}//成交量
|
|
6106
6111
|
this.ChartPaint[2].Data=minuteData;this.ChartPaint[2].YClose=yClose;this.ChartPaint[2].Symbol=this.Symbol;this.ChartPaint[2].BeforeOpenData=this.BeforeOpenData;this.ChartPaint[2].AfterCloseData=this.AfterCloseData;this.ChartPaint[2].MultiDayBeforeOpenData=multiBeforeOpenData;this.ChartPaint[2].MultiDayAfterCloseData=multiAfterCloseData;for(var i in this.Frame.SubFrame){var item=this.Frame.SubFrame[i];item.Frame.YSplitOperator.BeforeOpenData=this.BeforeOpenData;item.Frame.YSplitOperator.IsBeforeData=this.IsBeforeData;item.Frame.YSplitOperator.AfterCloseData=this.AfterCloseData;item.Frame.YSplitOperator.IsAfterData=this.IsAfterData;item.Frame.YSplitOperator.MultiDayBeforeOpenData=multiBeforeOpenData;item.Frame.YSplitOperator.MultiDayAfterCloseData=multiAfterCloseData;}if(MARKET_SUFFIX_NAME.IsShowMinutePostionLine(upperSymbol))this.BindOverlayPositionData(minuteData,yClose);//期货,期权 持仓量
|
|
6107
6112
|
else this.ClearBindOverlayPositionData();this.TitlePaint[0].Data=this.SourceData;//动态标题
|
|
6108
6113
|
this.TitlePaint[0].Symbol=this.Symbol;this.TitlePaint[0].Name=this.Name;this.TitlePaint[0].YClose=yClose;this.TitlePaint[0].BeforeOpenData=this.BeforeOpenData;this.TitlePaint[0].AfterCloseData=this.AfterCloseData;this.TitlePaint[0].MultiDayBeforeOpenData=this.IsShowMultiDayBeforeData?this.MultiDayBeforeOpenData:null;this.TitlePaint[0].MultiDayAfterCloseData=this.IsShowMultiDayAfterData?this.MultiDayAfterCloseData:null;if(this.TitlePaint[0].CallAcutionXOperator){this.TitlePaint[0].CallAcutionXOperator.BeforeOpenData=this.BeforeOpenData;this.TitlePaint[0].CallAcutionXOperator.AfterCloseData=this.AfterCloseData;this.TitlePaint[0].CallAcutionXOperator.MultiDayBeforeOpenData=multiBeforeOpenData;this.TitlePaint[0].CallAcutionXOperator.MultiDayAfterCloseData=multiAfterCloseData;this.TitlePaint[0].CallAcutionXOperator.DayOffset=this.DayOffset;}if(this.ChartCorssCursor&&this.ChartCorssCursor.StringFormatY){this.ChartCorssCursor.StringFormatY.YClose=yClose;this.ChartCorssCursor.StringFormatY.BeforeOpenData=this.BeforeOpenData;this.ChartCorssCursor.StringFormatY.AfterCloseData=this.AfterCloseData;this.ChartCorssCursor.StringFormatY.MultiDayBeforeOpenData=multiBeforeOpenData;this.ChartCorssCursor.StringFormatY.MultiDayAfterCloseData=multiAfterCloseData;this.ChartCorssCursor.StringFormatY.DayOffset=this.DayOffset;this.ChartCorssCursor.StringFormatX.Data=this.ChartPaint[0].Data;//十字光标
|
package/package.json
CHANGED
|
@@ -4713,6 +4713,13 @@ function JSChart(divElement, bOffscreen)
|
|
|
4713
4713
|
if (IFrameSplitOperator.IsBool(option.EnableNewIndex)) chart.EnableNewIndex=option.EnableNewIndex;
|
|
4714
4714
|
if (IFrameSplitOperator.IsBool(option.EnableIndexChartDrag)) chart.EnableIndexChartDrag=option.EnableIndexChartDrag;
|
|
4715
4715
|
|
|
4716
|
+
if (option.GlobalOption)
|
|
4717
|
+
{
|
|
4718
|
+
var item=option.GlobalOption;
|
|
4719
|
+
if (IFrameSplitOperator.IsBool(item.IsValueFullRange)) chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;
|
|
4720
|
+
}
|
|
4721
|
+
|
|
4722
|
+
|
|
4716
4723
|
chart.SelectRectDialog=new MinuteSelectRectDialog(this.DivElement);
|
|
4717
4724
|
|
|
4718
4725
|
|
|
@@ -6441,6 +6448,8 @@ function JSChartContainer(uielement, OffscreenElement)
|
|
|
6441
6448
|
this.IndexChartDrag; //拖拽指标图形
|
|
6442
6449
|
this.EnableIndexChartDrag=false;
|
|
6443
6450
|
|
|
6451
|
+
this.GlobalOption={ IsValueFullRange:false };
|
|
6452
|
+
|
|
6444
6453
|
this.ChartDestroy=function() //销毁
|
|
6445
6454
|
{
|
|
6446
6455
|
this.IsDestroy=true;
|
|
@@ -11542,7 +11551,7 @@ function IChartFramePainting()
|
|
|
11542
11551
|
|
|
11543
11552
|
this.LogoTextColor=g_JSChartResource.FrameLogo.TextColor;
|
|
11544
11553
|
this.LogoTextFont=g_JSChartResource.FrameLogo.Font;
|
|
11545
|
-
|
|
11554
|
+
this.GlobalOption;
|
|
11546
11555
|
|
|
11547
11556
|
this.PtInButtons=function(x,y) //坐标是否在按钮上
|
|
11548
11557
|
{
|
|
@@ -13880,8 +13889,8 @@ function MinuteFrame()
|
|
|
13880
13889
|
this.SplitXYCoordinate=function()
|
|
13881
13890
|
{
|
|
13882
13891
|
if (this.XYSplit==false) return;
|
|
13883
|
-
if (this.YSplitOperator!=null) this.YSplitOperator.Operator();
|
|
13884
13892
|
if (this.XSplitOperator!=null) this.XSplitOperator.Operator();
|
|
13893
|
+
if (this.YSplitOperator!=null) this.YSplitOperator.Operator();
|
|
13885
13894
|
}
|
|
13886
13895
|
|
|
13887
13896
|
this.GetMultiDayXFromIndex=function(index, border)
|
|
@@ -21630,13 +21639,20 @@ function IChartPainting()
|
|
|
21630
21639
|
this.GetMaxMin=function()
|
|
21631
21640
|
{
|
|
21632
21641
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
21642
|
+
var start=this.Data.DataOffset;
|
|
21643
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange)
|
|
21644
|
+
{
|
|
21645
|
+
start=0;
|
|
21646
|
+
xPointCount=this.Data.Data.length;
|
|
21647
|
+
}
|
|
21648
|
+
|
|
21633
21649
|
var range={};
|
|
21634
21650
|
range.Min=null;
|
|
21635
21651
|
range.Max=null;
|
|
21636
21652
|
|
|
21637
21653
|
if(!this.Data || !this.Data.Data) return range;
|
|
21638
21654
|
|
|
21639
|
-
for(var i=
|
|
21655
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
21640
21656
|
{
|
|
21641
21657
|
var value=this.Data.Data[i];
|
|
21642
21658
|
if (value==null || isNaN(value)) continue;
|
|
@@ -26830,17 +26846,25 @@ function ChartMinuteVolumBar()
|
|
|
26830
26846
|
this.GetMaxMin=function()
|
|
26831
26847
|
{
|
|
26832
26848
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
26849
|
+
var start=this.Data.DataOffset;
|
|
26850
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange===true)
|
|
26851
|
+
{
|
|
26852
|
+
xPointCount=this.Data.Data.length;
|
|
26853
|
+
start=0;
|
|
26854
|
+
}
|
|
26855
|
+
|
|
26833
26856
|
var range={};
|
|
26834
26857
|
range.Min=0;
|
|
26835
26858
|
range.Max=null;
|
|
26836
|
-
|
|
26837
|
-
for(var i=
|
|
26859
|
+
|
|
26860
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
26838
26861
|
{
|
|
26839
26862
|
var item = this.Data.Data[i];
|
|
26840
26863
|
if (!item || !item.Vol) continue;
|
|
26841
26864
|
if (range.Max == null) range.Max = item.Vol;
|
|
26842
26865
|
if (range.Max < item.Vol) range.Max = item.Vol;
|
|
26843
26866
|
}
|
|
26867
|
+
|
|
26844
26868
|
|
|
26845
26869
|
if (this.ShareAfterVol==1)
|
|
26846
26870
|
{
|
|
@@ -30350,6 +30374,7 @@ function ChartMinutePriceLine()
|
|
|
30350
30374
|
}
|
|
30351
30375
|
|
|
30352
30376
|
|
|
30377
|
+
//价格数据
|
|
30353
30378
|
var data=this.Data;
|
|
30354
30379
|
for(var i=data.DataOffset,j=0;i<data.Data.length && j<xPointCount;++i,++j)
|
|
30355
30380
|
{
|
|
@@ -40254,7 +40279,6 @@ function FrameSplitMinutePriceY()
|
|
|
40254
40279
|
|
|
40255
40280
|
this.YClose; //昨收
|
|
40256
40281
|
this.Data; //分钟数据
|
|
40257
|
-
this.AverageData; //分钟均线数据
|
|
40258
40282
|
this.SourceData; //原始数据
|
|
40259
40283
|
this.OverlayChartPaint;
|
|
40260
40284
|
this.SplitCount=7;
|
|
@@ -40272,6 +40296,11 @@ function FrameSplitMinutePriceY()
|
|
|
40272
40296
|
|
|
40273
40297
|
this.MultiDayBeforeOpenData;
|
|
40274
40298
|
this.MultiDayAfterCloseData;
|
|
40299
|
+
this.DayOffset;
|
|
40300
|
+
|
|
40301
|
+
this.AverageData; //均线
|
|
40302
|
+
this.DayCount=1;
|
|
40303
|
+
this.GlobalOption;
|
|
40275
40304
|
|
|
40276
40305
|
this.IsEnableDragY=function()
|
|
40277
40306
|
{
|
|
@@ -40435,10 +40464,38 @@ function FrameSplitMinutePriceY()
|
|
|
40435
40464
|
}
|
|
40436
40465
|
}
|
|
40437
40466
|
|
|
40467
|
+
//多日分时图 集合竞价数据
|
|
40468
|
+
this.GetMultiDayBeforeOpenData=function()
|
|
40469
|
+
{
|
|
40470
|
+
if (!this.MultiDayBeforeOpenData || !IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData)) return null;
|
|
40471
|
+
if (!this.DayOffset) return this.MultiDayBeforeOpenData;
|
|
40472
|
+
if (!IFrameSplitOperator.IsNumber(this.DayOffset.Offset) || !IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount)) return null;
|
|
40473
|
+
if (this.GlobalOption && this.GlobalOption.IsValueFullRange===true) return this.MultiDayBeforeOpenData;
|
|
40474
|
+
|
|
40475
|
+
var showCount= this.DayOffset.ShowDayCount;
|
|
40476
|
+
var offset=this.DayOffset.Offset;
|
|
40477
|
+
var aryData=this.MultiDayBeforeOpenData.slice(offset, offset+showCount);
|
|
40478
|
+
return aryData;
|
|
40479
|
+
}
|
|
40480
|
+
|
|
40481
|
+
this.GetMultiDayAfterCloseData=function()
|
|
40482
|
+
{
|
|
40483
|
+
if (!this.MultiDayAfterCloseData || !IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData)) return null;
|
|
40484
|
+
if (!this.DayOffset) return this.MultiDayAfterCloseData;
|
|
40485
|
+
if (!IFrameSplitOperator.IsNumber(this.DayOffset.Offset) || !IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount)) return null;
|
|
40486
|
+
if (this.GlobalOption && this.GlobalOption.IsValueFullRange===true) return this.MultiDayAfterCloseData;
|
|
40487
|
+
|
|
40488
|
+
var showCount= this.DayOffset.ShowDayCount;
|
|
40489
|
+
var offset=this.DayOffset.Offset;
|
|
40490
|
+
var aryData=this.MultiDayAfterCloseData.slice(offset, offset+showCount);
|
|
40491
|
+
return aryData;
|
|
40492
|
+
}
|
|
40493
|
+
|
|
40438
40494
|
this.GetMaxMin=function() //计算图中所有的数据的最大最小值
|
|
40439
40495
|
{
|
|
40440
40496
|
var max=this.YClose;
|
|
40441
40497
|
var min=this.YClose;
|
|
40498
|
+
|
|
40442
40499
|
var data=this.Data;
|
|
40443
40500
|
var isBerforeData=false;
|
|
40444
40501
|
if (this.SourceData)
|
|
@@ -40447,31 +40504,72 @@ function FrameSplitMinutePriceY()
|
|
|
40447
40504
|
isBerforeData=true;
|
|
40448
40505
|
}
|
|
40449
40506
|
|
|
40450
|
-
|
|
40507
|
+
if (this.DayCount>1) //多日
|
|
40451
40508
|
{
|
|
40452
|
-
var
|
|
40453
|
-
|
|
40509
|
+
var offset=this.DayOffset.DataOffset;
|
|
40510
|
+
var showDataCount=this.DayOffset.ShowDataCount;
|
|
40511
|
+
if (this.GlobalOption && this.GlobalOption.IsValueFullRange===true)
|
|
40454
40512
|
{
|
|
40455
|
-
|
|
40456
|
-
|
|
40457
|
-
else value=item.Close;
|
|
40513
|
+
offset=0;
|
|
40514
|
+
showDataCount=data.Data.length;
|
|
40458
40515
|
}
|
|
40459
|
-
|
|
40516
|
+
|
|
40517
|
+
for(var i=offset, j=0; i<data.Data.length && j<showDataCount ;++i,++j)
|
|
40460
40518
|
{
|
|
40461
|
-
value=
|
|
40519
|
+
var value=null;
|
|
40520
|
+
if (isBerforeData)
|
|
40521
|
+
{
|
|
40522
|
+
var item=data.Data[i];
|
|
40523
|
+
if (item.Before) value=item.Before.Close;
|
|
40524
|
+
else value=item.Close;
|
|
40525
|
+
}
|
|
40526
|
+
else
|
|
40527
|
+
{
|
|
40528
|
+
value=data.Data[i];
|
|
40529
|
+
}
|
|
40530
|
+
if (value==null) continue;
|
|
40531
|
+
if (max<value) max=value;
|
|
40532
|
+
if (min>value) min=value;
|
|
40533
|
+
}
|
|
40534
|
+
|
|
40535
|
+
if (this.AverageData)
|
|
40536
|
+
{
|
|
40537
|
+
for(var i=offset,j=0; i<this.AverageData.Data.length && j<showDataCount; ++i,++j)
|
|
40538
|
+
{
|
|
40539
|
+
if (this.AverageData.Data[i]==null) continue;
|
|
40540
|
+
if (max<this.AverageData.Data[i]) max=this.AverageData.Data[i];
|
|
40541
|
+
if (min>this.AverageData.Data[i]) min=this.AverageData.Data[i];
|
|
40542
|
+
}
|
|
40462
40543
|
}
|
|
40463
|
-
if (value==null) continue;
|
|
40464
|
-
if (max<value) max=value;
|
|
40465
|
-
if (min>value) min=value;
|
|
40466
40544
|
}
|
|
40467
|
-
|
|
40468
|
-
if (this.AverageData)
|
|
40545
|
+
else
|
|
40469
40546
|
{
|
|
40470
|
-
for(var i
|
|
40547
|
+
for(var i=0;i<data.Data.length;++i)
|
|
40548
|
+
{
|
|
40549
|
+
var value=null;
|
|
40550
|
+
if (isBerforeData)
|
|
40551
|
+
{
|
|
40552
|
+
var item=data.Data[i];
|
|
40553
|
+
if (item.Before) value=item.Before.Close;
|
|
40554
|
+
else value=item.Close;
|
|
40555
|
+
}
|
|
40556
|
+
else
|
|
40557
|
+
{
|
|
40558
|
+
value=data.Data[i];
|
|
40559
|
+
}
|
|
40560
|
+
if (value==null) continue;
|
|
40561
|
+
if (max<value) max=value;
|
|
40562
|
+
if (min>value) min=value;
|
|
40563
|
+
}
|
|
40564
|
+
|
|
40565
|
+
if (this.AverageData)
|
|
40471
40566
|
{
|
|
40472
|
-
|
|
40473
|
-
|
|
40474
|
-
|
|
40567
|
+
for(var i=0;i<this.AverageData.Data.length;++i)
|
|
40568
|
+
{
|
|
40569
|
+
if (this.AverageData.Data[i]==null) continue;
|
|
40570
|
+
if (max<this.AverageData.Data[i]) max=this.AverageData.Data[i];
|
|
40571
|
+
if (min>this.AverageData.Data[i]) min=this.AverageData.Data[i];
|
|
40572
|
+
}
|
|
40475
40573
|
}
|
|
40476
40574
|
}
|
|
40477
40575
|
|
|
@@ -40507,20 +40605,22 @@ function FrameSplitMinutePriceY()
|
|
|
40507
40605
|
this.GetCallAuctionMaxMin(this.BeforeOpenData,range);
|
|
40508
40606
|
}
|
|
40509
40607
|
|
|
40510
|
-
|
|
40608
|
+
var multiDayBeforeOpenData=this.GetMultiDayBeforeOpenData();
|
|
40609
|
+
if (multiDayBeforeOpenData && this.ChartBorder.MultiDayMinute.Count>1 && this.ChartBorder.MultiDayMinute.Left>0)
|
|
40511
40610
|
{
|
|
40512
|
-
for(var i
|
|
40611
|
+
for(var i=0;i<multiDayBeforeOpenData.length; ++i)
|
|
40513
40612
|
{
|
|
40514
|
-
var dayItem=
|
|
40613
|
+
var dayItem=multiDayBeforeOpenData[i];
|
|
40515
40614
|
this.GetCallAuctionMaxMin(dayItem,range);
|
|
40516
40615
|
}
|
|
40517
40616
|
}
|
|
40518
40617
|
|
|
40519
|
-
|
|
40618
|
+
var multiDayAfterCloseData=this.GetMultiDayAfterCloseData();
|
|
40619
|
+
if (multiDayAfterCloseData && this.ChartBorder.MultiDayMinute.Count>1 && this.ChartBorder.MultiDayMinute.Right>0)
|
|
40520
40620
|
{
|
|
40521
|
-
for(var i
|
|
40621
|
+
for(var i=0;i<multiDayAfterCloseData.length; ++i)
|
|
40522
40622
|
{
|
|
40523
|
-
var dayItem=
|
|
40623
|
+
var dayItem=multiDayAfterCloseData[i];
|
|
40524
40624
|
this.GetCallAuctionMaxMin(dayItem,range);
|
|
40525
40625
|
}
|
|
40526
40626
|
}
|
|
@@ -40733,6 +40833,7 @@ function FrameSplitMinuteX()
|
|
|
40733
40833
|
if (IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount)) showDayCount=this.DayOffset.ShowDayCount;
|
|
40734
40834
|
}
|
|
40735
40835
|
this.DayOffset.DataOffset=offset*minuteCount;
|
|
40836
|
+
this.DayOffset.ShowDataCount=this.DayOffset.ShowDayCount*minuteCount;
|
|
40736
40837
|
|
|
40737
40838
|
for(var i=this.DayData.length-1-offset, j=0; i>=0 && j<showDayCount; --i,++j)
|
|
40738
40839
|
{
|
|
@@ -60334,6 +60435,7 @@ function MinuteChartContainer(uielement)
|
|
|
60334
60435
|
|
|
60335
60436
|
this.DayOffset={ Offset:0, ShowDayCount:-1, DataOffset:0, DayCount:1, }; //Offset 日期偏移 , DataOffset数据偏移
|
|
60336
60437
|
this.PageInfo={ Enable:false, Offset:-8888, ShowDayCount:4 }; //分页配置
|
|
60438
|
+
|
|
60337
60439
|
|
|
60338
60440
|
//集合竞价设置 obj={ Left:true/false, Right:true/false, MultiDay:{Left:, Right:} }
|
|
60339
60441
|
this.SetCallCationDataBorder=function(obj)
|
|
@@ -61734,6 +61836,7 @@ function MinuteChartContainer(uielement)
|
|
|
61734
61836
|
frame.Canvas=this.Canvas;
|
|
61735
61837
|
frame.ChartBorder=border;
|
|
61736
61838
|
frame.Identify=i;
|
|
61839
|
+
frame.GlobalOption=this.GlobalOption;
|
|
61737
61840
|
if (i<2) frame.ChartBorder.TitleHeight=0;
|
|
61738
61841
|
frame.XPointCount=243;
|
|
61739
61842
|
|
|
@@ -61752,6 +61855,8 @@ function MinuteChartContainer(uielement)
|
|
|
61752
61855
|
frame.YSplitOperator=new FrameSplitMinutePriceY();
|
|
61753
61856
|
frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('price');
|
|
61754
61857
|
frame.YSplitOperator.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
61858
|
+
frame.YSplitOperator.DayOffset=this.DayOffset;
|
|
61859
|
+
frame.YSplitOperator.GlobalOption=this.GlobalOption;
|
|
61755
61860
|
}
|
|
61756
61861
|
else
|
|
61757
61862
|
{
|
|
@@ -61803,6 +61908,7 @@ function MinuteChartContainer(uielement)
|
|
|
61803
61908
|
frame.ChartBorder=border;
|
|
61804
61909
|
frame.Identify=id; //窗口序号
|
|
61805
61910
|
frame.XPointCount=243;
|
|
61911
|
+
frame.GlobalOption=this.GlobalOption;
|
|
61806
61912
|
|
|
61807
61913
|
|
|
61808
61914
|
if (id>=2)
|
|
@@ -62663,16 +62769,6 @@ function MinuteChartContainer(uielement)
|
|
|
62663
62769
|
//外汇 均线暂时不用
|
|
62664
62770
|
if (MARKET_SUFFIX_NAME.IsForeignExchange(upperSymbol)) this.ChartPaint[1].Data=null;
|
|
62665
62771
|
|
|
62666
|
-
if (this.Frame.SubFrame.length>2)
|
|
62667
|
-
{
|
|
62668
|
-
var bindData=new ChartData();
|
|
62669
|
-
bindData.Data=allMinuteData;
|
|
62670
|
-
for(var i=2; i<this.Frame.SubFrame.length; ++i)
|
|
62671
|
-
{
|
|
62672
|
-
this.BindIndexData(i,bindData);
|
|
62673
|
-
}
|
|
62674
|
-
}
|
|
62675
|
-
|
|
62676
62772
|
for(let i=0; i<this.Frame.SubFrame.length; ++i)
|
|
62677
62773
|
{
|
|
62678
62774
|
var item=this.Frame.SubFrame[i];
|
|
@@ -62703,6 +62799,17 @@ function MinuteChartContainer(uielement)
|
|
|
62703
62799
|
this.UpdateFrameMaxMin(); //调整坐标最大 最小值
|
|
62704
62800
|
this.Frame.SetSizeChage(true);
|
|
62705
62801
|
this.Draw();
|
|
62802
|
+
|
|
62803
|
+
//执行脚本
|
|
62804
|
+
if (this.Frame.SubFrame.length>2)
|
|
62805
|
+
{
|
|
62806
|
+
var bindData=new ChartData();
|
|
62807
|
+
bindData.Data=allMinuteData;
|
|
62808
|
+
for(var i=2; i<this.Frame.SubFrame.length; ++i)
|
|
62809
|
+
{
|
|
62810
|
+
this.BindIndexData(i,bindData);
|
|
62811
|
+
}
|
|
62812
|
+
}
|
|
62706
62813
|
}
|
|
62707
62814
|
|
|
62708
62815
|
this.HistoryMinuteDataToArray=function(data)
|
|
@@ -63320,11 +63427,12 @@ function MinuteChartContainer(uielement)
|
|
|
63320
63427
|
else if (MARKET_SUFFIX_NAME.IsShowAvPrice && !MARKET_SUFFIX_NAME.IsShowAvPrice(upperSymbol)) //外部控制是否显示均线
|
|
63321
63428
|
this.ChartPaint[1].Data=null;
|
|
63322
63429
|
|
|
63323
|
-
firstFrame.YSplitOperator.AverageData=bindData;
|
|
63430
|
+
firstFrame.YSplitOperator.AverageData=bindData; //均线
|
|
63324
63431
|
firstFrame.YSplitOperator.OverlayChartPaint=this.OverlayChartPaint;
|
|
63325
63432
|
firstFrame.YSplitOperator.LimitPrice=this.LimitPrice;
|
|
63326
63433
|
firstFrame.YSplitOperator.MultiDayBeforeOpenData=multiBeforeOpenData;
|
|
63327
63434
|
firstFrame.YSplitOperator.MultiDayAfterCloseData=multiAfterCloseData;
|
|
63435
|
+
firstFrame.YSplitOperator.DayCount=this.DayCount;
|
|
63328
63436
|
if (extendData)
|
|
63329
63437
|
{
|
|
63330
63438
|
firstFrame.YSplitOperator.High=extendData.High;
|
|
@@ -4757,6 +4757,13 @@ function JSChart(divElement, bOffscreen)
|
|
|
4757
4757
|
if (IFrameSplitOperator.IsBool(option.EnableNewIndex)) chart.EnableNewIndex=option.EnableNewIndex;
|
|
4758
4758
|
if (IFrameSplitOperator.IsBool(option.EnableIndexChartDrag)) chart.EnableIndexChartDrag=option.EnableIndexChartDrag;
|
|
4759
4759
|
|
|
4760
|
+
if (option.GlobalOption)
|
|
4761
|
+
{
|
|
4762
|
+
var item=option.GlobalOption;
|
|
4763
|
+
if (IFrameSplitOperator.IsBool(item.IsValueFullRange)) chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;
|
|
4764
|
+
}
|
|
4765
|
+
|
|
4766
|
+
|
|
4760
4767
|
chart.SelectRectDialog=new MinuteSelectRectDialog(this.DivElement);
|
|
4761
4768
|
|
|
4762
4769
|
|
|
@@ -6485,6 +6492,8 @@ function JSChartContainer(uielement, OffscreenElement)
|
|
|
6485
6492
|
this.IndexChartDrag; //拖拽指标图形
|
|
6486
6493
|
this.EnableIndexChartDrag=false;
|
|
6487
6494
|
|
|
6495
|
+
this.GlobalOption={ IsValueFullRange:false };
|
|
6496
|
+
|
|
6488
6497
|
this.ChartDestroy=function() //销毁
|
|
6489
6498
|
{
|
|
6490
6499
|
this.IsDestroy=true;
|
|
@@ -11586,7 +11595,7 @@ function IChartFramePainting()
|
|
|
11586
11595
|
|
|
11587
11596
|
this.LogoTextColor=g_JSChartResource.FrameLogo.TextColor;
|
|
11588
11597
|
this.LogoTextFont=g_JSChartResource.FrameLogo.Font;
|
|
11589
|
-
|
|
11598
|
+
this.GlobalOption;
|
|
11590
11599
|
|
|
11591
11600
|
this.PtInButtons=function(x,y) //坐标是否在按钮上
|
|
11592
11601
|
{
|
|
@@ -13924,8 +13933,8 @@ function MinuteFrame()
|
|
|
13924
13933
|
this.SplitXYCoordinate=function()
|
|
13925
13934
|
{
|
|
13926
13935
|
if (this.XYSplit==false) return;
|
|
13927
|
-
if (this.YSplitOperator!=null) this.YSplitOperator.Operator();
|
|
13928
13936
|
if (this.XSplitOperator!=null) this.XSplitOperator.Operator();
|
|
13937
|
+
if (this.YSplitOperator!=null) this.YSplitOperator.Operator();
|
|
13929
13938
|
}
|
|
13930
13939
|
|
|
13931
13940
|
this.GetMultiDayXFromIndex=function(index, border)
|
|
@@ -21674,13 +21683,20 @@ function IChartPainting()
|
|
|
21674
21683
|
this.GetMaxMin=function()
|
|
21675
21684
|
{
|
|
21676
21685
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
21686
|
+
var start=this.Data.DataOffset;
|
|
21687
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange)
|
|
21688
|
+
{
|
|
21689
|
+
start=0;
|
|
21690
|
+
xPointCount=this.Data.Data.length;
|
|
21691
|
+
}
|
|
21692
|
+
|
|
21677
21693
|
var range={};
|
|
21678
21694
|
range.Min=null;
|
|
21679
21695
|
range.Max=null;
|
|
21680
21696
|
|
|
21681
21697
|
if(!this.Data || !this.Data.Data) return range;
|
|
21682
21698
|
|
|
21683
|
-
for(var i=
|
|
21699
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
21684
21700
|
{
|
|
21685
21701
|
var value=this.Data.Data[i];
|
|
21686
21702
|
if (value==null || isNaN(value)) continue;
|
|
@@ -26874,17 +26890,25 @@ function ChartMinuteVolumBar()
|
|
|
26874
26890
|
this.GetMaxMin=function()
|
|
26875
26891
|
{
|
|
26876
26892
|
var xPointCount=this.ChartFrame.XPointCount;
|
|
26893
|
+
var start=this.Data.DataOffset;
|
|
26894
|
+
if (this.ChartFrame.GlobalOption && this.ChartFrame.GlobalOption.IsValueFullRange===true)
|
|
26895
|
+
{
|
|
26896
|
+
xPointCount=this.Data.Data.length;
|
|
26897
|
+
start=0;
|
|
26898
|
+
}
|
|
26899
|
+
|
|
26877
26900
|
var range={};
|
|
26878
26901
|
range.Min=0;
|
|
26879
26902
|
range.Max=null;
|
|
26880
|
-
|
|
26881
|
-
for(var i=
|
|
26903
|
+
|
|
26904
|
+
for(var i=start,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j)
|
|
26882
26905
|
{
|
|
26883
26906
|
var item = this.Data.Data[i];
|
|
26884
26907
|
if (!item || !item.Vol) continue;
|
|
26885
26908
|
if (range.Max == null) range.Max = item.Vol;
|
|
26886
26909
|
if (range.Max < item.Vol) range.Max = item.Vol;
|
|
26887
26910
|
}
|
|
26911
|
+
|
|
26888
26912
|
|
|
26889
26913
|
if (this.ShareAfterVol==1)
|
|
26890
26914
|
{
|
|
@@ -30394,6 +30418,7 @@ function ChartMinutePriceLine()
|
|
|
30394
30418
|
}
|
|
30395
30419
|
|
|
30396
30420
|
|
|
30421
|
+
//价格数据
|
|
30397
30422
|
var data=this.Data;
|
|
30398
30423
|
for(var i=data.DataOffset,j=0;i<data.Data.length && j<xPointCount;++i,++j)
|
|
30399
30424
|
{
|
|
@@ -40298,7 +40323,6 @@ function FrameSplitMinutePriceY()
|
|
|
40298
40323
|
|
|
40299
40324
|
this.YClose; //昨收
|
|
40300
40325
|
this.Data; //分钟数据
|
|
40301
|
-
this.AverageData; //分钟均线数据
|
|
40302
40326
|
this.SourceData; //原始数据
|
|
40303
40327
|
this.OverlayChartPaint;
|
|
40304
40328
|
this.SplitCount=7;
|
|
@@ -40316,6 +40340,11 @@ function FrameSplitMinutePriceY()
|
|
|
40316
40340
|
|
|
40317
40341
|
this.MultiDayBeforeOpenData;
|
|
40318
40342
|
this.MultiDayAfterCloseData;
|
|
40343
|
+
this.DayOffset;
|
|
40344
|
+
|
|
40345
|
+
this.AverageData; //均线
|
|
40346
|
+
this.DayCount=1;
|
|
40347
|
+
this.GlobalOption;
|
|
40319
40348
|
|
|
40320
40349
|
this.IsEnableDragY=function()
|
|
40321
40350
|
{
|
|
@@ -40479,10 +40508,38 @@ function FrameSplitMinutePriceY()
|
|
|
40479
40508
|
}
|
|
40480
40509
|
}
|
|
40481
40510
|
|
|
40511
|
+
//多日分时图 集合竞价数据
|
|
40512
|
+
this.GetMultiDayBeforeOpenData=function()
|
|
40513
|
+
{
|
|
40514
|
+
if (!this.MultiDayBeforeOpenData || !IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData)) return null;
|
|
40515
|
+
if (!this.DayOffset) return this.MultiDayBeforeOpenData;
|
|
40516
|
+
if (!IFrameSplitOperator.IsNumber(this.DayOffset.Offset) || !IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount)) return null;
|
|
40517
|
+
if (this.GlobalOption && this.GlobalOption.IsValueFullRange===true) return this.MultiDayBeforeOpenData;
|
|
40518
|
+
|
|
40519
|
+
var showCount= this.DayOffset.ShowDayCount;
|
|
40520
|
+
var offset=this.DayOffset.Offset;
|
|
40521
|
+
var aryData=this.MultiDayBeforeOpenData.slice(offset, offset+showCount);
|
|
40522
|
+
return aryData;
|
|
40523
|
+
}
|
|
40524
|
+
|
|
40525
|
+
this.GetMultiDayAfterCloseData=function()
|
|
40526
|
+
{
|
|
40527
|
+
if (!this.MultiDayAfterCloseData || !IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData)) return null;
|
|
40528
|
+
if (!this.DayOffset) return this.MultiDayAfterCloseData;
|
|
40529
|
+
if (!IFrameSplitOperator.IsNumber(this.DayOffset.Offset) || !IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount)) return null;
|
|
40530
|
+
if (this.GlobalOption && this.GlobalOption.IsValueFullRange===true) return this.MultiDayAfterCloseData;
|
|
40531
|
+
|
|
40532
|
+
var showCount= this.DayOffset.ShowDayCount;
|
|
40533
|
+
var offset=this.DayOffset.Offset;
|
|
40534
|
+
var aryData=this.MultiDayAfterCloseData.slice(offset, offset+showCount);
|
|
40535
|
+
return aryData;
|
|
40536
|
+
}
|
|
40537
|
+
|
|
40482
40538
|
this.GetMaxMin=function() //计算图中所有的数据的最大最小值
|
|
40483
40539
|
{
|
|
40484
40540
|
var max=this.YClose;
|
|
40485
40541
|
var min=this.YClose;
|
|
40542
|
+
|
|
40486
40543
|
var data=this.Data;
|
|
40487
40544
|
var isBerforeData=false;
|
|
40488
40545
|
if (this.SourceData)
|
|
@@ -40491,31 +40548,72 @@ function FrameSplitMinutePriceY()
|
|
|
40491
40548
|
isBerforeData=true;
|
|
40492
40549
|
}
|
|
40493
40550
|
|
|
40494
|
-
|
|
40551
|
+
if (this.DayCount>1) //多日
|
|
40495
40552
|
{
|
|
40496
|
-
var
|
|
40497
|
-
|
|
40553
|
+
var offset=this.DayOffset.DataOffset;
|
|
40554
|
+
var showDataCount=this.DayOffset.ShowDataCount;
|
|
40555
|
+
if (this.GlobalOption && this.GlobalOption.IsValueFullRange===true)
|
|
40498
40556
|
{
|
|
40499
|
-
|
|
40500
|
-
|
|
40501
|
-
else value=item.Close;
|
|
40557
|
+
offset=0;
|
|
40558
|
+
showDataCount=data.Data.length;
|
|
40502
40559
|
}
|
|
40503
|
-
|
|
40560
|
+
|
|
40561
|
+
for(var i=offset, j=0; i<data.Data.length && j<showDataCount ;++i,++j)
|
|
40504
40562
|
{
|
|
40505
|
-
value=
|
|
40563
|
+
var value=null;
|
|
40564
|
+
if (isBerforeData)
|
|
40565
|
+
{
|
|
40566
|
+
var item=data.Data[i];
|
|
40567
|
+
if (item.Before) value=item.Before.Close;
|
|
40568
|
+
else value=item.Close;
|
|
40569
|
+
}
|
|
40570
|
+
else
|
|
40571
|
+
{
|
|
40572
|
+
value=data.Data[i];
|
|
40573
|
+
}
|
|
40574
|
+
if (value==null) continue;
|
|
40575
|
+
if (max<value) max=value;
|
|
40576
|
+
if (min>value) min=value;
|
|
40577
|
+
}
|
|
40578
|
+
|
|
40579
|
+
if (this.AverageData)
|
|
40580
|
+
{
|
|
40581
|
+
for(var i=offset,j=0; i<this.AverageData.Data.length && j<showDataCount; ++i,++j)
|
|
40582
|
+
{
|
|
40583
|
+
if (this.AverageData.Data[i]==null) continue;
|
|
40584
|
+
if (max<this.AverageData.Data[i]) max=this.AverageData.Data[i];
|
|
40585
|
+
if (min>this.AverageData.Data[i]) min=this.AverageData.Data[i];
|
|
40586
|
+
}
|
|
40506
40587
|
}
|
|
40507
|
-
if (value==null) continue;
|
|
40508
|
-
if (max<value) max=value;
|
|
40509
|
-
if (min>value) min=value;
|
|
40510
40588
|
}
|
|
40511
|
-
|
|
40512
|
-
if (this.AverageData)
|
|
40589
|
+
else
|
|
40513
40590
|
{
|
|
40514
|
-
for(var i
|
|
40591
|
+
for(var i=0;i<data.Data.length;++i)
|
|
40592
|
+
{
|
|
40593
|
+
var value=null;
|
|
40594
|
+
if (isBerforeData)
|
|
40595
|
+
{
|
|
40596
|
+
var item=data.Data[i];
|
|
40597
|
+
if (item.Before) value=item.Before.Close;
|
|
40598
|
+
else value=item.Close;
|
|
40599
|
+
}
|
|
40600
|
+
else
|
|
40601
|
+
{
|
|
40602
|
+
value=data.Data[i];
|
|
40603
|
+
}
|
|
40604
|
+
if (value==null) continue;
|
|
40605
|
+
if (max<value) max=value;
|
|
40606
|
+
if (min>value) min=value;
|
|
40607
|
+
}
|
|
40608
|
+
|
|
40609
|
+
if (this.AverageData)
|
|
40515
40610
|
{
|
|
40516
|
-
|
|
40517
|
-
|
|
40518
|
-
|
|
40611
|
+
for(var i=0;i<this.AverageData.Data.length;++i)
|
|
40612
|
+
{
|
|
40613
|
+
if (this.AverageData.Data[i]==null) continue;
|
|
40614
|
+
if (max<this.AverageData.Data[i]) max=this.AverageData.Data[i];
|
|
40615
|
+
if (min>this.AverageData.Data[i]) min=this.AverageData.Data[i];
|
|
40616
|
+
}
|
|
40519
40617
|
}
|
|
40520
40618
|
}
|
|
40521
40619
|
|
|
@@ -40551,20 +40649,22 @@ function FrameSplitMinutePriceY()
|
|
|
40551
40649
|
this.GetCallAuctionMaxMin(this.BeforeOpenData,range);
|
|
40552
40650
|
}
|
|
40553
40651
|
|
|
40554
|
-
|
|
40652
|
+
var multiDayBeforeOpenData=this.GetMultiDayBeforeOpenData();
|
|
40653
|
+
if (multiDayBeforeOpenData && this.ChartBorder.MultiDayMinute.Count>1 && this.ChartBorder.MultiDayMinute.Left>0)
|
|
40555
40654
|
{
|
|
40556
|
-
for(var i
|
|
40655
|
+
for(var i=0;i<multiDayBeforeOpenData.length; ++i)
|
|
40557
40656
|
{
|
|
40558
|
-
var dayItem=
|
|
40657
|
+
var dayItem=multiDayBeforeOpenData[i];
|
|
40559
40658
|
this.GetCallAuctionMaxMin(dayItem,range);
|
|
40560
40659
|
}
|
|
40561
40660
|
}
|
|
40562
40661
|
|
|
40563
|
-
|
|
40662
|
+
var multiDayAfterCloseData=this.GetMultiDayAfterCloseData();
|
|
40663
|
+
if (multiDayAfterCloseData && this.ChartBorder.MultiDayMinute.Count>1 && this.ChartBorder.MultiDayMinute.Right>0)
|
|
40564
40664
|
{
|
|
40565
|
-
for(var i
|
|
40665
|
+
for(var i=0;i<multiDayAfterCloseData.length; ++i)
|
|
40566
40666
|
{
|
|
40567
|
-
var dayItem=
|
|
40667
|
+
var dayItem=multiDayAfterCloseData[i];
|
|
40568
40668
|
this.GetCallAuctionMaxMin(dayItem,range);
|
|
40569
40669
|
}
|
|
40570
40670
|
}
|
|
@@ -40777,6 +40877,7 @@ function FrameSplitMinuteX()
|
|
|
40777
40877
|
if (IFrameSplitOperator.IsNumber(this.DayOffset.ShowDayCount)) showDayCount=this.DayOffset.ShowDayCount;
|
|
40778
40878
|
}
|
|
40779
40879
|
this.DayOffset.DataOffset=offset*minuteCount;
|
|
40880
|
+
this.DayOffset.ShowDataCount=this.DayOffset.ShowDayCount*minuteCount;
|
|
40780
40881
|
|
|
40781
40882
|
for(var i=this.DayData.length-1-offset, j=0; i>=0 && j<showDayCount; --i,++j)
|
|
40782
40883
|
{
|
|
@@ -60378,6 +60479,7 @@ function MinuteChartContainer(uielement)
|
|
|
60378
60479
|
|
|
60379
60480
|
this.DayOffset={ Offset:0, ShowDayCount:-1, DataOffset:0, DayCount:1, }; //Offset 日期偏移 , DataOffset数据偏移
|
|
60380
60481
|
this.PageInfo={ Enable:false, Offset:-8888, ShowDayCount:4 }; //分页配置
|
|
60482
|
+
|
|
60381
60483
|
|
|
60382
60484
|
//集合竞价设置 obj={ Left:true/false, Right:true/false, MultiDay:{Left:, Right:} }
|
|
60383
60485
|
this.SetCallCationDataBorder=function(obj)
|
|
@@ -61778,6 +61880,7 @@ function MinuteChartContainer(uielement)
|
|
|
61778
61880
|
frame.Canvas=this.Canvas;
|
|
61779
61881
|
frame.ChartBorder=border;
|
|
61780
61882
|
frame.Identify=i;
|
|
61883
|
+
frame.GlobalOption=this.GlobalOption;
|
|
61781
61884
|
if (i<2) frame.ChartBorder.TitleHeight=0;
|
|
61782
61885
|
frame.XPointCount=243;
|
|
61783
61886
|
|
|
@@ -61796,6 +61899,8 @@ function MinuteChartContainer(uielement)
|
|
|
61796
61899
|
frame.YSplitOperator=new FrameSplitMinutePriceY();
|
|
61797
61900
|
frame.YSplitOperator.FrameSplitData=this.FrameSplitData.get('price');
|
|
61798
61901
|
frame.YSplitOperator.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
|
|
61902
|
+
frame.YSplitOperator.DayOffset=this.DayOffset;
|
|
61903
|
+
frame.YSplitOperator.GlobalOption=this.GlobalOption;
|
|
61799
61904
|
}
|
|
61800
61905
|
else
|
|
61801
61906
|
{
|
|
@@ -61847,6 +61952,7 @@ function MinuteChartContainer(uielement)
|
|
|
61847
61952
|
frame.ChartBorder=border;
|
|
61848
61953
|
frame.Identify=id; //窗口序号
|
|
61849
61954
|
frame.XPointCount=243;
|
|
61955
|
+
frame.GlobalOption=this.GlobalOption;
|
|
61850
61956
|
|
|
61851
61957
|
|
|
61852
61958
|
if (id>=2)
|
|
@@ -62707,16 +62813,6 @@ function MinuteChartContainer(uielement)
|
|
|
62707
62813
|
//外汇 均线暂时不用
|
|
62708
62814
|
if (MARKET_SUFFIX_NAME.IsForeignExchange(upperSymbol)) this.ChartPaint[1].Data=null;
|
|
62709
62815
|
|
|
62710
|
-
if (this.Frame.SubFrame.length>2)
|
|
62711
|
-
{
|
|
62712
|
-
var bindData=new ChartData();
|
|
62713
|
-
bindData.Data=allMinuteData;
|
|
62714
|
-
for(var i=2; i<this.Frame.SubFrame.length; ++i)
|
|
62715
|
-
{
|
|
62716
|
-
this.BindIndexData(i,bindData);
|
|
62717
|
-
}
|
|
62718
|
-
}
|
|
62719
|
-
|
|
62720
62816
|
for(let i=0; i<this.Frame.SubFrame.length; ++i)
|
|
62721
62817
|
{
|
|
62722
62818
|
var item=this.Frame.SubFrame[i];
|
|
@@ -62747,6 +62843,17 @@ function MinuteChartContainer(uielement)
|
|
|
62747
62843
|
this.UpdateFrameMaxMin(); //调整坐标最大 最小值
|
|
62748
62844
|
this.Frame.SetSizeChage(true);
|
|
62749
62845
|
this.Draw();
|
|
62846
|
+
|
|
62847
|
+
//执行脚本
|
|
62848
|
+
if (this.Frame.SubFrame.length>2)
|
|
62849
|
+
{
|
|
62850
|
+
var bindData=new ChartData();
|
|
62851
|
+
bindData.Data=allMinuteData;
|
|
62852
|
+
for(var i=2; i<this.Frame.SubFrame.length; ++i)
|
|
62853
|
+
{
|
|
62854
|
+
this.BindIndexData(i,bindData);
|
|
62855
|
+
}
|
|
62856
|
+
}
|
|
62750
62857
|
}
|
|
62751
62858
|
|
|
62752
62859
|
this.HistoryMinuteDataToArray=function(data)
|
|
@@ -63364,11 +63471,12 @@ function MinuteChartContainer(uielement)
|
|
|
63364
63471
|
else if (MARKET_SUFFIX_NAME.IsShowAvPrice && !MARKET_SUFFIX_NAME.IsShowAvPrice(upperSymbol)) //外部控制是否显示均线
|
|
63365
63472
|
this.ChartPaint[1].Data=null;
|
|
63366
63473
|
|
|
63367
|
-
firstFrame.YSplitOperator.AverageData=bindData;
|
|
63474
|
+
firstFrame.YSplitOperator.AverageData=bindData; //均线
|
|
63368
63475
|
firstFrame.YSplitOperator.OverlayChartPaint=this.OverlayChartPaint;
|
|
63369
63476
|
firstFrame.YSplitOperator.LimitPrice=this.LimitPrice;
|
|
63370
63477
|
firstFrame.YSplitOperator.MultiDayBeforeOpenData=multiBeforeOpenData;
|
|
63371
63478
|
firstFrame.YSplitOperator.MultiDayAfterCloseData=multiAfterCloseData;
|
|
63479
|
+
firstFrame.YSplitOperator.DayCount=this.DayCount;
|
|
63372
63480
|
if (extendData)
|
|
63373
63481
|
{
|
|
63374
63482
|
firstFrame.YSplitOperator.High=extendData.High;
|