hqchart 1.1.12450 → 1.1.12455

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.
@@ -1596,7 +1596,7 @@ ON_RECV_REALTIME_DATA:109,//实时数据
1596
1596
  ON_CUSTOM_OVERLAY_TOOLBAR:110,//自定义叠加指标按钮
1597
1597
  //绘图之前的事件
1598
1598
  ON_BEFORE_DRAW:111,ON_BEFORE_DRAW_DYNAMIC_INFO:112,//自定义图形拖拽
1599
- ON_CUSTOM_DRAG_MOUSE_DOWN:113,ON_CUSTOM_DRAG_DOC_MOUSE_MOVE:114,ON_CUSTOM_DRAG_DOC_MOUSE_UP:115,ON_CUSTOM_DRAG_MOUSE_MOVE:116};var JSCHART_OPERATOR_ID={OP_SCROLL_LEFT:1,//往左移动
1599
+ ON_CUSTOM_DRAG_MOUSE_DOWN:113,ON_CUSTOM_DRAG_DOC_MOUSE_MOVE:114,ON_CUSTOM_DRAG_DOC_MOUSE_UP:115,ON_CUSTOM_DRAG_MOUSE_MOVE:116,ON_KEYDOWN:117};var JSCHART_OPERATOR_ID={OP_SCROLL_LEFT:1,//往左移动
1600
1600
  OP_SCROLL_RIGHT:2,//往右移动
1601
1601
  OP_ZOOM_OUT:3,//缩小
1602
1602
  OP_ZOOM_IN:4,//放大
@@ -1873,7 +1873,8 @@ var paint=this.GetRectSelectPaint();if(paint&&paint.GetPointCount()>0){var item=
1873
1873
  else mouseStatus={Cursor:"ew-resize",Name:"DragRectSelect"};JSConsole.Chart.Log("[JSChartContainer::OnMouseMove] drag rect select ",item);}}var sendData={MouseStatus:null,X:x,Y:y,FrameID:frameID,e:e};if(this.TryMouseMove_CustomChartDrag(sendData)){if(sendData.MouseStatus)mouseStatus=sendData.MouseStatus;}var bDrawPicture=false;//是否正在画图
1874
1874
  if(this.CurrentChartDrawPicture){var index=this.Frame.PtInChartFrame(x,y);if(this.CurrentChartDrawPicture.Status!=20){var bDrawValid=false;//是否在有效绘图区域里面
1875
1875
  if(IFrameSplitOperator.IsNumber(this.CurrentChartDrawPicture.LimitFrameID)){if(index>=0&&index==this.CurrentChartDrawPicture.LimitFrameID)bDrawValid=true;}else{if(index>=0)bDrawValid=true;}mouseStatus={Cursor:bDrawValid?"crosshair":"not-allowed",Name:"CurrentChartDrawPicture"};}if(this.CurrentChartDrawPicture.SetLastPoint)this.CurrentChartDrawPicture.SetLastPoint({X:x,Y:y});bDrawPicture=true;}else{var drawPictrueData={};drawPictrueData.X=x;drawPictrueData.Y=y;if(this.GetChartDrawPictureByPoint(drawPictrueData)&&drawPictrueData.ChartDrawPicture&&drawPictrueData.ChartDrawPicture.EnableMove==true){if(drawPictrueData.PointIndex===100){if(drawPictrueData.Cursor)this.UIElement.style.cursor=drawPictrueData.Cursor;else this.UIElement.style.cursor="move";}else{if(drawPictrueData.Cursor)this.UIElement.style.cursor=drawPictrueData.Cursor;else this.UIElement.style.cursor="pointer";}bDrawPicture=true;this.MoveOnChartDrawPicture=drawPictrueData.ChartDrawPicture;}else{if(!this.MouseDrag)this.UIElement.style.cursor="default";}}var clientPos=this.PtInClient(x,y);var option={ParentFunction:'OnMouseMove',Point:{X:x,Y:y},IsPhone:isPhone===true,ClientPos:clientPos};if(e&&(e.type=="mouseout"||e.type=="mouseleave")||button)option.Corss=false;//鼠标移开,在按钮上,不显示十字光标
1876
- if(this.SetCorssCursorIndex)this.SetCorssCursorIndex(option);if(this.DrawDynamicInfoOption.Enable){this.DrawDynamicInfoOption.Timer=setTimeout(function(){_this9.DrawDynamicInfo(option);},this.DrawDynamicInfoOption.DelayTime);}else{this.DrawDynamicInfo(option);}if(mouseStatus)this.UIElement.style.cursor=mouseStatus.Cursor;if(this.IsShowTooltip&&bDrawPicture==false){var toolTip=this.GetChartTooltipData(x,y);if(toolTip&&toolTip.Data){if(isPhone===true){var touche=e.touches[0];var xTooltip=touche.clientX-this.UIElement.getBoundingClientRect().left;var yTooltip=touche.clientY-this.UIElement.getBoundingClientRect().top;}else{var xTooltip=e.clientX-this.UIElement.getBoundingClientRect().left;var yTooltip=e.clientY-this.UIElement.getBoundingClientRect().top;}this.ShowTooltip(xTooltip,yTooltip,toolTip);}else{this.HideTooltip();}}};this.OnKeyDown=function(e){var _this10=this;if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;var keyID=e.keyCode?e.keyCode:e.which;switch(keyID){case 37://left
1876
+ if(this.SetCorssCursorIndex)this.SetCorssCursorIndex(option);if(this.DrawDynamicInfoOption.Enable){this.DrawDynamicInfoOption.Timer=setTimeout(function(){_this9.DrawDynamicInfo(option);},this.DrawDynamicInfoOption.DelayTime);}else{this.DrawDynamicInfo(option);}if(mouseStatus)this.UIElement.style.cursor=mouseStatus.Cursor;if(this.IsShowTooltip&&bDrawPicture==false){var toolTip=this.GetChartTooltipData(x,y);if(toolTip&&toolTip.Data){if(isPhone===true){var touche=e.touches[0];var xTooltip=touche.clientX-this.UIElement.getBoundingClientRect().left;var yTooltip=touche.clientY-this.UIElement.getBoundingClientRect().top;}else{var xTooltip=e.clientX-this.UIElement.getBoundingClientRect().left;var yTooltip=e.clientY-this.UIElement.getBoundingClientRect().top;}this.ShowTooltip(xTooltip,yTooltip,toolTip);}else{this.HideTooltip();}}};this.OnKeyDown=function(e){var _this10=this;if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;//回调事件
1877
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN);if(event&&event.Callback){var sendData={e:e,PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault)return;}var keyID=e.keyCode?e.keyCode:e.which;switch(keyID){case 37://left
1877
1878
  if(e.ctrlKey&&this.OnCustomKeyDown){if(this.OnCustomKeyDown(keyID,e))break;}if(this.CursorIndex<=0.99999){if(!this.DataMoveLeft()){//左移数据到头了 触发下载新数据
1878
1879
  if(this.DragDownloadData)this.DragDownloadData();break;}this.UpdataDataoffset();this.UpdatePointByCursorIndex();this.UpdateFrameMaxMin();this.Draw();this.ShowTooltipByKeyDown();this.OnKLinePageChange("keydown");}else{--this.CursorIndex;this.UpdatePointByCursorIndex();this.DrawDynamicInfo();this.ShowTooltipByKeyDown();}break;case 39://right
1879
1880
  if(e.ctrlKey&&this.OnCustomKeyDown){if(this.OnCustomKeyDown(keyID,e))break;}var xPointcount=0;if(this.Frame.XPointCount)xPointcount=this.Frame.XPointCount;else xPointcount=this.Frame.SubFrame[0].Frame.XPointCount;if(this.CursorIndex+1>=xPointcount){if(!this.DataMoveRight())break;this.UpdataDataoffset();this.UpdatePointByCursorIndex();this.UpdateFrameMaxMin();this.Draw();this.ShowTooltipByKeyDown();this.OnKLinePageChange("keydown");}else{//判断是否在最后一个数据上
@@ -2858,17 +2859,20 @@ this.Time;//时间
2858
2859
  this.Date;//日期
2859
2860
  this.Position=null;//持仓量
2860
2861
  this.YClearing;//昨结算价
2862
+ this.YClose;//昨收价
2861
2863
  this.ExtendData;//扩展数据
2862
2864
  }//盘前集合竞价
2863
2865
  function BeforeOpenData(){this.Time;this.Date;this.Price;//匹配的价格
2864
2866
  this.AvPrice;//均价
2865
2867
  this.Vol=[];//[0]=匹配量 [1]=未匹配量
2866
- this.ColorID;//0=平盘 1=红 2=绿 3 ...自定义颜色
2868
+ this.ColorID;//0=平盘 1=红 2=绿 3 ...自定义颜色
2869
+ this.YClose;//昨收价
2867
2870
  }//收盘集合竞价
2868
2871
  function AfterCloseData(){this.Time;this.Date;this.Price;//匹配的价格
2869
2872
  this.AvPrice;//均价
2870
2873
  this.Vol=[];//[0]=匹配量 [1]=未匹配量
2871
- this.ColorID;//0=平盘 1=红 2=绿 3 ...自定义颜色
2874
+ this.ColorID;//0=平盘 1=红 2=绿 3 ...自定义颜色
2875
+ this.YClose;//昨收价
2872
2876
  }//单指标数据
2873
2877
  function SingleData(){this.Date;//日期
2874
2878
  this.Time;//时间
@@ -5337,7 +5341,7 @@ var emptyData={ClientPos:this.PointInfo.ClientPos,X:this.PointInfo.Point.X,Y:thi
5337
5341
  var item=data.Data;var isLastOne=data.IsLastOne;var aryText=[];//{Color:, Text: }
5338
5342
  if(this.IsShowName)aryText.push({Text:this.Name,Color:this.NameColor});if(this.IsShowDate||this.IsShowTime){var bShowUpdateTime=false;//是否显示了更新时间
5339
5343
  if(isLastOne&&this.ShowLastDataFormat==1){if(this.Data&&this.Data.UpdateTime&&IFrameSplitOperator.IsNumber(this.Data.UpdateTime.Date)&&IFrameSplitOperator.IsNumber(this.Data.UpdateTime.Time)){var text=IFrameSplitOperator.FormatTimeString(this.Data.UpdateTime.Time,"HH:MM:SS");aryText.push({Text:text,Color:this.DateTimeColor});bShowUpdateTime=true;}}if(!bShowUpdateTime){if(this.TimeFormat)//指定时间格式
5340
- {var strDate=null,strTime=null,text=null;if(this.IsShowDate)strDate=IFrameSplitOperator.FormatDateString("YYYY-MM-DD",item.Date);if(this.IsShowTime)strTime=IFrameSplitOperator.FormatTimeString(item.Time,this.TimeFormat);if(strDate&&strTime)text=strDate+' '+strTime;else if(strDate)text=strDate;else if(strTime)text=strTime;if(text)aryText.push({Text:text,Color:this.DateTimeColor});}else{var text=IFrameSplitOperator.FormatDateTimeString(item.DateTime,this.IsShowDate,this.IsShowTime);aryText.push({Text:text,Color:this.DateTimeColor});}}}var close=item.Close;var increase=item.Increase;var vol=item.Vol;var amount=item.Amount;if(IFrameSplitOperator.IsNumber(close)){var color=this.GetColor(close,this.YClose);var text=g_JSChartLocalization.GetText('MTitle-Close',this.LanguageID)+close.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color});}if(IFrameSplitOperator.IsNumber(increase)){var color=this.GetColor(increase,0);var text=g_JSChartLocalization.GetText('MTitle-Increase',this.LanguageID)+increase.toFixed(2)+'%';aryText.push({Text:text,Color:color});}var isShowAvPrice=true;var upperSymbol=this.Symbol.toUpperCase();if(MARKET_SUFFIX_NAME.IsET(upperSymbol)&&!MARKET_SUFFIX_NAME.IsETShowAvPrice(upperSymbol))isShowAvPrice=false;else if(MARKET_SUFFIX_NAME.IsShowAvPrice&&!MARKET_SUFFIX_NAME.IsShowAvPrice(upperSymbol))isShowAvPrice=false;if(IFrameSplitOperator.IsNumber(item.AvPrice)&&isShowAvPrice&&this.IsShowAveragePrice){var color=this.GetColor(item.AvPrice,this.YClose);var text=g_JSChartLocalization.GetText('MTitle-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color});}if(IFrameSplitOperator.IsNumber(vol)){var text=g_JSChartLocalization.GetText('MTitle-Vol',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(vol,2,this.LanguageID);aryText.push({Text:text,Color:this.VolColor});}if(IFrameSplitOperator.IsNumber(amount)){var text=g_JSChartLocalization.GetText('MTitle-Amount',this.LanguageID)+IFrameSplitOperator.FormatValueString(amount,2,this.LanguageID);aryText.push({Text:text,Color:this.AmountColor});}if(IFrameSplitOperator.IsNumber(item.Position)){var text=g_JSChartLocalization.GetText('MTitle-Position',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(item.Position,2,this.LanguageID);aryText.push({Text:text,Color:this.VolColor});}if(isLastOne&&this.ShowLastDataFormat==0)//显示数据最后的更新时间
5344
+ {var strDate=null,strTime=null,text=null;if(this.IsShowDate)strDate=IFrameSplitOperator.FormatDateString("YYYY-MM-DD",item.Date);if(this.IsShowTime)strTime=IFrameSplitOperator.FormatTimeString(item.Time,this.TimeFormat);if(strDate&&strTime)text=strDate+' '+strTime;else if(strDate)text=strDate;else if(strTime)text=strTime;if(text)aryText.push({Text:text,Color:this.DateTimeColor});}else{var text=IFrameSplitOperator.FormatDateTimeString(item.DateTime,this.IsShowDate,this.IsShowTime);aryText.push({Text:text,Color:this.DateTimeColor});}}}var close=item.Close;var increase=item.Increase;var vol=item.Vol;var amount=item.Amount;var yClose=item.YClose;if(!IFrameSplitOperator.IsNumber(yClose))yClose=this.YClose;if(IFrameSplitOperator.IsNumber(close)){var color=this.GetColor(close,yClose);var text=g_JSChartLocalization.GetText('MTitle-Close',this.LanguageID)+close.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color});}if(IFrameSplitOperator.IsNumber(increase)){var color=this.GetColor(increase,0);var text=g_JSChartLocalization.GetText('MTitle-Increase',this.LanguageID)+increase.toFixed(2)+'%';aryText.push({Text:text,Color:color});}var isShowAvPrice=true;var upperSymbol=this.Symbol.toUpperCase();if(MARKET_SUFFIX_NAME.IsET(upperSymbol)&&!MARKET_SUFFIX_NAME.IsETShowAvPrice(upperSymbol))isShowAvPrice=false;else if(MARKET_SUFFIX_NAME.IsShowAvPrice&&!MARKET_SUFFIX_NAME.IsShowAvPrice(upperSymbol))isShowAvPrice=false;if(IFrameSplitOperator.IsNumber(item.AvPrice)&&isShowAvPrice&&this.IsShowAveragePrice){var color=this.GetColor(item.AvPrice,yClose);var text=g_JSChartLocalization.GetText('MTitle-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color});}if(IFrameSplitOperator.IsNumber(vol)){var text=g_JSChartLocalization.GetText('MTitle-Vol',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(vol,2,this.LanguageID);aryText.push({Text:text,Color:this.VolColor});}if(IFrameSplitOperator.IsNumber(amount)){var text=g_JSChartLocalization.GetText('MTitle-Amount',this.LanguageID)+IFrameSplitOperator.FormatValueString(amount,2,this.LanguageID);aryText.push({Text:text,Color:this.AmountColor});}if(IFrameSplitOperator.IsNumber(item.Position)){var text=g_JSChartLocalization.GetText('MTitle-Position',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(item.Position,2,this.LanguageID);aryText.push({Text:text,Color:this.VolColor});}if(isLastOne&&this.ShowLastDataFormat==0)//显示数据最后的更新时间
5341
5345
  {if(this.Data&&this.Data.UpdateTime&&IFrameSplitOperator.IsNumber(this.Data.UpdateTime.Date)&&IFrameSplitOperator.IsNumber(this.Data.UpdateTime.Time)){var text=g_JSChartLocalization.GetText('MTitle-UpdateTime',this.LanguageID)+IFrameSplitOperator.FormatTimeString(this.Data.UpdateTime.Time,"HH:MM:SS");aryText.push({Text:text,Color:this.DateTimeColor});}}//叠加股票的名字
5342
5346
  if(IFrameSplitOperator.IsNonEmptyArray(this.OverlayChartPaint)){for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint[i];if(!item.Symbol||!item.Title)continue;var clrText=item.Color;var text='['+item.Title+']';aryText.push({Text:text,Color:clrText});}}return{AryText:aryText};};this.DrawItem=function(item,isLastOne)//isLastOne 是否是最后一个数据
5343
5347
  {if(!item)return;var pixelRatio=GetDevicePixelRatio();var isHScreen=this.Frame.IsHScreen===true;var border=this.Frame.GetBorder();var left=border.Left;var bottom=border.Top-this.Frame.ChartBorder.Top/2;var defaultfloatPrecision=GetfloatPrecision(this.Symbol);//价格小数位数
@@ -5349,11 +5353,11 @@ var xText=border.ChartWidth;var yText=border.Top;this.Canvas.translate(xText,yTe
5349
5353
  this.FormatCallAuctionTitle=function(data){var aryText=[];//{ Color: Text: }
5350
5354
  var defaultfloatPrecision=GetfloatPrecision(this.Symbol);//价格小数位数
5351
5355
  //股票名称
5352
- if(this.IsShowName)aryText.push({Text:this.Name,Color:this.NameColor});if(data&&data.Data){var item=data.Data;var text,strTime,strDate;strDate=IFrameSplitOperator.FormatDateString(item.Date);//时间
5356
+ if(this.IsShowName)aryText.push({Text:this.Name,Color:this.NameColor});if(data&&data.Data){var item=data.Data;var text,strTime,strDate;strDate=IFrameSplitOperator.FormatDateString(item.Date);var yClose=item.YClose;//时间
5353
5357
  if(data.Ver==1.0)strTime=IFrameSplitOperator.FormatTimeString(item.Time,"HH:MM");else strTime=IFrameSplitOperator.FormatTimeString(item.Time,"HH:MM:SS");if(data.Explain=="MultiDayBeforeOpen"||data.Explain=="MultiDayAfterClose")text=strDate+' '+strTime;else text=strTime;aryText.push({Text:text,Color:this.DateTimeColor});//匹配价
5354
- if(IFrameSplitOperator.IsNumber(item.Price)&&this.CallAuctionShowTitle.has("MTitle-AC-Price")){var color=this.GetColor(item.Price,this.YClose);var filedName='MTitle-AC-Price';if(data.Ver==1.0)filedName="MTitle-Close";var text=g_JSChartLocalization.GetText(filedName,this.LanguageID)+item.Price.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color});}//竞价涨幅
5355
- if(IFrameSplitOperator.IsPlusNumber(this.YClose)&&IFrameSplitOperator.IsNumber(item.Price)&&this.CallAuctionShowTitle.has("MTitle-AC-Increase")){var value=(item.Price-this.YClose)/this.YClose*100;var color=this.GetColor(value,0);var filedName='MTitle-AC-Increase';if(data.Ver==1.0)filedName="MTitle-Increase";var text=g_JSChartLocalization.GetText(filedName,this.LanguageID)+value.toFixed(2)+"%";aryText.push({Text:text,Color:color});}//均价
5356
- if(IFrameSplitOperator.IsNumber(item.AvPrice)&&this.CallAuctionShowTitle.has("MTitle-AC-AvPrice")){var color=this.GetColor(item.AvPrice,this.YClose);var text=g_JSChartLocalization.GetText('MTitle-AC-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color});}//匹配量
5358
+ if(IFrameSplitOperator.IsNumber(item.Price)&&this.CallAuctionShowTitle.has("MTitle-AC-Price")){var color=this.GetColor(item.Price,yClose);var filedName='MTitle-AC-Price';if(data.Ver==1.0)filedName="MTitle-Close";var text=g_JSChartLocalization.GetText(filedName,this.LanguageID)+item.Price.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color});}//竞价涨幅
5359
+ if(IFrameSplitOperator.IsPlusNumber(yClose)&&IFrameSplitOperator.IsNumber(item.Price)&&this.CallAuctionShowTitle.has("MTitle-AC-Increase")){var value=(item.Price-yClose)/yClose*100;var color=this.GetColor(value,0);var filedName='MTitle-AC-Increase';if(data.Ver==1.0)filedName="MTitle-Increase";var text=g_JSChartLocalization.GetText(filedName,this.LanguageID)+value.toFixed(2)+"%";aryText.push({Text:text,Color:color});}//均价
5360
+ if(IFrameSplitOperator.IsNumber(item.AvPrice)&&this.CallAuctionShowTitle.has("MTitle-AC-AvPrice")){var color=this.GetColor(item.AvPrice,yClose);var text=g_JSChartLocalization.GetText('MTitle-AC-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);aryText.push({Text:text,Color:color});}//匹配量
5357
5361
  if(IFrameSplitOperator.IsNumber(item.Vol[0])&&this.CallAuctionShowTitle.has("MTitle-AC-Vol")){var filedName='MTitle-AC-Vol';if(data.Ver==1.0)filedName="MTitle-Vol";var text=g_JSChartLocalization.GetText(filedName,this.LanguageID)+IFrameSplitOperator.FromatIntegerString(item.Vol[0],2);aryText.push({Text:text,Color:this.VolColor});}//未匹配量
5358
5362
  if(IFrameSplitOperator.IsNumber(item.Vol[1])&&this.CallAuctionShowTitle.has("MTitle-AC-NotMatchVol")){var text=g_JSChartLocalization.GetText('MTitle-AC-NotMatchVol',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(item.Vol[1],2);aryText.push({Text:text,Color:this.VolColor});}if(item.ExtendData&&IFrameSplitOperator.IsNonEmptyArray(item.ExtendData.Amount)){var aryAmount=item.ExtendData.Amount;if(IFrameSplitOperator.IsNumber(aryAmount[0])&&this.CallAuctionShowTitle.has("MTitle-AC-Amount"))//匹配量金额
5359
5363
  {var text=g_JSChartLocalization.GetText('MTitle-AC-Amount',this.LanguageID)+IFrameSplitOperator.FromatIntegerString(aryAmount[0],2);aryText.push({Text:text,Color:this.AmountColor});}if(IFrameSplitOperator.IsNumber(aryAmount[1])&&this.CallAuctionShowTitle.has("MTitle-AC-NotMatchAmount"))//未匹配量金额
@@ -5626,7 +5630,9 @@ return 180-angle;return angle;};//复制
5626
5630
  // 转成16进制
5627
5631
  for(var i=0;i<colorArr.length;i++){var hex=Number(colorArr[i]).toString(16);if(hex==="0")hex+=hex;strHex+=hex;}color=strHex;}return"rgba("+parseInt("0x"+color.slice(1,3))+","+parseInt("0x"+color.slice(3,5))+","+parseInt("0x"+color.slice(5,7))+","+opacity+")";};IChartDrawPicture.RGBToHex=function(rgb){// Choose correct separator
5628
5632
  var sep=rgb.indexOf(",")>-1?",":" ";// Turn "rgb(r,g,b)" into [r,g,b]
5629
- rgb=rgb.substr(4).split(")")[0].split(sep);var r=(+rgb[0]).toString(16),g=(+rgb[1]).toString(16),b=(+rgb[2]).toString(16);if(r.length==1)r="0"+r;if(g.length==1)g="0"+g;if(b.length==1)b="0"+b;return"#"+r+g+b;};IChartDrawPicture.ArrayDrawPricture=[{Name:"线段",ClassName:'ChartDrawPictureLine',Create:function Create(){return new ChartDrawPictureLine();}},{Name:"射线",ClassName:'ChartDrawPictureHaflLine',Create:function Create(){return new ChartDrawPictureHaflLine();}},{Name:"箭头",ClassName:"ChartDrawArrowLine",Create:function Create(){return new ChartDrawArrowLine();}},{Name:"水平线",ClassName:'ChartDrawPictureHorizontalLine',Create:function Create(){return new ChartDrawPictureHorizontalLine();}},{Name:"趋势线",ClassName:'ChartDrawPictureTrendLine',Create:function Create(){return new ChartDrawPictureTrendLine();}},{Name:"矩形",ClassName:'ChartDrawPictureRect',Create:function Create(){return new ChartDrawPictureRect();}},{Name:"圆弧线",ClassName:'ChartDrawPictureArc',Create:function Create(){return new ChartDrawPictureArc();}},{Name:"M头W底",ClassName:'ChartDrawPictureWaveMW',Create:function Create(){return new ChartDrawPictureWaveMW();}},{Name:"头肩型",ClassName:"ChartDrawHeadShouldersBT",Create:function Create(){return new ChartDrawHeadShouldersBT();}},{Name:"平行线",ClassName:'ChartDrawPictureParallelLines',Create:function Create(){return new ChartDrawPictureParallelLines();}},{Name:"平行通道",ClassName:'ChartDrawPictureParallelChannel',Create:function Create(){return new ChartDrawPictureParallelChannel();}},{Name:"价格通道线",ClassName:'ChartDrawPicturePriceChannel',Create:function Create(){return new ChartDrawPicturePriceChannel();}},{Name:"文本",ClassName:'ChartDrawPictureText',Create:function Create(){return new ChartDrawPictureText();}},{Name:"江恩角度线",ClassName:'ChartDrawPictureGannFan',Create:function Create(){return new ChartDrawPictureGannFan();}},{Name:"阻速线",ClassName:'ChartDrawPictureResistanceLine',Create:function Create(){return new ChartDrawPictureResistanceLine();}},{Name:"黄金分割",ClassName:'ChartDrawPictureGoldenSection',Create:function Create(){return new ChartDrawPictureGoldenSection();}},{Name:"百分比线",ClassName:'ChartDrawPicturePercentage',Create:function Create(){return new ChartDrawPicturePercentage();}},{Name:"波段线",ClassName:'ChartDrawPictureWaveBand',Create:function Create(){return new ChartDrawPictureWaveBand();}},{Name:"三角形",ClassName:'ChartDrawPictureTriangle',Create:function Create(){return new ChartDrawPictureTriangle();}},{Name:"对称角度",ClassName:'ChartDrawPictureSymmetryAngle',Create:function Create(){return new ChartDrawPictureSymmetryAngle();}},{Name:"圆",ClassName:'ChartDrawPictureCircle',Create:function Create(){return new ChartDrawPictureCircle();}},{Name:"平行四边形",ClassName:'ChartDrawPictureQuadrangle',Create:function Create(){return new ChartDrawPictureQuadrangle();}},{Name:"斐波那契周期线",ClassName:'ChartDrawPictureFibonacci',Create:function Create(){return new ChartDrawPictureFibonacci();}},{Name:"线形回归线",ClassName:"ChartDrawLinearRegression",Create:function Create(){return new ChartDrawLinearRegression();}},{Name:"线形回归带",ClassName:"ChartDrawLinearRegression",Create:function Create(){return new ChartDrawLinearRegression({IsShowMaxMinLine:true});}},{Name:"延长线形回归带",ClassName:"ChartDrawLinearRegression",Create:function Create(){return new ChartDrawLinearRegression({IsShowMaxMinLine:true,IsShowExtendLine:true});}},{Name:"尺子",ClassName:"ChartDrawRuler",Create:function Create(){return new ChartDrawRuler();}},{Name:"标价线",ClassName:"ChartDrawPriceLine",Create:function Create(){return new ChartDrawPriceLine();}},{Name:"标价线2",ClassName:"ChartDrawPriceLineV2",Create:function Create(){return new ChartDrawPriceLineV2();}},{Name:"垂直线",ClassName:"ChartDrawVerticalLine",Create:function Create(){return new ChartDrawVerticalLine();}},{Name:"波浪尺",ClassName:"ChartDrawWaveRuler",Create:function Create(){return new ChartDrawWaveRuler();}},{Name:"AB波浪尺",ClassName:"ChartDrawWaveRuler2Point",Create:function Create(){return new ChartDrawWaveRuler2Point();}},{Name:"箱型线",ClassName:"ChartDrawBox",Create:function Create(){return new ChartDrawBox();}},{Name:"2点画图例子",ClassName:"ChartDrawTwoPointDemo",Create:function Create(){return new ChartDrawTwoPointDemo();}},{Name:"3点画图例子",ClassName:"ChartDrawThreePointDemo",Create:function Create(){return new ChartDrawThreePointDemo();}},{Name:"水平线段",ClassName:"ChartDrawHLineSegment",Create:function Create(){return new ChartDrawHLineSegment();}},{Name:"平行射线",ClassName:"ChartDrawParallelRaysLines",Create:function Create(){return new ChartDrawParallelRaysLines();}},{ClassName:'ChartDrawPictureIconFont',Create:function Create(){return new ChartDrawPictureIconFont();}},//涂鸦 不绑定K线坐标
5633
+ rgb=rgb.substr(4).split(")")[0].split(sep);var r=(+rgb[0]).toString(16),g=(+rgb[1]).toString(16),b=(+rgb[2]).toString(16);if(r.length==1)r="0"+r;if(g.length==1)g="0"+g;if(b.length==1)b="0"+b;return"#"+r+g+b;};//16进制颜色转rgb
5634
+ IChartDrawPicture.HexToRGB=function(color){color=color.toLowerCase();var reg=/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;if(color&&reg.test(color)){if(color.length===4){var sColorNew="#";for(var i=1;i<4;i+=1){sColorNew+=color.slice(i,i+1).concat(color.slice(i,i+1));}color=sColorNew;}//处理六位的颜色值
5635
+ var sColorChange=[];for(var i=1;i<7;i+=2){sColorChange.push(parseInt("0x"+color.slice(i,i+2)));}return"rgb("+sColorChange.join(",")+")";}return null;};IChartDrawPicture.ArrayDrawPricture=[{Name:"线段",ClassName:'ChartDrawPictureLine',Create:function Create(){return new ChartDrawPictureLine();}},{Name:"射线",ClassName:'ChartDrawPictureHaflLine',Create:function Create(){return new ChartDrawPictureHaflLine();}},{Name:"箭头",ClassName:"ChartDrawArrowLine",Create:function Create(){return new ChartDrawArrowLine();}},{Name:"水平线",ClassName:'ChartDrawPictureHorizontalLine',Create:function Create(){return new ChartDrawPictureHorizontalLine();}},{Name:"趋势线",ClassName:'ChartDrawPictureTrendLine',Create:function Create(){return new ChartDrawPictureTrendLine();}},{Name:"矩形",ClassName:'ChartDrawPictureRect',Create:function Create(){return new ChartDrawPictureRect();}},{Name:"圆弧线",ClassName:'ChartDrawPictureArc',Create:function Create(){return new ChartDrawPictureArc();}},{Name:"M头W底",ClassName:'ChartDrawPictureWaveMW',Create:function Create(){return new ChartDrawPictureWaveMW();}},{Name:"头肩型",ClassName:"ChartDrawHeadShouldersBT",Create:function Create(){return new ChartDrawHeadShouldersBT();}},{Name:"平行线",ClassName:'ChartDrawPictureParallelLines',Create:function Create(){return new ChartDrawPictureParallelLines();}},{Name:"平行通道",ClassName:'ChartDrawPictureParallelChannel',Create:function Create(){return new ChartDrawPictureParallelChannel();}},{Name:"价格通道线",ClassName:'ChartDrawPicturePriceChannel',Create:function Create(){return new ChartDrawPicturePriceChannel();}},{Name:"文本",ClassName:'ChartDrawPictureText',Create:function Create(){return new ChartDrawPictureText();}},{Name:"江恩角度线",ClassName:'ChartDrawPictureGannFan',Create:function Create(){return new ChartDrawPictureGannFan();}},{Name:"阻速线",ClassName:'ChartDrawPictureResistanceLine',Create:function Create(){return new ChartDrawPictureResistanceLine();}},{Name:"黄金分割",ClassName:'ChartDrawPictureGoldenSection',Create:function Create(){return new ChartDrawPictureGoldenSection();}},{Name:"百分比线",ClassName:'ChartDrawPicturePercentage',Create:function Create(){return new ChartDrawPicturePercentage();}},{Name:"波段线",ClassName:'ChartDrawPictureWaveBand',Create:function Create(){return new ChartDrawPictureWaveBand();}},{Name:"三角形",ClassName:'ChartDrawPictureTriangle',Create:function Create(){return new ChartDrawPictureTriangle();}},{Name:"对称角度",ClassName:'ChartDrawPictureSymmetryAngle',Create:function Create(){return new ChartDrawPictureSymmetryAngle();}},{Name:"圆",ClassName:'ChartDrawPictureCircle',Create:function Create(){return new ChartDrawPictureCircle();}},{Name:"平行四边形",ClassName:'ChartDrawPictureQuadrangle',Create:function Create(){return new ChartDrawPictureQuadrangle();}},{Name:"斐波那契周期线",ClassName:'ChartDrawPictureFibonacci',Create:function Create(){return new ChartDrawPictureFibonacci();}},{Name:"线形回归线",ClassName:"ChartDrawLinearRegression",Create:function Create(){return new ChartDrawLinearRegression();}},{Name:"线形回归带",ClassName:"ChartDrawLinearRegression",Create:function Create(){return new ChartDrawLinearRegression({IsShowMaxMinLine:true});}},{Name:"延长线形回归带",ClassName:"ChartDrawLinearRegression",Create:function Create(){return new ChartDrawLinearRegression({IsShowMaxMinLine:true,IsShowExtendLine:true});}},{Name:"尺子",ClassName:"ChartDrawRuler",Create:function Create(){return new ChartDrawRuler();}},{Name:"标价线",ClassName:"ChartDrawPriceLine",Create:function Create(){return new ChartDrawPriceLine();}},{Name:"标价线2",ClassName:"ChartDrawPriceLineV2",Create:function Create(){return new ChartDrawPriceLineV2();}},{Name:"垂直线",ClassName:"ChartDrawVerticalLine",Create:function Create(){return new ChartDrawVerticalLine();}},{Name:"波浪尺",ClassName:"ChartDrawWaveRuler",Create:function Create(){return new ChartDrawWaveRuler();}},{Name:"AB波浪尺",ClassName:"ChartDrawWaveRuler2Point",Create:function Create(){return new ChartDrawWaveRuler2Point();}},{Name:"箱型线",ClassName:"ChartDrawBox",Create:function Create(){return new ChartDrawBox();}},{Name:"2点画图例子",ClassName:"ChartDrawTwoPointDemo",Create:function Create(){return new ChartDrawTwoPointDemo();}},{Name:"3点画图例子",ClassName:"ChartDrawThreePointDemo",Create:function Create(){return new ChartDrawThreePointDemo();}},{Name:"水平线段",ClassName:"ChartDrawHLineSegment",Create:function Create(){return new ChartDrawHLineSegment();}},{Name:"平行射线",ClassName:"ChartDrawParallelRaysLines",Create:function Create(){return new ChartDrawParallelRaysLines();}},{ClassName:'ChartDrawPictureIconFont',Create:function Create(){return new ChartDrawPictureIconFont();}},//涂鸦 不绑定K线坐标
5630
5636
  {Name:"涂鸦线段",ClassName:'ChartDrawGraffitiLine',Create:function Create(){return new ChartDrawGraffitiLine();}},{Name:"固定范围成交量分布图",ClassName:"ChartDrawVolProfile",Create:function Create(){return new ChartDrawVolProfile();}},{Name:"DisjointChannel",ClassName:"ChartDrawDisjontChannel",Create:function Create(){return new ChartDrawDisjontChannel();}},{Name:"FlatTop",ClassName:"ChartDrawDisjontChannel",Create:function Create(){return new ChartDrawFlatTop();}},{Name:"水平线2",ClassName:"ChartDrawHLine",Create:function Create(){return new ChartDrawHLine();}},//trading view样式
5631
5637
  {Name:"Note",ClassName:"ChartDrawNote",Create:function Create(){return new ChartDrawNote();}},{Name:"AnchoredText",ClassName:"ChartDrawAnchoredText",Create:function Create(){return new ChartDrawAnchoredText();}},{Name:"PriceLabel",ClassName:"ChartDrawPriceLabel",Create:function Create(){return new ChartDrawPriceLabel();}},{Name:"PriceNote",ClassName:"ChartDrawPriceNote",Create:function Create(){return new ChartDrawPriceNote();}},{Name:"FibWedge",ClassName:"ChartDrawFibWedge",Create:function Create(){return new ChartDrawFibWedge();}}];IChartDrawPicture.MapIonFont=new _map2.default([["icon-arrow_up",{Text:'\uE683',Color:'#318757',Family:"iconfont"}],["icon-arrow_down",{Text:'\uE681',Color:'#db563e',Family:"iconfont"}],["icon-arrow_right",{Text:'\uE682',Color:'#318757',Family:"iconfont"}],["icon-arrow_left",{Text:'\uE680',Color:'#318757',Family:"iconfont"}]]);IChartDrawPicture.GetDrawPictureByName=function(value){for(var i in IChartDrawPicture.ArrayDrawPricture){var item=IChartDrawPicture.ArrayDrawPricture[i];if(item.Name==value)return item;}return null;};IChartDrawPicture.GetDrawPictureByClassName=function(value){for(var i in IChartDrawPicture.ArrayDrawPricture){var item=IChartDrawPicture.ArrayDrawPricture[i];if(item.ClassName==value)return item;}return null;};//注册一个新的画图工具 {Name:中文名字, ClassName:类名, Create:function()}
5632
5638
  IChartDrawPicture.RegisterDrawPicture=function(obj){if(!obj.Name||!obj.ClassName||!obj.Create)return false;var item={Name:obj.Name,ClassName:obj.ClassName,Create:obj.Create};IChartDrawPicture.ArrayDrawPricture.push(item);JSConsole.Chart.Log('[IChartDrawPicture.RegisterDrawPicture] registered new draw picture class. item=',item);return true;};//注册一个新图标 {Name:, Text: , Color:, Family:}
@@ -7432,7 +7438,8 @@ if(_event2&&_event2.Callback){var sendData={DrawPicture:drawPictrueData.ChartDra
7432
7438
  if((moveUpDown>0&&moveSetp<=3||moveAngle<=this.TouchMoveMinAngle)&&this.EnableScrollUpDown==true){this.StopDragTimer();return;}this.PreventTouchEvent(e);this.MouseDrag=null;var pixelTatio=GetDevicePixelRatio();var x=touches[0].clientX-uielement.getBoundingClientRect().left*pixelTatio;var y=touches[0].clientY-uielement.getBoundingClientRect().top*pixelTatio;this.OnMouseMove(x,y,e);}}if(this.PhoneTouchInfo){this.PhoneTouchInfo.End.X=touches[0].clientX;this.PhoneTouchInfo.End.Y=touches[0].clientY;}}else if(this.IsPhonePinching(e)){this.PreventTouchEvent(e);var phonePinch=this.PhonePinch;if(!phonePinch)return;var yHeight=Math.abs(touches[0].pageY-touches[1].pageY);var yLastHeight=Math.abs(phonePinch.Last.Y-phonePinch.Last.Y2);var yStep=yHeight-yLastHeight;var xHeight=Math.abs(touches[0].pageX-touches[1].pageX);var xLastHeight=Math.abs(phonePinch.Last.X-phonePinch.Last.X2);var xStep=xHeight-xLastHeight;var minStep=this.ZoomStepPixel;if(Math.abs(xStep)>minStep){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_MINUTE_TOUCH_ZOOM);if(event&&event.Callback){var data={XStep:xStep,YStep:yStep,PreventDefault:false};event.Callback(event,data,this);if(data.PreventDefault){this.PhonePinch=null;this.StopDragTimer();return;}}}phonePinch.Last={"X":touches[0].pageX,"Y":touches[0].pageY,"X2":touches[1].pageX,"Y2":touches[1].pageY};}if(this.EnableScrollUpDown==false){e.preventDefault();}else{if(drag==null){this.PreventTouchEvent(e);//十字光标出来了,阻止消息
7433
7439
  }else{this.StopDragTimer();//上下推动图片,停止定时器,消息传递下去
7434
7440
  }}};this.OnTouchEnd=function(e){JSConsole.Chart.Log('[MinuteChartContainer::OnTouchEnd]',e);if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;var bClearDrawPicture=true;if(this.CurrentChartDrawPicture){var drawPicture=this.CurrentChartDrawPicture;if(drawPicture.Status==2||drawPicture.Status==1||drawPicture.Status==3){drawPicture.PointStatus=drawPicture.Status;if(this.FinishChartDrawPicturePoint())this.DrawDynamicInfo();else bClearDrawPicture=false;}else if(drawPicture.Status==20){if(this.FinishMoveChartDrawPicture())this.DrawDynamicInfo();}}if(this.EnableZoomIndexWindow){var time=Date.now();this.PhoneDBClick.AddTouchEnd(time);if(this.PhoneDBClick.IsVaildDBClick()){this.OnTouchDBClick(this.PhoneDBClick.Start);this.PhoneDBClick.Clear();}}this.IsOnTouch=false;this.StopDragTimer();this.TouchEvent({EventID:JSCHART_EVENT_ID.ON_PHONE_TOUCH,FunctionName:"OnTouchEnd"},e);this.OnTouchFinished();this.TouchDrawCount=0;};//键盘左右移动十字光标
7435
- this.OnKeyDown=function(e){this.StopDisplayLatest();if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;var keyID=e.keyCode?e.keyCode:e.which;switch(keyID){case 37://left
7441
+ this.OnKeyDown=function(e){this.StopDisplayLatest();if(this.ChartSplashPaint&&this.ChartSplashPaint.IsEnableSplash==true)return;//回调事件
7442
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN);if(event&&event.Callback){var sendData={e:e,PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault)return;}var keyID=e.keyCode?e.keyCode:e.which;switch(keyID){case 37://left
7436
7443
  if(this.EnableNewIndex){this.MoveCorssCursorIndex({IsMoveLeft:true});}else{if(!IFrameSplitOperator.IsNumber(this.CursorIndex)){var xPointcount=0;if(this.Frame.XPointCount)xPointcount=this.Frame.XPointCount;else xPointcount=this.Frame.SubFrame[0].Frame.XPointCount;this.CursorIndex=xPointcount-1;}this.CursorIndex=parseInt(this.CursorIndex);if(this.CursorIndex<=0.99999){if(!this.DataMoveLeft())break;this.UpdataDataoffset();this.UpdatePointByCursorIndex();this.UpdateFrameMaxMin();this.Draw();}else{--this.CursorIndex;this.UpdatePointByCursorIndex();this.DrawDynamicInfo();}}break;case 39://right
7437
7444
  if(this.EnableNewIndex){this.MoveCorssCursorIndex({IsMoveLeft:false});}else{var xPointcount=0;if(this.Frame.XPointCount)xPointcount=this.Frame.XPointCount;else xPointcount=this.Frame.SubFrame[0].Frame.XPointCount;if(!IFrameSplitOperator.IsNumber(this.CursorIndex))this.CursorIndex=0;this.CursorIndex=parseInt(this.CursorIndex);if(this.CursorIndex+1>=xPointcount){if(!this.DataMoveRight())break;this.UpdataDataoffset();this.UpdatePointByCursorIndex();this.UpdateFrameMaxMin();this.Draw();}else{//判断是否在最后一个数据上
7438
7445
  var data=null;if(this.Frame.Data)data=this.Frame.Data;else data=this.Frame.SubFrame[0].Frame.Data;if(!data)break;if(this.CursorIndex+data.DataOffset+1>=data.Data.length)break;++this.CursorIndex;this.UpdatePointByCursorIndex();this.DrawDynamicInfo();}}break;case 46://del
@@ -7721,27 +7728,27 @@ this.GetSelectRectData=function(selectData){if(Math.abs(selectData.XStart-select
7721
7728
  {var subFrame=this.Frame.SubFrame[1];if(subFrame.Frame)subFrame.Frame.XYSplit=true;}};this.ExportMainData=function(data,option){var aryData=data.ExportMinuteData(option);//导出K线
7722
7729
  return aryData;};this.DisplayLatest=function(){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_DISPLAY_LATEST);//选中画图工具事件
7723
7730
  if(event){var sendData={PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault)return;}this.CursorIndex=null;this.LastPoint.X=0;this.LastPoint.Y=0;this.GlobalOption.IsDisplayLatest=true;this.DrawDynamicInfo();};this.TryClickIndexTitle=function(x,y){for(var i=0;i<this.TitlePaint.length;++i){var item=this.TitlePaint[i];if(!item.IsClickTitle)continue;if(!item.IsClickTitle(x,y))continue;var data={Point:{X:x,Y:y},Title:item.Title,FrameID:item.Frame.Identify};JSConsole.Chart.Log('[MinuteChartContainer::TryClickIndexTitle] click title ',data);var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CLICK_INDEXTITLE);if(event&&event.Callback)event.Callback(event,data,this);return true;}return false;};}//盘前数据
7724
- MinuteChartContainer.JsonDataToBeforeOpenData=function(data){var symbol=data.stock[0].symbol;var upperSymbol=symbol.toUpperCase();var isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);var preClose=data.stock[0].yclose;//前一个数据价格
7731
+ MinuteChartContainer.JsonDataToBeforeOpenData=function(data){var symbol=data.stock[0].symbol;var upperSymbol=symbol.toUpperCase();var isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);var yClose=data.stock[0].yclos;var preClose=data.stock[0].yclose;//前一个数据价格
7725
7732
  var stockData=data.stock[0];var date=stockData.date;//日期
7726
7733
  var beforeOpenData={Data:[],TotalCount:15,Ver:1.0,Date:date};var extendDataIndex=JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA;//扩展数据序号
7727
- if(stockData.beforeinfo){if(IFrameSplitOperator.IsNumber(stockData.beforeinfo.totalcount))beforeOpenData.TotalCount=stockData.beforeinfo.totalcount;if(IFrameSplitOperator.IsNumber(stockData.beforeinfo.ver))beforeOpenData.Ver=stockData.beforeinfo.ver;}if(beforeOpenData.Ver==1.0){if(IFrameSplitOperator.IsNonEmptyArray(stockData.before)){for(var i=0;i<stockData.before.length;++i){var item=new BeforeOpenData();var jsData=stockData.before[i];item.Time=jsData[0];item.Date=date;item.Price=jsData[1];if(!item.Price)item.Price=preClose;else preClose=item.Price;if(isSHSZ)item.Vol[0]=jsData[2]/100;//沪深股票原始单位股
7734
+ if(stockData.beforeinfo){if(IFrameSplitOperator.IsNumber(stockData.beforeinfo.totalcount))beforeOpenData.TotalCount=stockData.beforeinfo.totalcount;if(IFrameSplitOperator.IsNumber(stockData.beforeinfo.ver))beforeOpenData.Ver=stockData.beforeinfo.ver;}if(beforeOpenData.Ver==1.0){if(IFrameSplitOperator.IsNonEmptyArray(stockData.before)){for(var i=0;i<stockData.before.length;++i){var item=new BeforeOpenData();var jsData=stockData.before[i];item.YClose=yClose;item.Time=jsData[0];item.Date=date;item.Price=jsData[1];if(!item.Price)item.Price=preClose;else preClose=item.Price;if(isSHSZ)item.Vol[0]=jsData[2]/100;//沪深股票原始单位股
7728
7735
  else item.Vol[0]=jsData[2];item.Amount=jsData[3];if(IFrameSplitOperator.IsNumber(jsData[4])&&jsData[4]>19000101)//日期
7729
- item.Date=jsData[4];item.DateTime=item.Date+' '+item.Time;beforeOpenData.Data.push(item);}}}else if(beforeOpenData.Ver==2.0){var max=0;for(var i in stockData.before){var item=new BeforeOpenData();var jsData=stockData.before[i];item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.Vol[0]=jsData[2];//匹配量
7736
+ item.Date=jsData[4];item.DateTime=item.Date+' '+item.Time;beforeOpenData.Data.push(item);}}}else if(beforeOpenData.Ver==2.0){var max=0;for(var i in stockData.before){var item=new BeforeOpenData();var jsData=stockData.before[i];item.YClose=yClose;item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.Vol[0]=jsData[2];//匹配量
7730
7737
  item.Vol[1]=jsData[3];//未匹配量
7731
7738
  item.ColorID=jsData[4];//柱子颜色ID
7732
7739
  if(IFrameSplitOperator.IsNumber(jsData[6]))item.Date=jsData[6];//日期
7733
- item.DateTime=item.Date+' '+item.Time+')';var totalVol=item.Vol[0]+item.Vol[1];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];beforeOpenData.Data.push(item);}beforeOpenData.VolMax=max;beforeOpenData.VolMin=0;}else if(beforeOpenData.Ver==3.0){var max=0;for(var i in stockData.before){var item=new BeforeOpenData();var jsData=stockData.before[i];item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.AvPrice=jsData[2];//均价
7740
+ item.DateTime=item.Date+' '+item.Time+')';var totalVol=item.Vol[0]+item.Vol[1];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];beforeOpenData.Data.push(item);}beforeOpenData.VolMax=max;beforeOpenData.VolMin=0;}else if(beforeOpenData.Ver==3.0){var max=0;for(var i in stockData.before){var item=new BeforeOpenData();var jsData=stockData.before[i];item.YClose=yClose;item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.AvPrice=jsData[2];//均价
7734
7741
  item.Vol[0]=jsData[3];//匹配量
7735
7742
  item.ColorID=jsData[4];//柱子颜色ID
7736
7743
  item.DateTime=date.toString()+" "+item.Time.toString();var totalVol=item.Vol[0];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];beforeOpenData.Data.push(item);}beforeOpenData.VolMax=max;beforeOpenData.VolMin=0;}return beforeOpenData;};//收盘集合竞价
7737
- MinuteChartContainer.JsonDataToAfterCloseData=function(data){var preClose=data.stock[0].yclose;//前一个数据价格
7744
+ MinuteChartContainer.JsonDataToAfterCloseData=function(data){var yClose=data.stock[0].yclose;var preClose=data.stock[0].yclose;//前一个数据价格
7738
7745
  var stockData=data.stock[0];var date=stockData.date;//日期
7739
7746
  if(!stockData.afterinfo)return null;var afterCloseData={Data:[],TotalCount:3*60,Ver:2.0,Date:date};var item=stockData.afterinfo;if(IFrameSplitOperator.IsNumber(item.totalcount))afterCloseData.TotalCount=item.totalcount;if(IFrameSplitOperator.IsNumber(item.ver))afterCloseData.Ver=item.ver;var extendDataIndex=JSCHART_DATA_FIELD_ID.MINUTE_AFTERCLOSE_EXTENDDATA;//扩展数据序号
7740
- if(afterCloseData.Ver==1.0){for(var i=0;i<stockData.after.length;++i){var item=new AfterCloseData();var jsData=stockData.after[i];item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.Vol[0]=jsData[2];item.Amount=jsData[3];if(IFrameSplitOperator.IsNumber(jsData[4]))//日期
7741
- item.Date=jsData[4];item.DateTime=item.Date+' '+item.Time;afterCloseData.Data.push(item);}}else if(afterCloseData.Ver==2.0){var max=0;for(var i in stockData.after){var item=new AfterCloseData();var jsData=stockData.after[i];item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.Vol[0]=jsData[2];//匹配量
7747
+ if(afterCloseData.Ver==1.0){for(var i=0;i<stockData.after.length;++i){var item=new AfterCloseData();var jsData=stockData.after[i];item.YClose=yClose;item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.Vol[0]=jsData[2];item.Amount=jsData[3];if(IFrameSplitOperator.IsNumber(jsData[4]))//日期
7748
+ item.Date=jsData[4];item.DateTime=item.Date+' '+item.Time;afterCloseData.Data.push(item);}}else if(afterCloseData.Ver==2.0){var max=0;for(var i in stockData.after){var item=new AfterCloseData();var jsData=stockData.after[i];item.YClose=yClose;item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.Vol[0]=jsData[2];//匹配量
7742
7749
  item.Vol[1]=jsData[3];//未匹配量
7743
7750
  item.ColorID=jsData[4];//柱子颜色ID
7744
- item.DateTime=date.toString()+" "+item.Time.toString();var totalVol=item.Vol[0]+item.Vol[1];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];afterCloseData.Data.push(item);}afterCloseData.VolMax=max;afterCloseData.VolMin=0;}else if(afterCloseData.Ver==3.0){var max=0;for(var i in stockData.after){var item=new AfterCloseData();var jsData=stockData.after[i];item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.AvPrice=jsData[2];//均价
7751
+ item.DateTime=date.toString()+" "+item.Time.toString();var totalVol=item.Vol[0]+item.Vol[1];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];afterCloseData.Data.push(item);}afterCloseData.VolMax=max;afterCloseData.VolMin=0;}else if(afterCloseData.Ver==3.0){var max=0;for(var i in stockData.after){var item=new AfterCloseData();var jsData=stockData.after[i];item.YClose=yClose;item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.AvPrice=jsData[2];//均价
7745
7752
  item.Vol[0]=jsData[3];//匹配量
7746
7753
  item.ColorID=jsData[4];//柱子颜色ID
7747
7754
  item.DateTime=date.toString()+" "+item.Time.toString();var totalVol=item.Vol[0];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];afterCloseData.Data.push(item);}afterCloseData.VolMax=max;afterCloseData.VolMin=0;}return afterCloseData;};//API 返回数据 转化为array[]
@@ -7752,7 +7759,7 @@ var aryMinuteData=[];var preClose=data.stock[0].yclose;//前一个数据价格
7752
7759
  var preAvPrice=data.stock[0].yclose;//前一个均价
7753
7760
  var yClose=data.stock[0].yclose;if(isFutures&&data.stock[0].yclearing)yClose=preClose=preAvPrice=data.stock[0].yclearing;//期货使用昨结算价
7754
7761
  if(!IFrameSplitOperator.IsNonEmptyArray(data.stock[0].minute))return aryMinuteData;var date=data.stock[0].date;//默认使用外部日期, 但跨天的 走势图使用内部的日期
7755
- for(var i=0;i<data.stock[0].minute.length;++i){var jsData=data.stock[0].minute[i];var item=new MinuteData();item.Close=jsData.price;item.Open=jsData.open;item.High=jsData.high;item.Low=jsData.low;if(isSHSZ)item.Vol=jsData.vol/100;//沪深股票原始单位股
7762
+ for(var i=0;i<data.stock[0].minute.length;++i){var jsData=data.stock[0].minute[i];var item=new MinuteData();item.YClose=yClose;item.Close=jsData.price;item.Open=jsData.open;item.High=jsData.high;item.Low=jsData.low;if(isSHSZ)item.Vol=jsData.vol/100;//沪深股票原始单位股
7756
7763
  else item.Vol=jsData.vol;item.Amount=jsData.amount;if(jsData.date>0)date=jsData.date;//分钟数据中有日期 优先使用
7757
7764
  item.DateTime=date.toString()+" "+jsData.time.toString();item.Date=date;item.Time=jsData.time;if(isFutures||isSHO||isSZO)item.Position=jsData.position;//期货 期权有持仓
7758
7765
  else if(IFrameSplitOperator.IsNumber(jsData.position))item.Position=jsData.position;item.Increase=jsData.increase;item.Risefall=jsData.risefall;item.AvPrice=jsData.avprice;if(IFrameSplitOperator.IsNumber(jsData.lead))item.Lead=jsData.lead;//领先指标 指数才有
@@ -7785,7 +7792,7 @@ var preAvPrice=null;//上一个均价
7785
7792
  var yClearing=dayData.yclearing;//昨结算价
7786
7793
  //var preAvPrice=data.stock[0].yclose; //前一个均价
7787
7794
  for(var j in dayData.minute){var jsData=dayData.minute[j];if(jsData[2])preClose=jsData[2];//保存上一个收盘数据
7788
- var item=new MinuteData();item.Close=jsData[2];item.Open=jsData[1];item.High=jsData[3];item.Low=jsData[4];if(isSHSZ)item.Vol=jsData[5]/100;//原始单位股
7795
+ var item=new MinuteData();item.YClose=yClose;item.Close=jsData[2];item.Open=jsData[1];item.High=jsData[3];item.Low=jsData[4];if(isSHSZ)item.Vol=jsData[5]/100;//原始单位股
7789
7796
  else item.Vol=jsData[5];item.Amount=jsData[6];if(7<jsData.length&&jsData[7]>0)item.AvPrice=jsData[7];//均价
7790
7797
  item.DateTime=date.toString()+" "+jsData[0].toString();item.Date=date;item.Time=jsData[0];if(8<jsData.length&&jsData[8]>0){item.Date=jsData[8];//日期
7791
7798
  item.DateTime=item.Date.toString()+" "+jsData[0].toString();}if((isFutures||isSHO||isSZO)&&9<jsData.length)item.Position=jsData[9];//持仓
@@ -7798,16 +7805,16 @@ if(!IFrameSplitOperator.IsNumber(item.Close))//当前没有价格 使用上一
7798
7805
  //if (item.Low<=0) item.Low=null;
7799
7806
  //if (item.AvPrice<=0) item.AvPrice=null;
7800
7807
  //均价太大 可能是后台算错了
7801
- if(item.AvPrice&&isSHSZ){var checkValue=Math.abs(item.AvPrice-item.Close);if(checkValue>item.Close*0.13)item.AvPrice=preAvPrice;}if(jsData.length>7&&jsData[7]>0&&item.AvPrice===jsData[7])preAvPrice=jsData[7];if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];minuteData[j]=item;}var newData=new ChartData();newData.Data=minuteData;newData.YClose=yClose;newData.Close=dayData.close;newData.Date=date;if(IFrameSplitOperator.IsNumber(yClearing))newData.YClearing=yClearing;result.push(newData);}return result;};MinuteChartContainer.JsonDataToHistoryMinuteLineColorData=function(data){if(!data)return null;var aryLineColor=[];for(var i in data.data){var dayData=data.data[i];if(!dayData.linecolor)continue;for(var j in dayData.linecolor.data){var item=dayData.linecolor.data[j];if(!IFrameSplitOperator.IsNumber(item.type)||!IFrameSplitOperator.IsNumber(item.date)||!IFrameSplitOperator.IsNumber(item.start)||!IFrameSplitOperator.IsNumber(item.end)||!item.color)continue;if(item.start>=item.end)continue;var newItem={Type:item.type,Date:item.date,Start:item.start,End:item.end,Color:item.color};if(IFrameSplitOperator.IsPlusNumber(item.linewidth))newItem.LineWidth=item.linewidth;aryLineColor.push(newItem);}}return aryLineColor.length>0?aryLineColor:null;};MinuteChartContainer.JsonDataToCallAuctionItem=function(data,callAuctionData,isBeforeOpen,symbol){var isSHSZ=false;if(symbol){var upperSymbol=symbol.toUpperCase();isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);}var date=callAuctionData.Date;var extendDataIndex=isBeforeOpen?JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA:JSCHART_DATA_FIELD_ID.MINUTE_AFTERCLOSE_EXTENDDATA;//扩展数据序号
7802
- if(callAuctionData.Ver==1.0){var preClose=null;for(var i in data){var item=isBeforeOpen?new BeforeOpenData():new AfterCloseData();var jsData=data[i];item.Time=jsData[0];item.Date=date;item.Price=jsData[1];if(!item.Price)item.Price=preClose;else preClose=item.Price;item.Vol[0]=isSHSZ?jsData[2]/100:jsData[2];//沪深股票原始单位股
7808
+ if(item.AvPrice&&isSHSZ){var checkValue=Math.abs(item.AvPrice-item.Close);if(checkValue>item.Close*0.13)item.AvPrice=preAvPrice;}if(jsData.length>7&&jsData[7]>0&&item.AvPrice===jsData[7])preAvPrice=jsData[7];if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];minuteData[j]=item;}var newData=new ChartData();newData.Data=minuteData;newData.YClose=yClose;newData.Close=dayData.close;newData.Date=date;if(IFrameSplitOperator.IsNumber(yClearing))newData.YClearing=yClearing;result.push(newData);}return result;};MinuteChartContainer.JsonDataToHistoryMinuteLineColorData=function(data){if(!data)return null;var aryLineColor=[];for(var i in data.data){var dayData=data.data[i];if(!dayData.linecolor)continue;for(var j in dayData.linecolor.data){var item=dayData.linecolor.data[j];if(!IFrameSplitOperator.IsNumber(item.type)||!IFrameSplitOperator.IsNumber(item.date)||!IFrameSplitOperator.IsNumber(item.start)||!IFrameSplitOperator.IsNumber(item.end)||!item.color)continue;if(item.start>=item.end)continue;var newItem={Type:item.type,Date:item.date,Start:item.start,End:item.end,Color:item.color};if(IFrameSplitOperator.IsPlusNumber(item.linewidth))newItem.LineWidth=item.linewidth;aryLineColor.push(newItem);}}return aryLineColor.length>0?aryLineColor:null;};MinuteChartContainer.JsonDataToCallAuctionItem=function(data,callAuctionData,isBeforeOpen,symbol){var isSHSZ=false;if(symbol){var upperSymbol=symbol.toUpperCase();isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);}var date=callAuctionData.Date;var yClose=callAuctionData.YClose;var extendDataIndex=isBeforeOpen?JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA:JSCHART_DATA_FIELD_ID.MINUTE_AFTERCLOSE_EXTENDDATA;//扩展数据序号
7809
+ if(callAuctionData.Ver==1.0){var preClose=null;for(var i in data){var item=isBeforeOpen?new BeforeOpenData():new AfterCloseData();var jsData=data[i];item.YClose=yClose;item.Time=jsData[0];item.Date=date;item.Price=jsData[1];if(!item.Price)item.Price=preClose;else preClose=item.Price;item.Vol[0]=isSHSZ?jsData[2]/100:jsData[2];//沪深股票原始单位股
7803
7810
  item.Amount=jsData[3];if(IFrameSplitOperator.IsNumber(jsData[4]))//日期
7804
- item.Date=jsData[4];item.DateTime=item.Date+' '+item.Time;callAuctionData.Data.push(item);}}else if(callAuctionData.Ver==2.0){var max=0;for(var i in data){var item=isBeforeOpen?new BeforeOpenData():new AfterCloseData();var jsData=data[i];item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.Vol[0]=jsData[2];//匹配量
7811
+ item.Date=jsData[4];item.DateTime=item.Date+' '+item.Time;callAuctionData.Data.push(item);}}else if(callAuctionData.Ver==2.0){var max=0;for(var i in data){var item=isBeforeOpen?new BeforeOpenData():new AfterCloseData();var jsData=data[i];item.YClose=yClose;item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.Vol[0]=jsData[2];//匹配量
7805
7812
  item.Vol[1]=jsData[3];//未匹配量
7806
7813
  item.ColorID=jsData[4];//柱子颜色ID
7807
- item.DateTime=date.toString()+" "+item.Time.toString();var totalVol=item.Vol[0]+item.Vol[1];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];callAuctionData.Data.push(item);}callAuctionData.VolMax=max;callAuctionData.VolMin=0;}else if(beforeOpenData.Ver==3.0){var max=0;for(var i in data){var item=isBeforeOpen?new BeforeOpenData():new AfterCloseData();var jsData=data[i];item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.AvPrice=jsData[2];//均价
7814
+ item.DateTime=date.toString()+" "+item.Time.toString();var totalVol=item.Vol[0]+item.Vol[1];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];callAuctionData.Data.push(item);}callAuctionData.VolMax=max;callAuctionData.VolMin=0;}else if(beforeOpenData.Ver==3.0){var max=0;for(var i in data){var item=isBeforeOpen?new BeforeOpenData():new AfterCloseData();var jsData=data[i];item.YClose=yClose;item.Time=jsData[0];item.Date=date;item.Price=jsData[1];item.AvPrice=jsData[2];//均价
7808
7815
  item.Vol[0]=jsData[3];//匹配量
7809
7816
  item.ColorID=jsData[4];//柱子颜色ID
7810
- item.DateTime=date.toString()+" "+item.Time.toString();var totalVol=item.Vol[0];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];callAuctionData.Data.push(item);}callAuctionData.VolMax=max;callAuctionData.VolMin=0;}};MinuteChartContainer.JosnDataToBeforeOpenDataArray=function(data){if(!data||!data.data)return null;var aryDay=[];for(var i in data.data){var dayItem=data.data[i];var beforeOpenData={Data:[],TotalCount:15,Ver:1.0,Date:dayItem.date};if(dayItem.beforeinfo){if(IFrameSplitOperator.IsNumber(dayItem.beforeinfo.totalcount))beforeOpenData.TotalCount=dayItem.beforeinfo.totalcount;if(IFrameSplitOperator.IsNumber(dayItem.beforeinfo.ver))beforeOpenData.Ver=dayItem.beforeinfo.ver;}MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.before,beforeOpenData,true,data.symbol);aryDay.push(beforeOpenData);}aryDay.sort(function(left,right){return left.Date-right.Date;});return aryDay;};MinuteChartContainer.JosnDataToAfterCloseDataArray=function(data){if(!data||!data.data)return null;var aryDay=[];for(var i in data.data){var dayItem=data.data[i];var afterCloseData={Data:[],TotalCount:15,Ver:1.0,Date:dayItem.date};if(dayItem.afterinfo){if(IFrameSplitOperator.IsNumber(dayItem.afterinfo.totalcount))afterCloseData.TotalCount=dayItem.afterinfo.totalcount;if(IFrameSplitOperator.IsNumber(dayItem.afterinfo.ver))afterCloseData.Ver=dayItem.afterinfo.ver;}MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.after,afterCloseData,false,data.symbol);aryDay.push(afterCloseData);}aryDay.sort(function(left,right){return left.Date-right.Date;});return aryDay;};/*
7817
+ item.DateTime=date.toString()+" "+item.Time.toString();var totalVol=item.Vol[0];if(IFrameSplitOperator.IsNumber(jsData[5]))totalVol=jsData[5];if(totalVol>max)max=totalVol;if(jsData[extendDataIndex])item.ExtendData=jsData[extendDataIndex];callAuctionData.Data.push(item);}callAuctionData.VolMax=max;callAuctionData.VolMin=0;}};MinuteChartContainer.JosnDataToBeforeOpenDataArray=function(data){if(!data||!data.data)return null;var aryDay=[];for(var i in data.data){var dayItem=data.data[i];var beforeOpenData={Data:[],TotalCount:15,Ver:1.0,Date:dayItem.date,YClose:dayItem.yclose};if(dayItem.beforeinfo){if(IFrameSplitOperator.IsNumber(dayItem.beforeinfo.totalcount))beforeOpenData.TotalCount=dayItem.beforeinfo.totalcount;if(IFrameSplitOperator.IsNumber(dayItem.beforeinfo.ver))beforeOpenData.Ver=dayItem.beforeinfo.ver;}MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.before,beforeOpenData,true,data.symbol);aryDay.push(beforeOpenData);}aryDay.sort(function(left,right){return left.Date-right.Date;});return aryDay;};MinuteChartContainer.JosnDataToAfterCloseDataArray=function(data){if(!data||!data.data)return null;var aryDay=[];for(var i in data.data){var dayItem=data.data[i];var afterCloseData={Data:[],TotalCount:15,Ver:1.0,Date:dayItem.date,YClose:dayItem.yclose};if(dayItem.afterinfo){if(IFrameSplitOperator.IsNumber(dayItem.afterinfo.totalcount))afterCloseData.TotalCount=dayItem.afterinfo.totalcount;if(IFrameSplitOperator.IsNumber(dayItem.afterinfo.ver))afterCloseData.Ver=dayItem.afterinfo.ver;}MinuteChartContainer.JsonDataToCallAuctionItem(dayItem.after,afterCloseData,false,data.symbol);aryDay.push(afterCloseData);}aryDay.sort(function(left,right){return left.Date-right.Date;});return aryDay;};/*
7811
7818
  历史分钟走势图
7812
7819
  */function HistoryMinuteChartContainer(uielement){this.newMethod=MinuteChartContainer;//派生
7813
7820
  this.newMethod(uielement);delete this.newMethod;this.HistoryMinuteApiUrl="http://127.0.0.1:8080/cache/minuteday/day/";this.ClassName='HistoryMinuteChartContainer';//创建主图K线画法
@@ -12471,7 +12478,7 @@ this.AreaColor=g_JSChartResource.ScrollBar.BGChart.AreaColor;//面积图颜色
12471
12478
  };this.Draw=function(){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return;this.Canvas.save();if(this.LineWidth>0)this.Canvas.lineWidth=this.LineWidth*GetDevicePixelRatio();var bottom=this.ChartBorder.GetBottom();this.Canvas.strokeStyle=this.Color;var bFirstPoint=true;var drawCount=0,x,y;var firstPoint={};for(var i=0;i<this.Data.Data.length;++i){var item=this.Data.Data[i];var value=item.Close;if(!IFrameSplitOperator.IsNumber(value))continue;x=this.ChartFrame.GetXFromIndex(i);y=this.ChartFrame.GetYFromData(value);if(bFirstPoint){this.Canvas.beginPath();this.Canvas.moveTo(x,y);bFirstPoint=false;firstPoint={X:x,Y:y};}else{this.Canvas.lineTo(x,y);}++drawCount;}if(drawCount>0){this.Canvas.stroke();this.Canvas.lineTo(x,bottom);this.Canvas.lineTo(firstPoint.X,bottom);this.Canvas.closePath();this.Canvas.fillStyle=this.AreaColor;this.Canvas.fill();}this.Canvas.restore();};this.GetMaxMin=function(){var range={Max:null,Min:null};if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.Data))return range;for(var i=0;i<this.Data.Data.length;++i){var item=this.Data.Data[i];var value=item.Close;if(!IFrameSplitOperator.IsNumber(value))continue;if(range.Max==null||range.Max<value)range.Max=value;if(range.Min==null||range.Min>value)range.Min=value;}return range;};}/********************************************************************************
12472
12479
  * 版本信息输出
12473
12480
  *
12474
- */var HQCHART_VERSION="1.1.12449";function PrintHQChartVersion(){var log='*************************************************************************************************************\n*\n* HQChart Ver: '+HQCHART_VERSION+' \n* \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n*************************************************************************************************************\n';console.log(log);}PrintHQChartVersion();//把给外界调用的方法暴露出来
12481
+ */var HQCHART_VERSION="1.1.12454";function PrintHQChartVersion(){var log='*************************************************************************************************************\n*\n* HQChart Ver: '+HQCHART_VERSION+' \n* \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n*************************************************************************************************************\n';console.log(log);}PrintHQChartVersion();//把给外界调用的方法暴露出来
12475
12482
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
12476
12483
  // BaseIndex:BaseIndex,
12477
12484
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "hqchart",
3
3
  "description": "stock chart",
4
4
  "author": "jones2000",
5
- "version": "1.1.12450",
5
+ "version": "1.1.12455",
6
6
  "main": "lib/main.js",
7
7
  "private": false,
8
8
  "license": "Apache License 2.0",
@@ -2494,6 +2494,8 @@ var JSCHART_EVENT_ID=
2494
2494
  ON_CUSTOM_DRAG_DOC_MOUSE_MOVE:114,
2495
2495
  ON_CUSTOM_DRAG_DOC_MOUSE_UP:115,
2496
2496
  ON_CUSTOM_DRAG_MOUSE_MOVE:116,
2497
+
2498
+ ON_KEYDOWN:117
2497
2499
  }
2498
2500
 
2499
2501
  var JSCHART_OPERATOR_ID=
@@ -5895,6 +5897,15 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
5895
5897
  this.OnKeyDown=function(e)
5896
5898
  {
5897
5899
  if (this.ChartSplashPaint && this.ChartSplashPaint.IsEnableSplash == true) return;
5900
+
5901
+ //回调事件
5902
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN);
5903
+ if (event && event.Callback)
5904
+ {
5905
+ var sendData={ e:e, PreventDefault:false };
5906
+ event.Callback(event, sendData, this);
5907
+ if (sendData.PreventDefault) return;
5908
+ }
5898
5909
 
5899
5910
  var keyID = e.keyCode ? e.keyCode :e.which;
5900
5911
  switch(keyID)
@@ -17634,6 +17645,7 @@ function MinuteData()
17634
17645
  this.Date; //日期
17635
17646
  this.Position=null; //持仓量
17636
17647
  this.YClearing; //昨结算价
17648
+ this.YClose; //昨收价
17637
17649
 
17638
17650
  this.ExtendData; //扩展数据
17639
17651
  }
@@ -17646,7 +17658,8 @@ function BeforeOpenData()
17646
17658
  this.Price; //匹配的价格
17647
17659
  this.AvPrice; //均价
17648
17660
  this.Vol=[]; //[0]=匹配量 [1]=未匹配量
17649
- this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
17661
+ this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
17662
+ this.YClose; //昨收价
17650
17663
  }
17651
17664
 
17652
17665
  //收盘集合竞价
@@ -17657,7 +17670,8 @@ function AfterCloseData()
17657
17670
  this.Price; //匹配的价格
17658
17671
  this.AvPrice; //均价
17659
17672
  this.Vol=[]; //[0]=匹配量 [1]=未匹配量
17660
- this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
17673
+ this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
17674
+ this.YClose; //昨收价
17661
17675
  }
17662
17676
 
17663
17677
  //单指标数据
@@ -48113,10 +48127,12 @@ function DynamicMinuteTitlePainting()
48113
48127
  var increase=item.Increase;
48114
48128
  var vol=item.Vol;
48115
48129
  var amount=item.Amount;
48130
+ var yClose=item.YClose;
48131
+ if (!IFrameSplitOperator.IsNumber(yClose)) yClose=this.YClose;
48116
48132
 
48117
48133
  if (IFrameSplitOperator.IsNumber(close))
48118
48134
  {
48119
- var color=this.GetColor(close,this.YClose);
48135
+ var color=this.GetColor(close,yClose);
48120
48136
  var text=g_JSChartLocalization.GetText('MTitle-Close',this.LanguageID)+close.toFixed(defaultfloatPrecision);
48121
48137
  aryText.push({Text:text, Color:color});
48122
48138
  }
@@ -48135,7 +48151,7 @@ function DynamicMinuteTitlePainting()
48135
48151
 
48136
48152
  if (IFrameSplitOperator.IsNumber(item.AvPrice) && isShowAvPrice && this.IsShowAveragePrice)
48137
48153
  {
48138
- var color=this.GetColor(item.AvPrice,this.YClose);
48154
+ var color=this.GetColor(item.AvPrice,yClose);
48139
48155
  var text=g_JSChartLocalization.GetText('MTitle-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);
48140
48156
  aryText.push({Text:text, Color:color});
48141
48157
  }
@@ -48258,7 +48274,8 @@ function DynamicMinuteTitlePainting()
48258
48274
  var item=data.Data;
48259
48275
  var text, strTime, strDate;
48260
48276
  strDate=IFrameSplitOperator.FormatDateString(item.Date);
48261
-
48277
+ var yClose=item.YClose;
48278
+
48262
48279
  //时间
48263
48280
  if (data.Ver==1.0) strTime=IFrameSplitOperator.FormatTimeString(item.Time,"HH:MM");
48264
48281
  else strTime=IFrameSplitOperator.FormatTimeString(item.Time,"HH:MM:SS");
@@ -48269,17 +48286,17 @@ function DynamicMinuteTitlePainting()
48269
48286
  //匹配价
48270
48287
  if(IFrameSplitOperator.IsNumber(item.Price) && this.CallAuctionShowTitle.has("MTitle-AC-Price"))
48271
48288
  {
48272
- var color=this.GetColor(item.Price,this.YClose);
48289
+ var color=this.GetColor(item.Price,yClose);
48273
48290
  var filedName='MTitle-AC-Price';
48274
48291
  if (data.Ver==1.0) filedName="MTitle-Close";
48275
48292
  var text=g_JSChartLocalization.GetText(filedName,this.LanguageID)+item.Price.toFixed(defaultfloatPrecision);
48276
48293
  aryText.push({Text:text, Color:color});
48277
48294
  }
48278
48295
 
48279
- //竞价涨幅
48280
- if (IFrameSplitOperator.IsPlusNumber(this.YClose) && IFrameSplitOperator.IsNumber(item.Price) && this.CallAuctionShowTitle.has("MTitle-AC-Increase"))
48296
+ //竞价涨幅
48297
+ if (IFrameSplitOperator.IsPlusNumber(yClose) && IFrameSplitOperator.IsNumber(item.Price) && this.CallAuctionShowTitle.has("MTitle-AC-Increase"))
48281
48298
  {
48282
- var value=(item.Price-this.YClose)/this.YClose*100;
48299
+ var value=(item.Price-yClose)/yClose*100;
48283
48300
  var color=this.GetColor(value,0);
48284
48301
  var filedName='MTitle-AC-Increase';
48285
48302
  if (data.Ver==1.0) filedName="MTitle-Increase";
@@ -48290,7 +48307,7 @@ function DynamicMinuteTitlePainting()
48290
48307
  //均价
48291
48308
  if (IFrameSplitOperator.IsNumber(item.AvPrice) && this.CallAuctionShowTitle.has("MTitle-AC-AvPrice"))
48292
48309
  {
48293
- var color=this.GetColor(item.AvPrice,this.YClose);
48310
+ var color=this.GetColor(item.AvPrice,yClose);
48294
48311
  var text=g_JSChartLocalization.GetText('MTitle-AC-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);
48295
48312
  aryText.push({Text:text, Color:color});
48296
48313
  }
@@ -51371,6 +51388,36 @@ IChartDrawPicture.RGBToHex=function(rgb)
51371
51388
  return "#" + r + g + b;
51372
51389
  }
51373
51390
 
51391
+ //16进制颜色转rgb
51392
+ IChartDrawPicture.HexToRGB=function(color)
51393
+ {
51394
+ color = color.toLowerCase();
51395
+ var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
51396
+ if (color && reg.test(color))
51397
+ {
51398
+ if (color.length === 4)
51399
+ {
51400
+ var sColorNew = "#";
51401
+ for (var i=1; i<4; i+=1)
51402
+ {
51403
+ sColorNew += color.slice(i, i+1).concat(color.slice(i, i+1));
51404
+ }
51405
+ color = sColorNew;
51406
+ }
51407
+
51408
+ //处理六位的颜色值
51409
+ var sColorChange = [];
51410
+ for (var i=1; i<7; i+=2)
51411
+ {
51412
+ sColorChange.push(parseInt("0x"+color.slice(i, i+2)));
51413
+ }
51414
+
51415
+ return "rgb(" + sColorChange.join(",") + ")";
51416
+ }
51417
+
51418
+ return null;
51419
+ }
51420
+
51374
51421
  IChartDrawPicture.ArrayDrawPricture=
51375
51422
  [
51376
51423
  { Name:"线段", ClassName:'ChartDrawPictureLine', Create:function() { return new ChartDrawPictureLine(); } },
@@ -71159,6 +71206,15 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
71159
71206
 
71160
71207
  if (this.ChartSplashPaint && this.ChartSplashPaint.IsEnableSplash == true) return;
71161
71208
 
71209
+ //回调事件
71210
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN);
71211
+ if (event && event.Callback)
71212
+ {
71213
+ var sendData={ e:e, PreventDefault:false };
71214
+ event.Callback(event, sendData, this);
71215
+ if (sendData.PreventDefault) return;
71216
+ }
71217
+
71162
71218
  var keyID = e.keyCode ? e.keyCode :e.which;
71163
71219
  switch(keyID)
71164
71220
  {
@@ -74676,6 +74732,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
74676
74732
  var upperSymbol=symbol.toUpperCase();
74677
74733
  var isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);
74678
74734
 
74735
+ var yClose=data.stock[0].yclos;
74679
74736
  var preClose=data.stock[0].yclose; //前一个数据价格
74680
74737
  var stockData=data.stock[0];
74681
74738
  var date=stockData.date; //日期
@@ -74695,6 +74752,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
74695
74752
  {
74696
74753
  var item=new BeforeOpenData();
74697
74754
  var jsData=stockData.before[i];
74755
+ item.YClose=yClose;
74698
74756
  item.Time=jsData[0];
74699
74757
  item.Date=date;
74700
74758
  item.Price=jsData[1];
@@ -74719,6 +74777,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
74719
74777
  {
74720
74778
  var item=new BeforeOpenData();
74721
74779
  var jsData=stockData.before[i];
74780
+ item.YClose=yClose;
74722
74781
  item.Time=jsData[0];
74723
74782
  item.Date=date;
74724
74783
  item.Price=jsData[1];
@@ -74747,6 +74806,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
74747
74806
  {
74748
74807
  var item=new BeforeOpenData();
74749
74808
  var jsData=stockData.before[i];
74809
+ item.YClose=yClose;
74750
74810
  item.Time=jsData[0];
74751
74811
  item.Date=date;
74752
74812
  item.Price=jsData[1];
@@ -74773,6 +74833,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
74773
74833
  //收盘集合竞价
74774
74834
  MinuteChartContainer.JsonDataToAfterCloseData=function(data)
74775
74835
  {
74836
+ var yClose=data.stock[0].yclose;
74776
74837
  var preClose=data.stock[0].yclose; //前一个数据价格
74777
74838
  var stockData=data.stock[0];
74778
74839
  var date=stockData.date; //日期
@@ -74790,6 +74851,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
74790
74851
  {
74791
74852
  var item=new AfterCloseData();
74792
74853
  var jsData=stockData.after[i];
74854
+ item.YClose=yClose;
74793
74855
  item.Time=jsData[0];
74794
74856
  item.Date=date;
74795
74857
  item.Price=jsData[1];
@@ -74810,6 +74872,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
74810
74872
  {
74811
74873
  var item=new AfterCloseData();
74812
74874
  var jsData=stockData.after[i];
74875
+ item.YClose=yClose;
74813
74876
  item.Time=jsData[0];
74814
74877
  item.Date=date;
74815
74878
  item.Price=jsData[1];
@@ -74836,6 +74899,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
74836
74899
  {
74837
74900
  var item=new AfterCloseData();
74838
74901
  var jsData=stockData.after[i];
74902
+ item.YClose=yClose;
74839
74903
  item.Time=jsData[0];
74840
74904
  item.Date=date;
74841
74905
  item.Price=jsData[1];
@@ -74882,6 +74946,7 @@ MinuteChartContainer.JsonDataToMinuteData=function(data,isBeforeData)
74882
74946
  var jsData=data.stock[0].minute[i];
74883
74947
  var item=new MinuteData();
74884
74948
 
74949
+ item.YClose=yClose;
74885
74950
  item.Close=jsData.price;
74886
74951
  item.Open=jsData.open;
74887
74952
  item.High=jsData.high;
@@ -75063,6 +75128,7 @@ MinuteChartContainer.JsonDataToMinuteDataArray=function(data)
75063
75128
  var jsData=dayData.minute[j];
75064
75129
  if (jsData[2]) preClose=jsData[2]; //保存上一个收盘数据
75065
75130
  var item=new MinuteData();
75131
+ item.YClose=yClose;
75066
75132
  item.Close=jsData[2];
75067
75133
  item.Open=jsData[1];
75068
75134
  item.High=jsData[3];
@@ -75166,6 +75232,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
75166
75232
  }
75167
75233
 
75168
75234
  var date=callAuctionData.Date;
75235
+ var yClose=callAuctionData.YClose;
75169
75236
  var extendDataIndex=isBeforeOpen? JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA:JSCHART_DATA_FIELD_ID.MINUTE_AFTERCLOSE_EXTENDDATA; //扩展数据序号
75170
75237
  if (callAuctionData.Ver==1.0)
75171
75238
  {
@@ -75174,6 +75241,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
75174
75241
  {
75175
75242
  var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
75176
75243
  var jsData=data[i];
75244
+ item.YClose=yClose;
75177
75245
  item.Time=jsData[0];
75178
75246
  item.Date=date;
75179
75247
  item.Price=jsData[1];
@@ -75196,6 +75264,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
75196
75264
  {
75197
75265
  var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
75198
75266
  var jsData=data[i];
75267
+ item.YClose=yClose;
75199
75268
  item.Time=jsData[0];
75200
75269
  item.Date=date;
75201
75270
  item.Price=jsData[1];
@@ -75222,6 +75291,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
75222
75291
  {
75223
75292
  var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
75224
75293
  var jsData=data[i];
75294
+ item.YClose=yClose;
75225
75295
  item.Time=jsData[0];
75226
75296
  item.Date=date;
75227
75297
  item.Price=jsData[1];
@@ -75251,7 +75321,7 @@ MinuteChartContainer.JosnDataToBeforeOpenDataArray=function(data)
75251
75321
  for(var i in data.data)
75252
75322
  {
75253
75323
  var dayItem=data.data[i];
75254
- var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date };
75324
+ var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose };
75255
75325
  if (dayItem.beforeinfo)
75256
75326
  {
75257
75327
  if (IFrameSplitOperator.IsNumber(dayItem.beforeinfo.totalcount)) beforeOpenData.TotalCount=dayItem.beforeinfo.totalcount;
@@ -75276,7 +75346,7 @@ MinuteChartContainer.JosnDataToAfterCloseDataArray=function(data)
75276
75346
  for(var i in data.data)
75277
75347
  {
75278
75348
  var dayItem=data.data[i];
75279
- var afterCloseData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date };
75349
+ var afterCloseData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose };
75280
75350
 
75281
75351
  if (dayItem.afterinfo)
75282
75352
  {
@@ -6574,6 +6574,8 @@ var JSCHART_EVENT_ID=
6574
6574
  ON_CUSTOM_DRAG_DOC_MOUSE_MOVE:114,
6575
6575
  ON_CUSTOM_DRAG_DOC_MOUSE_UP:115,
6576
6576
  ON_CUSTOM_DRAG_MOUSE_MOVE:116,
6577
+
6578
+ ON_KEYDOWN:117
6577
6579
  }
6578
6580
 
6579
6581
  var JSCHART_OPERATOR_ID=
@@ -9975,6 +9977,15 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
9975
9977
  this.OnKeyDown=function(e)
9976
9978
  {
9977
9979
  if (this.ChartSplashPaint && this.ChartSplashPaint.IsEnableSplash == true) return;
9980
+
9981
+ //回调事件
9982
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN);
9983
+ if (event && event.Callback)
9984
+ {
9985
+ var sendData={ e:e, PreventDefault:false };
9986
+ event.Callback(event, sendData, this);
9987
+ if (sendData.PreventDefault) return;
9988
+ }
9978
9989
 
9979
9990
  var keyID = e.keyCode ? e.keyCode :e.which;
9980
9991
  switch(keyID)
@@ -21714,6 +21725,7 @@ function MinuteData()
21714
21725
  this.Date; //日期
21715
21726
  this.Position=null; //持仓量
21716
21727
  this.YClearing; //昨结算价
21728
+ this.YClose; //昨收价
21717
21729
 
21718
21730
  this.ExtendData; //扩展数据
21719
21731
  }
@@ -21726,7 +21738,8 @@ function BeforeOpenData()
21726
21738
  this.Price; //匹配的价格
21727
21739
  this.AvPrice; //均价
21728
21740
  this.Vol=[]; //[0]=匹配量 [1]=未匹配量
21729
- this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
21741
+ this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
21742
+ this.YClose; //昨收价
21730
21743
  }
21731
21744
 
21732
21745
  //收盘集合竞价
@@ -21737,7 +21750,8 @@ function AfterCloseData()
21737
21750
  this.Price; //匹配的价格
21738
21751
  this.AvPrice; //均价
21739
21752
  this.Vol=[]; //[0]=匹配量 [1]=未匹配量
21740
- this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
21753
+ this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
21754
+ this.YClose; //昨收价
21741
21755
  }
21742
21756
 
21743
21757
  //单指标数据
@@ -52193,10 +52207,12 @@ function DynamicMinuteTitlePainting()
52193
52207
  var increase=item.Increase;
52194
52208
  var vol=item.Vol;
52195
52209
  var amount=item.Amount;
52210
+ var yClose=item.YClose;
52211
+ if (!IFrameSplitOperator.IsNumber(yClose)) yClose=this.YClose;
52196
52212
 
52197
52213
  if (IFrameSplitOperator.IsNumber(close))
52198
52214
  {
52199
- var color=this.GetColor(close,this.YClose);
52215
+ var color=this.GetColor(close,yClose);
52200
52216
  var text=g_JSChartLocalization.GetText('MTitle-Close',this.LanguageID)+close.toFixed(defaultfloatPrecision);
52201
52217
  aryText.push({Text:text, Color:color});
52202
52218
  }
@@ -52215,7 +52231,7 @@ function DynamicMinuteTitlePainting()
52215
52231
 
52216
52232
  if (IFrameSplitOperator.IsNumber(item.AvPrice) && isShowAvPrice && this.IsShowAveragePrice)
52217
52233
  {
52218
- var color=this.GetColor(item.AvPrice,this.YClose);
52234
+ var color=this.GetColor(item.AvPrice,yClose);
52219
52235
  var text=g_JSChartLocalization.GetText('MTitle-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);
52220
52236
  aryText.push({Text:text, Color:color});
52221
52237
  }
@@ -52338,7 +52354,8 @@ function DynamicMinuteTitlePainting()
52338
52354
  var item=data.Data;
52339
52355
  var text, strTime, strDate;
52340
52356
  strDate=IFrameSplitOperator.FormatDateString(item.Date);
52341
-
52357
+ var yClose=item.YClose;
52358
+
52342
52359
  //时间
52343
52360
  if (data.Ver==1.0) strTime=IFrameSplitOperator.FormatTimeString(item.Time,"HH:MM");
52344
52361
  else strTime=IFrameSplitOperator.FormatTimeString(item.Time,"HH:MM:SS");
@@ -52349,17 +52366,17 @@ function DynamicMinuteTitlePainting()
52349
52366
  //匹配价
52350
52367
  if(IFrameSplitOperator.IsNumber(item.Price) && this.CallAuctionShowTitle.has("MTitle-AC-Price"))
52351
52368
  {
52352
- var color=this.GetColor(item.Price,this.YClose);
52369
+ var color=this.GetColor(item.Price,yClose);
52353
52370
  var filedName='MTitle-AC-Price';
52354
52371
  if (data.Ver==1.0) filedName="MTitle-Close";
52355
52372
  var text=g_JSChartLocalization.GetText(filedName,this.LanguageID)+item.Price.toFixed(defaultfloatPrecision);
52356
52373
  aryText.push({Text:text, Color:color});
52357
52374
  }
52358
52375
 
52359
- //竞价涨幅
52360
- if (IFrameSplitOperator.IsPlusNumber(this.YClose) && IFrameSplitOperator.IsNumber(item.Price) && this.CallAuctionShowTitle.has("MTitle-AC-Increase"))
52376
+ //竞价涨幅
52377
+ if (IFrameSplitOperator.IsPlusNumber(yClose) && IFrameSplitOperator.IsNumber(item.Price) && this.CallAuctionShowTitle.has("MTitle-AC-Increase"))
52361
52378
  {
52362
- var value=(item.Price-this.YClose)/this.YClose*100;
52379
+ var value=(item.Price-yClose)/yClose*100;
52363
52380
  var color=this.GetColor(value,0);
52364
52381
  var filedName='MTitle-AC-Increase';
52365
52382
  if (data.Ver==1.0) filedName="MTitle-Increase";
@@ -52370,7 +52387,7 @@ function DynamicMinuteTitlePainting()
52370
52387
  //均价
52371
52388
  if (IFrameSplitOperator.IsNumber(item.AvPrice) && this.CallAuctionShowTitle.has("MTitle-AC-AvPrice"))
52372
52389
  {
52373
- var color=this.GetColor(item.AvPrice,this.YClose);
52390
+ var color=this.GetColor(item.AvPrice,yClose);
52374
52391
  var text=g_JSChartLocalization.GetText('MTitle-AC-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);
52375
52392
  aryText.push({Text:text, Color:color});
52376
52393
  }
@@ -55451,6 +55468,36 @@ IChartDrawPicture.RGBToHex=function(rgb)
55451
55468
  return "#" + r + g + b;
55452
55469
  }
55453
55470
 
55471
+ //16进制颜色转rgb
55472
+ IChartDrawPicture.HexToRGB=function(color)
55473
+ {
55474
+ color = color.toLowerCase();
55475
+ var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
55476
+ if (color && reg.test(color))
55477
+ {
55478
+ if (color.length === 4)
55479
+ {
55480
+ var sColorNew = "#";
55481
+ for (var i=1; i<4; i+=1)
55482
+ {
55483
+ sColorNew += color.slice(i, i+1).concat(color.slice(i, i+1));
55484
+ }
55485
+ color = sColorNew;
55486
+ }
55487
+
55488
+ //处理六位的颜色值
55489
+ var sColorChange = [];
55490
+ for (var i=1; i<7; i+=2)
55491
+ {
55492
+ sColorChange.push(parseInt("0x"+color.slice(i, i+2)));
55493
+ }
55494
+
55495
+ return "rgb(" + sColorChange.join(",") + ")";
55496
+ }
55497
+
55498
+ return null;
55499
+ }
55500
+
55454
55501
  IChartDrawPicture.ArrayDrawPricture=
55455
55502
  [
55456
55503
  { Name:"线段", ClassName:'ChartDrawPictureLine', Create:function() { return new ChartDrawPictureLine(); } },
@@ -75239,6 +75286,15 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
75239
75286
 
75240
75287
  if (this.ChartSplashPaint && this.ChartSplashPaint.IsEnableSplash == true) return;
75241
75288
 
75289
+ //回调事件
75290
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN);
75291
+ if (event && event.Callback)
75292
+ {
75293
+ var sendData={ e:e, PreventDefault:false };
75294
+ event.Callback(event, sendData, this);
75295
+ if (sendData.PreventDefault) return;
75296
+ }
75297
+
75242
75298
  var keyID = e.keyCode ? e.keyCode :e.which;
75243
75299
  switch(keyID)
75244
75300
  {
@@ -78756,6 +78812,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78756
78812
  var upperSymbol=symbol.toUpperCase();
78757
78813
  var isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);
78758
78814
 
78815
+ var yClose=data.stock[0].yclos;
78759
78816
  var preClose=data.stock[0].yclose; //前一个数据价格
78760
78817
  var stockData=data.stock[0];
78761
78818
  var date=stockData.date; //日期
@@ -78775,6 +78832,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78775
78832
  {
78776
78833
  var item=new BeforeOpenData();
78777
78834
  var jsData=stockData.before[i];
78835
+ item.YClose=yClose;
78778
78836
  item.Time=jsData[0];
78779
78837
  item.Date=date;
78780
78838
  item.Price=jsData[1];
@@ -78799,6 +78857,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78799
78857
  {
78800
78858
  var item=new BeforeOpenData();
78801
78859
  var jsData=stockData.before[i];
78860
+ item.YClose=yClose;
78802
78861
  item.Time=jsData[0];
78803
78862
  item.Date=date;
78804
78863
  item.Price=jsData[1];
@@ -78827,6 +78886,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78827
78886
  {
78828
78887
  var item=new BeforeOpenData();
78829
78888
  var jsData=stockData.before[i];
78889
+ item.YClose=yClose;
78830
78890
  item.Time=jsData[0];
78831
78891
  item.Date=date;
78832
78892
  item.Price=jsData[1];
@@ -78853,6 +78913,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78853
78913
  //收盘集合竞价
78854
78914
  MinuteChartContainer.JsonDataToAfterCloseData=function(data)
78855
78915
  {
78916
+ var yClose=data.stock[0].yclose;
78856
78917
  var preClose=data.stock[0].yclose; //前一个数据价格
78857
78918
  var stockData=data.stock[0];
78858
78919
  var date=stockData.date; //日期
@@ -78870,6 +78931,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
78870
78931
  {
78871
78932
  var item=new AfterCloseData();
78872
78933
  var jsData=stockData.after[i];
78934
+ item.YClose=yClose;
78873
78935
  item.Time=jsData[0];
78874
78936
  item.Date=date;
78875
78937
  item.Price=jsData[1];
@@ -78890,6 +78952,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
78890
78952
  {
78891
78953
  var item=new AfterCloseData();
78892
78954
  var jsData=stockData.after[i];
78955
+ item.YClose=yClose;
78893
78956
  item.Time=jsData[0];
78894
78957
  item.Date=date;
78895
78958
  item.Price=jsData[1];
@@ -78916,6 +78979,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
78916
78979
  {
78917
78980
  var item=new AfterCloseData();
78918
78981
  var jsData=stockData.after[i];
78982
+ item.YClose=yClose;
78919
78983
  item.Time=jsData[0];
78920
78984
  item.Date=date;
78921
78985
  item.Price=jsData[1];
@@ -78962,6 +79026,7 @@ MinuteChartContainer.JsonDataToMinuteData=function(data,isBeforeData)
78962
79026
  var jsData=data.stock[0].minute[i];
78963
79027
  var item=new MinuteData();
78964
79028
 
79029
+ item.YClose=yClose;
78965
79030
  item.Close=jsData.price;
78966
79031
  item.Open=jsData.open;
78967
79032
  item.High=jsData.high;
@@ -79143,6 +79208,7 @@ MinuteChartContainer.JsonDataToMinuteDataArray=function(data)
79143
79208
  var jsData=dayData.minute[j];
79144
79209
  if (jsData[2]) preClose=jsData[2]; //保存上一个收盘数据
79145
79210
  var item=new MinuteData();
79211
+ item.YClose=yClose;
79146
79212
  item.Close=jsData[2];
79147
79213
  item.Open=jsData[1];
79148
79214
  item.High=jsData[3];
@@ -79246,6 +79312,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
79246
79312
  }
79247
79313
 
79248
79314
  var date=callAuctionData.Date;
79315
+ var yClose=callAuctionData.YClose;
79249
79316
  var extendDataIndex=isBeforeOpen? JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA:JSCHART_DATA_FIELD_ID.MINUTE_AFTERCLOSE_EXTENDDATA; //扩展数据序号
79250
79317
  if (callAuctionData.Ver==1.0)
79251
79318
  {
@@ -79254,6 +79321,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
79254
79321
  {
79255
79322
  var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
79256
79323
  var jsData=data[i];
79324
+ item.YClose=yClose;
79257
79325
  item.Time=jsData[0];
79258
79326
  item.Date=date;
79259
79327
  item.Price=jsData[1];
@@ -79276,6 +79344,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
79276
79344
  {
79277
79345
  var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
79278
79346
  var jsData=data[i];
79347
+ item.YClose=yClose;
79279
79348
  item.Time=jsData[0];
79280
79349
  item.Date=date;
79281
79350
  item.Price=jsData[1];
@@ -79302,6 +79371,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
79302
79371
  {
79303
79372
  var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
79304
79373
  var jsData=data[i];
79374
+ item.YClose=yClose;
79305
79375
  item.Time=jsData[0];
79306
79376
  item.Date=date;
79307
79377
  item.Price=jsData[1];
@@ -79331,7 +79401,7 @@ MinuteChartContainer.JosnDataToBeforeOpenDataArray=function(data)
79331
79401
  for(var i in data.data)
79332
79402
  {
79333
79403
  var dayItem=data.data[i];
79334
- var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date };
79404
+ var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose };
79335
79405
  if (dayItem.beforeinfo)
79336
79406
  {
79337
79407
  if (IFrameSplitOperator.IsNumber(dayItem.beforeinfo.totalcount)) beforeOpenData.TotalCount=dayItem.beforeinfo.totalcount;
@@ -79356,7 +79426,7 @@ MinuteChartContainer.JosnDataToAfterCloseDataArray=function(data)
79356
79426
  for(var i in data.data)
79357
79427
  {
79358
79428
  var dayItem=data.data[i];
79359
- var afterCloseData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date };
79429
+ var afterCloseData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose };
79360
79430
 
79361
79431
  if (dayItem.afterinfo)
79362
79432
  {
@@ -127725,7 +127795,7 @@ function ScrollBarBGChart()
127725
127795
 
127726
127796
 
127727
127797
 
127728
- var HQCHART_VERSION="1.1.12449";
127798
+ var HQCHART_VERSION="1.1.12454";
127729
127799
 
127730
127800
  function PrintHQChartVersion()
127731
127801
  {
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var HQCHART_VERSION="1.1.12449";
8
+ var HQCHART_VERSION="1.1.12454";
9
9
 
10
10
  function PrintHQChartVersion()
11
11
  {
@@ -6618,6 +6618,8 @@ var JSCHART_EVENT_ID=
6618
6618
  ON_CUSTOM_DRAG_DOC_MOUSE_MOVE:114,
6619
6619
  ON_CUSTOM_DRAG_DOC_MOUSE_UP:115,
6620
6620
  ON_CUSTOM_DRAG_MOUSE_MOVE:116,
6621
+
6622
+ ON_KEYDOWN:117
6621
6623
  }
6622
6624
 
6623
6625
  var JSCHART_OPERATOR_ID=
@@ -10019,6 +10021,15 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
10019
10021
  this.OnKeyDown=function(e)
10020
10022
  {
10021
10023
  if (this.ChartSplashPaint && this.ChartSplashPaint.IsEnableSplash == true) return;
10024
+
10025
+ //回调事件
10026
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN);
10027
+ if (event && event.Callback)
10028
+ {
10029
+ var sendData={ e:e, PreventDefault:false };
10030
+ event.Callback(event, sendData, this);
10031
+ if (sendData.PreventDefault) return;
10032
+ }
10022
10033
 
10023
10034
  var keyID = e.keyCode ? e.keyCode :e.which;
10024
10035
  switch(keyID)
@@ -21758,6 +21769,7 @@ function MinuteData()
21758
21769
  this.Date; //日期
21759
21770
  this.Position=null; //持仓量
21760
21771
  this.YClearing; //昨结算价
21772
+ this.YClose; //昨收价
21761
21773
 
21762
21774
  this.ExtendData; //扩展数据
21763
21775
  }
@@ -21770,7 +21782,8 @@ function BeforeOpenData()
21770
21782
  this.Price; //匹配的价格
21771
21783
  this.AvPrice; //均价
21772
21784
  this.Vol=[]; //[0]=匹配量 [1]=未匹配量
21773
- this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
21785
+ this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
21786
+ this.YClose; //昨收价
21774
21787
  }
21775
21788
 
21776
21789
  //收盘集合竞价
@@ -21781,7 +21794,8 @@ function AfterCloseData()
21781
21794
  this.Price; //匹配的价格
21782
21795
  this.AvPrice; //均价
21783
21796
  this.Vol=[]; //[0]=匹配量 [1]=未匹配量
21784
- this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
21797
+ this.ColorID; //0=平盘 1=红 2=绿 3 ...自定义颜色
21798
+ this.YClose; //昨收价
21785
21799
  }
21786
21800
 
21787
21801
  //单指标数据
@@ -52237,10 +52251,12 @@ function DynamicMinuteTitlePainting()
52237
52251
  var increase=item.Increase;
52238
52252
  var vol=item.Vol;
52239
52253
  var amount=item.Amount;
52254
+ var yClose=item.YClose;
52255
+ if (!IFrameSplitOperator.IsNumber(yClose)) yClose=this.YClose;
52240
52256
 
52241
52257
  if (IFrameSplitOperator.IsNumber(close))
52242
52258
  {
52243
- var color=this.GetColor(close,this.YClose);
52259
+ var color=this.GetColor(close,yClose);
52244
52260
  var text=g_JSChartLocalization.GetText('MTitle-Close',this.LanguageID)+close.toFixed(defaultfloatPrecision);
52245
52261
  aryText.push({Text:text, Color:color});
52246
52262
  }
@@ -52259,7 +52275,7 @@ function DynamicMinuteTitlePainting()
52259
52275
 
52260
52276
  if (IFrameSplitOperator.IsNumber(item.AvPrice) && isShowAvPrice && this.IsShowAveragePrice)
52261
52277
  {
52262
- var color=this.GetColor(item.AvPrice,this.YClose);
52278
+ var color=this.GetColor(item.AvPrice,yClose);
52263
52279
  var text=g_JSChartLocalization.GetText('MTitle-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);
52264
52280
  aryText.push({Text:text, Color:color});
52265
52281
  }
@@ -52382,7 +52398,8 @@ function DynamicMinuteTitlePainting()
52382
52398
  var item=data.Data;
52383
52399
  var text, strTime, strDate;
52384
52400
  strDate=IFrameSplitOperator.FormatDateString(item.Date);
52385
-
52401
+ var yClose=item.YClose;
52402
+
52386
52403
  //时间
52387
52404
  if (data.Ver==1.0) strTime=IFrameSplitOperator.FormatTimeString(item.Time,"HH:MM");
52388
52405
  else strTime=IFrameSplitOperator.FormatTimeString(item.Time,"HH:MM:SS");
@@ -52393,17 +52410,17 @@ function DynamicMinuteTitlePainting()
52393
52410
  //匹配价
52394
52411
  if(IFrameSplitOperator.IsNumber(item.Price) && this.CallAuctionShowTitle.has("MTitle-AC-Price"))
52395
52412
  {
52396
- var color=this.GetColor(item.Price,this.YClose);
52413
+ var color=this.GetColor(item.Price,yClose);
52397
52414
  var filedName='MTitle-AC-Price';
52398
52415
  if (data.Ver==1.0) filedName="MTitle-Close";
52399
52416
  var text=g_JSChartLocalization.GetText(filedName,this.LanguageID)+item.Price.toFixed(defaultfloatPrecision);
52400
52417
  aryText.push({Text:text, Color:color});
52401
52418
  }
52402
52419
 
52403
- //竞价涨幅
52404
- if (IFrameSplitOperator.IsPlusNumber(this.YClose) && IFrameSplitOperator.IsNumber(item.Price) && this.CallAuctionShowTitle.has("MTitle-AC-Increase"))
52420
+ //竞价涨幅
52421
+ if (IFrameSplitOperator.IsPlusNumber(yClose) && IFrameSplitOperator.IsNumber(item.Price) && this.CallAuctionShowTitle.has("MTitle-AC-Increase"))
52405
52422
  {
52406
- var value=(item.Price-this.YClose)/this.YClose*100;
52423
+ var value=(item.Price-yClose)/yClose*100;
52407
52424
  var color=this.GetColor(value,0);
52408
52425
  var filedName='MTitle-AC-Increase';
52409
52426
  if (data.Ver==1.0) filedName="MTitle-Increase";
@@ -52414,7 +52431,7 @@ function DynamicMinuteTitlePainting()
52414
52431
  //均价
52415
52432
  if (IFrameSplitOperator.IsNumber(item.AvPrice) && this.CallAuctionShowTitle.has("MTitle-AC-AvPrice"))
52416
52433
  {
52417
- var color=this.GetColor(item.AvPrice,this.YClose);
52434
+ var color=this.GetColor(item.AvPrice,yClose);
52418
52435
  var text=g_JSChartLocalization.GetText('MTitle-AC-AvPrice',this.LanguageID)+item.AvPrice.toFixed(defaultfloatPrecision);
52419
52436
  aryText.push({Text:text, Color:color});
52420
52437
  }
@@ -55495,6 +55512,36 @@ IChartDrawPicture.RGBToHex=function(rgb)
55495
55512
  return "#" + r + g + b;
55496
55513
  }
55497
55514
 
55515
+ //16进制颜色转rgb
55516
+ IChartDrawPicture.HexToRGB=function(color)
55517
+ {
55518
+ color = color.toLowerCase();
55519
+ var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
55520
+ if (color && reg.test(color))
55521
+ {
55522
+ if (color.length === 4)
55523
+ {
55524
+ var sColorNew = "#";
55525
+ for (var i=1; i<4; i+=1)
55526
+ {
55527
+ sColorNew += color.slice(i, i+1).concat(color.slice(i, i+1));
55528
+ }
55529
+ color = sColorNew;
55530
+ }
55531
+
55532
+ //处理六位的颜色值
55533
+ var sColorChange = [];
55534
+ for (var i=1; i<7; i+=2)
55535
+ {
55536
+ sColorChange.push(parseInt("0x"+color.slice(i, i+2)));
55537
+ }
55538
+
55539
+ return "rgb(" + sColorChange.join(",") + ")";
55540
+ }
55541
+
55542
+ return null;
55543
+ }
55544
+
55498
55545
  IChartDrawPicture.ArrayDrawPricture=
55499
55546
  [
55500
55547
  { Name:"线段", ClassName:'ChartDrawPictureLine', Create:function() { return new ChartDrawPictureLine(); } },
@@ -75283,6 +75330,15 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
75283
75330
 
75284
75331
  if (this.ChartSplashPaint && this.ChartSplashPaint.IsEnableSplash == true) return;
75285
75332
 
75333
+ //回调事件
75334
+ var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN);
75335
+ if (event && event.Callback)
75336
+ {
75337
+ var sendData={ e:e, PreventDefault:false };
75338
+ event.Callback(event, sendData, this);
75339
+ if (sendData.PreventDefault) return;
75340
+ }
75341
+
75286
75342
  var keyID = e.keyCode ? e.keyCode :e.which;
75287
75343
  switch(keyID)
75288
75344
  {
@@ -78800,6 +78856,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78800
78856
  var upperSymbol=symbol.toUpperCase();
78801
78857
  var isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);
78802
78858
 
78859
+ var yClose=data.stock[0].yclos;
78803
78860
  var preClose=data.stock[0].yclose; //前一个数据价格
78804
78861
  var stockData=data.stock[0];
78805
78862
  var date=stockData.date; //日期
@@ -78819,6 +78876,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78819
78876
  {
78820
78877
  var item=new BeforeOpenData();
78821
78878
  var jsData=stockData.before[i];
78879
+ item.YClose=yClose;
78822
78880
  item.Time=jsData[0];
78823
78881
  item.Date=date;
78824
78882
  item.Price=jsData[1];
@@ -78843,6 +78901,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78843
78901
  {
78844
78902
  var item=new BeforeOpenData();
78845
78903
  var jsData=stockData.before[i];
78904
+ item.YClose=yClose;
78846
78905
  item.Time=jsData[0];
78847
78906
  item.Date=date;
78848
78907
  item.Price=jsData[1];
@@ -78871,6 +78930,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78871
78930
  {
78872
78931
  var item=new BeforeOpenData();
78873
78932
  var jsData=stockData.before[i];
78933
+ item.YClose=yClose;
78874
78934
  item.Time=jsData[0];
78875
78935
  item.Date=date;
78876
78936
  item.Price=jsData[1];
@@ -78897,6 +78957,7 @@ MinuteChartContainer.JsonDataToBeforeOpenData=function(data)
78897
78957
  //收盘集合竞价
78898
78958
  MinuteChartContainer.JsonDataToAfterCloseData=function(data)
78899
78959
  {
78960
+ var yClose=data.stock[0].yclose;
78900
78961
  var preClose=data.stock[0].yclose; //前一个数据价格
78901
78962
  var stockData=data.stock[0];
78902
78963
  var date=stockData.date; //日期
@@ -78914,6 +78975,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
78914
78975
  {
78915
78976
  var item=new AfterCloseData();
78916
78977
  var jsData=stockData.after[i];
78978
+ item.YClose=yClose;
78917
78979
  item.Time=jsData[0];
78918
78980
  item.Date=date;
78919
78981
  item.Price=jsData[1];
@@ -78934,6 +78996,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
78934
78996
  {
78935
78997
  var item=new AfterCloseData();
78936
78998
  var jsData=stockData.after[i];
78999
+ item.YClose=yClose;
78937
79000
  item.Time=jsData[0];
78938
79001
  item.Date=date;
78939
79002
  item.Price=jsData[1];
@@ -78960,6 +79023,7 @@ MinuteChartContainer.JsonDataToAfterCloseData=function(data)
78960
79023
  {
78961
79024
  var item=new AfterCloseData();
78962
79025
  var jsData=stockData.after[i];
79026
+ item.YClose=yClose;
78963
79027
  item.Time=jsData[0];
78964
79028
  item.Date=date;
78965
79029
  item.Price=jsData[1];
@@ -79006,6 +79070,7 @@ MinuteChartContainer.JsonDataToMinuteData=function(data,isBeforeData)
79006
79070
  var jsData=data.stock[0].minute[i];
79007
79071
  var item=new MinuteData();
79008
79072
 
79073
+ item.YClose=yClose;
79009
79074
  item.Close=jsData.price;
79010
79075
  item.Open=jsData.open;
79011
79076
  item.High=jsData.high;
@@ -79187,6 +79252,7 @@ MinuteChartContainer.JsonDataToMinuteDataArray=function(data)
79187
79252
  var jsData=dayData.minute[j];
79188
79253
  if (jsData[2]) preClose=jsData[2]; //保存上一个收盘数据
79189
79254
  var item=new MinuteData();
79255
+ item.YClose=yClose;
79190
79256
  item.Close=jsData[2];
79191
79257
  item.Open=jsData[1];
79192
79258
  item.High=jsData[3];
@@ -79290,6 +79356,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
79290
79356
  }
79291
79357
 
79292
79358
  var date=callAuctionData.Date;
79359
+ var yClose=callAuctionData.YClose;
79293
79360
  var extendDataIndex=isBeforeOpen? JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA:JSCHART_DATA_FIELD_ID.MINUTE_AFTERCLOSE_EXTENDDATA; //扩展数据序号
79294
79361
  if (callAuctionData.Ver==1.0)
79295
79362
  {
@@ -79298,6 +79365,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
79298
79365
  {
79299
79366
  var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
79300
79367
  var jsData=data[i];
79368
+ item.YClose=yClose;
79301
79369
  item.Time=jsData[0];
79302
79370
  item.Date=date;
79303
79371
  item.Price=jsData[1];
@@ -79320,6 +79388,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
79320
79388
  {
79321
79389
  var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
79322
79390
  var jsData=data[i];
79391
+ item.YClose=yClose;
79323
79392
  item.Time=jsData[0];
79324
79393
  item.Date=date;
79325
79394
  item.Price=jsData[1];
@@ -79346,6 +79415,7 @@ MinuteChartContainer.JsonDataToCallAuctionItem=function(data, callAuctionData, i
79346
79415
  {
79347
79416
  var item=isBeforeOpen? new BeforeOpenData() : new AfterCloseData();
79348
79417
  var jsData=data[i];
79418
+ item.YClose=yClose;
79349
79419
  item.Time=jsData[0];
79350
79420
  item.Date=date;
79351
79421
  item.Price=jsData[1];
@@ -79375,7 +79445,7 @@ MinuteChartContainer.JosnDataToBeforeOpenDataArray=function(data)
79375
79445
  for(var i in data.data)
79376
79446
  {
79377
79447
  var dayItem=data.data[i];
79378
- var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date };
79448
+ var beforeOpenData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose };
79379
79449
  if (dayItem.beforeinfo)
79380
79450
  {
79381
79451
  if (IFrameSplitOperator.IsNumber(dayItem.beforeinfo.totalcount)) beforeOpenData.TotalCount=dayItem.beforeinfo.totalcount;
@@ -79400,7 +79470,7 @@ MinuteChartContainer.JosnDataToAfterCloseDataArray=function(data)
79400
79470
  for(var i in data.data)
79401
79471
  {
79402
79472
  var dayItem=data.data[i];
79403
- var afterCloseData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date };
79473
+ var afterCloseData={ Data:[], TotalCount:15, Ver:1.0, Date:dayItem.date, YClose:dayItem.yclose };
79404
79474
 
79405
79475
  if (dayItem.afterinfo)
79406
79476
  {
@@ -127769,7 +127839,7 @@ function ScrollBarBGChart()
127769
127839
 
127770
127840
 
127771
127841
 
127772
- var HQCHART_VERSION="1.1.12449";
127842
+ var HQCHART_VERSION="1.1.12454";
127773
127843
 
127774
127844
  function PrintHQChartVersion()
127775
127845
  {