hqchart 1.1.15364 → 1.1.15375

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.
@@ -1182,7 +1182,9 @@ for(var i=0;i<chart.Frame.SubFrame.length;++i){chart.Frame.SubFrame[i].Frame.Cha
1182
1182
  //属性设置
1183
1183
  //
1184
1184
  this.SetPressKeyboardConfig=function(chart,option){if(!chart||!option)return;if(IFrameSplitOperator.IsBool(option.PauseUpdate))chart.PressKeyboardConfig.PauseUpdate=option.PauseUpdate;};//缺口设置 KLine:{ PriceGap:{ Enable, Count } }
1185
- this.SetPriceGapConfig=function(chart,option){if(!option||!option.PriceGap)return;var klineChart=chart.ChartPaint[0];if(!klineChart)return;var item=option.PriceGap;if(IFrameSplitOperator.IsBool(item.Enable))klineChart.PriceGap.Enable=item.Enable;if(IFrameSplitOperator.IsNumber(item.Count))klineChart.PriceGap.Count=item.Count;};//历史K线图
1185
+ this.SetPriceGapConfig=function(chart,option){if(!option||!option.PriceGap)return;var klineChart=chart.ChartPaint[0];if(!klineChart)return;var item=option.PriceGap;if(IFrameSplitOperator.IsBool(item.Enable))klineChart.PriceGap.Enable=item.Enable;if(IFrameSplitOperator.IsNumber(item.Count))klineChart.PriceGap.Count=item.Count;};//设置十字光标
1186
+ this.SetCorssCursorConfig=function(chart,option){if(!option||!option.CorssCursorInfo)return;var item=option.CorssCursorInfo;if(IFrameSplitOperator.IsNumber(item.Left))chart.ChartCorssCursor.ShowTextMode.Left=item.Left;if(IFrameSplitOperator.IsNumber(item.Right))chart.ChartCorssCursor.ShowTextMode.Right=item.Right;if(IFrameSplitOperator.IsNumber(item.Bottom))chart.ChartCorssCursor.ShowTextMode.Bottom=item.Bottom;if(IFrameSplitOperator.IsBool(item.IsShowCorss))chart.ChartCorssCursor.IsShowCorss=item.IsShowCorss;if(IFrameSplitOperator.IsNumber(item.HPenType))chart.ChartCorssCursor.HPenType=item.HPenType;if(IFrameSplitOperator.IsNumber(item.VPenType))chart.ChartCorssCursor.VPenType=item.VPenType;if(IFrameSplitOperator.IsNumber(item.VLineType))chart.ChartCorssCursor.VLineType=item.VLineType;if(item.RightButton){if(IFrameSplitOperator.IsBool(item.RightButton.Enable))chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;}if(item.BottomButton){var subItem=item.BottomButton;if(IFrameSplitOperator.IsBool(subItem.Enable))chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;}if(IFrameSplitOperator.IsNumber(item.PriceFormatType))chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;if(IFrameSplitOperator.IsNumber(item.DataFormatType))chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;if(IFrameSplitOperator.IsBool(item.EnableKeyboard))chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;if(IFrameSplitOperator.IsBool(item.EnableDBClick))chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;if(IFrameSplitOperator.IsBool(item.IsShowCorssPoint))chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;if(item.YDecimals)//Y轴文字小数位数
1187
+ {var subItem=item.YDecimals;if(IFrameSplitOperator.IsNumber(subItem.Value))chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Value=subItem.Value;if(IFrameSplitOperator.IsNumber(subItem.Type))chart.ChartCorssCursor.StringFormatY.DecimalsConfig.Type=subItem.Type;}};//历史K线图
1186
1188
  this.CreateKLineChartContainer=function(option){var _this=this;var chart=null;if(option.Type==="历史K线图横屏")chart=new KLineChartHScreenContainer(this.CanvasElement);else chart=new KLineChartContainer(this.CanvasElement,this.OffscreenCanvasElement,this.CacheCanvasElement);chart.GetExtraCanvas=function(name){return _this.GetExtraCanvas(name);};var extraElement=this.GetExtraCanvas(JSChart.CorssCursorCanvasKey);if(extraElement)chart.SetCorssCursorElement(extraElement);if(option.EventCallback)this.SetEventCallback(chart,option.EventCallback);if(option.NetworkFilter)chart.NetworkFilter=option.NetworkFilter;var pixelRatio=GetDevicePixelRatio();//右键菜单
1187
1189
  if(IFrameSplitOperator.IsBool(option.IsShowRightMenu))chart.IsShowRightMenu=option.IsShowRightMenu;if(option.ScriptError)chart.ScriptErrorCallback=option.ScriptError;if(option.EnableScrollUpDown==true)chart.EnableScrollUpDown=option.EnableScrollUpDown;if(option.DisableMouse==true)chart.DisableMouse=option.DisableMouse;if(option.TouchMoveMinAngle)chart.TouchMoveMinAngle=option.TouchMoveMinAngle;if(option.EnableZoomUpDown)chart.EnableZoomUpDown=option.EnableZoomUpDown;if(IFrameSplitOperator.IsString(option.SplashTitle))chart.LoadDataSplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableZoomIndexWindow))chart.EnableZoomIndexWindow=option.EnableZoomIndexWindow;if(IFrameSplitOperator.IsBool(option.IsDrawPictureXY))chart.IsDrawPictureXY=option.IsDrawPictureXY;if(IFrameSplitOperator.IsNumber(option.CtrlMoveStep))chart.CtrlMoveStep=option.CtrlMoveStep;if(IFrameSplitOperator.IsNumber(option.ShiftMoveStep))chart.ShiftMoveStep=option.ShiftMoveStep;if(IFrameSplitOperator.IsBool(option.EnableIndexChartDrag))chart.EnableIndexChartDrag=option.EnableIndexChartDrag;if(IFrameSplitOperator.IsBool(option.EnableVerifyRecvData))chart.EnableVerifyRecvData=option.EnableVerifyRecvData;if(option.GlobalOption){var item=option.GlobalOption;if(IFrameSplitOperator.IsBool(item.IsValueFullRange))chart.GlobalOption.IsValueFullRange=item.IsValueFullRange;if(IFrameSplitOperator.IsBool(item.EnableXShortDate))chart.GlobalOption.EnableXShortDate=item.EnableXShortDate;if(item.SelectedBorder){var subItem=item.SelectedBorder;if(IFrameSplitOperator.IsNumber(subItem.Mode))chart.GlobalOption.SelectedBorder.Mode=subItem.Mode;}}if(option.EnableYDrag){var item=option.EnableYDrag;if(IFrameSplitOperator.IsBool(item.Left))chart.EnableYDrag.Left=item.Left;if(IFrameSplitOperator.IsBool(item.Right))chart.EnableYDrag.Right=item.Right;if(IFrameSplitOperator.IsBool(item.Wheel))chart.EnableYDrag.Wheel=item.Wheel;if(IFrameSplitOperator.IsNumber(item.WheelYMove))chart.EnableYDrag.WheelYMove=item.WheelYMove;}if(option.EnableXDrag){var item=option.EnableXDrag;if(IFrameSplitOperator.IsBool(item.Bottom))chart.EnableXDrag.Bottom=item.Bottom;if(item.LButton&&IFrameSplitOperator.IsNumber(item.LButton.Type))chart.EnableXDrag.LButton.Type=item.LButton.Type;if(item.RButton&&IFrameSplitOperator.IsNumber(item.RButton.Type))chart.EnableXDrag.RButton.Type=item.RButton.Type;}if(option.KLineTooltip){var item=option.KLineTooltip;if(IFrameSplitOperator.IsBool(item.Enable))chart.KLineTooltipConfig.Enable=item.Enable;if(IFrameSplitOperator.IsBool(item.EnableKeyDown))chart.KLineTooltipConfig.EnableKeyDown=item.EnableKeyDown;}if(option.KLine)//k线图的属性设置
1188
1190
  {var item=option.KLine;if(option.KLine.DragMode>=0)chart.DragMode=option.KLine.DragMode;if(option.KLine.Right>=0)chart.Right=option.KLine.Right;if(option.KLine.Period>=0)chart.Period=option.KLine.Period;if(option.KLine.MaxReqeustDataCount>0)chart.MaxRequestDataCount=option.KLine.MaxReqeustDataCount;//兼容老版本
@@ -1197,10 +1199,11 @@ if(IFrameSplitOperator.IsNonEmptyArray(option.KLineCalcOption)){for(var i=0;i<op
1197
1199
  }if(option.DragKLine){var item=option.DragKLine;if(IFrameSplitOperator.IsBool(item.EnableShfit))chart.KLineDragConfig.EnableShfit=item.EnableShfit;}}//创建子窗口
1198
1200
  chart.Create(option.Windows.length,option);this.SetChartBorder(chart,option);this.AdjustChartBorder(chart);if(option.KLine){if(option.KLine.PageSize>0)//一屏显示的数据个数
1199
1201
  {var pageSize=chart.GetMaxMinPageSize();if(pageSize.Max>10&&pageSize.Max<option.KLine.PageSize)chart.PageSize=pageSize.Max;else if(pageSize.Min>10&&pageSize.Min>option.KLine.PageSize)chart.PageSize=pageSize.Min;else chart.PageSize=option.KLine.PageSize;}}//取消显示十字光标刻度信息
1200
- if(option.IsCorssOnlyDrawKLine===true)chart.ChartCorssCursor.IsOnlyDrawKLine=option.IsCorssOnlyDrawKLine;if(option.CorssCursorTouchEnd===true)chart.CorssCursorTouchEnd=option.CorssCursorTouchEnd;if(option.IsClickShowCorssCursor==true)chart.IsClickShowCorssCursor=option.IsClickShowCorssCursor;if(option.CorssCursorInfo){var item=option.CorssCursorInfo;if(!isNaN(option.CorssCursorInfo.Left))chart.ChartCorssCursor.ShowTextMode.Left=option.CorssCursorInfo.Left;if(!isNaN(option.CorssCursorInfo.Right))chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;if(!isNaN(option.CorssCursorInfo.Bottom))chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;if(option.CorssCursorInfo.IsShowCorss===false)chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;if(IFrameSplitOperator.IsBool(item.IsShowClose))chart.ChartCorssCursor.IsShowClose=item.IsShowClose;//Y轴显示收盘价
1202
+ if(option.IsCorssOnlyDrawKLine===true)chart.ChartCorssCursor.IsOnlyDrawKLine=option.IsCorssOnlyDrawKLine;if(option.CorssCursorTouchEnd===true)chart.CorssCursorTouchEnd=option.CorssCursorTouchEnd;if(option.IsClickShowCorssCursor==true)chart.IsClickShowCorssCursor=option.IsClickShowCorssCursor;this.SetCorssCursorConfig(chart,option);if(option.CorssCursorInfo)//十字光标K线上的属性设置
1203
+ {var item=option.CorssCursorInfo;if(IFrameSplitOperator.IsBool(item.IsShowClose))chart.ChartCorssCursor.IsShowClose=item.IsShowClose;//Y轴显示收盘价
1201
1204
  if(IFrameSplitOperator.IsBool(item.IsOnlyDrawKLine))chart.ChartCorssCursor.IsOnlyDrawKLine=item.IsOnlyDrawKLine;//Y轴显示收盘价
1202
1205
  if(option.CorssCursorInfo.PressTime)chart.PressTime=option.CorssCursorInfo.PressTime;//长按显示十字光标的时间
1203
- if(IFrameSplitOperator.IsNumber(option.CorssCursorInfo.HPenType))chart.ChartCorssCursor.HPenType=option.CorssCursorInfo.HPenType;if(option.CorssCursorInfo.VPenType>0)chart.ChartCorssCursor.VPenType=option.CorssCursorInfo.VPenType;if(IFrameSplitOperator.IsNumber(item.VLineType))chart.ChartCorssCursor.VLineType=item.VLineType;if(option.CorssCursorInfo.DateFormatType>0)chart.ChartCorssCursor.StringFormatX.DateFormatType=option.CorssCursorInfo.DateFormatType;if(IFrameSplitOperator.IsBool(item.IsDrawXRangeBG))chart.ChartCorssCursor.IsDrawXRangeBG=item.IsDrawXRangeBG;if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(IFrameSplitOperator.IsNumber(item.TextHeight))chart.ChartCorssCursor.TextHeight=item.TextHeight;if(item.RightButton){if(IFrameSplitOperator.IsBool(item.RightButton.Enable))chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;}if(item.BottomButton){var subItem=item.BottomButton;if(IFrameSplitOperator.IsBool(subItem.Enable))chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;}if(IFrameSplitOperator.IsNumber(item.PriceFormatType))chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;if(IFrameSplitOperator.IsNumber(item.DataFormatType))chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;if(IFrameSplitOperator.IsBool(item.EnableKeyboard))chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;if(IFrameSplitOperator.IsBool(item.EnableDBClick))chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;if(IFrameSplitOperator.IsBool(item.IsShowCorssPoint))chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;if(item.RangeIncrease){var subItem=item.RangeIncrease;if(IFrameSplitOperator.IsBool(subItem.IsShow))chart.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow=subItem.IsShow;if(IFrameSplitOperator.IsNumber(subItem.Formula))chart.ChartCorssCursor.StringFormatX.RangeIncrease.Formula=subItem.Formula;}}//保存十字光标文字高度
1206
+ if(option.CorssCursorInfo.DateFormatType>0)chart.ChartCorssCursor.StringFormatX.DateFormatType=option.CorssCursorInfo.DateFormatType;if(IFrameSplitOperator.IsBool(item.IsDrawXRangeBG))chart.ChartCorssCursor.IsDrawXRangeBG=item.IsDrawXRangeBG;if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(IFrameSplitOperator.IsNumber(item.TextHeight))chart.ChartCorssCursor.TextHeight=item.TextHeight;if(item.RangeIncrease){var subItem=item.RangeIncrease;if(IFrameSplitOperator.IsBool(subItem.IsShow))chart.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow=subItem.IsShow;if(IFrameSplitOperator.IsNumber(subItem.Formula))chart.ChartCorssCursor.StringFormatX.RangeIncrease.Formula=subItem.Formula;}}//保存十字光标文字高度
1204
1207
  option.CorssCursor={};option.CorssCursor.TitleHeight=chart.ChartCorssCursor.TextHeight;if(IFrameSplitOperator.IsNumber(option.SplashTitlePosition)){if(chart.ChartSplashPaint)chart.ChartSplashPaint.Position=option.SplashTitlePosition;}if(option.Frame){for(var i=0;i<option.Frame.length;++i){var item=option.Frame[i];if(!chart.Frame.SubFrame[i])continue;chart.SetSubFrameAttribute(chart.Frame.SubFrame[i],null,item);/* 窗口设置全部移动到 SetSubFrameAttribute
1205
1208
  var subFrame=chart.Frame.SubFrame[i].Frame;
1206
1209
  if (IFrameSplitOperator.IsNumber(item.SplitCount)) chart.Frame.SubFrame[i].Frame.YSplitOperator.SplitCount=item.SplitCount;
@@ -1312,8 +1315,9 @@ if(option.SelectedChart){var item=option.SelectedChart;if(IFrameSplitOperator.Is
1312
1315
  }if(option.DragSelectRect){var item=option.DragSelectRect;var zindex=10;if(IFrameSplitOperator.IsNumber(item.ZIndex))zindex=item.ZIndex;if(item.Enable)this.CreateExtraCanvasElement(JSChart.RectDragCanvasKey,{ZIndex:zindex});//创建独立的区间选择画布
1313
1316
  }}if(option.EnableYDrag){var item=option.EnableYDrag;if(IFrameSplitOperator.IsBool(item.Left))chart.EnableYDrag.Left=item.Left;if(IFrameSplitOperator.IsBool(item.Right))chart.EnableYDrag.Right=item.Right;if(IFrameSplitOperator.IsBool(item.Wheel))chart.EnableYDrag.Wheel=item.Wheel;if(IFrameSplitOperator.IsNumber(item.WheelYMove))chart.EnableYDrag.WheelYMove=item.WheelYMove;}if(option.FastSlide){var item=option.FastSlide;if(IFrameSplitOperator.IsNumber(item.MinDistance))chart.FastSlideConfig.MinDistance=item.MinDistance;if(IFrameSplitOperator.IsNumber(item.MinSpeed))chart.FastSlideConfig.MinSpeed=item.MinSpeed;if(IFrameSplitOperator.IsNumber(item.MaxTime))chart.FastSlideConfig.MaxTime=item.MaxTime;if(IFrameSplitOperator.IsBool(item.Enable))chart.FastSlideConfig.Enable=item.Enable;}//分页
1314
1317
  if(option.PageInfo)chart.SetPageInfo(option.PageInfo);chart.Create(windowsCount,option);//创建子窗口
1315
- if(option.CorssCursorInfo){var item=option.CorssCursorInfo;if(!isNaN(option.CorssCursorInfo.Left))chart.ChartCorssCursor.ShowTextMode.Left=option.CorssCursorInfo.Left;if(!isNaN(option.CorssCursorInfo.Right))chart.ChartCorssCursor.ShowTextMode.Right=option.CorssCursorInfo.Right;if(!isNaN(option.CorssCursorInfo.Bottom))chart.ChartCorssCursor.ShowTextMode.Bottom=option.CorssCursorInfo.Bottom;if(option.CorssCursorInfo.IsShowCorss===false)chart.ChartCorssCursor.IsShowCorss=option.CorssCursorInfo.IsShowCorss;if(option.CorssCursorInfo.RightTextFormat>0)chart.ChartCorssCursor.TextFormat.Right=option.CorssCursorInfo.RightTextFormat;if(option.CorssCursorInfo.IsOnlyDrawMinute==true)chart.ChartCorssCursor.IsOnlyDrawMinute=option.CorssCursorInfo.IsOnlyDrawMinute;//Y轴显示收盘价
1316
- if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(item.RightButton){if(IFrameSplitOperator.IsBool(item.RightButton.Enable))chart.ChartCorssCursor.RightButton.Enable=item.RightButton.Enable;}if(item.BottomButton){var subItem=item.BottomButton;if(IFrameSplitOperator.IsBool(subItem.Enable))chart.ChartCorssCursor.BottomButton.Enable=subItem.Enable;}if(IFrameSplitOperator.IsNumber(item.PriceFormatType))chart.ChartCorssCursor.StringFormatY.PriceFormatType=item.PriceFormatType;if(IFrameSplitOperator.IsNumber(item.DataFormatType))chart.ChartCorssCursor.StringFormatY.DataFormatType=item.DataFormatType;if(IFrameSplitOperator.IsNumber(item.HPenType))chart.ChartCorssCursor.HPenType=item.HPenType;if(IFrameSplitOperator.IsNumber(item.VPenType))chart.ChartCorssCursor.VPenType=item.VPenType;if(IFrameSplitOperator.IsBool(item.EnableKeyboard))chart.ChartCorssCursor.EnableKeyboard=item.EnableKeyboard;if(IFrameSplitOperator.IsBool(item.EnableDBClick))chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;if(IFrameSplitOperator.IsBool(item.IsShowCorssPoint))chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;if(IFrameSplitOperator.IsNumber(item.VLineType))chart.ChartCorssCursor.VLineType=item.VLineType;if(item.TextStyle){if(item.TextStyle.Right)//右侧输出样式
1318
+ this.SetCorssCursorConfig(chart,option);if(option.CorssCursorInfo)//分时图十字光标属性设置
1319
+ {var item=option.CorssCursorInfo;if(option.CorssCursorInfo.RightTextFormat>0)chart.ChartCorssCursor.TextFormat.Right=option.CorssCursorInfo.RightTextFormat;if(option.CorssCursorInfo.IsOnlyDrawMinute==true)chart.ChartCorssCursor.IsOnlyDrawMinute=option.CorssCursorInfo.IsOnlyDrawMinute;//Y轴显示收盘价
1320
+ if(IFrameSplitOperator.IsBool(option.CorssCursorInfo.IsFixXLastTime))chart.ChartCorssCursor.IsFixXLastTime=option.CorssCursorInfo.IsFixXLastTime;if(item.TextStyle){if(item.TextStyle.Right)//右侧输出样式
1317
1321
  {var subItem=item.TextStyle.Right;if(IFrameSplitOperator.IsNumber(subItem.Type))chart.ChartCorssCursor.StringFormatY.TextStyleConfig.Right.Type=subItem.Type;}}}if(option.MinuteInfo)chart.CreateMinuteInfo(option.MinuteInfo);if(IFrameSplitOperator.IsBool(option.IsShowRightMenu))chart.IsShowRightMenu=option.IsShowRightMenu;if(IFrameSplitOperator.IsNumber(option.DayCount))chart.DayCount=option.DayCount;this.SetChartBorder(chart,option);if(option.SplashTitle)chart.ChartSplashPaint.SplashTitle=option.SplashTitle;if(IFrameSplitOperator.IsBool(option.EnableBorderDrag)){chart.EnableBorderDrag=option.EnableBorderDrag;}if(IFrameSplitOperator.IsBool(option.EnableBuySellBar)){var barChart=chart.GetChartMinuteBuySellBar();if(barChart)barChart.IsShow=option.EnableBuySellBar;}this.AdjustChartBorder(chart);if(option.Frame){for(var i=0;i<option.Frame.length;++i){var item=option.Frame[i];if(!chart.Frame.SubFrame[i])continue;chart.SetSubFrameAttribute(chart.Frame.SubFrame[i],null,item);/*
1318
1322
  var subFrame=chart.Frame.SubFrame[i].Frame;
1319
1323
 
@@ -1753,7 +1757,7 @@ CHIP_CLOSE:45,//关闭筹码图
1753
1757
  INDEX_HELP:46//指标帮助
1754
1758
  };var JSCHART_DATA_FIELD_ID={KLINE_ORDERFLOW:99,MINUTE_MULTI_DAY_EXTENDDATA:21,//多日分时图扩展数据序号
1755
1759
  MINUTE_DAY_EXTENDDATA:21,MINUTE_BEFOREOPEN_EXTENDDATA:21,MINUTE_AFTERCLOSE_EXTENDDATA:21,KLINE_COLOR_DATA:66,//K线自定义颜色数据
1756
- KLINE_DAY_EXTENDDATA:25,KLINE_MINUTE_EXTENDDATA:25,//OrderBook Heatmap
1760
+ KLINE_DAY_EXTENDDATA:25,KLINE_MINUTE_EXTENDDATA:25,KLINE_TICK_EXTENDDATA:25,//OrderBook Heatmap
1757
1761
  KLINE_HEATMAP:67,//报价列表
1758
1762
  REPORT_EXTENDDATA:81//报价列表扩展数据
1759
1763
  };var JSCHART_WORKER_MESSAGE_ID={EXECUTE_SCRIPT:1,//工作线程执行脚本
@@ -6298,18 +6302,20 @@ this.Point;this.ClientPos=-1;this.HQChart;this.TextStyleConfig={Right:{Type:-1}}
6298
6302
  this.TextStyleTemplate=[null,null];this.ExtendChartPaint;this.RExtendText=[];this.BeforeOpenData;this.AfterCloseData;this.MultiDayBeforeOpenData;this.MultiDayAfterCloseData;this.ShareAfterVol=0;//1=主图共享 2=盘前共享
6299
6303
  this.PriceFormatType=0;//主窗口格式 0=默认 1=科学计数
6300
6304
  this.DataFormatType=0;//副图指标格式 0=默认 1=科学计数
6305
+ this.DecimalsConfig={Value:2,Type:0};//小数设置, Value:小数位数 , Type: 0=默认 1=跟指标标题一致
6301
6306
  this.GetEventCallback;//盘前集合竞价
6302
6307
  this.GetBeforeOpen=function(){if(!this.Frame)return false;var item=this.Frame.SubFrame[this.FrameID];if(!item||!item.Frame)return false;if(!this.BeforeOpenData)return false;var range={Max:this.BeforeOpenData.VolMax,Min:this.BeforeOpenData.VolMin};var y=this.Frame.IsHScreen?this.Point.X:this.Point.Y;var value=item.Frame.GetLeftExtendYData(y,false,{Range:range});var defaultfloatPrecision=2;//价格小数位数
6303
6308
  if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};//收盘集合竞价
6304
6309
  this.GetAfterClose=function(){if(!this.Frame)return false;var item=this.Frame.SubFrame[this.FrameID];if(!item||!item.Frame)return false;if(!this.AfterCloseData)return false;var range={Max:this.AfterCloseData.VolMax,Min:this.AfterCloseData.VolMin};var y=this.Frame.IsHScreen?this.Point.X:this.Point.Y;var value=item.Frame.GetRightExtendYData(y,false,{Range:range});var defaultfloatPrecision=2;//价格小数位数
6305
6310
  if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};this.GetMultiDayBeforeOpen=function(){if(!this.Frame)return false;var item=this.Frame.SubFrame[this.FrameID];if(!item||!item.Frame)return false;var multiDayBeforeOpenData=this.GetMultiDayBeforeOpenData();if(!multiDayBeforeOpenData||!IFrameSplitOperator.IsNonEmptyArray(multiDayBeforeOpenData))return;var dayIndex=this.ClientPos-200;if(dayIndex<0||dayIndex>=multiDayBeforeOpenData.length)return false;var dayData=multiDayBeforeOpenData[dayIndex];var range={Max:dayData.VolMax,Min:dayData.VolMin};var y=this.Frame.IsHScreen?this.Point.X:this.Point.Y;var value=item.Frame.GetLeftExtendYData(y,false,{Range:range});var defaultfloatPrecision=2;//价格小数位数
6306
6311
  if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};this.GetMultiDayAfterClose=function(){if(!this.Frame)return false;var item=this.Frame.SubFrame[this.FrameID];if(!item||!item.Frame)return false;var multiDayAfterCloseData=this.GetMultiDayAfterCloseData();if(!multiDayAfterCloseData||!IFrameSplitOperator.IsNonEmptyArray(multiDayAfterCloseData))return;var dayIndex=this.ClientPos-300;if(dayIndex<0||dayIndex>=multiDayAfterCloseData.length)return false;var dayData=multiDayAfterCloseData[dayIndex];var range={Max:dayData.VolMax,Min:dayData.VolMin};var y=this.Frame.IsHScreen?this.Point.X:this.Point.Y;var value=item.Frame.GetRightExtendYData(y,false,{Range:range});var defaultfloatPrecision=2;//价格小数位数
6307
- if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};this.GetTextStyleTemplate=function(type,defaultTemplate){var template=this.TextStyleTemplate[type];if(!template)return defaultTemplate;return CloneData(template);};this.Operator=function(){this.RText=null;this.RComplexText=null;this.RExtendText=[];if(IFrameSplitOperator.IsString(this.RValue))this.RText=this.RValue;if(!this.Value)return false;this.PercentageText=null;var defaultfloatPrecision=2;//价格小数位数
6312
+ if(IFrameSplitOperator.IsNumber(value)){this.RText=this.Text=IFrameSplitOperator.FormatValueString(value,defaultfloatPrecision,this.LanguageID);}};this.GetTextStyleTemplate=function(type,defaultTemplate){var template=this.TextStyleTemplate[type];if(!template)return defaultTemplate;return CloneData(template);};this.Operator=function(){this.RText=null;this.RComplexText=null;this.RExtendText=[];if(IFrameSplitOperator.IsString(this.RValue))this.RText=this.RValue;if(!this.Value)return false;this.PercentageText=null;var defaultfloatPrecision=this.DecimalsConfig.Value;//价格小数位数
6308
6313
  if(this.FrameID==0)//第1个窗口显示原始价格
6309
6314
  {var defaultfloatPrecision=GetfloatPrecision(this.Symbol);if(this.PriceFormatType==1)this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);else this.Text=this.Value.toFixed(defaultfloatPrecision);if(this.TextStyleConfig.Right.Type==2){if(IFrameSplitOperator.IsNumber(this.YClose)){var value=(this.Value-this.YClose)*100/this.YClose;var text=value.toFixed(2)+'%';if(value>=0)text=' '+value.toFixed(2)+'%';var defaultTemplate={ShowType:1,Space:2,BaseLine:"center",Text:[{Text:null,TextAlign:"center",Margin:{Left:2,Right:2}},{Text:null,TextAlign:"center",Margin:{Left:2,Right:2}}]};var complexText=this.GetTextStyleTemplate(this.TextStyleConfig.Right.Type,defaultTemplate);complexText.Text[0].Text=this.Text;//价格
6310
6315
  complexText.Text[1].Text=text;//百分比
6311
6316
  this.RComplexText=complexText;}}else if(this.TextStyleConfig.Right.Type==1){}else{if(IFrameSplitOperator.IsNumber(this.YClose))this.PercentageText=((this.Value-this.YClose)*100/this.YClose).toFixed(2);//走势图右边坐标显示百分比
6312
- }this.GetExtendPaintData(defaultfloatPrecision);}else if(this.FrameID==1){if(this.DataFormatType==1){this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);if(IFrameSplitOperator.IsNumber(this.RValue))this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);}else{this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);if(IFrameSplitOperator.IsNumber(this.RValue))this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);}if(this.ClientPos==2){this.GetBeforeOpen();}else if(this.ClientPos==3){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetAfterClose();}else if(this.ClientPos>=200&&this.ClientPos<=299){this.GetMultiDayBeforeOpen();}else if(this.ClientPos>=300&&this.ClientPos<=399){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetMultiDayAfterClose();}}else{if(this.DataFormatType==1)this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);else this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);if(IFrameSplitOperator.IsNumber(this.RValue))this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);var bCallAuction=false;if(this.HQChart&&this.HQChart.IsCallAuctionFrame)bCallAuction=this.HQChart.IsCallAuctionFrame(this.FrameID);if(bCallAuction){if(this.ClientPos==2){this.GetBeforeOpen();}else if(this.ClientPos==3){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetAfterClose();}else if(this.ClientPos>=200&&this.ClientPos<=299){this.GetMultiDayBeforeOpen();}else if(this.ClientPos>=300&&this.ClientPos<=399){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetMultiDayAfterClose();}}}if(this.GetEventCallback){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_CORSSCURSOR_Y_TEXT);if(event){var data={Value:this.Value,FrameID:this.FrameID,PreventDefault:false};event.Callback(event,data,this);if(data.PreventDefault==true)return false;}}return true;};//深度图刻度
6317
+ }this.GetExtendPaintData(defaultfloatPrecision);}else if(this.FrameID==1){defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);if(this.DataFormatType==1){this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);if(IFrameSplitOperator.IsNumber(this.RValue))this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);}else{this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);if(IFrameSplitOperator.IsNumber(this.RValue))this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);}if(this.ClientPos==2){this.GetBeforeOpen();}else if(this.ClientPos==3){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetAfterClose();}else if(this.ClientPos>=200&&this.ClientPos<=299){this.GetMultiDayBeforeOpen();}else if(this.ClientPos>=300&&this.ClientPos<=399){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetMultiDayAfterClose();}}else{defaultfloatPrecision=this.GetIndexTitleFloatPrecision(this.FrameID);if(this.DataFormatType==1)this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);else this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);if(IFrameSplitOperator.IsNumber(this.RValue))this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);var bCallAuction=false;if(this.HQChart&&this.HQChart.IsCallAuctionFrame)bCallAuction=this.HQChart.IsCallAuctionFrame(this.FrameID);if(bCallAuction){if(this.ClientPos==2){this.GetBeforeOpen();}else if(this.ClientPos==3){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetAfterClose();}else if(this.ClientPos>=200&&this.ClientPos<=299){this.GetMultiDayBeforeOpen();}else if(this.ClientPos>=300&&this.ClientPos<=399){if(this.ShareAfterVol==0||this.ShareAfterVol==2)this.GetMultiDayAfterClose();}}}if(this.GetEventCallback){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_CORSSCURSOR_Y_TEXT);if(event){var data={Value:this.Value,FrameID:this.FrameID,PreventDefault:false};event.Callback(event,data,this);if(data.PreventDefault==true)return false;}}return true;};//获取指标标题小数位数
6318
+ this.GetIndexTitleFloatPrecision=function(frameID){var dec=this.DecimalsConfig.Value;if(this.DecimalsConfig.Type===0)return dec;if(frameID<0)return dec;if(!this.HQChart)return dec;if(!IFrameSplitOperator.IsNonEmptyArray(this.HQChart.WindowIndex))return dec;var item=this.HQChart.WindowIndex[frameID];if(!item)return dec;if(IFrameSplitOperator.IsNumber(item.FloatPrecision))dec=item.FloatPrecision;return dec;};//深度图刻度
6313
6319
  this.GetExtendPaintData=function(floatPrecision){var value=parseInt(this.Value*ZOOM_VALUE[floatPrecision]);for(var i in this.ExtendChartPaint){var item=this.ExtendChartPaint[i];if(item.ClassName=='DepthMapPaint'&&item.FrameID==this.FrameID){var aryData=item.GetYValueByXValue(value,floatPrecision);for(var j in aryData){this.RExtendText.push(aryData[j]);}}}};}function HQDateStringFormat(){this.newMethod=IChangeStringFormat;//派生
6314
6320
  this.newMethod();delete this.newMethod;this.DateFormatType=0;//0=YYYY-MM-DD 1=YYYY/MM/DD 2=YYYY/MM/DD/W 3=DD/MM/YYYY
6315
6321
  this.LanguageID=0;this.KItem=null;//缓存当前的K线
@@ -8417,14 +8423,14 @@ this.UpdateFrameMaxMin();//调整坐标最大 最小值
8417
8423
  this.Frame.SetSizeChage(true);this.Draw();this.UpdatePointByCursorIndex();//更新十字光标位子
8418
8424
  //叠加指标
8419
8425
  this.BindAllOverlayIndexData(bindData);if(this.mapEvent.has(JSCHART_EVENT_ID.RECV_HISTROY_DATA)){var event=this.mapEvent.get(JSCHART_EVENT_ID.RECV_HISTROY_DATA);var data={HistoryData:bindData,Stock:{Symbol:this.Symbol,Name:this.Name}};event.Callback(event,data,this);}};//请求最新的分笔数据
8420
- this.RequestTickRealtimeData=function(){var self=this;var start=0;if(this.SourceData&&this.SourceData.Data)start=this.SourceData.Data.length;if(this.NetworkFilter){var obj={Name:'KLineChartContainer::RequestTickRealtimeData',//类名::
8421
- Explain:'当天最新分笔数据',Request:{Url:self.TickApiUrl,Data:{symbol:self.Symbol,start:start,end:start+1000},Type:'POST'},Self:this,PreventDefault:false};this.NetworkFilter(obj,function(data){self.ChartSplashPaint.EnableSplash(false);self.RecvTickRealtimeData(data);self.AutoUpdate();});if(obj.PreventDefault==true)return;//已被上层替换,不调用默认的网络请求
8422
- }JSNetwork.HttpRequest({url:self.TickApiUrl,data:{"symbol":self.Symbol,start:start-10,end:start+1000},type:"post",dataType:"json",async:true,success:function success(data){self.ChartSplashPaint.EnableSplash(false);self.RecvTickRealtimeData(data);self.AutoUpdate();}});};this.RecvTickRealtimeData=function(data){if(data.ver==2.0)var aryDayData=KLineChartContainer.JsonDataToTickDataV2(data);//增量数据
8423
- else var aryDayData=KLineChartContainer.JsonDataToTickData(data);//增量数据
8424
- if(!aryDayData||aryDayData.length<=0)return;var redraw=false;//强制重绘
8426
+ this.RequestTickRealtimeData=function(){var self=this;var start=0;var hisData=this.GetKData();var dateRange=hisData.GetDateRange();if(this.NetworkFilter){var kLineDrawType=this.GetKLineDrawType();var obj={Name:'KLineChartContainer::RequestTickRealtimeData',//类名::
8427
+ Explain:'当天最新分笔数据',Request:{Url:self.TickApiUrl,Data:{symbol:self.Symbol,period:this.Period,right:this.Right,dateRange:dateRange,klineDrawType:kLineDrawType},Type:'POST'},Self:this,PreventDefault:false};this.NetworkFilter(obj,function(data){self.ChartSplashPaint.EnableSplash(false);self.RecvTickRealtimeData(data);self.AutoUpdate();});if(obj.PreventDefault==true)return;//已被上层替换,不调用默认的网络请求
8428
+ }};this.RecvTickRealtimeData=function(data){var aryDayData=null;if(data.ver==2.0)aryDayData=KLineChartContainer.JsonDataToTickDataV2(data);//增量数据
8429
+ else aryDayData=KLineChartContainer.JsonDataToTickData(data);//增量数据
8430
+ if(!IFrameSplitOperator.IsNonEmptyArray(aryDayData))return;var redraw=false;//强制重绘
8425
8431
  if(data.redraw==true)redraw=true;//更新原始数据
8426
8432
  var source=this.SourceData.Data;var lastDataCount=this.SourceData.Data.length;//上一个的数据长度
8427
- var lastTime=0;if(source.length>0)lastTime=source[source.length-1].Time;var newCount=0;for(var i in aryDayData){var item=aryDayData[i];if(item.Time<=lastTime)continue;source.push(item);++newCount;}if(newCount<=0&&redraw==false)return;//显示的数据
8433
+ var lastTime=0;if(source.length>0)lastTime=source[source.length-1].Time;var newCount=0;for(var i=0;i<aryDayData.length;++i){var item=aryDayData[i];if(item.Time<=lastTime)continue;source.push(item);++newCount;}if(newCount<=0&&redraw==false)return;//显示的数据
8428
8434
  var bindData=new ChartData();bindData.Data=source;bindData.Right=this.Right;bindData.Period=this.Period;bindData.DataType=2;//绑定数据
8429
8435
  this.Symbol=data.symbol;this.Name=data.name;this.UpdateMainData(bindData,lastDataCount);this.BindInstructionIndexData(bindData);//执行指示脚本
8430
8436
  for(var i=0;i<this.Frame.SubFrame.length;++i){this.BindIndexData(i,bindData);}//this.CreateChartDrawPictureByStorage(); //创建画图工具
@@ -8963,8 +8969,9 @@ if(!IFrameSplitOperator.IsNumber(item.YClose)){if(IFrameSplitOperator.IsNumber(y
8963
8969
  item.Vol=tick[2];//原始单位股
8964
8970
  item.Amount=tick[3];item.Flag=tick[4];if(!IFrameSplitOperator.IsNumber(item.Open))continue;//停牌的数据剔除
8965
8971
  //yClose=item.Close;
8966
- aryDayData.push(item);}return aryDayData;};KLineChartContainer.JsonDataToTickDataV2=function(data){var aryDayData=[];if(!IFrameSplitOperator.IsNonEmptyArray(data.data))return aryDayData;for(var i=0;i<data.data.length;++i){var item=new HistoryData();var tick=data.data[i];//[ date, time, yClose, price, extendData]
8967
- if(!tick)continue;item.Date=tick[0];item.Time=tick[1];item.YClose=tick[2];item.Low=item.High=item.Close=item.Open=tick[3];aryDayData.push(item);if(tick[4])item.ExtendData=tick[4];}return aryDayData;};///////////////////////////////////////////////////////////////////////////////////////////
8972
+ aryDayData.push(item);}return aryDayData;};KLineChartContainer.JsonDataToTickDataV2=function(data){var aryDayData=[];if(!IFrameSplitOperator.IsNonEmptyArray(data.data))return aryDayData;var extendDataIndex=JSCHART_DATA_FIELD_ID.KLINE_TICK_EXTENDDATA;for(var i=0;i<data.data.length;++i){var item=new HistoryData();var tick=data.data[i];//[ date, time, yClose, price, vol, amount, flag,]
8973
+ if(!tick)continue;item.Date=tick[0];item.Time=tick[1];item.YClose=tick[2];item.Low=item.High=item.Close=item.Open=tick[3];item.Vol=tick[4];//原始单位股
8974
+ item.Amount=tick[5];item.Flag=tick[6];aryDayData.push(item);if(tick[extendDataIndex])item.ExtendData=tick[extendDataIndex];}return aryDayData;};///////////////////////////////////////////////////////////////////////////////////////////
8968
8975
  // 走势图
8969
8976
  //
8970
8977
  function MinuteChartContainer(uielement,offscreenElement,cacheElement){this.newMethod=JSChartContainer;//派生
@@ -11595,14 +11602,17 @@ this.STRCAT=function(str1,str2){var result="";if(IFrameSplitOperator.IsString(st
11595
11602
  //用法: STRCAT6('多头','开仓','或者','空头','平仓','')将六个字符串相加成一个字符串
11596
11603
  this.STRCAT6=function(str1,str2,str3,str4,str5,str6){var result="";if(IFrameSplitOperator.IsString(str1))result+=str1;if(IFrameSplitOperator.IsString(str2))result+=str2;if(IFrameSplitOperator.IsString(str3))result+=str3;if(IFrameSplitOperator.IsString(str4))result+=str4;if(IFrameSplitOperator.IsString(str5))result+=str5;if(IFrameSplitOperator.IsString(str6))result+=str6;return result;};//VARCAT(A,B):将两个字符串A,B相加成一个字符串C.
11597
11604
  //用法: DRAWTEXT(CLOSE>OPEN,LOW,VARCAT('多头',VAR2STR(C,2))) 将两个字符串相加成一个字符串并按条件显示出来
11598
- this.VARCAT=function(data,data2){var result=[];if(Array.isArray(data)&&Array.isArray(data2)){var nCount=Math.max(data.length,data2.length);var strValue="";for(var i=0;i<nCount;++i){result[i]=null;strValue="";if(i<data.length){var item=data[i];if(IFrameSplitOperator.IsString(item))strValue+=item;}if(i<data2.length){var item=data2[i];if(IFrameSplitOperator.IsString(item))strValue+=item;}if(strValue!="")result[i]=strValue;}}else if(IFrameSplitOperator.IsString(data)&&Array.isArray(data2)){for(var i=0;i<data2.length;++i){result[i]=null;var item=data2[i];if(IFrameSplitOperator.IsString(item)){result[i]=data+item;}}}else if(Array.isArray(data)&&IFrameSplitOperator.IsString(data2)){for(var i=0;i<data.length;++i){result[i]=null;var item=data[i];if(IFrameSplitOperator.IsString(item)){result[i]=item+data2;}}}else if(IFrameSplitOperator.IsString(data)&&IFrameSplitOperator.IsString(data2)){result=data+data2;}return result;};//FINDSTR(A,B):在字符串A中查找字符串B,如果找到返回1,否则返回0.
11605
+ this.VARCAT=function(data,data2){var result=[];if(Array.isArray(data)&&Array.isArray(data2)){var nCount=Math.max(data.length,data2.length);var strValue="";for(var i=0;i<nCount;++i){result[i]=null;strValue="";if(i<data.length){var item=data[i];if(IFrameSplitOperator.IsString(item))strValue+=item;}if(i<data2.length){var item=data2[i];if(IFrameSplitOperator.IsString(item))strValue+=item;}if(strValue!="")result[i]=strValue;}}else if(IFrameSplitOperator.IsString(data)&&Array.isArray(data2)){for(var i=0;i<data2.length;++i){result[i]=null;var item=data2[i];if(IFrameSplitOperator.IsString(item)){result[i]=data+item;}}}else if(Array.isArray(data)&&IFrameSplitOperator.IsString(data2)){for(var i=0;i<data.length;++i){result[i]=null;var item=data[i];if(IFrameSplitOperator.IsString(item)){result[i]=item+data2;}}}else if(IFrameSplitOperator.IsString(data)&&IFrameSplitOperator.IsString(data2)){result=data+data2;}return result;};//VARCAT6(A,B,C,D,E,F):将六个字符串A,B,C,D,E,F相加成一个字符串.
11606
+ //每个数据都进行序列运算,若用于多股选股,建议换用STRCAT6
11607
+ //用法: VARCAT6('多头',VAR2STR(C,2),' ',VAR2STR(O,2),' ',VAR2STR(MA(C,5),2))将六个字符串相加成一个字符串
11608
+ this.VARCAT6=function(data,data2,data3,data4,data5){var aryData=[];if(Array.isArray(data)||IFrameSplitOperator.IsString(data))aryData.push(data);if(Array.isArray(data2)||IFrameSplitOperator.IsString(data2))aryData.push(data2);if(Array.isArray(data3)||IFrameSplitOperator.IsString(data3))aryData.push(data3);if(Array.isArray(data4)||IFrameSplitOperator.IsString(data4))aryData.push(data4);if(Array.isArray(data5)||IFrameSplitOperator.IsString(data5))aryData.push(data5);if(!IFrameSplitOperator.IsNonEmptyArray(aryData))return[];if(aryData.length==1)return data;var tempData=this.VARCAT(aryData[0],aryData[1]);var result=tempData;for(var i=2;i<aryData.length;++i){result=this.VARCAT(tempData,aryData[i]);tempData=result;}return result;};//FINDSTR(A,B):在字符串A中查找字符串B,如果找到返回1,否则返回0.
11599
11609
  //用法: FINDSTR('多头开仓','开仓')在字符串'多头开仓'中查找字符串'开仓',返回1
11600
11610
  this.FINDSTR=function(data,data2){var result=[];var str,str2;if(IFrameSplitOperator.IsNumber(data))str=data.toString();else str=data;if(IFrameSplitOperator.IsNumber(data2))str2=data2.toString();else str2=data2;if(IFrameSplitOperator.IsString(str)&&IFrameSplitOperator.IsString(str2)){if(str.indexOf(str2)>=0)return 1;else return 0;}else if(Array.isArray(data)&&IFrameSplitOperator.IsString(str2)){for(var i=0;i<data.length;++i){var item=data[i];if(IFrameSplitOperator.IsString(item)){result[i]=item.indexOf(str2)>=0?1:0;}else if(IFrameSplitOperator.IsNumber(item)){str=item.toString();result[i]=str.indexOf(str2)>=0?1:0;}else{result[i]=0;}}}return result;};this.STRLEN=function(data){if(IFrameSplitOperator.IsString(data))return data.length;if(Array.isArray(data)){var result=[];for(var i=0;i<data.length;++i){var item=data[i];if(IFrameSplitOperator.IsString(item))result[i]=item.length;else result[i]=null;}return result;}return null;};this.STRCMP=function(data,data2){if(IFrameSplitOperator.IsString(data)&&IFrameSplitOperator.IsString(data2)){return data==data2?1:0;}return null;};//STRSPACE(A):字符串附带一空格
11601
11611
  this.STRSPACE=function(data){var result=[];if(Array.isArray(data)){for(var i=0;i<data.length;++i){result[i]=null;var item=data[i];if(IFrameSplitOperator.IsString(item))result[i]=item+' ';}}else{if(IFrameSplitOperator.IsString(data))result=data+" ";}return result;};//CON2STR(A,N):取A最后的值(非序列值)转为字符串,小数位数N.
11602
11612
  //用法: CON2STR(FINANCE(20),3)表示取营业收入,以3位小数转为字符串
11603
11613
  this.CON2STR=function(data,n){var result="";var dec=0;if(IFrameSplitOperator.IsNumber(n))dec=n;if(Array.isArray(data)){for(var i=data.length-1;i>=0;--i){var item=data[i];if(this.IsNumber(item)){result=item.toFixed(dec);return result;}}}else{if(this.IsNumber(data))result=data.toFixed(dec);}return result;};//VAR2STR(A,N):取A的每一个值转为字符串,小数位数N.
11604
11614
  //用法: VAR2STR(C,3)表示取收盘价,以3位小数转为字符串
11605
- this.VAR2STR=function(data,n){var result=[];if(Array.isArray(data)){for(var i=0;i<data.length;++i){result[i]=null;var item=data[i];if(this.IsNumber(item))result[i]=item.toFixed(n);}}else{if(this.IsNumber(data))result=data.toFixed(n);}return result;};this.MOD=function(data,data2){var result=[];var isNumber=typeof data=='number';var isNumber2=typeof data2=='number';//单数值
11615
+ this.VAR2STR=function(data,n){var result=[];var dec=0;if(IFrameSplitOperator.IsNumber(n))dec=n;if(Array.isArray(data)){for(var i=0;i<data.length;++i){result[i]=null;var item=data[i];if(this.IsNumber(item))result[i]=item.toFixed(dec);}}else{if(this.IsNumber(data))result=data.toFixed(dec);}return result;};this.MOD=function(data,data2){var result=[];var isNumber=typeof data=='number';var isNumber2=typeof data2=='number';//单数值
11606
11616
  if(isNumber&&isNumber2){return JSAlgorithm.MOD(data,data2);}else if(!isNumber&&!isNumber2)//都是数组相加
11607
11617
  {var count=Math.max(data.length,data2.length);for(var _i94=0;_i94<count;++_i94){result[_i94]=null;//初始化
11608
11618
  if(_i94<data.length&&_i94<data2.length){if(this.IsNumber(data[_i94])&&this.IsNumber(data2[_i94]))result[_i94]=JSAlgorithm.MOD(data[_i94],data2[_i94]);}}return result;}else if(isNumber&&!isNumber2)//单数字 数组
@@ -11742,7 +11752,7 @@ var maxIndex=-1;for(var i=0;i<aryParam.length;++i){var item=aryParam[i];if(item.
11742
11752
  var maxCount=0;for(var i=1;i<args.length;++i){var item=args[i];if(Array.isArray(item)){isArray=true;if(maxCount<item.length)maxCount=item.length;}}if(isArray){var result=[];for(var i=0;i<maxCount;++i){var strItem=strFormat;var _iteratorNormalCompletion21=true;var _didIteratorError21=false;var _iteratorError21=undefined;try{for(var _iterator21=(0,_getIterator3.default)(mapParam),_step21;!(_iteratorNormalCompletion21=(_step21=_iterator21.next()).done);_iteratorNormalCompletion21=true){var item=_step21.value;var paramInfo=item[1];var paramItem=args[paramInfo.Index+1];var text="null";if(paramItem){if(Array.isArray(paramItem)){var value=paramItem[i];if(value){if(IFrameSplitOperator.IsNumber(paramInfo.Decimal))text=''+value.toFixed(paramInfo.Decimal);else text=''+value;}}else{text=''+paramItem;}}strItem=strItem.replace(paramInfo.Src,text);}}catch(err){_didIteratorError21=true;_iteratorError21=err;}finally{try{if(!_iteratorNormalCompletion21&&_iterator21.return){_iterator21.return();}}finally{if(_didIteratorError21){throw _iteratorError21;}}}result[i]=strItem;}return result;}else{var result=strFormat;var _iteratorNormalCompletion22=true;var _didIteratorError22=false;var _iteratorError22=undefined;try{for(var _iterator22=(0,_getIterator3.default)(mapParam),_step22;!(_iteratorNormalCompletion22=(_step22=_iterator22.next()).done);_iteratorNormalCompletion22=true){var item=_step22.value;var paramInfo=item[1];var paramItem=args[paramInfo.Index+1];var text="null";if(paramItem){text=''+paramItem;}result=result.replace(paramInfo.Src,text);}}catch(err){_didIteratorError22=true;_iteratorError22=err;}finally{try{if(!_iteratorNormalCompletion22&&_iterator22.return){_iterator22.return();}}finally{if(_didIteratorError22){throw _iteratorError22;}}}return result;}};//函数调用
11743
11753
  this.CallFunction=function(name,args,node,symbolData){switch(name){case'MAX':case"MAX6":return this.MAX(args,node);case'MIN':case"MIN6":return this.MIN(args,node);case'REF':return this.REF(args[0],args[1]);case"REFV":return this.REFV(args[0],args[1]);case'REFX':return this.REFX(args[0],args[1]);case"REFXV":return this.REFXV(args[0],args[1]);case"REFX1"://文华函数
11744
11754
  return this.REFX(args[0],args[1]);case'ABS':return this.ABS(args[0]);case'MA':return this.MA(args[0],args[1]);case"EMA":return this.EMA(args[0],args[1]);case"SMA":return this.SMA(args[0],args[1],args[2]);case"DMA":return this.DMA(args[0],args[1]);case"XMA":return this.XMA(args[0],args[1]);case'EXPMA':return this.EXPMA(args[0],args[1]);case'EXPMEMA':return this.EXPMEMA(args[0],args[1]);case'COUNT':return this.COUNT(args[0],args[1]);case'LLV':return this.LLV(args[0],args[1]);case"LV":return this.LV(args[0],args[1]);case'LLVBARS':return this.LLVBARS(args[0],args[1]);case'HHV':return this.HHV(args[0],args[1]);case'HV':return this.HV(args[0],args[1]);case'HHVBARS':return this.HHVBARS(args[0],args[1]);case'MULAR':return this.MULAR(args[0],args[1]);case'CROSS':return this.CROSS(args[0],args[1]);case'LONGCROSS':return this.LONGCROSS(args[0],args[1],args[2]);case"ISVALID":return this.ISVALID(args[0]);case"CROSSDOWN":return this.CROSSDOWN(args[0],args[1]);case"CROSSUP":return this.CROSSUP(args[0],args[1]);case'AVEDEV':return this.AVEDEV(args[0],args[1]);case'STD':return this.STD(args[0],args[1]);case"STDDEV":return this.STDDEV(args[0],args[1]);case'IF':case'IFF':case"IFELSE":return this.IF(args[0],args[1],args[2]);case'IFN':return this.IFN(args[0],args[1],args[2]);case'NOT':return this.NOT(args[0]);case'SUM':return this.SUM(args[0],args[1]);case'RANGE':return this.RANGE(args[0],args[1],args[2]);case'EXIST':return this.EXIST(args[0],args[1]);case'EXISTR':return this.EXISTR(args[0],args[1],args[2]);case'FILTER':return this.FILTER(args[0],args[1]);case'TFILTER':return this.TFILTER(args[0],args[1],args[2]);case"FILTERX":return this.FILTERX(args[0],args[1],node);case'SLOPE':return this.SLOPE(args[0],args[1]);case'BARSLAST':return this.BARSLAST(args[0]);case"BARSLASTS"://this.ThrowUnexpectedNode(node,`函数'BARSLASTS'还在开发中`, name);
11745
- return this.BARSLASTS(args[0],args[1],node);case'BARSCOUNT':return this.BARSCOUNT(args[0]);case'BARSSINCEN':return this.BARSSINCEN(args[0],args[1]);case'BARSSINCE':return this.BARSSINCE(args[0]);case'LAST':return this.LAST(args[0],args[1],args[2]);case'EVERY':return this.EVERY(args[0],args[1]);case'DEVSQ':return this.DEVSQ(args[0],args[1]);case'ZIG':return this.ZIG(args[0],args[1]);case'TROUGHBARS':return this.TROUGHBARS(args[0],args[1],args[2]);case"TROUGH":return this.TROUGH(args[0],args[1],args[2]);case'PEAKBARS':return this.PEAKBARS(args[0],args[1],args[2]);case'PEAK':return this.PEAK(args[0],args[1],args[2]);case'COST':return this.COST(args[0]);case'WINNER':return this.WINNER(args[0],node);case'PPART':return this.PPART(args[0],node);case"COSTEX":return this.COSTEX(args[0],args[1],node);case"LWINNER":return this.LWINNER(args[0],args[1],node);case"PWINNER":return this.PWINNER(args[0],args[1],node);case'FORCAST':return this.FORCAST(args[0],args[1]);case"TSMA":return this.TSMA(args[0],args[1]);case'STDP':return this.STDP(args[0],args[1]);case'VAR':return this.VAR(args[0],args[1]);case'VARP':return this.VARP(args[0],args[1]);case'UPNDAY':return this.UPNDAY(args[0],args[1]);case'DOWNNDAY':return this.DOWNNDAY(args[0],args[1]);case'NDAY':return this.NDAY(args[0],args[1],args[2]);case'RELATE':return this.RELATE(args[0],args[1],args[2]);case'COVAR':return this.COVAR(args[0],args[1],args[2]);case'BETA':return this.BETA(args[0]);case'BETA2':return this.BETA2(args[0],args[1],args[2]);case'WMA':return this.WMA(args[0],args[1]);case'MEMA':return this.MEMA(args[0],args[1]);case'SUMBARS':return this.SUMBARS(args[0],args[1]);case'REVERSE':return this.REVERSE(args[0]);case'SAR':return this.SAR(args[0],args[1],args[2]);case'SARTURN':return this.SARTURN(args[0],args[1],args[2]);case'BACKSET':return this.BACKSET(args[0],args[1]);case'BETWEEN':return this.BETWEEN(args[0],args[1],args[2]);case'STRCAT':return this.STRCAT(args[0],args[1]);case"STRCAT6":return this.STRCAT6(args[0],args[1],args[2],args[3],args[4],args[5]);case'CON2STR':return this.CON2STR(args[0],args[1]);case"VAR2STR":return this.VAR2STR(args[0],args[1]);case"VARCAT":return this.VARCAT(args[0],args[1]);case"STRSPACE":return this.STRSPACE(args[0]);case"FINDSTR":return this.FINDSTR(args[0],args[1]);case"STRCMP":return this.STRCMP(args[0],args[1]);case"STRLEN":return this.STRLEN(args[0]);case"STRFORMAT":return this.STRFORMAT(args[0],args,node);case'DTPRICE':return this.DTPRICE(args[0],args[1]);case'ZTPRICE':return this.ZTPRICE(args[0],args[1]);case'MOD':return this.MOD(args[0],args[1]);case'POW':return this.POW(args[0],args[1]);case'CEILING':return this.CEILING(args[0]);case'FLOOR':return this.FLOOR(args[0]);case'FRACPART':return this.FRACPART(args[0]);case"SIGN":return this.SIGN(args[0]);case'BARSLASTCOUNT':return this.BARSLASTCOUNT(args[0]);case'INTPART':return this.INTPART(args[0]);case"CONST":return this.CONST(args[0]);case"TOPRANGE":return this.TOPRANGE(args[0]);case"LOWRANGE":return this.LOWRANGE(args[0]);case"FINDLOW":return this.FINDLOW(args[0],args[1],args[2],args[3]);case"FINDLOWBARS":return this.FINDLOWBARS(args[0],args[1],args[2],args[3]);case"FINDHIGH":return this.FINDHIGH(args[0],args[1],args[2],args[3]);case"FINDHIGHBARS":return this.FINDHIGHBARS(args[0],args[1],args[2],args[3]);case"BARSNEXT":return this.BARSNEXT(args[0]);case"HOD":return this.HOD(args[0],args[1]);case"LOD":return this.LOD(args[0],args[1]);case"AMA":return this.AMA(args[0],args[1]);case"TMA":return this.TMA(args[0],args[1],args[2]);case"ROUND":return this.ROUND(args[0]);case"ROUND2":return this.ROUND2(args[0],args[1]);case"TRMA":return this.TRMA(args[0],args[1]);case"VALUEWHEN":return this.VALUEWHEN(args[0],args[1]);case"HARMEAN":return this.HARMEAN(args[0],args[1]);case"DATETODAY":return this.DATETODAY(args[0]);case"DAYTODATE":return this.DAYTODATE(args[0]);case"TIMETOSEC":return this.TIMETOSEC(args[0]);case"SECTOTIME":return this.SECTOTIME(args[0]);case"ANY":return this.ANY(args[0],args[1]);case"ALL":return this.ALL(args[0],args[1]);case"TESTSKIP":return this.TESTSKIP(args[0],node);case"SUMBARS":return this.SUMBARS(args[0],args[1]);case"ALIGNRIGHT":return this.ALIGNRIGHT(args[0]);//三角函数
11755
+ return this.BARSLASTS(args[0],args[1],node);case'BARSCOUNT':return this.BARSCOUNT(args[0]);case'BARSSINCEN':return this.BARSSINCEN(args[0],args[1]);case'BARSSINCE':return this.BARSSINCE(args[0]);case'LAST':return this.LAST(args[0],args[1],args[2]);case'EVERY':return this.EVERY(args[0],args[1]);case'DEVSQ':return this.DEVSQ(args[0],args[1]);case'ZIG':return this.ZIG(args[0],args[1]);case'TROUGHBARS':return this.TROUGHBARS(args[0],args[1],args[2]);case"TROUGH":return this.TROUGH(args[0],args[1],args[2]);case'PEAKBARS':return this.PEAKBARS(args[0],args[1],args[2]);case'PEAK':return this.PEAK(args[0],args[1],args[2]);case'COST':return this.COST(args[0]);case'WINNER':return this.WINNER(args[0],node);case'PPART':return this.PPART(args[0],node);case"COSTEX":return this.COSTEX(args[0],args[1],node);case"LWINNER":return this.LWINNER(args[0],args[1],node);case"PWINNER":return this.PWINNER(args[0],args[1],node);case'FORCAST':return this.FORCAST(args[0],args[1]);case"TSMA":return this.TSMA(args[0],args[1]);case'STDP':return this.STDP(args[0],args[1]);case'VAR':return this.VAR(args[0],args[1]);case'VARP':return this.VARP(args[0],args[1]);case'UPNDAY':return this.UPNDAY(args[0],args[1]);case'DOWNNDAY':return this.DOWNNDAY(args[0],args[1]);case'NDAY':return this.NDAY(args[0],args[1],args[2]);case'RELATE':return this.RELATE(args[0],args[1],args[2]);case'COVAR':return this.COVAR(args[0],args[1],args[2]);case'BETA':return this.BETA(args[0]);case'BETA2':return this.BETA2(args[0],args[1],args[2]);case'WMA':return this.WMA(args[0],args[1]);case'MEMA':return this.MEMA(args[0],args[1]);case'SUMBARS':return this.SUMBARS(args[0],args[1]);case'REVERSE':return this.REVERSE(args[0]);case'SAR':return this.SAR(args[0],args[1],args[2]);case'SARTURN':return this.SARTURN(args[0],args[1],args[2]);case'BACKSET':return this.BACKSET(args[0],args[1]);case'BETWEEN':return this.BETWEEN(args[0],args[1],args[2]);case'STRCAT':return this.STRCAT(args[0],args[1]);case"STRCAT6":return this.STRCAT6(args[0],args[1],args[2],args[3],args[4],args[5]);case'CON2STR':return this.CON2STR(args[0],args[1]);case"VAR2STR":return this.VAR2STR(args[0],args[1]);case"VARCAT":return this.VARCAT(args[0],args[1]);case"VARCAT6":return this.VARCAT6(args[0],args[1],args[2],args[3],args[4],args[5]);case"STRSPACE":return this.STRSPACE(args[0]);case"FINDSTR":return this.FINDSTR(args[0],args[1]);case"STRCMP":return this.STRCMP(args[0],args[1]);case"STRLEN":return this.STRLEN(args[0]);case"STRFORMAT":return this.STRFORMAT(args[0],args,node);case'DTPRICE':return this.DTPRICE(args[0],args[1]);case'ZTPRICE':return this.ZTPRICE(args[0],args[1]);case'MOD':return this.MOD(args[0],args[1]);case'POW':return this.POW(args[0],args[1]);case'CEILING':return this.CEILING(args[0]);case'FLOOR':return this.FLOOR(args[0]);case'FRACPART':return this.FRACPART(args[0]);case"SIGN":return this.SIGN(args[0]);case'BARSLASTCOUNT':return this.BARSLASTCOUNT(args[0]);case'INTPART':return this.INTPART(args[0]);case"CONST":return this.CONST(args[0]);case"TOPRANGE":return this.TOPRANGE(args[0]);case"LOWRANGE":return this.LOWRANGE(args[0]);case"FINDLOW":return this.FINDLOW(args[0],args[1],args[2],args[3]);case"FINDLOWBARS":return this.FINDLOWBARS(args[0],args[1],args[2],args[3]);case"FINDHIGH":return this.FINDHIGH(args[0],args[1],args[2],args[3]);case"FINDHIGHBARS":return this.FINDHIGHBARS(args[0],args[1],args[2],args[3]);case"BARSNEXT":return this.BARSNEXT(args[0]);case"HOD":return this.HOD(args[0],args[1]);case"LOD":return this.LOD(args[0],args[1]);case"AMA":return this.AMA(args[0],args[1]);case"TMA":return this.TMA(args[0],args[1],args[2]);case"ROUND":return this.ROUND(args[0]);case"ROUND2":return this.ROUND2(args[0],args[1]);case"TRMA":return this.TRMA(args[0],args[1]);case"VALUEWHEN":return this.VALUEWHEN(args[0],args[1]);case"HARMEAN":return this.HARMEAN(args[0],args[1]);case"DATETODAY":return this.DATETODAY(args[0]);case"DAYTODATE":return this.DAYTODATE(args[0]);case"TIMETOSEC":return this.TIMETOSEC(args[0]);case"SECTOTIME":return this.SECTOTIME(args[0]);case"ANY":return this.ANY(args[0],args[1]);case"ALL":return this.ALL(args[0],args[1]);case"TESTSKIP":return this.TESTSKIP(args[0],node);case"SUMBARS":return this.SUMBARS(args[0],args[1]);case"ALIGNRIGHT":return this.ALIGNRIGHT(args[0]);//三角函数
11746
11756
  case'ATAN':return this.Trigonometric(args[0],Math.atan);case'ACOS':return this.ACOS(args[0]);case'ASIN':return this.ASIN(args[0]);case'COS':return this.Trigonometric(args[0],Math.cos);case'SIN':return this.Trigonometric(args[0],Math.sin);case'TAN':return this.Trigonometric(args[0],Math.tan);case'LN':return this.Trigonometric(args[0],Math.log);case'LOG':return this.Trigonometric(args[0],_log2.default);case'EXP':return this.Trigonometric(args[0],Math.exp);case'SQRT':return this.Trigonometric(args[0],Math.sqrt);case"RAND":return this.RAND(args[0]);default:this.ThrowUnexpectedNode(node,'函数'+name+'不存在',name);}};//调用自定义函数 返回数据格式{Out:输出数据, Draw:绘图数据(可选)}
11747
11757
  this.CallCustomFunction=function(name,args,symbolData,node){var functionInfo=g_JSComplierResource.CustomFunction.Data.get(name);var dwonloadData=symbolData.GetStockCacheData({CustomName:name,Node:node});if(!functionInfo.Invoke)return{Out:dwonloadData};JSConsole.Complier.Log('[JSAlgorithm::CallCustomFunction] call custom function functionInfo=',functionInfo);var self=this;var obj={Name:name,Args:args,Symbol:symbolData.Symbol,Period:symbolData.Period,Right:symbolData.Right,KData:symbolData.Data,//K线数据
11748
11758
  DownloadData:dwonloadData,ThrowError:function ThrowError(error){self.ThrowUnexpectedNode(node,error);}};return functionInfo.Invoke(obj);};this.ThrowUnexpectedNode=function(node,message,word){var marker=node.Marker;var msg=message||"执行异常";return this.ErrorHandler.ThrowError(marker.Index,marker.Line,marker.Column,msg,word);};}//是否有是有效的数字
@@ -11759,7 +11769,8 @@ var value=Math.abs(Math.abs(divisor)*(Math.floor(absNumber/absDivisor)+1)-Math.a
11759
11769
  */function JSDraw(errorHandler,symbolData){this.ErrorHandler=errorHandler;this.SymbolData=symbolData;//绘制随光标移动的浮动文字。
11760
11770
  //用法: DRAWFLAGTEXT(COND,PRICE,TEXT),光标处当COND条件满足时,在PRICE位置用半透明窗口显示文字TEXT,随光标移动而移动。将\\n插入TEXT内容中可实现文字换行。
11761
11771
  //例如:DRAWFLAGTEXT(CLOSE/OPEN>1.08,LOW,'大阳线')表示当光标移动到涨幅大于8%的地方,在最低价位置显示'大阳线'字样的浮动窗口。
11762
- this.DRAWFLAGTEXT=function(condition,price,text){var drawData=[];var result={DrawData:drawData,DrawType:'DRAWFLAGTEXT'};if(!text)return result;if(Array.isArray(condition)){if(condition.length<=0)return result;var bSinglePrice=IFrameSplitOperator.IsNumber(price);for(var i=0;i<condition.length;++i){drawData[i]=null;if(isNaN(condition[i])||!condition[i])continue;if(bSinglePrice){drawData[i]={YValue:price,Text:text};}else{if(IFrameSplitOperator.IsNumber(price[i]))drawData[i]={YValue:price[i],Text:text};}}}else if(IFrameSplitOperator.IsPlusNumber(condition)){var bSinglePrice=IFrameSplitOperator.IsNumber(price);for(var i=0;i<this.SymbolData.Data.Data.length;++i){if(bSinglePrice){drawData[i]={YValue:price,Text:text};}else{if(IFrameSplitOperator.IsNumber(price[i]))drawData[i]={YValue:price[i],Text:text};}}}return result;};//只有条件==1 才显示文字
11772
+ this.DRAWFLAGTEXT=function(condition,price,text){var drawData=[];var result={DrawData:drawData,DrawType:'DRAWFLAGTEXT'};if(!text)return result;var bArrayText=Array.isArray(text);//是否是数组字符串
11773
+ if(Array.isArray(condition)){if(condition.length<=0)return result;var bSinglePrice=IFrameSplitOperator.IsNumber(price);for(var i=0;i<condition.length;++i){drawData[i]=null;if(isNaN(condition[i])||!condition[i])continue;var outText=null;if(!bArrayText)outText=text;else if(bArrayText&&text[i])outText=text[i];if(bSinglePrice){drawData[i]={YValue:price,Text:outText};}else{if(IFrameSplitOperator.IsNumber(price[i]))drawData[i]={YValue:price[i],Text:outText};}}}else if(IFrameSplitOperator.IsPlusNumber(condition)){var bSinglePrice=IFrameSplitOperator.IsNumber(price);for(var i=0;i<this.SymbolData.Data.Data.length;++i){var outText=null;if(!bArrayText)outText=text;else if(bArrayText&&text[i])outText=text[i];if(bSinglePrice){drawData[i]={YValue:price,Text:outText};}else{if(IFrameSplitOperator.IsNumber(price[i]))drawData[i]={YValue:price[i],Text:outText};}}}return result;};//只有条件==1 才显示文字
11763
11774
  this.DRAWTEXT=function(condition,price,text){var drawData=[];var result={DrawData:drawData,DrawType:'DRAWTEXT',Text:text};if(Array.isArray(condition)){if(condition.length<=0)return result;var IsNumber=this.IsNumber(price);var isFixedPosition=false;if(price==="TOP"||price==="BOTTOM"){result.FixedPosition=price;isFixedPosition=true;}for(var i=0;i<condition.length;++i){drawData[i]=null;if(condition[i]!==1)continue;if(IsNumber||isFixedPosition){drawData[i]=price;}else{if(this.IsNumber(price[i]))drawData[i]=price[i];}}}else if(this.IsNumber(condition)&&condition===1){var IsNumber=this.IsNumber(price);var isFixedPosition=false;if(price==="TOP"||price==="BOTTOM"){result.FixedPosition=price;isFixedPosition=true;}for(var i=0;i<this.SymbolData.Data.Data.length;++i){if(IsNumber||isFixedPosition){drawData[i]=price;}else{if(this.IsNumber(price[i]))drawData[i]=price[i];}}}return result;};//1.固定位置显示文字;2.在指标排序中显示字符串栏目.
11764
11775
  //用法:DRAWTEXT_FIX(COND,X,Y,TYPE,TEXT),COND中一般需要加ISLASTBAR,当COND条件满足时,在当前指标窗口内(X,Y)位置书写文字TEXT,X,Y为书写点在窗口中相对于左上角的百分比,TYPE:0为左对齐,1为右对齐,2=居中.
11765
11776
  //例如:DRAWTEXT_FIX(ISLASTBAR AND CLOSE/OPEN>1.08,0.5,0.5,0,'大阳线')表示最后一个交易日实体阳线大于8%时在窗口中间位置显示'大阳线'字样.若文字中含有&,则进行折行.最多只能显示250个字符
@@ -12753,7 +12764,7 @@ else if(_value16.indexOf('LINEOVERLAY')==0)isOverlayLine=true;else if(_value16.i
12753
12764
  {var outVar={Name:_drawName,Draw:outValue,Type:1};this.OutVarTable.push(outVar);}else if(colorStick&&_varName8)//CYW: SUM(VAR4,10)/10000, COLORSTICK; 画上下柱子
12754
12765
  {outValue+=",画彩色柱状线";var _value23={Name:_varName8,Draw:outValue,Color:color,Type:2};this.OutVarTable.push(_value23);}else if(_varName8){var _value24={Name:_varName8,Data:outValue,Type:0};this.OutVarTable.push(_value24);}}}}JSConsole.Complier.Log('[JSExplainer::Run]',this.VarTable);return this.OutVarTable;};this.VisitNode=function(node){switch(node.Type){case Syntax.SequenceExpression:this.VisitSequenceExpression(node);break;case Syntax.ExpressionStatement:this.VisitNode(node.Expression);break;case Syntax.AssignmentExpression:this.VisitAssignmentExpression(node);break;case Syntax.BinaryExpression:case Syntax.LogicalExpression:this.VisitBinaryExpression(node);break;case Syntax.CallExpression:this.VisitCallExpression(node);break;case Syntax.UnaryExpression:this.VisitUnaryExpression(node);break;}};this.VisitSequenceExpression=function(node){for(var _i126 in node.Expression){var _item19=node.Expression[_i126];this.VisitNode(_item19);}};this.VisitUnaryExpression=function(node){if(node.Operator=='-'){var _value25=this.GetNodeValueEx(node.Argument);return'-'+_value25;}return node.Argument.Value;};//函数调用
12755
12766
  this.VisitCallExpression=function(node){var funcName=node.Callee.Name;var args=[];for(var _i127 in node.Arguments){var _item20=node.Arguments[_i127];var _value26=void 0;if(_item20.Type==Syntax.BinaryExpression||_item20.Type==Syntax.LogicalExpression)_value26=this.VisitBinaryExpression(_item20);else if(_item20.Type==Syntax.CallExpression)_value26=this.VisitCallExpression(_item20);else _value26=this.GetNodeValue(_item20);args.push(_value26);}if(node.Callee.Type==Syntax.Literal){var dynamicName=node.Callee.Value;node.Out='\u6307\u6807\u5F15\u7528\''+dynamicName+'\'';return node.Out;}if(JS_EXECUTE_DEBUG_LOG)JSConsole.Complier.Log('[JSExplainer::VisitCallExpression]',funcName,'(',args.toString(),')');if(g_JSComplierResource.IsCustomFunction(funcName)){var functionInfo=g_JSComplierResource.CustomFunction.Data.get(funcName);if(!functionInfo.Description)node.Out='\u81EA\u5B9A\u4E49\u51FD\u6570'+funcName;else node.Out=functionInfo.Description;return node.Out;}node.Out=this.CallFunctionExplain(funcName,args,node);return node.Out;};this.FUNCTION_INFO_LIST=new _map2.default([["REF",{Name:"REF",Param:{Count:2},ToString:function ToString(args){return args[1]+'\u65E5\u524D\u7684'+args[0];}}],["REFX",{Name:"REFX",Param:{Count:2},ToString:function ToString(args){return args[1]+'\u65E5\u540E\u7684'+args[0];}}],["REFV",{Name:"REFV",Param:{Count:2},ToString:function ToString(args){return args[1]+'\u65E5\u524D\u7684(\u672A\u4F5C\u5E73\u6ED1\u5904\u7406)'+args[0];}}],["REFXV",{Name:"REFXV",Param:{Count:2},ToString:function ToString(args){return args[1]+'\u65E5\u540E\u7684(\u672A\u4F5C\u5E73\u6ED1\u5904\u7406)'+args[0];}}],["REFDATE",{Name:"REFDATE",Param:{Count:2},ToString:function ToString(args){return args[1]+'\u65E5'+args[0];}}],["COUNT",{Name:"COUNT",Param:{Count:2},ToString:function ToString(args){return'\u7EDF\u8BA1'+args[1]+'\u65E5\u4E2D\u6EE1\u8DB3'+args[0]+'\u7684\u5929\u6570';}}],["BARSLASTCOUNT",{Name:"BARSLASTCOUNT",Param:{Count:1},ToString:function ToString(args){return'\u6761\u4EF6'+args[0]+'\u8FDE\u7EED\u6210\u7ACB\u6B21\u6570';}}],["BARSCOUNT",{Name:"BARSCOUNT",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u6709\u6548\u6570\u636E\u5468\u671F\u6570';}}],["BARSLAST",{Name:"BARSLAST",Param:{Count:1},ToString:function ToString(args){return'\u4E0A\u6B21'+args[0]+'\u4E0D\u4E3A0\u8DDD\u4ECA\u5929\u6570';}}],["BARSLASTS",{Name:"BARSLASTS",Param:{Count:2},ToString:function ToString(args){return'\u5012\u6570\u7B2CN\u6B21\u6210\u7ACB\u65F6\u8DDD\u4ECA\u7684\u5468\u671F\u6570';}}],["BARSNEXT",{Name:"BARSNEXT",Param:{Count:1},ToString:function ToString(args){return'\u4E0B\u6B21'+args[0]+'\u4E0D\u4E3A0\u8DDD\u4ECA\u5929\u6570';}}],["BARSSINCEN",{Name:"BARSSINCEN",Param:{Count:2},ToString:function ToString(args){return'\u5728'+args[1]+'\u5468\u671F\u5185\u9996\u6B21'+args[0]+'\u8DDD\u4ECA\u5929\u6570';}}],["BARSSINCE",{Name:"BARSSINCE",Param:{Count:1},ToString:function ToString(args){return'\u9996\u6B21'+args[0]+'\u8DDD\u4ECA\u5929\u6570';}}],["HHV",{Name:"HHV",Param:{Count:2},ToString:function ToString(args){return args[1]+'\u65E5\u5185'+args[0]+'\u7684\u6700\u9AD8\u503C';}}],["LLV",{Name:"LLV",Param:{Count:2},ToString:function ToString(args){return args[1]+'\u65E5\u5185'+args[0]+'\u7684\u6700\u4F4E\u503C';}}],["ZTPRICE",{Name:"ZTPRICE",Param:{Count:2},ToString:function ToString(args){return'计算涨停价';}}],["DTPRICE",{Name:"DTPRICE",Param:{Count:2},ToString:function ToString(args){return'计算跌停价';}}],["BACKSET",{Name:"BACKSET",Param:{Count:2},ToString:function ToString(args){return'\u82E5'+args[0]+'\u5219\u5C06\u6700\u8FD1'+args[1]+'\u5468\u671F\u7F6E\u4E3A1';}}],["HOD",{Name:"HOD",Param:{Count:2},ToString:function ToString(args){return args[1]+'\u65E5\u5185'+args[0]+'\u7684\u9AD8\u503C\u540D\u6B21';}}],["LOD",{Name:"LOD",Param:{Count:2},ToString:function ToString(args){return args[1]+'\u65E5\u5185'+args[0]+'\u7684\u4F4E\u503C\u540D\u6B21';}}],["REVERSE",{Name:"REVERSE",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u76F8\u53CD\u6570';}}],["FILTER",{Name:"FILTER",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u8FC7\u6EE4';}}],["FILTERX",{Name:"FILTERX",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u53CD\u5411\u8FC7\u6EE4';}}],["TFILTER",{Name:"TFILTER",Param:{Count:3},ToString:function ToString(args){return'\u4FE1\u53F7\u8FC7\u6EE4(\u591A\u5934)';}}],["SUMBARS",{Name:"SUMBARS",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7D2F\u52A0\u81F3'+args[1]+'\u7684\u5929\u6570';}}],["MA",{Name:"MA",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u7B80\u5355\u79FB\u52A8\u5E73\u5747';}}],["SMA",{Name:"SMA",Param:{Count:3},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5['+args[2]+'\u65E5\u6743\u91CD]\u79FB\u52A8\u5E73\u5747';}}],["MEMA",{Name:"MEMA",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u5E73\u6ED1\u79FB\u52A8\u5E73\u5747';}}],["EMA",{Name:"EMA",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u6307\u6570\u79FB\u52A8\u5E73\u5747';}}],["EXPMA",{Name:"EXPMA",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u6307\u6570\u79FB\u52A8\u5E73\u5747';}}],["EXPMEMA",{Name:"EXPMEMA",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u6307\u6570\u5E73\u6ED1\u79FB\u52A8\u5E73\u5747';}}],["WMA",{Name:"WMA",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u52A0\u6743\u79FB\u52A8\u5E73\u5747';}}],["DMA",{Name:"DMA",Param:{Count:2},ToString:function ToString(args){return'\u4EE5'+args[1]+'\u4E3A\u6743\u91CD'+args[0]+'\u7684\u52A8\u6001\u79FB\u52A8\u5E73\u5747';}}],["XMA",{Name:"XMA",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u504F\u79FB\u79FB\u52A8\u5E73\u5747';}}],["RANGE",{Name:"RANGE",Param:{Count:3},ToString:function ToString(args){return args[0]+'\u4F4D\u4E8E'+args[1]+'\u548C'+args[2]+'\u4E4B\u95F4';}}],["CONST",{Name:"CONST",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u6700\u540E\u4E00\u65E5\u503C';}}],["TOPRANGE",{Name:"TOPRANGE",Param:{Count:1},ToString:function ToString(args){return'\u5F53\u524D\u503C\u662F\u8FD1'+args[0]+'\u5468\u671F\u7684\u6700\u5927\u503C';}}],["LOWRANGE",{Name:"LOWRANGE",Param:{Count:1},ToString:function ToString(args){return'\u5F53\u524D\u503C\u662F\u8FD1'+args[0]+'\u5468\u671F\u7684\u6700\u5C0F\u503C';}}],["FINDHIGH",{Name:"FINDHIGH",Param:{Count:4},ToString:function ToString(args){return args[0]+'\u5728'+args[1]+'\u65E5\u524D\u7684'+args[2]+'\u5929\u5185\u7B2C'+args[3]+'\u4E2A\u6700\u9AD8\u4EF7';}}],["FINDHIGHBARS",{Name:"FINDHIGHBARS",Param:{Count:4},ToString:function ToString(args){return args[0]+'\u5728'+args[1]+'\u65E5\u524D\u7684'+args[2]+'\u5929\u5185\u7B2C'+args[3]+'\u4E2A\u6700\u9AD8\u4EF7\u5230\u5F53\u524D\u5468\u671F\u7684\u5468\u671F\u6570';}}],["FINDLOW",{Name:"FINDLOW",Param:{Count:4},ToString:function ToString(args){return args[0]+'\u5728'+args[1]+'\u65E5\u524D\u7684'+args[2]+'\u5929\u5185\u7B2C'+args[3]+'\u4E2A\u6700\u4F4E\u4EF7';}}],["FINDLOWBARS",{Name:"FINDLOWBARS",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u5728'+args[1]+'\u65E5\u524D\u7684'+args[2]+'\u5929\u5185\u7B2C'+args[3]+'\u4E2A\u6700\u4F4E\u4EF7\u5230\u5F53\u524D\u5468\u671F\u7684\u5468\u671F\u6570';}}],["SUM",{Name:"SUM",Param:{Count:2},ToString:function ToString(args){return''+args[0]+args[1]+'\u65E5\u7D2F\u52A0';}}],["MULAR",{Name:"MULAR",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u548C'+args[1]+'\u65E5\u7D2F\u4E58';}}],["AMA",{Name:"AMA",Param:{Count:2},ToString:function ToString(args){return'\u4EE5'+args[1]+'\u4E3A\u6743\u91CD'+args[0]+'\u7684\u81EA\u9002\u5E94\u5747\u7EBF';}}],["TMA",{Name:"TMA",Param:{Count:3},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5['+args[2]+'\u65E5\u6743\u91CD]\u79FB\u52A8\u5E73\u5747';}}],["CROSS",{Name:"CROSS",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u4E0A\u7A7F'+args[1];}}],["LONGCROSS",{Name:"LONGCROSS",Param:{Count:3},ToString:function ToString(args){return args[0]+'\u5C0F\u4E8E'+args[1]+'\u4FDD\u6301'+args[2]+'\u4E2A\u4EA4\u6613\u65E5\u540E\u4EA4\u53C9\u4E0A\u7A7F';}}],["UPNDAY",{Name:"UPNDAY",Param:{Count:2},ToString:function ToString(args){return'\u6700\u8FD1'+args[1]+'\u65E5'+args[0]+'\u8FDE\u6DA8';}}],["DOWNNDAY",{Name:"DOWNNDAY",Param:{Count:2},ToString:function ToString(args){return'\u6700\u8FD1'+args[1]+'\u65E5'+args[0]+'\u8FDE\u8DCC';}}],["NDAY",{Name:"NDAY",Param:{Count:3},ToString:function ToString(args){return'\u6700\u8FD1'+args[2]+'\u65E5'+args[0]+'\u4E00\u76F4\u5927\u4E8E'+args[1];}}],["EXIST",{Name:"EXIST",Param:{Count:2},ToString:function ToString(args){return'\u6700\u8FD1'+args[1]+'\u65E5\u5B58\u5728'+args[0];}}],["EXISTR",{Name:"EXISTR",Param:{Count:3},ToString:function ToString(args){return'\u4ECE\u524D'+args[1]+'\u65E5\u5230\u524D'+args[2]+'\u65E5\u5B58\u5728'+args[0];}}],["EVERY",{Name:"EVERY",Param:{Count:2},ToString:function ToString(args){return'\u6700\u8FD1'+args[1]+'\u65E5\u4E00\u76F4\u5B58\u5728'+args[0];}}],["LAST",{Name:"LAST",Param:{Count:3},ToString:function ToString(args){return'\u4ECE\u524D'+args[1]+'\u65E5\u5230\u524D'+args[2]+'\u65E5\u6301\u7EED'+args[0];}}],["NOT",{Name:"NOT",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u53D6\u53CD';}}],["IF",{Name:"IF",Param:{Count:3},ToString:function ToString(args){return'\u5982\u679C'+args[0]+',\u8FD4\u56DE'+args[1]+',\u5426\u5219\u8FD4\u56DE'+args[2];}}],["IFF",{Name:"IFF",Param:{Count:3},ToString:function ToString(args){return'\u5982\u679C'+args[0]+',\u8FD4\u56DE'+args[1]+',\u5426\u5219\u8FD4\u56DE'+args[2];}}],["IFN",{Name:"IFN",Param:{Count:3},ToString:function ToString(args){return'\u5982\u679C'+args[0]+',\u8FD4\u56DE'+args[1]+',\u5426\u5219\u8FD4\u56DE'+args[2];}}],["IFC",{Name:"IFC",Param:{Count:3},ToString:function ToString(args){return'\u5982\u679C'+args[0]+',\u8FD4\u56DE'+args[1]+',\u5426\u5219\u8FD4\u56DE'+args[2];}}],["TESTSKIP",{Name:"TESTSKIP",Param:{Count:1},ToString:function ToString(args){return'\u5982\u679C\u6EE1\u8DB3\u6761\u4EF6'+args[0]+',\u516C\u5F0F\u8FD4\u56DE';}}],["VALUEWHEN",{Name:"VALUEWHEN",Param:{Count:2},ToString:function ToString(args){return'\u5982\u679C'+args[0]+',\u8FD4\u56DE'+args[1]+',\u5426\u5219\u8FD4\u56DE\u4E0A\u4E2A\u8F93\u51FA\u503C ';}}],["MAX",{Name:"MAX",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u548C'+args[1]+'\u7684\u8F83\u5927\u503C';}}],["MIN",{Name:"MIN",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u548C'+args[1]+'\u7684\u8F83\u5C0F\u503C';}}],["ACOS",{Name:"ACOS",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u53CD\u4F59\u5F26';}}],["ASIN",{Name:"ASIN",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u53CD\u6B63\u5F26';}}],["ATAN",{Name:"ATAN",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u53CD\u6B63\u5207';}}],["COS",{Name:"COS",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u4F59\u5F26';}}],["SIN",{Name:"SIN",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u6B63\u5F26';}}],["TAN",{Name:"TAN",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u6B63\u5207';}}],["EXP",{Name:"EXP",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u6307\u6570';}}],["LN",{Name:"LN",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u81EA\u7136\u5BF9\u6570';}}],["LOG",{Name:"LOG",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u5BF9\u6570';}}],["SQRT",{Name:"SQRT",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u5F00\u65B9';}}],["ABS",{Name:"ABS",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u7EDD\u5BF9\u503C';}}],["POW",{Name:"POW",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u4E58\u5E42';}}],["CEILING",{Name:"CEILING",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u5411\u4E0A\u820D\u5165';}}],["FLOOR",{Name:"FLOOR",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u5411\u4E0A\u820D\u5165';}}],["INTPART",{Name:"INTPART",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u6574\u6570\u90E8\u5206';}}],["BETWEEN",{Name:"BETWEEN",Param:{Count:3},ToString:function ToString(args){return args[0]+'\u4F4D\u4E8E'+args[1]+'\u548C'+args[2]+'\u4E4B\u95F4';}}],["FRACPART",{Name:"FRACPART",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u5C0F\u6570\u90E8\u5206';}}],["ROUND",{Name:"ROUND",Param:{Count:1},ToString:function ToString(args){return'\u5BF9'+args[0]+'(\u8FDB\u884C)\u56DB\u820D\u4E94\u5165';}}],["ROUND2",{Name:"ROUND2",Param:{Count:2},ToString:function ToString(args){return'\u5BF9'+args[0]+'(\u8FDB\u884C)\u56DB\u820D\u4E94\u5165';}}],["SIGN",{Name:"SIGN",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u7684\u7B26\u53F7';}}],["MOD",{Name:"MOD",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u5173\u4E8E'+args[1]+'\u7684\u6A21';}}],["RAND",{Name:"RAND",Param:{Count:1},ToString:function ToString(args){return'\u968F\u673A\u6B63\u6574\u6570';}}],["AVEDEV",{Name:"AVEDEV",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u5E73\u5747\u7EDD\u5BF9\u504F\u5DEE';}}],["DEVSQ",{Name:"DEVSQ",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u6570\u636E\u504F\u5DEE\u5E73\u65B9\u548C';}}],["FORCAST",{Name:"FORCAST",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u7EBF\u6027\u56DE\u5F52\u9884\u6D4B\u503C';}}],["TSMA",{Name:"TSMA",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u5728'+args[1]+'\u4E2A\u5468\u671F\u5185\u7684\u65F6\u95F4\u5E8F\u5217\u4E09\u89D2\u79FB\u52A8\u5E73\u5747';}}],["SLOPE",{Name:"SLOPE",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u7EBF\u6027\u56DE\u5F52\u659C\u7387';}}],["STD",{Name:"STD",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u4F30\u7B97\u6807\u51C6\u5DEE';}}],["STDP",{Name:"STDP",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u603B\u4F53\u6807\u51C6\u5DEE';}}],["STDDEV",{Name:"STDDEV",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u6807\u51C6\u504F\u5DEE';}}],["VAR",{Name:"VAR",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u4F30\u7B97\u6837\u672C\u65B9\u5DEE';}}],["VARP",{Name:"VARP",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u7684'+args[1]+'\u65E5\u603B\u4F53\u6837\u672C\u65B9\u5DEE';}}],["COVAR",{Name:"COVAR",Param:{Count:3},ToString:function ToString(args){return args[0]+'\u548C'+args[1]+'\u7684'+args[2]+'\u5468\u671F\u7684\u534F\u65B9\u5DEE';}}],["RELATE",{Name:"RELATE",Param:{Count:3},ToString:function ToString(args){return args[0]+'\u548C'+args[1]+'\u7684'+args[0]+'\u5468\u671F\u7684\u76F8\u5173\u7CFB\u6570';}}],["BETA",{Name:"BETA",Param:{Count:1},ToString:function ToString(args){return'\u03B2(Beta)\u7CFB\u6570';}}],["BETAEX",{Name:"BETAEX",Param:{Count:3},ToString:function ToString(args){return args[0]+'\u548C'+args[1]+'\u7684'+args[2]+'\u5468\u671F\u7684\u76F8\u5173\u653E\u5927\u7CFB\u6570';}}],["COST",{Name:"COST",Param:{Count:1},ToString:function ToString(args){return'\u83B7\u5229\u76D8\u4E3A'+args[0]+'%\u7684\u6210\u672C\u5206\u5E03';}}],["WINNER",{Name:"WINNER",Param:{Count:1},ToString:function ToString(args){return'\u4EE5'+args[0]+'\u8BA1\u7B97\u7684\u83B7\u5229\u76D8\u6BD4\u4F8B';}}],["LWINNER",{Name:"LWINNER",Param:{Count:2},ToString:function ToString(args){return'\u6700\u8FD1'+args[0]+'\u65E5\u90A3\u90E8\u5206\u6210\u672C\u4EE5'+args[1]+'\u4EF7\u683C\u5356\u51FA\u7684\u83B7\u5229\u76D8\u6BD4\u4F8B';}}],["PWINNER",{Name:"PWINNER",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u65E5\u524D\u90A3\u90E8\u5206\u6210\u672C\u4EE5'+args[1]+'\u4EF7\u683C\u5356\u51FA\u7684\u83B7\u5229\u76D8\u6BD4\u4F8B';}}],["COSTEX",{Name:"COSTEX",Param:{Count:2},ToString:function ToString(args){return'\u4F4D\u4E8E\u4EF7\u683C'+args[0]+'\u548C'+args[1]+'\u95F4\u7684\u6210\u672C';}}],["PPART",{Name:"PPART",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u65E5\u524D\u90A3\u90E8\u5206\u6210\u672C\u5360\u603B\u6210\u672C\u7684\u6BD4\u4F8B';}}],["SAR",{Name:"SAR",Param:{Count:3},ToString:function ToString(args){return'\u6B65\u957F\u4E3A'+args[1]+'\u6781\u9650\u503C\u4E3A'+args[0]+'\u7684'+args[2]+'\u65E5\u629B\u7269\u8F6C\u5411';}}],["SARTURN",{Name:"SARTURN",Param:{Count:3},ToString:function ToString(args){return'\u6B65\u957F\u4E3A'+args[1]+'\u6781\u9650\u503C\u4E3A'+args[0]+'\u7684'+args[2]+'\u65E5\u629B\u7269\u8F6C\u5411\u70B9';}}],//字符串函数
12756
- ["CON2STR",{Name:"CON2STR",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u8F6C\u4E3A\u5B57\u7B26\u4E32';}}],["VAR2STR",{Name:"VAR2STR",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u8F6C\u4E3A\u5B57\u7B26\u4E32';}}],["STR2CON",{Name:"STR2CON",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u8F6C\u4E3A\u6570\u5B57';}}],["STRLEN",{Name:"STRLEN",Param:{Count:1},ToString:function ToString(args){return'\u5F97\u5230'+args[0]+'\u5B57\u7B26\u4E32\u957F\u5EA6';}}],["STRCAT",{Name:"STRCAT",Param:{Count:2},ToString:function ToString(args){return'\u5B57\u7B26\u4E32\u76F8\u52A0';}}],["STRCAT6",{Name:"STRCAT6",Param:{Dynamic:true},ToString:function ToString(args){return'\u5B57\u7B26\u4E32\u76F8\u52A0';}}],["VARCAT",{Name:"VARCAT",Param:{Count:2},ToString:function ToString(args){return'\u5B57\u7B26\u4E32\u76F8\u52A0';}}],["STRSPACE",{Name:"STRSPACE",Param:{Count:1},ToString:function ToString(args){return'\u5B57\u7B26\u4E32'+args[0]+'\u52A0\u4E00\u7A7A\u683C';}}],["SUBSTR",{Name:"SUBSTR",Param:{Count:3},ToString:function ToString(args){return'\u5B57\u7B26\u4E32'+args[0]+'\u4E2D\u53D6\u4E00\u90E8\u5206';}}],["STRCMP",{Name:"STRCMP",Param:{Count:2},ToString:function ToString(args){return'\u5B57\u7B26\u4E32'+args[0]+'\u548C\u5B57\u7B26\u4E32'+args[1]+'\u6BD4\u8F83';}}],["FINDSTR",{Name:"FINDSTR",Param:{Count:2},ToString:function ToString(args){return'\u5B57\u7B26\u4E32'+args[0]+'\u4E2D\u67E5\u627E\u5B57\u7B26\u4E32'+args[1];}}],["NAMEINCLUDE",{Name:"NAMEINCLUDE",Param:{Count:1},ToString:function ToString(args){return'\u67E5\u627E\u54C1\u79CD\u540D\u79F0\u4E2D\u5305\u542B'+args[0];}}],["CODELIKE",{Name:"CODELIKE",Param:{Count:1},ToString:function ToString(args){return'\u67E5\u627E\u54C1\u79CD\u540D\u79F0\u4E2D\u5305\u542B'+args[0];}}],["INBLOCK",{Name:"AVEDEV",Param:{Count:1},ToString:function ToString(args){return'\u5C5E\u4E8E'+args[0]+'\u677F\u5757';}}],["STKINDI",{Name:"STKINDI",Param:{Dynamic:true},ToString:function ToString(args){return"指标引用";}}],["STRFORMAT",{Name:"STRFORMAT",Param:{Dynamic:true},ToString:function ToString(args){return'\u683C\u5F0F\u5316'+args[0]+'\u5B57\u7B26\u4E32';}}],["NAMELIKE",{Name:"NAMELIKE",Param:{Count:1},ToString:function ToString(args){return'\u54C1\u79CD\u540D\u79F0\u662F\u5426\u4EE5\''+args[0]+'\'\u5F00\u5934';}}],["HHVBARS",{Name:"HHVBARS",Param:{Count:2},ToString:function ToString(args){if(args[1]==0)return'\u5386\u53F2'+args[0]+'\u65B0\u9AD8\u8DDD\u4ECA\u5929\u6570';return args[1]+'\u65E5\u5185'+args[0]+'\u65B0\u9AD8\u8DDD\u4ECA\u5929\u6570';}}],["LLVBARS",{Name:"LLVBARS",Param:{Count:2},ToString:function ToString(args){if(args[1]==0)return'\u5386\u53F2'+args[0]+'\u65B0\u4F4E\u8DDD\u4ECA\u5929\u6570';return args[1]+'\u65E5\u5185'+args[0]+'\u65B0\u4F4E\u8DDD\u4ECA\u5929\u6570';}}],["L2_VOLNUM",{Name:"L2_VOLNUM",Param:{Count:2},ToString:function ToString(args){return'\u5355\u6570\u5206\u6863';}}],["L2_VOL",{Name:"L2_VOL",Param:{Count:2},ToString:function ToString(args){return'\u6210\u4EA4\u91CF\u5206\u6863';}}],["L2_AMO",{Name:"L2_AMO",Param:{Count:2},ToString:function ToString(args){return'\u6210\u4EA4\u989D\u5206\u6863';}}],["TABLE_CELL",{Name:"TABLE_CELL",Param:{Dynamic:true},ToString:function ToString(args){return'\u521B\u5EFA\u8868\u683C\u5355\u5143\u683C';}}],["TABLE_ROW",{Name:"TABLE_ROW",Param:{Dynamic:true},ToString:function ToString(args){return'\u521B\u5EFA\u8868\u683C\u884C';}}],["DRAWTABLE",{Name:"DRAWTABLE",Param:{Dynamic:true},ToString:function ToString(args){return'\u7ED8\u5236\u8868\u683C';}}],["MAX6",{Name:"MAX6",Param:{Dynamic:true},ToString:function ToString(args){return"较大值";}}],["MIN6",{Name:"MIN6",Param:{Dynamic:true},ToString:function ToString(args){return"较小值";}}]]);this.CallFunctionExplain=function(funcName,args,node){if(this.FUNCTION_INFO_LIST.has(funcName)){var item=this.FUNCTION_INFO_LIST.get(funcName);if(item.Param.Dynamic===true)//动态参数
12767
+ ["CON2STR",{Name:"CON2STR",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u8F6C\u4E3A\u5B57\u7B26\u4E32';}}],["VAR2STR",{Name:"VAR2STR",Param:{Count:2},ToString:function ToString(args){return args[0]+'\u8F6C\u4E3A\u5B57\u7B26\u4E32';}}],["STR2CON",{Name:"STR2CON",Param:{Count:1},ToString:function ToString(args){return args[0]+'\u8F6C\u4E3A\u6570\u5B57';}}],["STRLEN",{Name:"STRLEN",Param:{Count:1},ToString:function ToString(args){return'\u5F97\u5230'+args[0]+'\u5B57\u7B26\u4E32\u957F\u5EA6';}}],["STRCAT",{Name:"STRCAT",Param:{Count:2},ToString:function ToString(args){return'\u5B57\u7B26\u4E32\u76F8\u52A0';}}],["STRCAT6",{Name:"STRCAT6",Param:{Dynamic:true},ToString:function ToString(args){return'\u5B57\u7B26\u4E32\u76F8\u52A0';}}],["VARCAT",{Name:"VARCAT",Param:{Count:2},ToString:function ToString(args){return'\u5B57\u7B26\u4E32\u76F8\u52A0';}}],["VARCAT6",{Name:"VARCAT",Param:{Dynamic:true},ToString:function ToString(args){return'\u5B57\u7B26\u4E32\u76F8\u52A0';}}],["STRSPACE",{Name:"STRSPACE",Param:{Count:1},ToString:function ToString(args){return'\u5B57\u7B26\u4E32'+args[0]+'\u52A0\u4E00\u7A7A\u683C';}}],["SUBSTR",{Name:"SUBSTR",Param:{Count:3},ToString:function ToString(args){return'\u5B57\u7B26\u4E32'+args[0]+'\u4E2D\u53D6\u4E00\u90E8\u5206';}}],["STRCMP",{Name:"STRCMP",Param:{Count:2},ToString:function ToString(args){return'\u5B57\u7B26\u4E32'+args[0]+'\u548C\u5B57\u7B26\u4E32'+args[1]+'\u6BD4\u8F83';}}],["FINDSTR",{Name:"FINDSTR",Param:{Count:2},ToString:function ToString(args){return'\u5B57\u7B26\u4E32'+args[0]+'\u4E2D\u67E5\u627E\u5B57\u7B26\u4E32'+args[1];}}],["NAMEINCLUDE",{Name:"NAMEINCLUDE",Param:{Count:1},ToString:function ToString(args){return'\u67E5\u627E\u54C1\u79CD\u540D\u79F0\u4E2D\u5305\u542B'+args[0];}}],["CODELIKE",{Name:"CODELIKE",Param:{Count:1},ToString:function ToString(args){return'\u67E5\u627E\u54C1\u79CD\u540D\u79F0\u4E2D\u5305\u542B'+args[0];}}],["INBLOCK",{Name:"AVEDEV",Param:{Count:1},ToString:function ToString(args){return'\u5C5E\u4E8E'+args[0]+'\u677F\u5757';}}],["STKINDI",{Name:"STKINDI",Param:{Dynamic:true},ToString:function ToString(args){return"指标引用";}}],["STRFORMAT",{Name:"STRFORMAT",Param:{Dynamic:true},ToString:function ToString(args){return'\u683C\u5F0F\u5316'+args[0]+'\u5B57\u7B26\u4E32';}}],["NAMELIKE",{Name:"NAMELIKE",Param:{Count:1},ToString:function ToString(args){return'\u54C1\u79CD\u540D\u79F0\u662F\u5426\u4EE5\''+args[0]+'\'\u5F00\u5934';}}],["HHVBARS",{Name:"HHVBARS",Param:{Count:2},ToString:function ToString(args){if(args[1]==0)return'\u5386\u53F2'+args[0]+'\u65B0\u9AD8\u8DDD\u4ECA\u5929\u6570';return args[1]+'\u65E5\u5185'+args[0]+'\u65B0\u9AD8\u8DDD\u4ECA\u5929\u6570';}}],["LLVBARS",{Name:"LLVBARS",Param:{Count:2},ToString:function ToString(args){if(args[1]==0)return'\u5386\u53F2'+args[0]+'\u65B0\u4F4E\u8DDD\u4ECA\u5929\u6570';return args[1]+'\u65E5\u5185'+args[0]+'\u65B0\u4F4E\u8DDD\u4ECA\u5929\u6570';}}],["L2_VOLNUM",{Name:"L2_VOLNUM",Param:{Count:2},ToString:function ToString(args){return'\u5355\u6570\u5206\u6863';}}],["L2_VOL",{Name:"L2_VOL",Param:{Count:2},ToString:function ToString(args){return'\u6210\u4EA4\u91CF\u5206\u6863';}}],["L2_AMO",{Name:"L2_AMO",Param:{Count:2},ToString:function ToString(args){return'\u6210\u4EA4\u989D\u5206\u6863';}}],["TABLE_CELL",{Name:"TABLE_CELL",Param:{Dynamic:true},ToString:function ToString(args){return'\u521B\u5EFA\u8868\u683C\u5355\u5143\u683C';}}],["TABLE_ROW",{Name:"TABLE_ROW",Param:{Dynamic:true},ToString:function ToString(args){return'\u521B\u5EFA\u8868\u683C\u884C';}}],["DRAWTABLE",{Name:"DRAWTABLE",Param:{Dynamic:true},ToString:function ToString(args){return'\u7ED8\u5236\u8868\u683C';}}],["MAX6",{Name:"MAX6",Param:{Dynamic:true},ToString:function ToString(args){return"较大值";}}],["MIN6",{Name:"MIN6",Param:{Dynamic:true},ToString:function ToString(args){return"较小值";}}]]);this.CallFunctionExplain=function(funcName,args,node){if(this.FUNCTION_INFO_LIST.has(funcName)){var item=this.FUNCTION_INFO_LIST.get(funcName);if(item.Param.Dynamic===true)//动态参数
12757
12768
  {}else{if(item.Param.Count!=args.length)this.ThrowUnexpectedNode(node,'\u51FD\u6570'+funcName+'\u53C2\u6570\u4E2A\u6570\u4E0D\u6B63\u786E. \u9700\u8981'+item.Param.Count+'\u4E2A\u53C2\u6570');}return item.ToString(args);}switch(funcName){case"CALCSTOCKINDEX":return'\u5F15\u7528'+args[0]+'\u7684'+args[1]+'\u6307\u6807\u7B2C'+args[2]+'\u4E2A\u8F93\u51FA\u503C';case"PEAK":case"PEAKBARS":case"ZIG":case"ZIGA":case"TROUGH":case"TROUGHBARS":return this.GetZIGExplain(funcName,args);case"FINANCE":return this.GetFinanceExplain(args);case"DYNAINFO":return this.GetDynainfoExplain(args);case'CLOSE':case'C':case'VOL':case'V':case'OPEN':case'O':case'HIGH':case'H':case'LOW':case'L':case'AMOUNT':case'AMO':return this.GetOtherSymbolExplain({FunctionName:funcName,Args:args},node);//绘图函数
12758
12769
  case"PLOYLINE":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6\u4EE5'+args[1]+'\u4F4D\u7F6E\u4E3A\u9876\u70B9\u753B\u6298\u7EBF\u8FDE\u63A5';case"DRAWLINE":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6,\u5728'+args[1]+'\u4F4D\u7F6E\u753B\u76F4\u7EBF\u8D77\u70B9\uFF0C\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[2]+'\u65F6,\u5728'+args[3]+'\u4F4D\u7F6E\u753B\u76F4\u7EBF\u7EC8\u70B9,'+args[4]+'\u8868\u793A\u662F\u5426\u5EF6\u957F';case"DRAWSL":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6,\u5728'+args[1]+'\u4F4D\u7F6E\u753B\u659C\u7EBF\u7EBF\u6027\u56DE\u5F52,'+args[2]+'\u659C\u7387,'+args[3]+'\u957F\u5EA6,'+args[4]+'\u65B9\u5411';case"DRAWKLINE":case"DRAWKLINE1":return'K线';case"DRAWICON":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6,\u5728'+args[1]+'\u4F4D\u7F6E\u753B'+args[2]+'\u53F7\u56FE\u6807';case"DRAWTEXT":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6,\u5728'+args[1]+'\u4F4D\u7F6E\u4E66\u5199\u6587\u5B57';case"DRAWFLAGTEXT":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6,\u5728'+args[1]+'\u4F4D\u7F6E\u4E66\u5199\u6587\u5B57';case"DRAWTEXT_FIX":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6,\u5728\u6A2A\u8F74'+args[1]+'\u7EB5\u8F74'+args[2]+'\u4F4D\u7F6E\u4E66\u5199\u6587\u5B57';case"DRAWNUMBER":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6,\u5728'+args[1]+'\u4F4D\u7F6E\u4E66\u5199\u6570\u5B57';case"DRAWNUMBER_FIX":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6,\u5728\u6A2A\u8F74'+args[1]+'\u7EB5\u8F74'+args[2]+'\u4F4D\u7F6E\u4E66\u5199\u6570\u5B57';case"RGB":return'\u81EA\u5B9A\u8272['+args[0]+','+args[1]+','+args[2]+']';case"RGBA":return'\u81EA\u5B9A\u8272['+args[0]+','+args[1]+','+args[2]+','+args[3]+']';case"DRAWBAND":return'画带状线';case"DRAWRECTREL":return"相对位置上画矩形.";case"DRAWGBK":return"填充背景";case"TIPICON":return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6,\u5728'+args[1]+'\u4F4D\u7F6E\u753B'+args[2]+'\u53F7\u56FE\u6807';case"STICKLINE":var barType="";if(args[4]==-1)barType="虚线空心柱";else if(args[4]==0)barType="实心柱";else barType="实线空心柱";return'\u5F53\u6EE1\u8DB3\u6761\u4EF6'+args[0]+'\u65F6, \u5728'+args[1]+'\u548C'+args[2]+'\u4F4D\u7F6E\u4E4B\u95F4\u753B\u67F1\u72B6\u7EBF,\u5BBD\u5EA6\u4E3A'+args[3]+','+barType;case"PARTLINE":return"画折线";case"SELL":return"卖出平仓";case"BUY":return"买入开仓";case"SELLSHORT":return"卖出开仓";case"BUYSHORT":return"买入平仓";case"DRAWLASTBARNUMBER":return"在最后一根k线输出数值";case"DRAWLASTBARTEXT":return"在最后一根k线显示文字";case"DRAWLASTBARICON":return"在最后一根k线绘制图标";case"YMOVE":return;case"BACKGROUND":return"绘制背景";case"UPCOLOR":return'\u4E0A\u6DA8\u989C\u8272'+args[0];case"DOWNCOLOR":return'\u4E0B\u8DCC\u989C\u8272'+args[0];case"STICKTYPE":case"FIRSTDRAW":return"";default:this.ThrowUnexpectedNode(node,'\u51FD\u6570'+funcName+'\u4E0D\u5B58\u5728');}};this.GetDynainfoExplain=function(args){var DATA_NAME_MAP=new _map2.default([[3,"前收盘价"],[4,"开盘价"],[5,"最高价"],[6,"最低价"],[7,"现价"],[8,'总量'],[9,"现量"],[10,"总金额"],[11,"均价"],[12,"日涨跌"],[13,"振幅"],[14,"涨幅"],[15,"开盘时的成交金额"],[16,"前5日每分钟均量"],[17,"量比"],[18,"上涨家数"],[19,"下跌家数"]]);var id=args[0];if(DATA_NAME_MAP.has(id))return DATA_NAME_MAP.get(id);return'\u5373\u65F6\u884C\u60C5['+id+']';};this.GetFinanceExplain=function(args){var DATA_NAME_MAP=new _map2.default([[1,"总股本"],[2,"市场类型"],[3,"沪深品种类型"],[4,"沪深行业代码"],[5,"B股"],[6,"H股"],[7,"流通股本[股]"],[8,"股东人数[户]"],[9,"资产负债率%"],[10,"总资产"],[11,"流动资产"],[12,"固定资产"],[13,"无形资产"],[15,"流动负债"],[16,"少数股东权益"]]);var id=args[0];if(DATA_NAME_MAP.has(id))return DATA_NAME_MAP.get(id);return'\u8D22\u52A1\u6570\u636E['+id+']';};this.GetZIGExplain=function(funcName,args){var value=args[0];if(value==0)value="开盘价";else if(value==1)value="最高价";else if(value==2)value="最低价";else if(value==3)value="收盘价";switch(funcName){case"PEAK":return value+'\u7684'+args[1]+'%\u4E4B\u5B57\u8F6C\u5411\u7684\u524D'+args[2]+'\u4E2A\u6CE2\u5CF0\u503C';case"PEAKBARS":return value+'\u7684'+args[1]+'5%\u4E4B\u5B57\u8F6C\u5411\u7684\u524D'+args[2]+'\u4E2A\u6CE2\u5CF0\u4F4D\u7F6E';case"ZIG":return value+'\u7684'+args[1]+'\u7684\u4E4B\u5B57\u8F6C\u5411';case"ZIGA":return value+'\u53D8\u5316'+args[1]+'\u7684\u4E4B\u5B57\u8F6C\u5411';case"TROUGH":return value+'\u7684'+args[1]+'%\u4E4B\u5B57\u8F6C\u5411\u7684\u524D'+args[2]+'\u4E2A\u6CE2\u8C37\u503C';case"TROUGHBARS":return value+'\u7684'+args[1]+'%\u4E4B\u5B57\u8F6C\u5411\u7684\u524D'+args[2]+'\u4E2A\u6CE2\u8C37\u4F4D\u7F6E';}};this.GetColorExplain=function(colorName){var COLOR_MAP=new _map2.default([['COLORBLACK','黑色'],['COLORBLUE','蓝色'],['COLORGREEN','绿色'],['COLORCYAN','青色'],['COLORRED','红色'],['COLORMAGENTA','洋红色'],['COLORBROWN','棕色'],['COLORLIGRAY','淡灰色'],['COLORGRAY','深灰色'],['COLORLIBLUE','淡蓝色'],['COLORLIGREEN','淡绿色'],['COLORLICYAN','淡青色'],['COLORLIRED','淡红色'],['COLORLIMAGENTA','淡洋红色'],['COLORWHITE','白色'],['COLORYELLOW','黄色']]);if(COLOR_MAP.has(colorName))return COLOR_MAP.get(colorName);//COLOR 自定义色
12759
12770
  //格式为COLOR+“RRGGBB”:RR、GG、BB表示红色、绿色和蓝色的分量,每种颜色的取值范围是00-FF,采用了16进制。
@@ -14356,8 +14367,8 @@ drawInfo.Data=barData;if(IFrameSplitOperator.IsBool(barData.Enable))drawInfo.Ena
14356
14367
  text=value.toFixed(column.FloatPrecision);break;case 2://千分位分割
14357
14368
  text=IFrameSplitOperator.FormatValueThousandsString(value,column.FloatPrecision);break;case 3:var exfloatPrecision=1;if(IFrameSplitOperator.IsNumber(format.ExFloatPrecision))exfloatPrecision=format.ExFloatPrecision;text=IFrameSplitOperator.FormatValueStringV2(value,column.FloatPrecision,exfloatPrecision);break;}}if(column.StringFormat&&text){text=column.StringFormat.replace("{0}",text);}drawInfo.Text=text;};this.FormatReserveString=function(column,data,drawInfo){if(column.DefaultText)drawInfo.Text=column.DefaultText;var fieldName=MAP_COLUMN_FIELD.get(column.Type);if(!data||!fieldName)return;var item=data[fieldName];if(IFrameSplitOperator.IsObject(item)){if(item.Text)drawInfo.Text=item.Text;if(item.TextColor)drawInfo.TextColor=item.TextColor;if(item.BGColor)drawInfo.BGColor=item.BGColor;if(IFrameSplitOperator.IsNonEmptyArray(item.AryText))drawInfo.AryText=item.AryText;if(item.Tooltip&&IFrameSplitOperator.IsNonEmptyArray(item.Tooltip.AryText)){drawInfo.Tooltip={Type:4,Data:{AryText:item.Tooltip.AryText,EnableCallback:item.Tooltip.EnableCallback}};}}else if(IFrameSplitOperator.IsString(item)){drawInfo.Text=item;}};this.GetReserveDateTimePreItem=function(colIndex){if(!this.CreateTempCache)return null;if(!this.TempCache.MapReserveDateTime)return null;var mapData=this.TempCache.MapReserveDateTime;if(!mapData.has(colIndex))return null;return mapData.get(colIndex);};this.SetReserveDateTimePreItem=function(colIndex,data){if(!this.CreateTempCache)return false;if(!this.TempCache.MapReserveDateTime)return false;var mapData=this.TempCache.MapReserveDateTime;if(mapData.has(colIndex)){var item=mapData.get(colIndex);item.PreItem.Date=data.Date;}else{mapData.set(colIndex,{PreItem:{Date:data.Date}});}return true;};this.FormatReserveDateTime=function(column,data,drawInfo){if(column.DefaultText)drawInfo.Text=column.DefaultText;var fieldName=MAP_COLUMN_FIELD.get(column.Type);if(!data||!fieldName)return;var item=data[fieldName];if(!IFrameSplitOperator.IsObject(item))return;var cacheItem=this.GetReserveDateTimePreItem(drawInfo.ColumnIndex);if(item.DateTime){var date=item.DateTime.getFullYear()*10000+(item.DateTime.getMonth()+1)*100+item.DateTime.getDate();var format=column.DateTimeFormat;if(cacheItem&&cacheItem.PreItem&&date==cacheItem.PreItem.Date){if(column.SubDateTimeFormat)format=column.SubDateTimeFormat;}else{this.SetReserveDateTimePreItem(drawInfo.ColumnIndex,{Date:date});}drawInfo.Text=IFrameSplitOperator.FormatDateTimeStringV2(item.DateTime,format);}if(item.TextColor)drawInfo.TextColor=item.TextColor;if(item.BGColor)drawInfo.BGColor=item.BGColor;};this.FormatReserveProgressBar=function(column,data,drawInfo){var fieldName=MAP_COLUMN_FIELD.get(column.Type);if(!data||!fieldName)return;var item=data[fieldName];if(IFrameSplitOperator.IsNumber(item)){drawInfo.ProgressBar=column.ProgressBar;drawInfo.Enable=true;drawInfo.Value=item;//占比
14358
14369
  drawInfo.Data={Value:item};}else if(IFrameSplitOperator.IsObject(item)){if(item.Title)drawInfo.Text=item.Title;drawInfo.ProgressBar=column.ProgressBar;drawInfo.Enable=true;drawInfo.Value=item.Value;//占比
14359
- drawInfo.Data=item;if(IFrameSplitOperator.IsBool(item.Enable))drawInfo.Enable=item.Enable;if(item.TextColor)drawInfo.TextColor=item.TextColor;if(item.BarColor)drawInfo.BarColor=item.BarColor;if(item.BGColor)drawInfo.BGColor=item.BGColor;}};this.FormatReserveButton=function(column,data,drawInfo){var fieldName=MAP_COLUMN_FIELD.get(column.Type);if(!data||!fieldName)return;var item=data[fieldName];if(!item)return;drawInfo.Text=item.Title;drawInfo.Button=column.Button;drawInfo.Font=column.Button.Font;drawInfo.Enable=true;drawInfo.Data=item;if(IFrameSplitOperator.IsBool(item.Enable))drawInfo.Enable=item.Enable;};this.FormaTimeDrawInfo=function(column,stock,drawInfo,data){if(!IFrameSplitOperator.IsNumber(stock.Time))return;if(column.ValueType==0)//0=hhmm 1=hhmmss 2=hhmmss.fff
14360
- {drawInfo.Text=IFrameSplitOperator.FormatTimeString(stock.Time,"HH:MM");}else if(column.ValueType==1){drawInfo.Text=IFrameSplitOperator.FormatTimeString(stock.Time,"HH:MM:SS");}else if(column.ValueType==2){drawInfo.Text=IFrameSplitOperator.FormatTimeString(stock.Time,"HH:MM:SS.fff");}};this.FormaDateDrawInfo=function(column,stock,drawInfo,data){if(!IFrameSplitOperator.IsNumber(stock.Date))return;if(column.FormatType==0)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"YYYY-MM-DD");else if(column.FormatType==1)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"YYYY/MM/DD");else if(column.FormatType==2)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"YYYY/MM/DD/W");else if(column.FormatType==3)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"YYYY-MM");else if(column.FormatType==4)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"MM/DD");else if(column.FormatType==4)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"MM-DD");};//自定义图标
14370
+ drawInfo.Data=item;if(IFrameSplitOperator.IsBool(item.Enable))drawInfo.Enable=item.Enable;if(item.TextColor)drawInfo.TextColor=item.TextColor;if(item.BarColor)drawInfo.BarColor=item.BarColor;if(item.BGColor)drawInfo.BGColor=item.BGColor;}};this.FormatReserveButton=function(column,data,drawInfo){var fieldName=MAP_COLUMN_FIELD.get(column.Type);if(!data||!fieldName)return;var item=data[fieldName];if(!item)return;drawInfo.Text=item.Title;drawInfo.Button=column.Button;drawInfo.Font=column.Button.Font;drawInfo.Enable=true;drawInfo.Data=item;if(IFrameSplitOperator.IsBool(item.Enable))drawInfo.Enable=item.Enable;};this.FormaTimeDrawInfo=function(column,stock,drawInfo,data){if(!stock||!IFrameSplitOperator.IsNumber(stock.Time))return;if(column.ValueType==0)//0=hhmm 1=hhmmss 2=hhmmss.fff
14371
+ {drawInfo.Text=IFrameSplitOperator.FormatTimeString(stock.Time,"HH:MM");}else if(column.ValueType==1){drawInfo.Text=IFrameSplitOperator.FormatTimeString(stock.Time,"HH:MM:SS");}else if(column.ValueType==2){drawInfo.Text=IFrameSplitOperator.FormatTimeString(stock.Time,"HH:MM:SS.fff");}};this.FormaDateDrawInfo=function(column,stock,drawInfo,data){if(!stock||!IFrameSplitOperator.IsNumber(stock.Date))return;if(column.FormatType==0)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"YYYY-MM-DD");else if(column.FormatType==1)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"YYYY/MM/DD");else if(column.FormatType==2)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"YYYY/MM/DD/W");else if(column.FormatType==3)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"YYYY-MM");else if(column.FormatType==4)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"MM/DD");else if(column.FormatType==4)drawInfo.Text=IFrameSplitOperator.FormatDateString(stock.Date,"MM-DD");};//自定义图标
14361
14372
  this.GetCustomIconData=function(columnInfo,symbol,drawInfo,data){var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_REPORT_DRAW_CUSTOM_ICON);if(!event||!event.Callback)return false;var sendData={Symbol:symbol,Column:columnInfo,Data:data,Out:{Text:null,TextColor:null,TextAlign:null,Font:null}};event.Callback(event,sendData,this);if(sendData.Out.Text)drawInfo.Text=sendData.Out.Text;if(sendData.Out.TextColor)drawInfo.TextColor=sendData.Out.TextColor;if(sendData.Out.TextAlign)drawInfo.TextAlign=sendData.Out.TextAlign;if(sendData.Out.BGColor)drawInfo.BGColor=sendData.Out.BGColor;if(sendData.Out.Font)drawInfo.Font=sendData.Out.Font;return true;};this.GetPriceDrawInfo=function(price,stock,data,drawInfo,option){if(!IFrameSplitOperator.IsNumber(price))return false;drawInfo.Text=price.toFixed(data.Decimal);var yClose=null;if(stock.PriceColorType===1)//昨结算价 计算颜色
14362
14373
  {if(IFrameSplitOperator.IsNumber(stock.YFClose))yClose=stock.YFClose;}else//昨收价 计算颜色
14363
14374
  {if(IFrameSplitOperator.IsNumber(stock.YClose))yClose=stock.YClose;}if(!IFrameSplitOperator.IsNumber(yClose))drawInfo.TextColor=this.UnchagneColor;else drawInfo.TextColor=this.GetUpDownColor(price,yClose);if(option&&option.LimitBG){if(IFrameSplitOperator.IsNumber(stock.LimitHigh)){if(price>=stock.LimitHigh){drawInfo.BGColor=this.LimitUpBGColor;drawInfo.TextColor=this.LimitTextColor;}}if(IFrameSplitOperator.IsNumber(stock.LimitLow)){if(price<=stock.LimitLow){drawInfo.BGColor=this.LimitDownBGColor;drawInfo.TextColor=this.LimitTextColor;}}}};this.GetUpDownColor=function(price,price2){if(price>price2)return this.UpColor;else if(price<price2)return this.DownColor;else return this.UnchagneColor;};this.GetUpDownColorV2=function(price,price2){if(price>=price2)return this.UpColor;else return this.DownColor;};//单独处理成交量显示
@@ -15772,7 +15783,7 @@ hisData.Symbol=message.symbol;}var stockObj={HQDataType:HQ_DATA_TYPE.KLINE_ID,St
15772
15783
  this.ExecuteScript(item,data);}this.Status=0;}};this.OnExecuteFinish=function(data,indexInfo,jsExectute,jobInfo){var message={Data:data,IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.FINISH_EXECUTE_SCRIPT,JobInfo:jobInfo};postMessage(message);};this.OnExecuteError=function(error,indexInfo,jobData){var message={IndexInfo:indexInfo,ID:JSCHART_WORKER_MESSAGE_ID.ERROR_EXECUTE_SCRIPT,Error:error};postMessage(message);};}/********************************************************************************
15773
15784
  * 版本信息输出
15774
15785
  *
15775
- */var HQCHART_VERSION="1.1.15363";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15786
+ */var HQCHART_VERSION="1.1.15374";function PrintHQChartVersion(){var logo='\n\n*************************************************************************************************************************************************************************** \n* \n* :%@@- \n* :@@@@- \n* =@@@@ :#@@@ .:+#@@@#=: :=*@@@@@@#+-. *@@@@. \n* :@@@@@ .@@@@@ .#@@@@@@@@@@@- +@@@@@@@@@@@@@+ @@@@@ -%@@* \n* +@@@@% #@@@@# *@@@@@@@@@@@@@@%. =@@@@@@@@@@@@@@@- @@@@@ -@@@@+ \n* %@@@@* @@@@@+ .%@@@@@@@@@@@@@@@@%: #@@@@@@@@@@@@@@@% @@@@# *@@@@= \n* @@@@@= @@@@@- .%@@@@@@@*++*%@@@@@@% .%@@@@@@@%*+==+**= -@@@@+ #@@@@- \n* @@@@@. @@@@@. #@@@@@%= =@@@@@@* %@@@@@@#: *@@@@- :::. .-+*###+: ::: .+##+: -%%@@@@@%%%% \n* .@@@@@ .@@@@@. +@@@@@% .@@@@@@ *@@@@@@: %@@@@: +@@@@@%. :%@@@@@@@@@@: *@@@ :@@@@@* @@@@@@@@@@@@ \n* :@@@@@ :@@@@@ @@@@@% :@@@@@+ @@@@@@: %@@@@-@@@@@@@@@. @@@@@@@@@@@@@. :@@@%-@@@@@@.:@@@@@@@@@@@# \n* -@@@@% -@@@@@ =@@@@@. %@@@@% %@@@@@- %@@@@@@@@@@@@@@* %@@@@@@@@@@@@+ -@@@@@@@@@@# -@@@@@@@@@@@. \n* +@@@@%=========#@@@@% @@@@@# :@@@@@ .@@@@@% @@@@@@@@%@@@@@@@ -%+:. .#@@@@* +@@@@@@@%%@. .::+@@@@#:: \n* #@@@@@@@@@@@@@@@@@@@# .@@@@@ .@@@@@ :@@@@@. @@@@@@#. #@@@@@. -@@@@* #@@@@@@: *@@@@+ \n* %@@@@@@@@@@@@@@@@@@@+ :@@@@@ .@@@@@ -@@@@@ @@@@@+ @@@@@. :@@@@* @@@@@% #@@@@- \n* @@@@@@@@@@@@@@@@@@@@: :@@@@% :@@@@@ +@@@@% -@@@@+ @@@@@ -@@@@+ @@@@@. @@@@@. \n* .@@@@@@@@@@@@@@@@@@@@ :@@@@% -@@@@% *@@@@% #@@@@. @@@@@ .=*#%%%@@@@@= :@@@@# @@@@@. \n* -@@@@@:::::::::=@@@@@ :@@@@@ @@@@@* +@@@@% @@@@@ @@@@% -#@@@@@@@@@@@@: -@@@@* @@@@@ \n* =@@@@% =@@@@% .@@@@@ :@@@@@. -@@@@% @@@@@ .@@@@* +@@@@@@@@@@@@@@. =@@@@+ .@@@@@ \n* +@@@@# +@@@@# @@@@@# %@@@@% :@@@@@ .@@@@% =@@@@= -@@@@@*-:..%@@@@ +@@@@= :@@@@# \n* *@@@@* *@@@@* +@@@@@: #@@@@@+ .@@@@@@ :@@@@% *@@@@- @@@@@. @@@@% #@@@@: =@@@@+ \n* %@@@@= %@@@@+ @@@@@@- .%@@@@@# #@@@@@# :@@@@% #@@@@: @@@@% @@@@* %@@@@. #@@@@- \n* @@@@@- @@@@@= =@@@@@@#=...-*@@@@@@@: @@@@@@%=. :+**. :@@@@* %@@@@. .@@@@* *@@@@= @@@@@ %@@@@+ \n* .@@@@@: .@@@@@: *@@@@@@@@@@@@@@@@@@@# =@@@@@@@@%%%@@@@@@ +@@@@- @@@@@ .@@@@@: :%@@@@@- .@@@@% %@@@@@*+- \n* :@@@@@ :@@@@@ +@@@@@@@@@@@@@@@@@@@# =@@@@@@@@@@@@@@@@% %@@@@ @@@@@ @@@@@@@@@@@@@@@: -@@@@* *@@@@@@@@- \n* =@@@@@ -@@@@@ :@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@% @@@@@ %@@@% #@@@@@@@@@#@@@@. +@@@@- .@@@@@@@@# \n* *@@@@# =@@@@% :#@@@@@@@#: :@@@@@= =@@@@@@@@@@@+. @@@@@ :@@@+ *@@@@@@@- %@@@ *@@@= =@@@@@@@* \n* =++++- -++++= .:::. .=*+: :-=+++=:. ****= .=+. .-++=: :+++ -+=: .-=+=:. \n* \n* \n* HQChart \n* Ver: '+HQCHART_VERSION+' \n* License: Apache License 2.0 \n* Source: https://github.com/jones2000/HQChart\n*\n************************************************************************************************************************************************************************** \n ';console.log(logo);}PrintHQChartVersion();//把给外界调用的方法暴露出来
15776
15787
  exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
15777
15788
  // BaseIndex:BaseIndex,
15778
15789
  // ChartLine:ChartLine,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.15364",
3
+ "version": "1.1.15375",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -55576,6 +55576,15 @@ HQData.NetworkFilter=function(data, callback)
55576
55576
  HQData.RequestMinuteRealtimeData(data,callback);
55577
55577
  break;
55578
55578
 
55579
+ case "KLineChartContainer::RequestTickData":
55580
+ //HQChart使用教程30-K线图如何对接第3方数据5-逐笔数据
55581
+ HQData.RequestKLineTickData(data,callback);
55582
+ break;
55583
+ case "KLineChartContainer::RequestTickRealtimeData":
55584
+ //HQChart使用教程30-K线图如何对接第3方数据16-轮询增量更新逐笔数据
55585
+ HQData.RequestTickRealtimeData(data,callback);
55586
+ break;
55587
+
55579
55588
  case "JSSymbolData::GetVariantData": //额外的变量数据
55580
55589
  //HQChart使用教程30-K线图如何对接第3方数据29-板块字符串函数数据[GNBLOCK,GNBLOCKNUM......]
55581
55590
  HQData.RequestIndexVariantData(data,callback);
@@ -56744,6 +56753,50 @@ HQData.RequestMinuteRealtimeData=function(data,callback)
56744
56753
  }
56745
56754
 
56746
56755
 
56756
+ HQData.RequestKLineTickData=function(data,callback)
56757
+ {
56758
+ data.PreventDefault=true;
56759
+ var symbol=data.Request.Data.symbol;
56760
+ console.log(`[HQData::RequestKLineTickData] Symbol=${symbol}`);
56761
+
56762
+ var hqchartData={ code:0, symbol:symbol, name:symbol, data:[], ver:2.0 };
56763
+ for(var i=0;i<MSECOND_TEST_DATA.data.length-100;++i)
56764
+ {
56765
+ var item=MSECOND_TEST_DATA.data[i];
56766
+ var flag=HQData.GetRandomTestData(1,10)%3;
56767
+ var kItem=[item[0], parseInt(item[8]/1000), item[1], item[5], item[6]*1000, item[7], flag ];
56768
+ hqchartData.data.push(kItem);
56769
+ }
56770
+
56771
+ callback(hqchartData);
56772
+ }
56773
+
56774
+ HQData.RequestTickRealtimeData=function(data,callback)
56775
+ {
56776
+ data.PreventDefault=true;
56777
+ var symbol=data.Request.Data.symbol; //请求的股票代码
56778
+ var dateRange=data.Request.Data.dateRange;
56779
+ var endTime=dateRange.End.Time;
56780
+ var endDate=dateRange.End.Date;
56781
+
56782
+ var hqchartData={ code:0, symbol:symbol, name:symbol, data:[], ver:2.0 };
56783
+ for(var i=0;i<MSECOND_TEST_DATA.data.length;++i)
56784
+ {
56785
+ var item=MSECOND_TEST_DATA.data[i];
56786
+ var time=parseInt(item[8]/1000);
56787
+ if (time>endTime)
56788
+ {
56789
+ var flag=HQData.GetRandomTestData(1,10)%3;
56790
+ var kItem=[item[0], time, item[1], item[5], item[6]*1000, item[7], flag ];
56791
+ hqchartData.data.push(kItem);
56792
+ break;
56793
+ }
56794
+ }
56795
+
56796
+ callback(hqchartData);
56797
+ }
56798
+
56799
+
56747
56800
  HQData.RequestIndexVariantData=function(data,callback)
56748
56801
  {
56749
56802
  data.PreventDefault=true;
@@ -59411,7 +59464,13 @@ HQData.APIIndex_KLINE_TABLE=function(data, callback)
59411
59464
  DrawType:'KLINE_TABLE',
59412
59465
  DrawData:[ ] , //数据 [ [ { Text, Color: BGColor }, ...... ], [],]
59413
59466
  RowCount:4,
59414
- RowName:[ {Name:"账户[*9993]",TextAlign:"center", Color:"rgb(124, 252, 0)"}, {Name:"账户[*8881]",TextAlign:"center", Color:"rgb(238, 99, 9)"}, {Name:"账户3",TextAlign:"center"},{Name:"账户4", TextAlign:"center"}],
59467
+ RowName:
59468
+ [
59469
+ {Name:"账户[*9993]",TextAlign:"center", Color:"rgb(124, 252, 0)"},
59470
+ {Name:"账户[*8881]",TextAlign:"center", Color:"rgb(238, 99, 9)", BGColor:"rgb(100,0,200)" },
59471
+ {Name:"账户3",TextAlign:"center"},
59472
+ {Name:"账户4", TextAlign:"center"}
59473
+ ],
59415
59474
 
59416
59475
  Config:
59417
59476
  {
@@ -59422,7 +59481,9 @@ HQData.APIIndex_KLINE_TABLE=function(data, callback)
59422
59481
  RowNamePosition:3,
59423
59482
  TextFont:{ Family:'微软雅黑' , FontMaxSize:14*GetDevicePixelRatio(), },
59424
59483
  RowHeightType:0,
59425
- Style:1
59484
+ Style:1,
59485
+
59486
+ AryBorderColor:[null, "rgb(100,20,200)", "rgb(200,0,100)"]
59426
59487
  }
59427
59488
  },
59428
59489