hqchart 1.1.15326 → 1.1.15329

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.
@@ -2343,7 +2343,8 @@ if(step<=0)return false;return this.Frame.XCoordinateZoom(isMoveLeft);};//获取
2343
2343
  this.GetSubFrameIndex=function(x,y){if(!this.Frame.SubFrame||this.Frame.SubFrame.length<=0)return-1;for(var i in this.Frame.SubFrame){var frame=this.Frame.SubFrame[i].Frame;var left=frame.ChartBorder.GetLeft();var top=frame.ChartBorder.GetTop();var height=frame.ChartBorder.GetHeight();var width=frame.ChartBorder.GetWidth();this.Canvas.beginPath();this.Canvas.rect(left,top,width,height);if(this.Canvas.isPointInPath(x,y))return parseInt(i);}return 0;};//根据X坐标获取数据索引
2344
2344
  this.GetDataIndexByPoint=function(x){var frame=this.Frame;if(this.Frame.SubFrame&&this.Frame.SubFrame.length>0)frame=this.Frame.SubFrame[0].Frame;var data=null;if(this.Frame.Data)data=this.Frame.Data;else data=this.Frame.SubFrame[0].Frame.Data;if(!data||!frame)return;var index=parseInt(frame.GetXData(x));//JSConsole.Chart.Log('x='+ x +' date='+data.Data[data.DataOffset+index].Date);
2345
2345
  return data.DataOffset+index;};//获取主数据
2346
- this.GetSelectRectData=function(selectData){if(Math.abs(selectData.XStart-selectData.XEnd)<5)return false;var startClientPos=this.PtInClient(selectData.XStart,selectData.YStart);var endClientPos=this.PtInClient(selectData.XEnd,selectData.YEnd);var data=null;if(this.Frame.Data)data=this.Frame.Data;else data=this.Frame.SubFrame[0].Frame.Data;if(!data)return false;var start=this.GetDataIndexByPoint(selectData.XStart);var end=this.GetDataIndexByPoint(selectData.XEnd);if(Math.abs(start-end)<2)return false;selectData.Data=data;if(start>end){selectData.Start=end;selectData.End=start;}else{selectData.Start=start;selectData.End=end;}return true;};//获取当前的点对应的 画图工具的图形
2346
+ this.GetSelectRectData=function(selectData){if(Math.abs(selectData.XStart-selectData.XEnd)<5)return false;var startClientPos=this.PtInClient(selectData.XStart,selectData.YStart);var endClientPos=this.PtInClient(selectData.XEnd,selectData.YEnd);var data=this.GetKData();if(!data||!IFrameSplitOperator.IsNonEmptyArray(data.Data))return false;var start=this.GetDataIndexByPoint(selectData.XStart);var end=this.GetDataIndexByPoint(selectData.XEnd);if(end<0||start<0)return false;//if (Math.abs(start-end)<2) return false;
2347
+ selectData.Data=data;if(start>end){selectData.Start=end;selectData.End=start;}else{selectData.Start=start;selectData.End=end;}return true;};//获取当前的点对应的 画图工具的图形
2347
2348
  //data.X data.Y 鼠标位置 返回 data.ChartDrawPicture 数据在画图工具 data.PointIndex 在画图工具对应点索引
2348
2349
  this.GetChartDrawPictureByPoint=function(data){for(var i=0;i<this.ChartDrawPicture.length;++i){var item=this.ChartDrawPicture[i];var pointIndex=item.IsPointIn(data.X,data.Y,this.ChartDrawOption);if(pointIndex===false)continue;if(pointIndex>=0){data.ChartDrawPicture=item;data.PointIndex=pointIndex;if(item.GetCursorType)data.Cursor=item.GetCursorType(pointIndex);//鼠标形状
2349
2350
  return true;}}return false;};// 保存图片
@@ -3895,6 +3896,7 @@ this.DrawType=0;// 0=实心K线柱子 1=收盘价线 2=美国线 3=空心K线
3895
3896
  // 16=kagi
3896
3897
  // 17=订单流样式4
3897
3898
  // 18=订单流样式5
3899
+ // 19=HLC bars
3898
3900
  this.CloseLineColor=g_JSChartResource.CloseLineColor;this.CloseLineAreaColor=g_JSChartResource.CloseLineAreaColor;this.CloseLineWidth=g_JSChartResource.CloseLineWidth;this.UpColor=g_JSChartResource.UpBarColor;this.DownColor=g_JSChartResource.DownBarColor;this.UnchagneColor=g_JSChartResource.UnchagneBarColor;//平盘
3899
3901
  this.ColorData;//五彩K线颜色 >0:g_JSChartResource.UpBarColor 其他:g_JSChartResource.DownBarColor
3900
3902
  this.TradeData;//交易系统 包含买卖数据{Buy:, Sell:, Name:指标名称 }
@@ -3917,7 +3919,7 @@ this.OneLimitBarType=0;//一字板颜色类型 4个价格全部都在同一个
3917
3919
  this.UnchangeBarType=0;//0=使用unchange color 1=和昨收比较
3918
3920
  this.EnableColorBar=false;//K线柱子是否支持自定义颜色
3919
3921
  this.HighLowBarColor=g_JSChartResource.HighLowBarColor;this.HighLowTextConfig={FontName:g_JSChartResource.HighLowText.FontName,MaxSize:g_JSChartResource.HighLowText.MaxSize,MinSize:g_JSChartResource.HighLowText.MinSize,Color:g_JSChartResource.HighLowText.Color,//未用
3920
- MaxText:g_JSChartResource.HighLowText.MaxText};this.HLCAreaConfig={HighLineColor:g_JSChartResource.HLCArea.HighLineColor,LowLineColor:g_JSChartResource.HLCArea.LowLineColor,CloseLineColor:g_JSChartResource.HLCArea.CloseLineColor,LineWidth:g_JSChartResource.HLCArea.LineWidth,UpAreaColor:g_JSChartResource.HLCArea.UpAreaColor,DownAreaColor:g_JSChartResource.HLCArea.DownAreaColor//虚线柱子 (非交易日)
3922
+ MaxText:g_JSChartResource.HighLowText.MaxText};this.HLCAreaConfig={HighLineColor:g_JSChartResource.HLCArea.HighLineColor,LowLineColor:g_JSChartResource.HLCArea.LowLineColor,CloseLineColor:g_JSChartResource.HLCArea.CloseLineColor,LineWidth:g_JSChartResource.HLCArea.LineWidth,UpAreaColor:g_JSChartResource.HLCArea.UpAreaColor,DownAreaColor:g_JSChartResource.HLCArea.DownAreaColor};this.HLCBarConfig={Color:g_JSChartResource.HLCBar.Color,Width:g_JSChartResource.HLCBar.Width//虚线柱子 (非交易日)
3921
3923
  };this.VirtualBarConfig={Color:g_JSChartResource.VirtualKLine.Color,LineDash:g_JSChartResource.VirtualKLine.LineDash};//预测线配置
3922
3924
  this.PredictionConfig={Line:{Color:g_JSChartResource.PredictionKLine.Line.Color,LineDash:g_JSChartResource.PredictionKLine.Line.LineDash,LineWidth:g_JSChartResource.PredictionKLine.Line.LineWidth},Bar:{UpColor:g_JSChartResource.PredictionKLine.Bar.UpColor,DownColor:g_JSChartResource.PredictionKLine.Bar.DownColor,UnchangeColor:g_JSChartResource.PredictionKLine.Bar.UnchangeColor,DrawType:g_JSChartResource.PredictionKLine.Bar.DrawType},Enable:false//是否启动
3923
3925
  };this.AryPredictionCache=[];//预测数据
@@ -3959,7 +3961,11 @@ if(this.GetEventCallback){eventUnchangeKLine=this.GetEventCallback(JSCHART_EVENT
3959
3961
  {if(i<this.ColorData.length)upColor=downColor=unchagneColor=this.ColorData[i]>0?this.UpColor:this.DownColor;else upColor=downColor=unchagneColor=this.DownColor;}if(this.IsThinAKBar==false&&dataWidth>=9){var coordinateInfo={YLow:yLow,YHigh:yHigh,YOpen:yOpen,YClose:yClose,X:x,Left:left,Right:right};var colorInfo={UpColor:upColor,DownColor:downColor,UnchangeColor:unchagneColor};this.DrawAKBar(data,dataWidth,isHScreen,coordinateInfo,colorInfo);}else{this.Canvas.beginPath();//最高-最低
3960
3962
  if(isHScreen){if(data.High==data.Low&&dataWidth<4){this.Canvas.moveTo(yHigh,ToFixedPoint(x));this.Canvas.lineTo(yLow-1,ToFixedPoint(x));}else{this.Canvas.moveTo(yHigh,ToFixedPoint(x));this.Canvas.lineTo(yLow,ToFixedPoint(x));}}else{if(data.High==data.Low&&dataWidth<4){this.Canvas.moveTo(ToFixedPoint(x),yHigh);this.Canvas.lineTo(ToFixedPoint(x),yLow+1);}else{this.Canvas.moveTo(ToFixedPoint(x),yHigh);this.Canvas.lineTo(ToFixedPoint(x),yLow);}}this.Canvas.stroke();if(dataWidth>=4){this.Canvas.beginPath();//开盘
3961
3963
  if(isHScreen){this.Canvas.moveTo(ToFixedPoint(yOpen),left);this.Canvas.lineTo(ToFixedPoint(yOpen),x);}else{this.Canvas.moveTo(left,ToFixedPoint(yOpen));this.Canvas.lineTo(x,ToFixedPoint(yOpen));}this.Canvas.stroke();this.Canvas.beginPath();//收盘
3962
- if(isHScreen){this.Canvas.moveTo(ToFixedPoint(yClose),right);this.Canvas.lineTo(ToFixedPoint(yClose),x);}else{this.Canvas.moveTo(right,ToFixedPoint(yClose));this.Canvas.lineTo(x,ToFixedPoint(yClose));}this.Canvas.stroke();}}if(this.Data.DataType==0){var infoItem={Xleft:left,XRight:right,YMax:yHigh,XCenter:x,YMin:yLow,DayData:data,Index:j};this.DrawInfo(infoItem);}if(this.PriceGap.Enable&&preKItemInfo){this.CheckPriceGap(kItemInfo);var value=this.IsPriceGap(kItemInfo,preKItemInfo);if(value>0)this.AryPriceGapCache.push({Data:[preKItemInfo,kItemInfo],Type:value});}preKItemInfo=kItemInfo;}this.PtMax=ptMax;this.PtMin=ptMin;};this.DrawAKBar=function(data,dataWidth,isHScreen,coordinateInfo,colorInfo){var barWidth=dataWidth/3;var left=ToFixedRect(coordinateInfo.Left);var aryX=[left,ToFixedRect(left+barWidth),ToFixedRect(left+barWidth*2),ToFixedRect(left+barWidth*3)];var yHigh=coordinateInfo.YHigh,yLow=coordinateInfo.YLow,yOpen=coordinateInfo.YOpen,yClose=coordinateInfo.YClose;if(data.Open<data.Close){this.Canvas.strokeStyle=colorInfo.UpColor;//阳线
3964
+ if(isHScreen){this.Canvas.moveTo(ToFixedPoint(yClose),right);this.Canvas.lineTo(ToFixedPoint(yClose),x);}else{this.Canvas.moveTo(right,ToFixedPoint(yClose));this.Canvas.lineTo(x,ToFixedPoint(yClose));}this.Canvas.stroke();}}if(this.Data.DataType==0){var infoItem={Xleft:left,XRight:right,YMax:yHigh,XCenter:x,YMin:yLow,DayData:data,Index:j};this.DrawInfo(infoItem);}if(this.PriceGap.Enable&&preKItemInfo){this.CheckPriceGap(kItemInfo);var value=this.IsPriceGap(kItemInfo,preKItemInfo);if(value>0)this.AryPriceGapCache.push({Data:[preKItemInfo,kItemInfo],Type:value});}preKItemInfo=kItemInfo;}this.PtMax=ptMax;this.PtMin=ptMin;};this.DrawHLCBars=function(){var isHScreen=this.ChartFrame.IsHScreen===true;var dataWidth=this.ChartFrame.DataWidth;var distanceWidth=this.ChartFrame.DistanceWidth;var xPointCount=this.ChartFrame.XPointCount;if(isHScreen){var border=this.ChartBorder.GetHScreenBorder();var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.BottomEx;}else{var border=this.ChartBorder.GetBorder();var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;var chartright=border.RightEx;}var ptMax={X:null,Y:null,Value:null,Align:'left'};var ptMin={X:null,Y:null,Value:null,Align:'left'};this.ShowRange.Start=this.Data.DataOffset;this.ShowRange.End=this.ShowRange.Start;this.ShowRange.DataCount=0;this.ShowRange.ShowCount=xPointCount;this.DrawKRange.Start=this.Data.DataOffset;var preKItemInfo=null;for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length&&j<xPointCount;++i,++j,xOffset+=dataWidth+distanceWidth,++this.ShowRange.DataCount){var data=this.Data.Data[i];this.ShowRange.End=i;if(data.Open==null||data.High==null||data.Low==null||data.Close==null)continue;var left=xOffset;var right=xOffset+dataWidth;if(right>chartright)break;var x=left+(right-left)/2;var yLow=this.GetYFromData(data.Low,false);var yHigh=this.GetYFromData(data.High,false);var yOpen=this.GetYFromData(data.Open,false);var yClose=this.GetYFromData(data.Close,false);this.DrawKRange.End=i;this.AddToDaySummary(data);var kItemInfo={Data:data,Coordinate:{X:x,Low:yLow,High:yHigh,Close:yClose,Open:yOpen,Left:left,Right:right}};if(ptMax.Value==null||ptMax.Value<data.High)//求最大值
3965
+ {ptMax.X=x;ptMax.Y=yHigh;ptMax.Value=data.High;ptMax.Align=j<xPointCount/2?'left':'right';}if(ptMin.Value==null||ptMin.Value>data.Low)//求最小值
3966
+ {ptMin.X=x;ptMin.Y=yLow;ptMin.Value=data.Low;ptMin.Align=j<xPointCount/2?'left':'right';}this.Canvas.strokeStyle=this.HLCBarConfig.Color;this.Canvas.beginPath();//最高-最低
3967
+ if(isHScreen){if(data.High==data.Low&&dataWidth<4){this.Canvas.moveTo(yHigh,ToFixedPoint(x));this.Canvas.lineTo(yLow-1,ToFixedPoint(x));}else{this.Canvas.moveTo(yHigh,ToFixedPoint(x));this.Canvas.lineTo(yLow,ToFixedPoint(x));}}else{if(data.High==data.Low&&dataWidth<4){this.Canvas.moveTo(ToFixedPoint(x),yHigh);this.Canvas.lineTo(ToFixedPoint(x),yLow+1);}else{this.Canvas.moveTo(ToFixedPoint(x),yHigh);this.Canvas.lineTo(ToFixedPoint(x),yLow);}}this.Canvas.stroke();if(dataWidth>=4){this.Canvas.beginPath();//收盘
3968
+ if(isHScreen){this.Canvas.moveTo(ToFixedPoint(yClose),right);this.Canvas.lineTo(ToFixedPoint(yClose),x);}else{this.Canvas.moveTo(right,ToFixedPoint(yClose));this.Canvas.lineTo(x,ToFixedPoint(yClose));}this.Canvas.stroke();}if(this.Data.DataType==0){var infoItem={Xleft:left,XRight:right,YMax:yHigh,XCenter:x,YMin:yLow,DayData:data,Index:j};this.DrawInfo(infoItem);}if(this.PriceGap.Enable&&preKItemInfo){this.CheckPriceGap(kItemInfo);var value=this.IsPriceGap(kItemInfo,preKItemInfo);if(value>0)this.AryPriceGapCache.push({Data:[preKItemInfo,kItemInfo],Type:value});}preKItemInfo=kItemInfo;}this.PtMax=ptMax;this.PtMin=ptMin;};this.DrawAKBar=function(data,dataWidth,isHScreen,coordinateInfo,colorInfo){var barWidth=dataWidth/3;var left=ToFixedRect(coordinateInfo.Left);var aryX=[left,ToFixedRect(left+barWidth),ToFixedRect(left+barWidth*2),ToFixedRect(left+barWidth*3)];var yHigh=coordinateInfo.YHigh,yLow=coordinateInfo.YLow,yOpen=coordinateInfo.YOpen,yClose=coordinateInfo.YClose;if(data.Open<data.Close){this.Canvas.strokeStyle=colorInfo.UpColor;//阳线
3963
3969
  this.Canvas.fillStyle=colorInfo.UpColor;}else if(data.Open>data.Close){this.Canvas.strokeStyle=colorInfo.DownColor;//阳线
3964
3970
  this.Canvas.fillStyle=colorInfo.DownColor;}else{this.Canvas.strokeStyle=colorInfo.UnchangeColor;//平线
3965
3971
  this.Canvas.fillStyle=colorInfo.UnchangeColor;}//最高-最低
@@ -4130,7 +4136,7 @@ this.Canvas.clip();};this.ClearLastPoint=function(){this.LastPoint={};if(this.Ch
4130
4136
  this.PtMin={X:null,Y:null,Value:null,Align:'left'};//清空最小
4131
4137
  this.DrawKRange={Start:null,End:null};this.AryPriceGapCache=[];this.AryPredictionCache=[];this.ChartFrame.ChartKLine={Max:null,Min:null};//保存K线上 显示最大最小值坐标
4132
4138
  this.DrawHeatMap();if(!this.IsShow)return;if(this.ChartFrame.IsMinSize&&this.Name=="Self Kline")return;if(ChartData.IsTickPeriod(this.Period))//分笔图
4133
- {this.Canvas.save();if(this.DrawType==1){this.ClipClient(this.ChartFrame.IsHScreen);this.DrawCloseLine();}else if(this.DrawType==4){this.ClipClient(this.ChartFrame.IsHScreen);this.DrawCloseArea();}else{this.ClipTickClient(this.ChartFrame.IsHScreen);this.DrawTick();}this.Canvas.restore();return;}this.Canvas.save();this.ClipClient(this.ChartFrame.IsHScreen);if(this.DrawType==1){this.DrawCloseLine();this.Canvas.restore();this.DrawPredictionLine();if(this.PriceGap.Enable)this.DrawPriceGap();this.UpdateGlobalLatestPoint();return;}else if(this.DrawType==2){this.DrawAKLine();}else if(this.DrawType==4){this.DrawCloseArea();}else if(this.DrawType==5){this.DrawOrderFlow();}else if(this.DrawType==7){this.DrawOrderFlow_Style2();}else if(this.DrawType==8){this.DrawOrderFlow_Style3();}else if(this.DrawType==9){this.DrawKBar();}else if(this.DrawType==10){this.DrawRenkoCandle();}else if(this.DrawType==12){this.DrawLineBreak();}else if(this.DrawType==13){this.DrawHighLow();}else if(this.DrawType==14){if(this.FFKChart&&this.FFKChart.Draw){this.FFKChart.Draw(this);}}else if(this.DrawType==15){this.DrawHLCArea();}else if(this.DrawType==16){this.DrawKagi();}else if(this.DrawType==17){this.DrawOrderFlow_Style4();}else if(this.DrawType==18){this.DrawOrderFlow_Style5();}else{this.DrawKBar();}if(this.TradeIcon)this.DrawTradeIcon();else this.DrawTrade();if(this.PriceGap.Enable)this.DrawPriceGap();this.Canvas.restore();this.UpdateGlobalLatestPoint();this.DrawPredictionLine();if(this.IsShowMaxMinPrice)//标注最大值最小值
4139
+ {this.Canvas.save();if(this.DrawType==1){this.ClipClient(this.ChartFrame.IsHScreen);this.DrawCloseLine();}else if(this.DrawType==4){this.ClipClient(this.ChartFrame.IsHScreen);this.DrawCloseArea();}else{this.ClipTickClient(this.ChartFrame.IsHScreen);this.DrawTick();}this.Canvas.restore();return;}this.Canvas.save();this.ClipClient(this.ChartFrame.IsHScreen);if(this.DrawType==1){this.DrawCloseLine();this.Canvas.restore();this.DrawPredictionLine();if(this.PriceGap.Enable)this.DrawPriceGap();this.UpdateGlobalLatestPoint();return;}else if(this.DrawType==2){this.DrawAKLine();}else if(this.DrawType==4){this.DrawCloseArea();}else if(this.DrawType==5){this.DrawOrderFlow();}else if(this.DrawType==7){this.DrawOrderFlow_Style2();}else if(this.DrawType==8){this.DrawOrderFlow_Style3();}else if(this.DrawType==9){this.DrawKBar();}else if(this.DrawType==10){this.DrawRenkoCandle();}else if(this.DrawType==12){this.DrawLineBreak();}else if(this.DrawType==13){this.DrawHighLow();}else if(this.DrawType==14){if(this.FFKChart&&this.FFKChart.Draw){this.FFKChart.Draw(this);}}else if(this.DrawType==15){this.DrawHLCArea();}else if(this.DrawType==16){this.DrawKagi();}else if(this.DrawType==17){this.DrawOrderFlow_Style4();}else if(this.DrawType==18){this.DrawOrderFlow_Style5();}else if(this.DrawType==19){this.DrawHLCBars();}else{this.DrawKBar();}if(this.TradeIcon)this.DrawTradeIcon();else this.DrawTrade();if(this.PriceGap.Enable)this.DrawPriceGap();this.Canvas.restore();this.UpdateGlobalLatestPoint();this.DrawPredictionLine();if(this.IsShowMaxMinPrice)//标注最大值最小值
4134
4140
  {if(this.ChartFrame.IsHScreen===true)this.HScreenDrawMaxMinPrice(this.PtMax,this.PtMin);else this.DrawMaxMinPrice(this.PtMax,this.PtMin);}if(this.DrawType==14)//自定义图形 标注最大最小值
4135
4141
  {if(this.FFKChart&&this.FFKChart.DrawMaxMinPrice){this.FFKChart.DrawMaxMinPrice();}}this.DrawDaySummary();};this.OnFormatHighLowTitle=function(ptMax,ptMin){if(!ptMax||!ptMin)return null;if(!IFrameSplitOperator.IsNumber(ptMax.Value)||!IFrameSplitOperator.IsNumber(ptMin.Value))return null;var defaultfloatPrecision=GetfloatPrecision(this.Symbol);//小数位数
4136
4142
  var title={High:ptMax.Value.toFixed(defaultfloatPrecision),Low:ptMin.Value.toFixed(defaultfloatPrecision)};if(!this.GetEventCallback)return title;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_KLINE_HIGH_LOW_TITLE);if(!event||!event.Callback)return title;var data={Max:ptMax,Min:ptMin,Symbol:this.Symbol,Title:{High:title.High,Low:title.Low},Decimal:defaultfloatPrecision,PreventDefault:false};event.Callback(event,data,this);if(data.PreventDefault)return data.Title;//使用外部回调的数值
@@ -7441,7 +7447,7 @@ this.DownBarColor="rgb(25,158,0)";//下跌柱子颜色
7441
7447
  this.UnchagneBarColor="rgb(0,0,0)";//平盘柱子颜色
7442
7448
  this.EmptyBarBGColor="rgb(255,255,255)";//空心柱子背景色
7443
7449
  this.HighLowBarColor='rgb(41,98,255)';//high low bar 颜色
7444
- this.HighLowText={FontName:"arial",MaxSize:30,MinSize:4,Color:"rgb(41,98,255)",MaxText:"9999.9"};this.SplashScreen={BGColor:"rgba(112,128,144,0.5)",Title:"下载数据中......",TextColor:"rgb(43,54,69)",Font:14*GetDevicePixelRatio()+'px 微软雅黑'};this.HLCArea={HighLineColor:'rgb(242,54,69)',LowLineColor:"rgb(8,153,129)",CloseLineColor:"rgb(224,227,227)",LineWidth:2*GetDevicePixelRatio(),UpAreaColor:"rgba(253,214,218, 0.5)",DownAreaColor:"rgba(205,235,230, 0.5)"};this.Minute={};this.Minute.VolBarColor=null;//分时图成交量柱子颜色 默认不用, 设置了柱子就不是红绿了
7450
+ this.HighLowText={FontName:"arial",MaxSize:30,MinSize:4,Color:"rgb(41,98,255)",MaxText:"9999.9"};this.SplashScreen={BGColor:"rgba(112,128,144,0.5)",Title:"下载数据中......",TextColor:"rgb(43,54,69)",Font:14*GetDevicePixelRatio()+'px 微软雅黑'};this.HLCArea={HighLineColor:'rgb(242,54,69)',LowLineColor:"rgb(8,153,129)",CloseLineColor:"rgb(224,227,227)",LineWidth:2*GetDevicePixelRatio(),UpAreaColor:"rgba(253,214,218, 0.5)",DownAreaColor:"rgba(205,235,230, 0.5)"};this.HLCBar={Color:"rgb(41, 98, 255)",Width:1*GetDevicePixelRatio()};this.Minute={};this.Minute.VolBarColor=null;//分时图成交量柱子颜色 默认不用, 设置了柱子就不是红绿了
7445
7451
  this.Minute.VolTitleColor="rgb(105,105,105)";this.Minute.PriceColor="rgb(50,171,205)";//分时图价格线颜色
7446
7452
  this.Minute.PriceLineWidth=1*GetDevicePixelRatio();//价格线宽度
7447
7453
  this.Minute.AreaPriceColor='rgba(50,171,205,0.1)';//价格的面积图
@@ -8694,7 +8700,7 @@ for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint
8694
8700
  var stockChipConfig={Name:'StockChip',ShowType:1,Width:230};//var stockChipConfig={Name:'StockChipPhone', Width:150 }; //手机版筹码
8695
8701
  var bShowCorss=false;//十字光标十字线
8696
8702
  var bCorssDrawKLine=false;var bCorssDrawVaildTime=false;var bCorssDrawPoint=false;var bCorssBCClick=false;var bCorssShowIncrease=false;var crossXTextAlign=-1;if(this.ChartCorssCursor){bShowCorss=this.ChartCorssCursor.IsShowCorss;bCorssDrawKLine=this.ChartCorssCursor.IsOnlyDrawKLine&&this.ChartCorssCursor.IsShowClose;bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;bCorssBCClick=this.ChartCorssCursor.EnableDBClick;bCorssShowIncrease=this.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow;crossXTextAlign=this.ChartCorssCursor.BottomConfig.Align;}var bPopMinuteChart=false;if(this.PopMinuteChart)bPopMinuteChart=true;var bRButtonSelectRect=false,bLButtonSelectRect=false;if(this.ChartDragSelectRect){bRButtonSelectRect=this.ChartDragSelectRect.EnableRButton;bLButtonSelectRect=this.ChartDragSelectRect.EnableLButton;}var kItem=null;if(frameID>=0&&option&&IFrameSplitOperator.IsNumber(option.CursorIndex)){var kData=this.GetKData();if(kData&&IFrameSplitOperator.IsNonEmptyArray(kData.Data)){var dataIndex=kData.DataOffset+option.CursorIndex;if(dataIndex>=0&&dataIndex<kData.Data.length)kItem=kData.Data[dataIndex];}}//K线浮框 是否显示指标信息
8697
- var bTooltipDialogShowIndexTitle=false;if(this.DialogTooltip){bTooltipDialogShowIndexTitle=this.DialogTooltip.IndexTitle.Enable;}var aryMenu=[{Name:"分析周期",SubMenu:[{Name:"日线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[0]},Checked:this.Period==0},{Name:"周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[1]},Checked:this.Period==1},{Name:"双周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[21]},Checked:this.Period==21},{Name:"月线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[2]},Checked:this.Period==2},{Name:"季线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[9]},Checked:this.Period==9},{Name:"半年",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[22]},Checked:this.Period==22},{Name:"年线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[3]},Checked:this.Period==3},{Name:"1分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[4]},Checked:this.Period==4},{Name:"5分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[5]},Checked:this.Period==5},{Name:"15分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[6]},Checked:this.Period==6},{Name:"30分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[7]},Checked:this.Period==7},{Name:"60分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[8]},Checked:this.Period==8},{Name:"2小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[11]},Checked:this.Period==11},{Name:"4小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[12]},Checked:this.Period==12},{Name:"分笔",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[10]},Checked:this.Period==10},{Name:"自定义周期:3分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20003]},Checked:this.Period==20003},{Name:"自定义周期:35分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20035]},Checked:this.Period==20035},{Name:"自定义周期:8日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[40008]},Checked:this.Period==40008}]},{Name:"指标切换",SubMenu:[{Name:"均线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"均线"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BOLL"]}},{Name:"MACD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD"]}},{Name:"MACD(粗)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD2"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"KDJ"]}},{Name:"VOL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"VOL"]}},{Name:"RSI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"RSI"]}},{Name:"BRAR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BRAR"]}},{Name:"WR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"WR"]}}]},{Name:"五彩K线",SubMenu:[{Name:"十字星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-十字星"]}},{Name:"早晨之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-早晨之星"]}},{Name:"垂死十字",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-垂死十字"]}},{Name:"三只乌鸦",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-三只乌鸦"]}},{Name:"光脚阴线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-光脚阴线"]}},{Name:"黄昏之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-黄昏之星"]}}]},{Name:"专家系统",SubMenu:[{Name:"BIAS",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BIAS"]}},{Name:"CCI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-CCI"]}},{Name:"DMI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-DMI"]}},{Name:"KD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KD"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BOLL"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KDJ"]}}]},{Name:"信息地雷",SubMenu:[{Name:"公告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["公告",!aryKLineInfo.includes("AnnouncementInfo")]},Checked:aryKLineInfo.includes("AnnouncementInfo")},{Name:"业绩预告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["业绩预告",!aryKLineInfo.includes("PforecastInfo")]},Checked:aryKLineInfo.includes("PforecastInfo")},{Name:"调研",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["调研",!aryKLineInfo.includes("ResearchInfo")]},Checked:aryKLineInfo.includes("ResearchInfo")},{Name:"大宗交易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["大宗交易",!aryKLineInfo.includes("BlockTrading")]},Checked:aryKLineInfo.includes("BlockTrading")},{Name:"龙虎榜",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["龙虎榜",!aryKLineInfo.includes("TradeDetail")]},Checked:aryKLineInfo.includes("TradeDetail")},{Name:"互动易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["互动易",!aryKLineInfo.includes("InvestorInfo")]},Checked:aryKLineInfo.includes("InvestorInfo")},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"显示位置",SubMenu:[{Name:"底部",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[1]},Checked:infoPosition===1},{Name:"K线上",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[0]},Checked:infoPosition===0}]}]},{Name:"缺口提示",SubMenu:[{Name:"显示1个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,1]},Checked:priceGap.Enable==true&&priceGap.Count==1},{Name:"显示2个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,2]},Checked:priceGap.Enable==true&&priceGap.Count==2},{Name:"显示3个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,3]},Checked:priceGap.Enable==true&&priceGap.Count==3},{Name:"隐藏缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[false]},Checked:priceGap.Enable==false}]},{Name:"叠加品种",SubMenu:[{Name:"上证指数",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000001.sh",!aryOverlaySymbol.includes("000001.sh")]},Checked:aryOverlaySymbol.includes("000001.sh")},{Name:"深证成指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399001.sz",!aryOverlaySymbol.includes("399001.sz")]},Checked:aryOverlaySymbol.includes("399001.sz")},{Name:"中小板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399005.sz",!aryOverlaySymbol.includes("399005.sz")]},Checked:aryOverlaySymbol.includes("399005.sz")},{Name:"创业板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399006.sz",!aryOverlaySymbol.includes("399006.sz")]},Checked:aryOverlaySymbol.includes("399006.sz")},{Name:"沪深300",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000300.sh",!aryOverlaySymbol.includes("000300.sh")]},Checked:aryOverlaySymbol.includes("000300.sh")}]},{Name:"主图线型",SubMenu:[{Name:"K线(空心阳线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[3]},Checked:klineType==3},{Name:"K线(实心阳线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[0]},Checked:klineType==0},{Name:"美国线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:false}]},Checked:klineType==2&&!bThinAKBar},{Name:"美国线(细)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:true}]},Checked:klineType==2&&bThinAKBar},{Name:"收盘线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[1]},Checked:klineType==1},{Name:"收盘面积",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[4]},Checked:klineType==4},{Name:"K线(空心阳线阴线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[6]},Checked:klineType==6},{Name:"Heikin Ashi",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[11]},Checked:klineType==11},{Name:"Line Break",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[12]},Checked:klineType==12},{Name:"High-low",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[13]},Checked:klineType==13},{Name:"HLC Area",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[15]},Checked:klineType==15}]},{Name:"坐标类型",SubMenu:[{Name:"反转坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{IsReverse:coordinateType==0}]},Checked:coordinateType==1},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"普通坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:0}]},Checked:yCoordinateType==0},{Name:"百分比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:1}]},Checked:yCoordinateType==1},{Name:"对数坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:2}]},Checked:yCoordinateType==2},{Name:"等比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:3}]},Checked:yCoordinateType==3},{Name:"等分坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:4}]},Checked:yCoordinateType==4},{Name:"黄金分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:5}]},Checked:yCoordinateType==5}]},{Name:"指标窗口个数",SubMenu:[{Name:"1个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[2]},Checked:2==windowCount},{Name:"2个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[3]},Checked:3==windowCount},{Name:"3个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[4]},Checked:4==windowCount},{Name:"4个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[5]},Checked:5==windowCount},{Name:"5个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[6]},Checked:6==windowCount}]},{Name:"十字光标",SubMenu:[{Name:"显示",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID,Args:[!bShowCorss]},Checked:bShowCorss},{Name:"显示在K线上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_KLINE_ID,Args:[!bCorssDrawKLine]},Checked:bCorssDrawKLine},{Name:"画在有效X轴上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID,Args:[!bCorssDrawVaildTime]},Checked:bCorssDrawVaildTime},{Name:"画圆点",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID,Args:[!bCorssDrawPoint]},Checked:bCorssDrawPoint},{Name:"双击显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID,Args:[!bCorssBCClick]},Checked:bCorssBCClick},{Name:"至今涨幅显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_SHOW_INCREASE_ID,Args:[!bCorssShowIncrease]},Checked:bCorssShowIncrease},{Name:"底部文字对齐",SubMenu:[{Name:"居中",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID,Args:[1]},Checked:crossXTextAlign===1},{Name:"左对齐",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID,Args:[0]},Checked:crossXTextAlign===0}]}]},{Name:"其他设置",SubMenu:[{Name:"左键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID,Args:[!bLButtonSelectRect]},Checked:bLButtonSelectRect},{Name:"右键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID,Args:[!bRButtonSelectRect]},Checked:bRButtonSelectRect},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"背景分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BG_SPLIT_ID,Args:[!bBGSpit]},Checked:bBGSpit},{Name:"画图工具",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_DRAWTOOL_ID,Args:[]},Checked:this.IsShowDrawToolDialog()},{Name:"移动筹码图",Data:{ID:bShowStockChip?JSCHART_MENU_ID.CMD_HIDE_STOCKCHIP_ID:JSCHART_MENU_ID.CMD_SHOW_STOCKCHIP_ID,Args:[stockChipConfig.Name,stockChipConfig]},Checked:bShowStockChip},{Name:"双击弹分时图",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_POP_MINUTE_CHART_ID,Args:[!bPopMinuteChart]},Checked:bPopMinuteChart},{Name:"显示走完剩余时间",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_KLINE_DAY_SUMMARY_ID,Args:[!bDaySummary]},Checked:bDaySummary},{Name:"拖动Y轴",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID,Args:[{FrameID:0,Enable:!bZoomYCoordinate}]},Checked:bZoomYCoordinate},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"鼠标形状",SubMenu:[{Name:"默认",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["default"]},Checked:this.DefaultCursor=="default"},{Name:"十字线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["crosshair"]},Checked:this.DefaultCursor=="crosshair"}]},{Name:"语言设置",SubMenu:[{Name:"中文",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["CN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID},{Name:"英语",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["EN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID},{Name:"繁体",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["TC"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID}]},{Name:"区间选择样式",SubMenu:[{Name:"样式1(默认)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[0]},Checked:0==this.ChartDragSelectRect.ShowMode},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[1]},Checked:1==this.ChartDragSelectRect.ShowMode},{Name:"样式3",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[2]},Checked:2==this.ChartDragSelectRect.ShowMode}]},{Name:"K线浮动框",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:false}]},Checked:!this.DialogTooltip},{Name:"样式1",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:0}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===0},{Name:"样式1-指标显示",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,IndexTitle:{Enable:!bTooltipDialogShowIndexTitle}}]},Checked:bTooltipDialogShowIndexTitle},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:1}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===1}]},{Name:"K线提示框",SubMenu:[{Name:"启用",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{Enable:!this.KLineTooltipConfig.Enable}]},Checked:this.KLineTooltipConfig.Enable},{Name:"键盘左右显示",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{EnableKeyDown:!this.KLineTooltipConfig.EnableKeyDown}]},Checked:this.KLineTooltipConfig.EnableKeyDown}]},{Name:"X轴拖动",SubMenu:[{Name:"启动",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[!this.EnableXDrag.Bottom]},Checked:this.EnableXDrag.Bottom},{Name:"左键拖动K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,this.EnableXDrag.LButton.Type===1?0:1]},Checked:this.EnableXDrag.LButton.Type===1&&this.EnableXDrag.Bottom},{Name:"左键缩放K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,this.EnableXDrag.LButton.Type===2?0:2]},Checked:this.EnableXDrag.LButton.Type===2&&this.EnableXDrag.Bottom},{Name:"右键拖动K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,null,this.EnableXDrag.RButton.Type===1?0:1]},Checked:this.EnableXDrag.RButton.Type===1&&this.EnableXDrag.Bottom},{Name:"右键缩放K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,null,this.EnableXDrag.RButton.Type===2?0:2]},Checked:this.EnableXDrag.RButton.Type===2&&this.EnableXDrag.Bottom}]},{Name:"K线拖动",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[0]},Checked:0==this.DragMode},{Name:"左键拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[1,false]},Checked:1==(this.DragMode&&!this.KLineDragConfig.EnableShfit)},{Name:"Shift+左键拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[1,true]},Checked:1==(this.DragMode&&this.KLineDragConfig.EnableShfit)}]}]}];//复权
8703
+ var bTooltipDialogShowIndexTitle=false;if(this.DialogTooltip){bTooltipDialogShowIndexTitle=this.DialogTooltip.IndexTitle.Enable;}var aryMenu=[{Name:"分析周期",SubMenu:[{Name:"日线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[0]},Checked:this.Period==0},{Name:"周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[1]},Checked:this.Period==1},{Name:"双周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[21]},Checked:this.Period==21},{Name:"月线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[2]},Checked:this.Period==2},{Name:"季线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[9]},Checked:this.Period==9},{Name:"半年",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[22]},Checked:this.Period==22},{Name:"年线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[3]},Checked:this.Period==3},{Name:"1分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[4]},Checked:this.Period==4},{Name:"5分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[5]},Checked:this.Period==5},{Name:"15分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[6]},Checked:this.Period==6},{Name:"30分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[7]},Checked:this.Period==7},{Name:"60分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[8]},Checked:this.Period==8},{Name:"2小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[11]},Checked:this.Period==11},{Name:"4小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[12]},Checked:this.Period==12},{Name:"分笔",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[10]},Checked:this.Period==10},{Name:"自定义周期:3分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20003]},Checked:this.Period==20003},{Name:"自定义周期:35分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20035]},Checked:this.Period==20035},{Name:"自定义周期:8日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[40008]},Checked:this.Period==40008}]},{Name:"指标切换",SubMenu:[{Name:"均线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"均线"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BOLL"]}},{Name:"MACD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD"]}},{Name:"MACD(粗)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD2"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"KDJ"]}},{Name:"VOL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"VOL"]}},{Name:"RSI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"RSI"]}},{Name:"BRAR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BRAR"]}},{Name:"WR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"WR"]}}]},{Name:"五彩K线",SubMenu:[{Name:"十字星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-十字星"]}},{Name:"早晨之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-早晨之星"]}},{Name:"垂死十字",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-垂死十字"]}},{Name:"三只乌鸦",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-三只乌鸦"]}},{Name:"光脚阴线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-光脚阴线"]}},{Name:"黄昏之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-黄昏之星"]}}]},{Name:"专家系统",SubMenu:[{Name:"BIAS",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BIAS"]}},{Name:"CCI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-CCI"]}},{Name:"DMI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-DMI"]}},{Name:"KD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KD"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BOLL"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KDJ"]}}]},{Name:"信息地雷",SubMenu:[{Name:"公告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["公告",!aryKLineInfo.includes("AnnouncementInfo")]},Checked:aryKLineInfo.includes("AnnouncementInfo")},{Name:"业绩预告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["业绩预告",!aryKLineInfo.includes("PforecastInfo")]},Checked:aryKLineInfo.includes("PforecastInfo")},{Name:"调研",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["调研",!aryKLineInfo.includes("ResearchInfo")]},Checked:aryKLineInfo.includes("ResearchInfo")},{Name:"大宗交易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["大宗交易",!aryKLineInfo.includes("BlockTrading")]},Checked:aryKLineInfo.includes("BlockTrading")},{Name:"龙虎榜",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["龙虎榜",!aryKLineInfo.includes("TradeDetail")]},Checked:aryKLineInfo.includes("TradeDetail")},{Name:"互动易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["互动易",!aryKLineInfo.includes("InvestorInfo")]},Checked:aryKLineInfo.includes("InvestorInfo")},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"显示位置",SubMenu:[{Name:"底部",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[1]},Checked:infoPosition===1},{Name:"K线上",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[0]},Checked:infoPosition===0}]}]},{Name:"缺口提示",SubMenu:[{Name:"显示1个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,1]},Checked:priceGap.Enable==true&&priceGap.Count==1},{Name:"显示2个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,2]},Checked:priceGap.Enable==true&&priceGap.Count==2},{Name:"显示3个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,3]},Checked:priceGap.Enable==true&&priceGap.Count==3},{Name:"隐藏缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[false]},Checked:priceGap.Enable==false}]},{Name:"叠加品种",SubMenu:[{Name:"上证指数",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000001.sh",!aryOverlaySymbol.includes("000001.sh")]},Checked:aryOverlaySymbol.includes("000001.sh")},{Name:"深证成指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399001.sz",!aryOverlaySymbol.includes("399001.sz")]},Checked:aryOverlaySymbol.includes("399001.sz")},{Name:"中小板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399005.sz",!aryOverlaySymbol.includes("399005.sz")]},Checked:aryOverlaySymbol.includes("399005.sz")},{Name:"创业板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399006.sz",!aryOverlaySymbol.includes("399006.sz")]},Checked:aryOverlaySymbol.includes("399006.sz")},{Name:"沪深300",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000300.sh",!aryOverlaySymbol.includes("000300.sh")]},Checked:aryOverlaySymbol.includes("000300.sh")}]},{Name:"主图线型",SubMenu:[{Name:"K线(空心阳线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[3]},Checked:klineType==3},{Name:"K线(实心阳线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[0]},Checked:klineType==0},{Name:"美国线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:false}]},Checked:klineType==2&&!bThinAKBar},{Name:"美国线(细)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:true}]},Checked:klineType==2&&bThinAKBar},{Name:"收盘线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[1]},Checked:klineType==1},{Name:"收盘面积",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[4]},Checked:klineType==4},{Name:"K线(空心阳线阴线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[6]},Checked:klineType==6},{Name:"Heikin Ashi",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[11]},Checked:klineType==11},{Name:"Line Break",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[12]},Checked:klineType==12},{Name:"High-low",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[13]},Checked:klineType==13},{Name:"HLC Area",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[15]},Checked:klineType==15},{Name:"HLC Bars",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[19]},Checked:klineType==19}]},{Name:"坐标类型",SubMenu:[{Name:"反转坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{IsReverse:coordinateType==0}]},Checked:coordinateType==1},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"普通坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:0}]},Checked:yCoordinateType==0},{Name:"百分比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:1}]},Checked:yCoordinateType==1},{Name:"对数坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:2}]},Checked:yCoordinateType==2},{Name:"等比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:3}]},Checked:yCoordinateType==3},{Name:"等分坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:4}]},Checked:yCoordinateType==4},{Name:"黄金分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:5}]},Checked:yCoordinateType==5}]},{Name:"指标窗口个数",SubMenu:[{Name:"1个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[2]},Checked:2==windowCount},{Name:"2个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[3]},Checked:3==windowCount},{Name:"3个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[4]},Checked:4==windowCount},{Name:"4个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[5]},Checked:5==windowCount},{Name:"5个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[6]},Checked:6==windowCount}]},{Name:"十字光标",SubMenu:[{Name:"显示",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID,Args:[!bShowCorss]},Checked:bShowCorss},{Name:"显示在K线上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_KLINE_ID,Args:[!bCorssDrawKLine]},Checked:bCorssDrawKLine},{Name:"画在有效X轴上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID,Args:[!bCorssDrawVaildTime]},Checked:bCorssDrawVaildTime},{Name:"画圆点",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID,Args:[!bCorssDrawPoint]},Checked:bCorssDrawPoint},{Name:"双击显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID,Args:[!bCorssBCClick]},Checked:bCorssBCClick},{Name:"至今涨幅显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_SHOW_INCREASE_ID,Args:[!bCorssShowIncrease]},Checked:bCorssShowIncrease},{Name:"底部文字对齐",SubMenu:[{Name:"居中",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID,Args:[1]},Checked:crossXTextAlign===1},{Name:"左对齐",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID,Args:[0]},Checked:crossXTextAlign===0}]}]},{Name:"其他设置",SubMenu:[{Name:"左键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID,Args:[!bLButtonSelectRect]},Checked:bLButtonSelectRect},{Name:"右键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID,Args:[!bRButtonSelectRect]},Checked:bRButtonSelectRect},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"背景分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BG_SPLIT_ID,Args:[!bBGSpit]},Checked:bBGSpit},{Name:"画图工具",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_DRAWTOOL_ID,Args:[]},Checked:this.IsShowDrawToolDialog()},{Name:"移动筹码图",Data:{ID:bShowStockChip?JSCHART_MENU_ID.CMD_HIDE_STOCKCHIP_ID:JSCHART_MENU_ID.CMD_SHOW_STOCKCHIP_ID,Args:[stockChipConfig.Name,stockChipConfig]},Checked:bShowStockChip},{Name:"双击弹分时图",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_POP_MINUTE_CHART_ID,Args:[!bPopMinuteChart]},Checked:bPopMinuteChart},{Name:"显示走完剩余时间",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_KLINE_DAY_SUMMARY_ID,Args:[!bDaySummary]},Checked:bDaySummary},{Name:"拖动Y轴",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID,Args:[{FrameID:0,Enable:!bZoomYCoordinate}]},Checked:bZoomYCoordinate},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"鼠标形状",SubMenu:[{Name:"默认",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["default"]},Checked:this.DefaultCursor=="default"},{Name:"十字线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["crosshair"]},Checked:this.DefaultCursor=="crosshair"}]},{Name:"语言设置",SubMenu:[{Name:"中文",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["CN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID},{Name:"英语",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["EN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID},{Name:"繁体",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["TC"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID}]},{Name:"区间选择样式",SubMenu:[{Name:"样式1(默认)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[0]},Checked:0==this.ChartDragSelectRect.ShowMode},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[1]},Checked:1==this.ChartDragSelectRect.ShowMode},{Name:"样式3",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[2]},Checked:2==this.ChartDragSelectRect.ShowMode}]},{Name:"K线浮动框",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:false}]},Checked:!this.DialogTooltip},{Name:"样式1",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:0}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===0},{Name:"样式1-指标显示",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,IndexTitle:{Enable:!bTooltipDialogShowIndexTitle}}]},Checked:bTooltipDialogShowIndexTitle},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:1}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===1}]},{Name:"K线提示框",SubMenu:[{Name:"启用",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{Enable:!this.KLineTooltipConfig.Enable}]},Checked:this.KLineTooltipConfig.Enable},{Name:"键盘左右显示",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{EnableKeyDown:!this.KLineTooltipConfig.EnableKeyDown}]},Checked:this.KLineTooltipConfig.EnableKeyDown}]},{Name:"X轴拖动",SubMenu:[{Name:"启动",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[!this.EnableXDrag.Bottom]},Checked:this.EnableXDrag.Bottom},{Name:"左键拖动K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,this.EnableXDrag.LButton.Type===1?0:1]},Checked:this.EnableXDrag.LButton.Type===1&&this.EnableXDrag.Bottom},{Name:"左键缩放K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,this.EnableXDrag.LButton.Type===2?0:2]},Checked:this.EnableXDrag.LButton.Type===2&&this.EnableXDrag.Bottom},{Name:"右键拖动K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,null,this.EnableXDrag.RButton.Type===1?0:1]},Checked:this.EnableXDrag.RButton.Type===1&&this.EnableXDrag.Bottom},{Name:"右键缩放K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,null,this.EnableXDrag.RButton.Type===2?0:2]},Checked:this.EnableXDrag.RButton.Type===2&&this.EnableXDrag.Bottom}]},{Name:"K线拖动",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[0]},Checked:0==this.DragMode},{Name:"左键拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[1,false]},Checked:1==(this.DragMode&&!this.KLineDragConfig.EnableShfit)},{Name:"Shift+左键拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[1,true]},Checked:1==(this.DragMode&&this.KLineDragConfig.EnableShfit)}]}]}];//复权
8698
8704
  if(!MARKET_SUFFIX_NAME.IsSHSZIndex(this.Symbol)&&!MARKET_SUFFIX_NAME.IsBIT(this.Symbol)){var rightMenu={Name:"复权处理",SubMenu:[{Name:"不复权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_RIGHT_ID,Args:[0]},Checked:0==this.Right},{Name:"前复权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_RIGHT_ID,Args:[1]},Checked:1==this.Right},{Name:"后复权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_RIGHT_ID,Args:[2]},Checked:2==this.Right}]};aryMenu.splice(1,0,rightMenu);}//删除菜单
8699
8705
  for(var i=0;i<aryMenu.length;++i){var item=aryMenu[i];if(item.Name=="五彩K线"){if(this.ColorIndex){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除五彩K线",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_COLOR_INDEX_ID}});}}else if(item.Name=="专家系统"){if(this.TradeIndex){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除专家系统",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_TRADE_INDEX_ID}});}}else if(item.Name=="叠加品种"){for(var j=0;j<item.SubMenu.length;++j){if(item.SubMenu[j].Checked){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"取消叠加",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_ALL_OVERLAY_SYMBOL_ID}});break;}}}else if(item.Name=="信息地雷"){for(var j=0;j<item.SubMenu.length;++j){if(item.SubMenu[j].Checked){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除所有",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_ALL_KLINE_INFO_ID}});break;}}}else if(item.Name=="十字光标"){if(kItem){var bLocked=this.IsLockCorssCursor();if(bLocked)item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_UNLOCK_CROSSCURSOR},Checked:bLocked});else item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_LOCK_CROSSCURSOR,Args:[{KItem:{Date:kItem.Date,Time:kItem.Time},Draw:true}]},Checked:bLocked});}}}return aryMenu;};this.PopupSelectRectMenuV2=function(data,e){var _this32=this;var aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,data.SelectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[data.SelectData]}}];var menuData={Menu:aryMenu,Position:JSPopMenu.POSITION_ID.RIGHT_MENU_ID};menuData.ClickCallback=function(data){_this32.OnClickRightMenu(data);};var x=data.X,y=data.Y;this.PopupMenuByRClick(menuData,x,y);};//重新加载画图工具(切换股票|周期)
8700
8706
  this.ReloadChartDrawPicture=function(){this.ChartDrawPicture=[];if(this.SelectChartDrawPicture)this.SelectChartDrawPicture.IsSelected=false;this.SelectChartDrawPicture=null;this.CurrentChartDrawPicture=null;if(this.ChartDrawStorage){this.ChartDrawStorageCache=this.ChartDrawStorage.GetDrawData({Symbol:this.Symbol,Period:this.Period});}var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_LOAD_DRAWPICTURE);if(event&&event.Callback){var sendData={Symbol:this.Symbol,Period:this.Period,DrawStorage:this.ChartDrawStorage,ChartDrawStorageCache:this.ChartDrawStorageCache};event.Callback(event,sendData,this);}};this.CreateChartDrawPictureByStorage=function()//把缓存(this.ChartDrawStorageCache) 画图工具创建出来
@@ -15744,7 +15750,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
15744
15750
  this.ExecuteScript(item,data);}this.Status=0;}};this.OnExecuteFinish=function(data,indexInfo,jsExectute,jobInfo){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT,JobInfo:jobInfo};postMessage(message);};this.OnExecuteError=function(error,indexInfo,jobData){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
15745
15751
  * 版本信息输出
15746
15752
  *
15747
- */var HQCHART_VERSION="1.1.15325";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15753
+ */var HQCHART_VERSION="1.1.15328";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15748
15754
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
15749
15755
  // BaseIndex:BaseIndex,
15750
15756
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.15326",
3
+ "version": "1.1.15329",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -9574,18 +9574,14 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
9574
9574
  var startClientPos=this.PtInClient(selectData.XStart, selectData.YStart);
9575
9575
  var endClientPos=this.PtInClient(selectData.XEnd, selectData.YEnd);
9576
9576
 
9577
- var data=null;
9578
- if (this.Frame.Data)
9579
- data=this.Frame.Data;
9580
- else
9581
- data=this.Frame.SubFrame[0].Frame.Data;
9582
-
9583
- if (!data) return false;
9577
+ var data=this.GetKData();
9578
+ if (!data || !IFrameSplitOperator.IsNonEmptyArray(data.Data)) return false;
9584
9579
 
9585
9580
  var start=this.GetDataIndexByPoint(selectData.XStart);
9586
9581
  var end=this.GetDataIndexByPoint(selectData.XEnd);
9582
+ if (end<0 || start<0) return false;
9587
9583
 
9588
- if (Math.abs(start-end)<2) return false;
9584
+ //if (Math.abs(start-end)<2) return false;
9589
9585
 
9590
9586
  selectData.Data=data;
9591
9587
  if (start>end)
@@ -27732,6 +27728,7 @@ function ChartKLine()
27732
27728
  // 16=kagi
27733
27729
  // 17=订单流样式4
27734
27730
  // 18=订单流样式5
27731
+ // 19=HLC bars
27735
27732
 
27736
27733
  this.CloseLineColor=g_JSChartResource.CloseLineColor;
27737
27734
  this.CloseLineAreaColor=g_JSChartResource.CloseLineAreaColor;
@@ -27790,6 +27787,12 @@ function ChartKLine()
27790
27787
  DownAreaColor:g_JSChartResource.HLCArea.DownAreaColor,
27791
27788
  }
27792
27789
 
27790
+ this.HLCBarConfig=
27791
+ {
27792
+ Color:g_JSChartResource.HLCBar.Color,
27793
+ Width:g_JSChartResource.HLCBar.Width,
27794
+ }
27795
+
27793
27796
  //虚线柱子 (非交易日)
27794
27797
  this.VirtualBarConfig={ Color:g_JSChartResource.VirtualKLine.Color, LineDash:g_JSChartResource.VirtualKLine.LineDash };
27795
27798
 
@@ -28243,6 +28246,139 @@ function ChartKLine()
28243
28246
  this.PtMin=ptMin;
28244
28247
  }
28245
28248
 
28249
+ this.DrawHLCBars=function()
28250
+ {
28251
+ var isHScreen=(this.ChartFrame.IsHScreen===true);
28252
+ var dataWidth=this.ChartFrame.DataWidth;
28253
+ var distanceWidth=this.ChartFrame.DistanceWidth;
28254
+ var xPointCount=this.ChartFrame.XPointCount;
28255
+
28256
+ if (isHScreen)
28257
+ {
28258
+ var border=this.ChartBorder.GetHScreenBorder();
28259
+ var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
28260
+ var chartright=border.BottomEx;
28261
+ }
28262
+ else
28263
+ {
28264
+ var border=this.ChartBorder.GetBorder();
28265
+ var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
28266
+ var chartright=border.RightEx;
28267
+ }
28268
+
28269
+ var ptMax={X:null,Y:null,Value:null,Align:'left'};
28270
+ var ptMin={X:null,Y:null,Value:null,Align:'left'};
28271
+ this.ShowRange.Start=this.Data.DataOffset;
28272
+ this.ShowRange.End=this.ShowRange.Start;
28273
+ this.ShowRange.DataCount=0;
28274
+ this.ShowRange.ShowCount=xPointCount;
28275
+ this.DrawKRange.Start=this.Data.DataOffset;
28276
+
28277
+ var preKItemInfo=null;
28278
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth),++this.ShowRange.DataCount)
28279
+ {
28280
+ var data=this.Data.Data[i];
28281
+ this.ShowRange.End=i;
28282
+ if (data.Open==null || data.High==null || data.Low==null || data.Close==null) continue;
28283
+
28284
+ var left=xOffset;
28285
+ var right=xOffset+dataWidth;
28286
+ if (right>chartright) break;
28287
+ var x=left+(right-left)/2;
28288
+ var yLow=this.GetYFromData(data.Low,false);
28289
+ var yHigh=this.GetYFromData(data.High,false);
28290
+ var yOpen=this.GetYFromData(data.Open,false);
28291
+ var yClose=this.GetYFromData(data.Close,false);
28292
+ this.DrawKRange.End=i;
28293
+ this.AddToDaySummary(data);
28294
+
28295
+ var kItemInfo={ Data:data, Coordinate:{ X:x, Low:yLow, High:yHigh, Close:yClose, Open:yOpen, Left:left, Right:right }};
28296
+
28297
+ if (ptMax.Value==null || ptMax.Value<data.High) //求最大值
28298
+ {
28299
+ ptMax.X=x;
28300
+ ptMax.Y=yHigh;
28301
+ ptMax.Value=data.High;
28302
+ ptMax.Align=j<xPointCount/2?'left':'right';
28303
+ }
28304
+
28305
+ if (ptMin.Value==null || ptMin.Value>data.Low) //求最小值
28306
+ {
28307
+ ptMin.X=x;
28308
+ ptMin.Y=yLow;
28309
+ ptMin.Value=data.Low;
28310
+ ptMin.Align=j<xPointCount/2?'left':'right';
28311
+ }
28312
+
28313
+ this.Canvas.strokeStyle=this.HLCBarConfig.Color;
28314
+ this.Canvas.beginPath(); //最高-最低
28315
+ if (isHScreen)
28316
+ {
28317
+ if (data.High==data.Low && dataWidth<4)
28318
+ {
28319
+ this.Canvas.moveTo(yHigh,ToFixedPoint(x));
28320
+ this.Canvas.lineTo(yLow-1,ToFixedPoint(x));
28321
+ }
28322
+ else
28323
+ {
28324
+ this.Canvas.moveTo(yHigh,ToFixedPoint(x));
28325
+ this.Canvas.lineTo(yLow,ToFixedPoint(x));
28326
+ }
28327
+ }
28328
+ else
28329
+ {
28330
+ if (data.High==data.Low && dataWidth<4)
28331
+ {
28332
+ this.Canvas.moveTo(ToFixedPoint(x),yHigh);
28333
+ this.Canvas.lineTo(ToFixedPoint(x),yLow+1);
28334
+ }
28335
+ else
28336
+ {
28337
+ this.Canvas.moveTo(ToFixedPoint(x),yHigh);
28338
+ this.Canvas.lineTo(ToFixedPoint(x),yLow);
28339
+ }
28340
+ }
28341
+
28342
+ this.Canvas.stroke();
28343
+
28344
+ if (dataWidth>=4)
28345
+ {
28346
+ this.Canvas.beginPath(); //收盘
28347
+ if (isHScreen)
28348
+ {
28349
+ this.Canvas.moveTo(ToFixedPoint(yClose),right);
28350
+ this.Canvas.lineTo(ToFixedPoint(yClose),x);
28351
+ }
28352
+ else
28353
+ {
28354
+ this.Canvas.moveTo(right,ToFixedPoint(yClose));
28355
+ this.Canvas.lineTo(x,ToFixedPoint(yClose));
28356
+ }
28357
+ this.Canvas.stroke();
28358
+ }
28359
+
28360
+ if(this.Data.DataType==0)
28361
+ {
28362
+ var infoItem={Xleft:left,XRight:right, YMax:yHigh, XCenter:x, YMin:yLow, DayData:data, Index:j};
28363
+ this.DrawInfo(infoItem);
28364
+ }
28365
+
28366
+ if (this.PriceGap.Enable && preKItemInfo)
28367
+ {
28368
+ this.CheckPriceGap(kItemInfo);
28369
+
28370
+ var value=this.IsPriceGap(kItemInfo,preKItemInfo);
28371
+ if (value>0)
28372
+ this.AryPriceGapCache.push({ Data:[preKItemInfo, kItemInfo], Type:value });
28373
+ }
28374
+
28375
+ preKItemInfo=kItemInfo;
28376
+ }
28377
+
28378
+ this.PtMax=ptMax;
28379
+ this.PtMin=ptMin;
28380
+ }
28381
+
28246
28382
  this.DrawAKBar=function(data, dataWidth, isHScreen, coordinateInfo, colorInfo)
28247
28383
  {
28248
28384
  var barWidth=dataWidth/3;
@@ -30667,6 +30803,10 @@ function ChartKLine()
30667
30803
  {
30668
30804
  this.DrawOrderFlow_Style5();
30669
30805
  }
30806
+ else if (this.DrawType==19)
30807
+ {
30808
+ this.DrawHLCBars();
30809
+ }
30670
30810
  else
30671
30811
  {
30672
30812
  this.DrawKBar();
@@ -77916,6 +78056,12 @@ function JSChartResource()
77916
78056
  DownAreaColor:"rgba(205,235,230, 0.5)",
77917
78057
  };
77918
78058
 
78059
+ this.HLCBar=
78060
+ {
78061
+ Color:"rgb(41, 98, 255)",
78062
+ Width:1*GetDevicePixelRatio(),
78063
+ };
78064
+
77919
78065
  this.Minute={};
77920
78066
  this.Minute.VolBarColor=null; //分时图成交量柱子颜色 默认不用, 设置了柱子就不是红绿了
77921
78067
  this.Minute.VolTitleColor="rgb(105,105,105)";
@@ -88633,6 +88779,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
88633
88779
  { Name:"Line Break", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[12]}, Checked:klineType==12 },
88634
88780
  { Name:"High-low", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[13]}, Checked:klineType==13 },
88635
88781
  { Name:"HLC Area", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[15]}, Checked:klineType==15 },
88782
+ { Name:"HLC Bars", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[19]}, Checked:klineType==19 },
88636
88783
  ]
88637
88784
  },
88638
88785
  {
@@ -13670,18 +13670,14 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
13670
13670
  var startClientPos=this.PtInClient(selectData.XStart, selectData.YStart);
13671
13671
  var endClientPos=this.PtInClient(selectData.XEnd, selectData.YEnd);
13672
13672
 
13673
- var data=null;
13674
- if (this.Frame.Data)
13675
- data=this.Frame.Data;
13676
- else
13677
- data=this.Frame.SubFrame[0].Frame.Data;
13678
-
13679
- if (!data) return false;
13673
+ var data=this.GetKData();
13674
+ if (!data || !IFrameSplitOperator.IsNonEmptyArray(data.Data)) return false;
13680
13675
 
13681
13676
  var start=this.GetDataIndexByPoint(selectData.XStart);
13682
13677
  var end=this.GetDataIndexByPoint(selectData.XEnd);
13678
+ if (end<0 || start<0) return false;
13683
13679
 
13684
- if (Math.abs(start-end)<2) return false;
13680
+ //if (Math.abs(start-end)<2) return false;
13685
13681
 
13686
13682
  selectData.Data=data;
13687
13683
  if (start>end)
@@ -31828,6 +31824,7 @@ function ChartKLine()
31828
31824
  // 16=kagi
31829
31825
  // 17=订单流样式4
31830
31826
  // 18=订单流样式5
31827
+ // 19=HLC bars
31831
31828
 
31832
31829
  this.CloseLineColor=g_JSChartResource.CloseLineColor;
31833
31830
  this.CloseLineAreaColor=g_JSChartResource.CloseLineAreaColor;
@@ -31886,6 +31883,12 @@ function ChartKLine()
31886
31883
  DownAreaColor:g_JSChartResource.HLCArea.DownAreaColor,
31887
31884
  }
31888
31885
 
31886
+ this.HLCBarConfig=
31887
+ {
31888
+ Color:g_JSChartResource.HLCBar.Color,
31889
+ Width:g_JSChartResource.HLCBar.Width,
31890
+ }
31891
+
31889
31892
  //虚线柱子 (非交易日)
31890
31893
  this.VirtualBarConfig={ Color:g_JSChartResource.VirtualKLine.Color, LineDash:g_JSChartResource.VirtualKLine.LineDash };
31891
31894
 
@@ -32339,6 +32342,139 @@ function ChartKLine()
32339
32342
  this.PtMin=ptMin;
32340
32343
  }
32341
32344
 
32345
+ this.DrawHLCBars=function()
32346
+ {
32347
+ var isHScreen=(this.ChartFrame.IsHScreen===true);
32348
+ var dataWidth=this.ChartFrame.DataWidth;
32349
+ var distanceWidth=this.ChartFrame.DistanceWidth;
32350
+ var xPointCount=this.ChartFrame.XPointCount;
32351
+
32352
+ if (isHScreen)
32353
+ {
32354
+ var border=this.ChartBorder.GetHScreenBorder();
32355
+ var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
32356
+ var chartright=border.BottomEx;
32357
+ }
32358
+ else
32359
+ {
32360
+ var border=this.ChartBorder.GetBorder();
32361
+ var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
32362
+ var chartright=border.RightEx;
32363
+ }
32364
+
32365
+ var ptMax={X:null,Y:null,Value:null,Align:'left'};
32366
+ var ptMin={X:null,Y:null,Value:null,Align:'left'};
32367
+ this.ShowRange.Start=this.Data.DataOffset;
32368
+ this.ShowRange.End=this.ShowRange.Start;
32369
+ this.ShowRange.DataCount=0;
32370
+ this.ShowRange.ShowCount=xPointCount;
32371
+ this.DrawKRange.Start=this.Data.DataOffset;
32372
+
32373
+ var preKItemInfo=null;
32374
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth),++this.ShowRange.DataCount)
32375
+ {
32376
+ var data=this.Data.Data[i];
32377
+ this.ShowRange.End=i;
32378
+ if (data.Open==null || data.High==null || data.Low==null || data.Close==null) continue;
32379
+
32380
+ var left=xOffset;
32381
+ var right=xOffset+dataWidth;
32382
+ if (right>chartright) break;
32383
+ var x=left+(right-left)/2;
32384
+ var yLow=this.GetYFromData(data.Low,false);
32385
+ var yHigh=this.GetYFromData(data.High,false);
32386
+ var yOpen=this.GetYFromData(data.Open,false);
32387
+ var yClose=this.GetYFromData(data.Close,false);
32388
+ this.DrawKRange.End=i;
32389
+ this.AddToDaySummary(data);
32390
+
32391
+ var kItemInfo={ Data:data, Coordinate:{ X:x, Low:yLow, High:yHigh, Close:yClose, Open:yOpen, Left:left, Right:right }};
32392
+
32393
+ if (ptMax.Value==null || ptMax.Value<data.High) //求最大值
32394
+ {
32395
+ ptMax.X=x;
32396
+ ptMax.Y=yHigh;
32397
+ ptMax.Value=data.High;
32398
+ ptMax.Align=j<xPointCount/2?'left':'right';
32399
+ }
32400
+
32401
+ if (ptMin.Value==null || ptMin.Value>data.Low) //求最小值
32402
+ {
32403
+ ptMin.X=x;
32404
+ ptMin.Y=yLow;
32405
+ ptMin.Value=data.Low;
32406
+ ptMin.Align=j<xPointCount/2?'left':'right';
32407
+ }
32408
+
32409
+ this.Canvas.strokeStyle=this.HLCBarConfig.Color;
32410
+ this.Canvas.beginPath(); //最高-最低
32411
+ if (isHScreen)
32412
+ {
32413
+ if (data.High==data.Low && dataWidth<4)
32414
+ {
32415
+ this.Canvas.moveTo(yHigh,ToFixedPoint(x));
32416
+ this.Canvas.lineTo(yLow-1,ToFixedPoint(x));
32417
+ }
32418
+ else
32419
+ {
32420
+ this.Canvas.moveTo(yHigh,ToFixedPoint(x));
32421
+ this.Canvas.lineTo(yLow,ToFixedPoint(x));
32422
+ }
32423
+ }
32424
+ else
32425
+ {
32426
+ if (data.High==data.Low && dataWidth<4)
32427
+ {
32428
+ this.Canvas.moveTo(ToFixedPoint(x),yHigh);
32429
+ this.Canvas.lineTo(ToFixedPoint(x),yLow+1);
32430
+ }
32431
+ else
32432
+ {
32433
+ this.Canvas.moveTo(ToFixedPoint(x),yHigh);
32434
+ this.Canvas.lineTo(ToFixedPoint(x),yLow);
32435
+ }
32436
+ }
32437
+
32438
+ this.Canvas.stroke();
32439
+
32440
+ if (dataWidth>=4)
32441
+ {
32442
+ this.Canvas.beginPath(); //收盘
32443
+ if (isHScreen)
32444
+ {
32445
+ this.Canvas.moveTo(ToFixedPoint(yClose),right);
32446
+ this.Canvas.lineTo(ToFixedPoint(yClose),x);
32447
+ }
32448
+ else
32449
+ {
32450
+ this.Canvas.moveTo(right,ToFixedPoint(yClose));
32451
+ this.Canvas.lineTo(x,ToFixedPoint(yClose));
32452
+ }
32453
+ this.Canvas.stroke();
32454
+ }
32455
+
32456
+ if(this.Data.DataType==0)
32457
+ {
32458
+ var infoItem={Xleft:left,XRight:right, YMax:yHigh, XCenter:x, YMin:yLow, DayData:data, Index:j};
32459
+ this.DrawInfo(infoItem);
32460
+ }
32461
+
32462
+ if (this.PriceGap.Enable && preKItemInfo)
32463
+ {
32464
+ this.CheckPriceGap(kItemInfo);
32465
+
32466
+ var value=this.IsPriceGap(kItemInfo,preKItemInfo);
32467
+ if (value>0)
32468
+ this.AryPriceGapCache.push({ Data:[preKItemInfo, kItemInfo], Type:value });
32469
+ }
32470
+
32471
+ preKItemInfo=kItemInfo;
32472
+ }
32473
+
32474
+ this.PtMax=ptMax;
32475
+ this.PtMin=ptMin;
32476
+ }
32477
+
32342
32478
  this.DrawAKBar=function(data, dataWidth, isHScreen, coordinateInfo, colorInfo)
32343
32479
  {
32344
32480
  var barWidth=dataWidth/3;
@@ -34763,6 +34899,10 @@ function ChartKLine()
34763
34899
  {
34764
34900
  this.DrawOrderFlow_Style5();
34765
34901
  }
34902
+ else if (this.DrawType==19)
34903
+ {
34904
+ this.DrawHLCBars();
34905
+ }
34766
34906
  else
34767
34907
  {
34768
34908
  this.DrawKBar();
@@ -82012,6 +82152,12 @@ function JSChartResource()
82012
82152
  DownAreaColor:"rgba(205,235,230, 0.5)",
82013
82153
  };
82014
82154
 
82155
+ this.HLCBar=
82156
+ {
82157
+ Color:"rgb(41, 98, 255)",
82158
+ Width:1*GetDevicePixelRatio(),
82159
+ };
82160
+
82015
82161
  this.Minute={};
82016
82162
  this.Minute.VolBarColor=null; //分时图成交量柱子颜色 默认不用, 设置了柱子就不是红绿了
82017
82163
  this.Minute.VolTitleColor="rgb(105,105,105)";
@@ -92729,6 +92875,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
92729
92875
  { Name:"Line Break", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[12]}, Checked:klineType==12 },
92730
92876
  { Name:"High-low", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[13]}, Checked:klineType==13 },
92731
92877
  { Name:"HLC Area", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[15]}, Checked:klineType==15 },
92878
+ { Name:"HLC Bars", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[19]}, Checked:klineType==19 },
92732
92879
  ]
92733
92880
  },
92734
92881
  {
@@ -155177,7 +155324,7 @@ function ScrollBarBGChart()
155177
155324
 
155178
155325
 
155179
155326
 
155180
- var HQCHART_VERSION="1.1.15325";
155327
+ var HQCHART_VERSION="1.1.15328";
155181
155328
 
155182
155329
  function PrintHQChartVersion()
155183
155330
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.15325";
8
+ var HQCHART_VERSION="1.1.15328";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -13714,18 +13714,14 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
13714
13714
  var startClientPos=this.PtInClient(selectData.XStart, selectData.YStart);
13715
13715
  var endClientPos=this.PtInClient(selectData.XEnd, selectData.YEnd);
13716
13716
 
13717
- var data=null;
13718
- if (this.Frame.Data)
13719
- data=this.Frame.Data;
13720
- else
13721
- data=this.Frame.SubFrame[0].Frame.Data;
13722
-
13723
- if (!data) return false;
13717
+ var data=this.GetKData();
13718
+ if (!data || !IFrameSplitOperator.IsNonEmptyArray(data.Data)) return false;
13724
13719
 
13725
13720
  var start=this.GetDataIndexByPoint(selectData.XStart);
13726
13721
  var end=this.GetDataIndexByPoint(selectData.XEnd);
13722
+ if (end<0 || start<0) return false;
13727
13723
 
13728
- if (Math.abs(start-end)<2) return false;
13724
+ //if (Math.abs(start-end)<2) return false;
13729
13725
 
13730
13726
  selectData.Data=data;
13731
13727
  if (start>end)
@@ -31872,6 +31868,7 @@ function ChartKLine()
31872
31868
  // 16=kagi
31873
31869
  // 17=订单流样式4
31874
31870
  // 18=订单流样式5
31871
+ // 19=HLC bars
31875
31872
 
31876
31873
  this.CloseLineColor=g_JSChartResource.CloseLineColor;
31877
31874
  this.CloseLineAreaColor=g_JSChartResource.CloseLineAreaColor;
@@ -31930,6 +31927,12 @@ function ChartKLine()
31930
31927
  DownAreaColor:g_JSChartResource.HLCArea.DownAreaColor,
31931
31928
  }
31932
31929
 
31930
+ this.HLCBarConfig=
31931
+ {
31932
+ Color:g_JSChartResource.HLCBar.Color,
31933
+ Width:g_JSChartResource.HLCBar.Width,
31934
+ }
31935
+
31933
31936
  //虚线柱子 (非交易日)
31934
31937
  this.VirtualBarConfig={ Color:g_JSChartResource.VirtualKLine.Color, LineDash:g_JSChartResource.VirtualKLine.LineDash };
31935
31938
 
@@ -32383,6 +32386,139 @@ function ChartKLine()
32383
32386
  this.PtMin=ptMin;
32384
32387
  }
32385
32388
 
32389
+ this.DrawHLCBars=function()
32390
+ {
32391
+ var isHScreen=(this.ChartFrame.IsHScreen===true);
32392
+ var dataWidth=this.ChartFrame.DataWidth;
32393
+ var distanceWidth=this.ChartFrame.DistanceWidth;
32394
+ var xPointCount=this.ChartFrame.XPointCount;
32395
+
32396
+ if (isHScreen)
32397
+ {
32398
+ var border=this.ChartBorder.GetHScreenBorder();
32399
+ var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
32400
+ var chartright=border.BottomEx;
32401
+ }
32402
+ else
32403
+ {
32404
+ var border=this.ChartBorder.GetBorder();
32405
+ var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
32406
+ var chartright=border.RightEx;
32407
+ }
32408
+
32409
+ var ptMax={X:null,Y:null,Value:null,Align:'left'};
32410
+ var ptMin={X:null,Y:null,Value:null,Align:'left'};
32411
+ this.ShowRange.Start=this.Data.DataOffset;
32412
+ this.ShowRange.End=this.ShowRange.Start;
32413
+ this.ShowRange.DataCount=0;
32414
+ this.ShowRange.ShowCount=xPointCount;
32415
+ this.DrawKRange.Start=this.Data.DataOffset;
32416
+
32417
+ var preKItemInfo=null;
32418
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth),++this.ShowRange.DataCount)
32419
+ {
32420
+ var data=this.Data.Data[i];
32421
+ this.ShowRange.End=i;
32422
+ if (data.Open==null || data.High==null || data.Low==null || data.Close==null) continue;
32423
+
32424
+ var left=xOffset;
32425
+ var right=xOffset+dataWidth;
32426
+ if (right>chartright) break;
32427
+ var x=left+(right-left)/2;
32428
+ var yLow=this.GetYFromData(data.Low,false);
32429
+ var yHigh=this.GetYFromData(data.High,false);
32430
+ var yOpen=this.GetYFromData(data.Open,false);
32431
+ var yClose=this.GetYFromData(data.Close,false);
32432
+ this.DrawKRange.End=i;
32433
+ this.AddToDaySummary(data);
32434
+
32435
+ var kItemInfo={ Data:data, Coordinate:{ X:x, Low:yLow, High:yHigh, Close:yClose, Open:yOpen, Left:left, Right:right }};
32436
+
32437
+ if (ptMax.Value==null || ptMax.Value<data.High) //求最大值
32438
+ {
32439
+ ptMax.X=x;
32440
+ ptMax.Y=yHigh;
32441
+ ptMax.Value=data.High;
32442
+ ptMax.Align=j<xPointCount/2?'left':'right';
32443
+ }
32444
+
32445
+ if (ptMin.Value==null || ptMin.Value>data.Low) //求最小值
32446
+ {
32447
+ ptMin.X=x;
32448
+ ptMin.Y=yLow;
32449
+ ptMin.Value=data.Low;
32450
+ ptMin.Align=j<xPointCount/2?'left':'right';
32451
+ }
32452
+
32453
+ this.Canvas.strokeStyle=this.HLCBarConfig.Color;
32454
+ this.Canvas.beginPath(); //最高-最低
32455
+ if (isHScreen)
32456
+ {
32457
+ if (data.High==data.Low && dataWidth<4)
32458
+ {
32459
+ this.Canvas.moveTo(yHigh,ToFixedPoint(x));
32460
+ this.Canvas.lineTo(yLow-1,ToFixedPoint(x));
32461
+ }
32462
+ else
32463
+ {
32464
+ this.Canvas.moveTo(yHigh,ToFixedPoint(x));
32465
+ this.Canvas.lineTo(yLow,ToFixedPoint(x));
32466
+ }
32467
+ }
32468
+ else
32469
+ {
32470
+ if (data.High==data.Low && dataWidth<4)
32471
+ {
32472
+ this.Canvas.moveTo(ToFixedPoint(x),yHigh);
32473
+ this.Canvas.lineTo(ToFixedPoint(x),yLow+1);
32474
+ }
32475
+ else
32476
+ {
32477
+ this.Canvas.moveTo(ToFixedPoint(x),yHigh);
32478
+ this.Canvas.lineTo(ToFixedPoint(x),yLow);
32479
+ }
32480
+ }
32481
+
32482
+ this.Canvas.stroke();
32483
+
32484
+ if (dataWidth>=4)
32485
+ {
32486
+ this.Canvas.beginPath(); //收盘
32487
+ if (isHScreen)
32488
+ {
32489
+ this.Canvas.moveTo(ToFixedPoint(yClose),right);
32490
+ this.Canvas.lineTo(ToFixedPoint(yClose),x);
32491
+ }
32492
+ else
32493
+ {
32494
+ this.Canvas.moveTo(right,ToFixedPoint(yClose));
32495
+ this.Canvas.lineTo(x,ToFixedPoint(yClose));
32496
+ }
32497
+ this.Canvas.stroke();
32498
+ }
32499
+
32500
+ if(this.Data.DataType==0)
32501
+ {
32502
+ var infoItem={Xleft:left,XRight:right, YMax:yHigh, XCenter:x, YMin:yLow, DayData:data, Index:j};
32503
+ this.DrawInfo(infoItem);
32504
+ }
32505
+
32506
+ if (this.PriceGap.Enable && preKItemInfo)
32507
+ {
32508
+ this.CheckPriceGap(kItemInfo);
32509
+
32510
+ var value=this.IsPriceGap(kItemInfo,preKItemInfo);
32511
+ if (value>0)
32512
+ this.AryPriceGapCache.push({ Data:[preKItemInfo, kItemInfo], Type:value });
32513
+ }
32514
+
32515
+ preKItemInfo=kItemInfo;
32516
+ }
32517
+
32518
+ this.PtMax=ptMax;
32519
+ this.PtMin=ptMin;
32520
+ }
32521
+
32386
32522
  this.DrawAKBar=function(data, dataWidth, isHScreen, coordinateInfo, colorInfo)
32387
32523
  {
32388
32524
  var barWidth=dataWidth/3;
@@ -34807,6 +34943,10 @@ function ChartKLine()
34807
34943
  {
34808
34944
  this.DrawOrderFlow_Style5();
34809
34945
  }
34946
+ else if (this.DrawType==19)
34947
+ {
34948
+ this.DrawHLCBars();
34949
+ }
34810
34950
  else
34811
34951
  {
34812
34952
  this.DrawKBar();
@@ -82056,6 +82196,12 @@ function JSChartResource()
82056
82196
  DownAreaColor:"rgba(205,235,230, 0.5)",
82057
82197
  };
82058
82198
 
82199
+ this.HLCBar=
82200
+ {
82201
+ Color:"rgb(41, 98, 255)",
82202
+ Width:1*GetDevicePixelRatio(),
82203
+ };
82204
+
82059
82205
  this.Minute={};
82060
82206
  this.Minute.VolBarColor=null; //分时图成交量柱子颜色 默认不用, 设置了柱子就不是红绿了
82061
82207
  this.Minute.VolTitleColor="rgb(105,105,105)";
@@ -92773,6 +92919,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
92773
92919
  { Name:"Line Break", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[12]}, Checked:klineType==12 },
92774
92920
  { Name:"High-low", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[13]}, Checked:klineType==13 },
92775
92921
  { Name:"HLC Area", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[15]}, Checked:klineType==15 },
92922
+ { Name:"HLC Bars", Data:{ ID: JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID, Args:[19]}, Checked:klineType==19 },
92776
92923
  ]
92777
92924
  },
92778
92925
  {
@@ -167236,7 +167383,7 @@ function HQChartScriptWorker()
167236
167383
 
167237
167384
 
167238
167385
 
167239
- var HQCHART_VERSION="1.1.15325";
167386
+ var HQCHART_VERSION="1.1.15328";
167240
167387
 
167241
167388
  function PrintHQChartVersion()
167242
167389
  {