hqchart 1.1.15763 → 1.1.15784
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/umychart.vue.js +51 -35
- package/package.json +1 -1
- package/src/jscommon/umychart.ScrollText.js +81 -2
- package/src/jscommon/umychart.js +283 -57
- package/src/jscommon/umychart.report.js +238 -0
- package/src/jscommon/umychart.resource/font/drawtool/demo_index.html +26 -3
- package/src/jscommon/umychart.resource/font/drawtool/iconfont.css +7 -3
- package/src/jscommon/umychart.resource/font/drawtool/iconfont.js +1 -1
- package/src/jscommon/umychart.resource/font/drawtool/iconfont.json +7 -0
- package/src/jscommon/umychart.resource/font/drawtool/iconfont.ttf +0 -0
- package/src/jscommon/umychart.resource/font/drawtool/iconfont.woff +0 -0
- package/src/jscommon/umychart.resource/font/drawtool/iconfont.woff2 +0 -0
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +522 -58
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +603 -60
package/lib/umychart.vue.js
CHANGED
|
@@ -1684,6 +1684,7 @@ CMD_DELETE_INDEX_ID:65,//删除指标
|
|
|
1684
1684
|
CMD_SHOW_MAXMIN_ID:66,//显示隐藏最大最小值
|
|
1685
1685
|
CMD_CHANGE_MINUTE_INFO_ID:67,//切换分时图信息地雷
|
|
1686
1686
|
CMD_DELETE_ALL_MINUTE_INFO_ID:68,CMD_MODIFY_MINUTE_INFO_PROPERTY_ID:69,CMD_SHOW_CHANGE_INDEX_DIALOG_ID:70,//切换指标对话框
|
|
1687
|
+
CMD_SELECTED_DATA_ANALYZE_ID:71,//区间选择数据分析
|
|
1687
1688
|
CMD_REPORT_CHANGE_BLOCK_ID:100,//报价列表 切换板块ID
|
|
1688
1689
|
CMD_REPORT_COLUMN_SORT_ID:101,//报价列表 表头排序 Arg[列序号, 排序方向]
|
|
1689
1690
|
CMD_REPORT_COLUMN_DEL_ID:102,//报价列表 删除列
|
|
@@ -1926,7 +1927,7 @@ if(e)//往事件里面 写如我们的数据
|
|
|
1926
1927
|
RectSelectPaint:paint,//区间选择背景
|
|
1927
1928
|
IsLButton:selectData.IsLButton,IsRButton:selectData.IsRButton};e.data=data;}var aryMenu=null,command=null;if(bMinuteChart)//分时图 默认区间统计
|
|
1928
1929
|
{command={ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,selectData]};}else//K线默认 区间选择K线
|
|
1929
|
-
{aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,selectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[selectData]}}];}if(event&&event.Callback){var sendData={X:x,Y:y,e:e,SelectData:selectData,//区间选择的数据
|
|
1930
|
+
{aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,selectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[selectData]}},{Name:"区间分析",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_DATA_ANALYZE_ID,Args:[selectData]}}];}if(event&&event.Callback){var sendData={X:x,Y:y,e:e,SelectData:selectData,//区间选择的数据
|
|
1930
1931
|
RectSelectPaint:paint,//区间选择背景
|
|
1931
1932
|
AryMenu:aryMenu,//菜单 填null 不就会弹菜单
|
|
1932
1933
|
Command:command,//执行命令
|
|
@@ -2433,7 +2434,7 @@ this.CreateMainScript=function(src){var scriptIndex=null;switch(src.ClassName){c
|
|
|
2433
2434
|
this.DeleteMainIndex=function(identify,windowIndex){var mainIndex=this.WindowIndex[windowIndex];if(!mainIndex)return false;var subFrame=this.Frame.SubFrame[windowIndex];if(!subFrame)return false;if(!IFrameSplitOperator.IsNonEmptyArray(subFrame.OverlayIndex)){this.RemoveIndexWindow(windowIndex,{DeleteMainIndex:true});}else{var overlayItem=subFrame.OverlayIndex[0];this.DeleteOverlayIndex(overlayItem.Identify,windowIndex);this.WindowIndex[windowIndex]=this.CreateMainScript(overlayItem.Script);var bindData=this.GetMainData();this.BindIndexData(windowIndex,bindData);//执行脚本
|
|
2434
2435
|
}};this.GetMainData=function(){switch(this.ClassName){case"MinuteChartContainer":case"MinuteChartHScreenContainer":return this.SourceData;case"KLineChartContainer":case"KLineChartHScreenContainer":return this.ChartPaint[0].Data;}};this.CreateOverlayFrame=function(){switch(this.ClassName){case"KLineChartContainer":return new OverlayKLineFrame();case"KLineChartHScreenContainer":return new OverlayKLineHScreenFrame();case"MinuteChartContainer":return new OverlayMinuteFrame();case"MinuteChartHScreenContainer":return new OverlayMinuteHScreenFrame();}};//数据导出
|
|
2435
2436
|
this.ExportData=function(option){if(!this.ExportMainData)return null;if(!this.ChartPaint[0])return null;var mainData=this.GetMainData();if(!mainData||!IFrameSplitOperator.IsNonEmptyArray(mainData.Data))return null;var range=null;var aryKData=mainData.Data;//K线/分时数据
|
|
2436
|
-
if(option&&option.
|
|
2437
|
+
if(option&&option.DataRange)range=mainData.GetDataRange(option.DataRange);var aryData=this.ExportMainData(mainData,range);//导出K线/分时
|
|
2437
2438
|
if(!aryData)return null;//主图+附图指标
|
|
2438
2439
|
for(var i=1;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(!item||!item.ExportData)continue;var data=item.ExportData(aryKData,range);if(data&&IFrameSplitOperator.IsNonEmptyArray(data)){for(var j=0;j<data.length;++j){var subItem=data[j];if(item.IndexName)aryData.push({Name:subItem.Name+'('+item.IndexName+')',Data:subItem.Data,Description:subItem.Description,Type:1});else aryData.push(subItem);}}}//叠加股票
|
|
2439
2440
|
for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint[i];if(!item.Data||!IFrameSplitOperator.IsNonEmptyArray(item.Data.Data))continue;var data=this.ExportMainData(item.Data,{IsOverlay:true});if(data&&IFrameSplitOperator.IsNonEmptyArray(data)){for(var j=0;j<data.length;++j){var subItem=data[j];aryData.push({Name:subItem.Name+'('+item.Symbol+')',Data:subItem.Data,Type:2});}}}//叠加指标
|
|
@@ -2515,7 +2516,7 @@ if(!corssCursor||corssCursor.Status==0)return;if(!IFrameSplitOperator.IsNumber(c
|
|
|
2515
2516
|
e:e};event.Callback(event,data,this);}this.Draw();}else if(pointCount==2){var selectData=paint.GetSelectRectData();if(e){var data={Chart:this,X:x,Y:y,SelectData:selectData,//区间选择的数据
|
|
2516
2517
|
RectSelectPaint:paint//区间选择背景
|
|
2517
2518
|
};e.data=data;}var aryMenu=null,command=null;var bMinuteChart=this.IsMinuteContainer();if(bMinuteChart){command={ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,selectData]};}else//K线默认
|
|
2518
|
-
{aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,selectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[selectData]}}];}var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN_SELECT_RECT);if(event&&event.Callback){var sendData={X:x,Y:y,SelectData:selectData,//区间选择的数据
|
|
2519
|
+
{aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,selectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[selectData]}},{Name:"区间分析",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_DATA_ANALYZE_ID,Args:[selectData]}}];}var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_KEYDOWN_SELECT_RECT);if(event&&event.Callback){var sendData={X:x,Y:y,SelectData:selectData,//区间选择的数据
|
|
2519
2520
|
RectSelectPaint:paint,//区间选择背景
|
|
2520
2521
|
AryMenu:aryMenu,Command:command,e:e,PreventDefault:false};if(bMinuteChart)sendData.Command=null;//分时图 调用事件 不做任何事
|
|
2521
2522
|
event.Callback(event,sendData,this);aryMenu=sendData.AryMenu;command=sendData.Command;if(sendData.PreventDefault){this.Draw();return;}}if(command){this.ExecuteMenuCommand(command.ID,command.Args);}else if(aryMenu){this.PopupSelectRectMenuV3(aryMenu,data,e);}this.Draw();}};this.MoveCorssCursorUp=function(step){if(!IFrameSplitOperator.IsNumber(this.LastPoint.Y))return;var border=this.Frame.ChartBorder.GetBorder();var top=border.TopEx;if(this.LastPoint.Y-step<=top)return;this.LastPoint.Y-=step;this.DrawDynamicInfo();};this.MoveCorssCursorDown=function(step){if(!IFrameSplitOperator.IsNumber(this.LastPoint.Y))return;var border=this.Frame.ChartBorder.GetBorder();var border=this.Frame.ChartBorder.GetBorder();var bottom=border.BottomEx;if(this.LastPoint.Y+step>=bottom)return;this.LastPoint.Y+=step;this.DrawDynamicInfo();};//整屏区间统计
|
|
@@ -2529,12 +2530,12 @@ if(option.IsClear===true)this.GlobalOption.TradeStatus=null;}if(!data)return fal
|
|
|
2529
2530
|
this.IsPauseUpdateByKeyboard=function(){if(!this.IsPressKeyboard)return false;if(!this.PressKeyboardConfig)return false;if(!this.PressKeyboardConfig.PauseUpdate)return false;return true;},//启动|关闭锁指标 aryIndex=[{ IndexID:指标ID, LockData:{IsLocked:} } ]
|
|
2530
2531
|
this.EnableLockIndex=function(aryIndex){if(!IFrameSplitOperator.IsNonEmptyArray(aryIndex))return false;var mapIndex=new _map2.default();for(var i=0;i<aryIndex.length;++i){var item=aryIndex[i];if(item.IndexID&&item.LockData)mapIndex.set(item.IndexID,item);}var aryUpdate=[];for(var i=0;i<this.WindowIndex.length;++i){var item=this.WindowIndex[i];if(!item)continue;if(mapIndex.has(item.ID)){var mapItem=mapIndex.get(item.ID);item.SetLock(mapItem.LockData);//设置锁
|
|
2531
2532
|
aryUpdate.push({ID:i});}}for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];if(!IFrameSplitOperator.IsNonEmptyArray(item.OverlayIndex))continue;for(var j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];var script=overlayItem.Script;if(mapIndex.has(script.ID)){var mapItem=mapIndex.get(script.ID);script.SetLock(mapItem.LockData);aryUpdate.push({OverlayID:overlayItem.Identify});}}}if(!IFrameSplitOperator.IsNonEmptyArray(aryUpdate))return false;this.UpdateWindowIndexV2(aryUpdate);return true;};this.TryClickLock=function(x,y){if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];var chartLock=item.Frame.LockPaint;if(!chartLock||!chartLock.LockRect)continue;var tooltip=new TooltipData();if(!chartLock.GetTooltipData(x,y,tooltip))continue;tooltip.HQChart=this;var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_CLICK_INDEX_LOCK);if(event&&event.Callback){var sendData={FrameID:item.Frame.Identify,Data:tooltip};event.Callback(event,sendData,this);}if(tooltip.Data.Callback)tooltip.Data.Callback(tooltip);return true;}return false;};this.RecvOverlayIndex=function(identify,data){var overlayIndex=this.GetOverlayIndexByIdentify(identify);if(overlayIndex==null){console.warn('[JSChartContainer::RecvOverlayIndex] can\'t find overlay index. [identify='+identify+']');return;}var script=overlayIndex.OverlayItem.Script;if(!script)return;if(typeof script.RecvSubscribeData!="function")return;var kData=this.GetKData();if(!kData)return;script.RecvSubscribeData(data,this,overlayIndex.WindowIndex,kData);};this.UpdateIndexTemporaryAttribute=function(windowIndex,aryAttribute){if(windowIndex<0)return;if(!IFrameSplitOperator.IsNonEmptyArray(aryAttribute))return;if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return;var mainFrame=this.Frame.SubFrame[windowIndex].Frame;this.IndexTemporaryAttribute[windowIndex]=[];var aryTemporaryAttribute=this.IndexTemporaryAttribute[windowIndex];for(var i=0;i<aryAttribute.length;++i){var item=aryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){var backup=mainFrame.ChartBorder.BottomSpace;mainFrame.ChartBorder.BottomSpace=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){var backup=mainFrame.ChartBorder.TopSpace;mainFrame.ChartBorder.TopSpace=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){var backup=mainFrame.YSplitOperator.IsShowLeftText;mainFrame.YSplitOperator.IsShowLeftText=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){var backup=mainFrame.YSplitOperator.IsShowRightText;mainFrame.YSplitOperator.IsShowRightText=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SPLITTYPE){var backup=mainFrame.YSplitOperator.SplitType;mainFrame.YSplitOperator.SplitType=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED){var backup=mainFrame.HorizontalReserved;mainFrame.HorizontalReserved=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT){var backup=mainFrame.ChartBorder.TitleHeight;mainFrame.ChartBorder.TitleHeight=item.Value;aryTemporaryAttribute.push({Name:item.Name,Value:item.Value,BackupValue:backup});}}};this.RestoreIndexTemporaryAttribute=function(windowIndex){if(windowIndex<0)return;if(!this.Frame||!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return;var aryTemporaryAttribute=this.IndexTemporaryAttribute[windowIndex];if(!IFrameSplitOperator.IsNonEmptyArray(aryTemporaryAttribute))return;var mainFrame=this.Frame.SubFrame[windowIndex].Frame;for(var i=0;i<aryTemporaryAttribute.length;++i){var item=aryTemporaryAttribute[i];if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.BOTTOMSPACE){mainFrame.ChartBorder.BottomSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TOPSPACE){mainFrame.ChartBorder.TopSpace=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWLEFTTEXT){mainFrame.YSplitOperator.IsShowLeftText=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SHOWRIGHTTEXT){mainFrame.YSplitOperator.IsShowRightText=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.SPLITTYPE){mainFrame.YSplitOperator.SplitType=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.HRESERVED){mainFrame.HorizontalReserved=item.BackupValue;}else if(item.Name==JSCHART_TEMPORARY_ATTRIBUTE.MAINFRAME.TITLEHEIGHT){mainFrame.ChartBorder.TitleHeight=item.BackupValue;}}};//把图形数据格式化导出, 给AI分析
|
|
2532
|
-
this.GetGraphicsDescription=function(option){var data=this.GetGraphicsRawDescription(option);if(!data||!IFrameSplitOperator.IsNonEmptyArray(data.AryData))return null;var strTitle=data.Title;strTitle+="包含以下数据:\r\n";strContent="";for(var i=0;i<data.AryData.length;++i){var item=data.AryData[i];strTitle+=i+1+'. '+item.Title+'\r\n';strContent+=item.Content;}var date=new Date();strTitle+='\u6570\u636E\u521B\u5EFA\u65F6\u95F4:'+date+'\r\n';var strDescription=strTitle+"\r\n\r\n====================完整数据部分========================\r\n\r\n\r\n"+strContent;
|
|
2533
|
+
this.GetGraphicsDescription=function(option){var data=this.GetGraphicsRawDescription(option);if(!data||!IFrameSplitOperator.IsNonEmptyArray(data.AryData))return null;var strTitle=data.Title;strTitle+="包含以下数据:\r\n";strContent="";for(var i=0;i<data.AryData.length;++i){var item=data.AryData[i];var strCount="";if(IFrameSplitOperator.IsNumber(item.Count))strCount=item.Count+'\u6761';strTitle+=i+1+'. '+item.Title+' '+strCount+'\r\n';strContent+=item.Content;}var date=new Date();strTitle+='\u6570\u636E\u521B\u5EFA\u65F6\u95F4:'+date+'\r\n';var strDescription=strTitle+"\r\n\r\n====================完整数据部分========================\r\n\r\n\r\n"+strContent;var result={Symbol:this.Symbol,Name:this.Name,Data:strDescription,ChartType:data.ChartType};if(IFrameSplitOperator.IsNumber(data.Period))result.Period=data.Period;if(IFrameSplitOperator.IsNumber(data.Right))result.Right=data.Right;if(IFrameSplitOperator.IsNumber(data.DayCount))result.DayCount=data.DayCount;return result;};//获取原始数据, 给AI分析
|
|
2533
2534
|
this.GetGraphicsRawDescription=function(option){JSConsole.Chart.Warn('[JSChartContainer::GetGraphicsRawDescription] '+name+'::GetGraphicsRawDescription not implemented.');return null;};//指标数据
|
|
2534
|
-
this.GetIndexDataDescription=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.WindowIndex))return null;var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var range=null;if(option&&option.
|
|
2535
|
+
this.GetIndexDataDescription=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.WindowIndex))return null;var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var aryKData=kData.Data;var range=null;if(option&&option.DataRange){range=kData.GetDataRange(option.DataRange);}var mapIndex=new _map2.default();//key=id, value={ IndexName:, ID:, AryData:[] }
|
|
2535
2536
|
for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(!item||!item.ExportData)continue;if(["Main-KLine","Minute-Line","Minute-Average-Line","Minute-Vol-Bar","Minute-BuySell-Bar"].includes(item.Identify))continue;var guid=item.Identify;var data=item.ExportData(aryKData,range);if(!IFrameSplitOperator.IsNonEmptyArray(data))conintue;var indexData=null;if(mapIndex.has(guid)){indexData=mapIndex.get(guid);}else{indexData={Guid:guid,Name:item.IndexName,ID:item.IndexID,AryData:[]};mapIndex.set(guid,indexData);}for(var j=0;j<data.length;++j){var subItem=data[j];var outName="未定义名字";if(subItem.Name)outName=subItem.Name;indexData.AryData.push({Name:''+outName,Data:subItem.Data,Description:subItem.Description});}}//叠加指标
|
|
2536
2537
|
for(var i=0,j=0,k=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];for(j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];if(!IFrameSplitOperator.IsNonEmptyArray(overlayItem.ChartPaint))continue;for(k=0;k<overlayItem.ChartPaint.length;++k){var chart=overlayItem.ChartPaint[k];var guid=chart.Identify;if(!chart||!chart.ExportData)continue;var data=chart.ExportData(aryKData,range);if(!IFrameSplitOperator.IsNonEmptyArray(data))continue;var indexData=null;if(mapIndex.has(guid)){indexData=mapIndex.get(guid);}else{indexData={Guid:guid,Name:chart.IndexName,ID:chart.IndexID,AryData:[]};mapIndex.set(guid,indexData);}for(var index=0;index<data.length;++index){var subItem=data[index];var outName="未定义名字";if(subItem.Name)outName=subItem.Name;indexData.AryData.push({Name:''+outName,Data:subItem.Data,Description:subItem.Description});}}}}if(mapIndex.size<=0)return null;var aryData=[];var bMinutePeriod=ChartData.IsMinutePeriod(this.Period,true);var startIndex=0,endIndex=0;if(range){startIndex=range.Start.Index;endIndex=range.End.Index;}for(var i=0;i<this.WindowIndex.length;++i){var item=this.WindowIndex[i];if(!item)continue;var guid=item.Guid;if(!mapIndex.has(guid))continue;var indexData=mapIndex.get(guid);var data=this.GetIndexItemDescription(aryKData,indexData,item,range);if(data)aryData.push(data);}for(var i=0,j=0,k=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i];for(j=0;j<item.OverlayIndex.length;++j){var overlayItem=item.OverlayIndex[j];var indexInfo=overlayItem.Script;var guid=overlayItem.Identify;if(!mapIndex.has(guid))continue;var indexData=mapIndex.get(guid);var data=this.GetIndexItemDescription(aryKData,indexData,indexInfo,range);if(data)aryData.push(data);}}return aryData;};this.GetIndexItemDescription=function(aryKData,indexData,indexInfo,range){var bMinuteChart=this.IsMinuteContainer();var bMinutePeriod=false;if(bMinuteChart)bMinutePeriod=true;else bMinutePeriod=ChartData.IsMinutePeriod(this.Period,true);var startIndex=0,endIndex=aryKData.length-1;if(range){startIndex=range.Start.Index;endIndex=range.End.Index;}var strTitle=this.Name+' '+this.Symbol+' '+indexInfo.Name+'\u6307\u6807\u6570\u636E';var strText='\u3010'+strTitle+'\u3011\r\n';var strValue=null;if(indexInfo.Description)strValue=indexInfo.Description;if(indexInfo.FullDescription)strValue=indexInfo.FullDescription;strText+='\u6307\u6807\u89E3\u91CA:'+strValue+'\r\n';if(indexInfo.Script)strText+='\u6307\u6807\u516C\u5F0F:\r\n----------------------\r\n'+indexInfo.Script+'\r\n------------------------\r\n';if(IFrameSplitOperator.IsNonEmptyArray(indexInfo.Arguments))//参数
|
|
2537
|
-
{strValue="";for(var i=0;i<indexInfo.Arguments.length;++i){var argItem=indexInfo.Arguments[i];strValue+=argItem.Name+'='+argItem.Value+',';}strText+='\u6307\u6807\u53C2\u6570:'+strValue+'\r\n';}strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Time:时间 格式hhmm\r\n";strText+="原始数据如下\r\n";strText+="Date,Time";for(var i=0;i<indexData.AryData.length;++i){var indexItem=indexData.AryData[i];strText+=','+indexItem.Name;}strText+="\r\n";for(var i=startIndex;i<=endIndex&&i<aryKData.length;++i){var kItem=aryKData[i];var time=null;if(bMinutePeriod)time=kItem.Time;strText+=kItem.Date+','+time;for(var j=0;j<indexData.AryData.length;++j){var indexItem=indexData.AryData[j];var value=null;if(indexItem.Data)value=indexItem.Data[i];strText+=','+value;}strText+="\r\n";}strText+="\r\n\r\n";return{Title:strTitle,Content:strText,Type:"指标数据"};};}function GetDevicePixelRatio(){if(typeof window=='undefined')return 1;return window.devicePixelRatio||1;}function GetFontHeight(context,font,word){if(!context)return null;if(font)context.font=font;var text='擎';if(IFrameSplitOperator.IsString(word))text=word;var fontInfo=context.measureText(text);var textHeight=fontInfo.fontBoundingBoxAscent+fontInfo.fontBoundingBoxDescent;if(!IFrameSplitOperator.IsNumber(textHeight))textHeight=fontInfo.width+2*GetDevicePixelRatio();return textHeight;}function IsPhoneWeb(){var userAgentInfo=navigator.userAgent;var Agents=new Array("Android","iPhone","SymbianOS","Windows Phone","iPad","iPod");for(var v=0;v<Agents.length;v++){if(userAgentInfo.indexOf(Agents[v])>0)return true;}return false;}function OnKeyDown(e)//键盘事件
|
|
2538
|
+
{strValue="";for(var i=0;i<indexInfo.Arguments.length;++i){var argItem=indexInfo.Arguments[i];strValue+=argItem.Name+'='+argItem.Value+',';}strText+='\u6307\u6807\u53C2\u6570:'+strValue+'\r\n';}strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Time:时间 格式hhmm\r\n";strText+="原始数据如下\r\n";strText+="Date,Time";for(var i=0;i<indexData.AryData.length;++i){var indexItem=indexData.AryData[i];strText+=','+indexItem.Name;}strText+="\r\n";var count=0;for(var i=startIndex;i<=endIndex&&i<aryKData.length;++i){var kItem=aryKData[i];var time=null;if(bMinutePeriod)time=kItem.Time;strText+=kItem.Date+','+time;for(var j=0;j<indexData.AryData.length;++j){var indexItem=indexData.AryData[j];var value=null;if(indexItem.Data)value=indexItem.Data[i];strText+=','+value;}strText+="\r\n";++count;}strText+="\r\n\r\n";return{Title:strTitle,Content:strText,Type:"指标数据",Count:count};};}function GetDevicePixelRatio(){if(typeof window=='undefined')return 1;return window.devicePixelRatio||1;}function GetFontHeight(context,font,word){if(!context)return null;if(font)context.font=font;var text='擎';if(IFrameSplitOperator.IsString(word))text=word;var fontInfo=context.measureText(text);var textHeight=fontInfo.fontBoundingBoxAscent+fontInfo.fontBoundingBoxDescent;if(!IFrameSplitOperator.IsNumber(textHeight))textHeight=fontInfo.width+2*GetDevicePixelRatio();return textHeight;}function IsPhoneWeb(){var userAgentInfo=navigator.userAgent;var Agents=new Array("Android","iPhone","SymbianOS","Windows Phone","iPad","iPod");for(var v=0;v<Agents.length;v++){if(userAgentInfo.indexOf(Agents[v])>0)return true;}return false;}function OnKeyDown(e)//键盘事件
|
|
2538
2539
|
{if(this.JSChartContainer&&this.JSChartContainer.OnKeyDown)this.JSChartContainer.OnKeyDown(e);}function OnKeyUp(e)//键盘事件
|
|
2539
2540
|
{if(this.JSChartContainer&&this.JSChartContainer.OnKeyUp)this.JSChartContainer.OnKeyUp(e);}function OnWheel(e)//上下滚动事件
|
|
2540
2541
|
{if(this.JSChartContainer&&this.JSChartContainer.OnWheel)this.JSChartContainer.OnWheel(e);}function ToFixed(number,precision){var b=1;if(isNaN(number))return number;if(number<0)b=-1;var multiplier=Math.pow(10,precision);var value=Math.round(Math.abs(number)*multiplier)/multiplier*b;if(/^(\d+(?:\.\d+)?)(e)([\-]?\d+)$/.test(value))var s=value.toFixed2(precision);else var s=value.toString();var rs=s.indexOf('.');if(rs<0&&precision>0){rs=s.length;s+='.';}while(s.length<=rs+precision){s+='0';}return s;}function IsRectOverlap(rt,rt2){if(Math.max(rt.Left,rt2.Left)<Math.min(rt.Right,rt2.Right)&&Math.max(rt.Top,rt2.Top)<Math.min(rt.Bottom,rt2.Bottom))return true;return false;}//获取文字高度和宽度
|
|
@@ -3688,13 +3689,15 @@ for(var i=0;i<indexCount;++i){var item=date[i];if(item>=firstItem.Date){indexSta
|
|
|
3688
3689
|
this.FixKData=function(aryKData,period){if(ChartData.IsDayPeriod(period,true)){return this.FixKData_Day(aryKData);}else if(ChartData.IsMinutePeriod(period,true)){return this.FixKData_Minute(aryKData);}return null;};this.FixKData_Day=function(aryKData){var result=[];var nOverlayDataCount=aryKData.length;for(var i=0,j=0;i<this.Data.length;){var kItem=this.Data[i];if(j<nOverlayDataCount){var fItem=aryKData[j];if(fItem.Date>kItem.Date){++i;continue;}}if(j+1<nOverlayDataCount){var fItem=aryKData[j];var fItem2=aryKData[j+1];if(fItem.Date<kItem.Date&&fItem2.Date<=kItem.Date){++j;continue;}}var item=new HistoryData();item.Date=kItem.Date;var index=j<nOverlayDataCount?j:nOverlayDataCount-1;var fItem=aryKData[index];item.Close=fItem.Close;item.High=fItem.High;item.Low=fItem.Low;item.Open=fItem.Open;item.YClose=fItem.YClose;item.Amount=fItem.Amount;item.Vol=fItem.Vol;item.ExDate=fItem.Date;//对应叠加数据的日期 调试用
|
|
3689
3690
|
result[i]=item;++i;}return result;};this.FixKData_Minute=function(aryKData){var result=[];var nOverlayDataCount=aryKData.length;for(var i=0,j=0;i<this.Data.length;){var kItem=this.Data[i];var kDateTime=ChartData.DateTimeToNumber(kItem);if(j<nOverlayDataCount){var fItem=aryKData[j];var fDateTime=ChartData.DateTimeToNumber(fItem);if(fDateTime>kDateTime){++i;continue;}}if(j+1<nOverlayDataCount){var fItem=aryKData[j];var fItem2=aryKData[j+1];var fDateTime=ChartData.DateTimeToNumber(fItem);var fDateTime2=ChartData.DateTimeToNumber(fItem2);if(fDateTime<kDateTime&&fDateTime2<=kDateTime){++j;continue;}}var item=new HistoryData();item.Date=kItem.Date;item.Time=kItem.Time;var index=j<nOverlayDataCount?j:nOverlayDataCount-1;var fItem=aryKData[index];item.Close=fItem.Close;item.High=fItem.High;item.Low=fItem.Low;item.Open=fItem.Open;item.YClose=fItem.YClose;item.Amount=fItem.Amount;item.Vol=fItem.Vol;item.ExDate=fItem.Date;//对应叠加数据的日期 调试用
|
|
3690
3691
|
item.ExTime=fItem.Time;//对应叠加数据的日期 调试用
|
|
3691
|
-
result[i]=item;++i;}return result;}
|
|
3692
|
-
this.GetDataRange=function(start,end){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var firstItem=this.Data[0];var endItem=this.Data[this.Data.length-1];var range={Start:{Index:0,Date:firstItem.Date,Time:firstItem.Time},End:{Index:this.Data.length-1,Date:endItem.Date,Time:endItem.Time}};//{Start:{Date, Time, Index,}, End:{Date, Time, Index}}
|
|
3692
|
+
result[i]=item;++i;}return result;};this.GetDataRangeByCount=function(count){if(!IFrameSplitOperator.IsPlusNumber(count))return null;if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var endItem=this.Data[this.Data.length-1];var endIndex=this.Data.length-1;var startIndex=endIndex-count;if(startIndex<0)startIndex=0;var startItem=this.Data[startIndex];var range={Start:{Index:startIndex,Date:startItem.Date,Time:startItem.Time},End:{Index:endIndex,Date:endItem.Date,Time:endItem.Time}};return range;};this.GetDataRangeByDateTime=function(start,end){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var firstItem=this.Data[0];var endItem=this.Data[this.Data.length-1];var range={Start:{Index:0,Date:firstItem.Date,Time:firstItem.Time},End:{Index:this.Data.length-1,Date:endItem.Date,Time:endItem.Time}};//{Start:{Date, Time, Index,}, End:{Date, Time, Index}}
|
|
3693
3693
|
//查找起始位置
|
|
3694
3694
|
for(var i=0;i<this.Data.length;++i){var item=this.Data[i];var bFind=false;if(IFrameSplitOperator.IsNumber(start.Time))//日期+时间
|
|
3695
3695
|
{if(item.Date>start.Date||item.Date===start.Date&&item.Time>=start.Time)bFind=true;}else{if(item.Date>=start.Date)bFind=true;}if(bFind){range.Start={Index:i,Date:item.Date};break;}}//查结束位置
|
|
3696
3696
|
for(var i=this.Data.length-1;i>=0;--i){var item=this.Data[i];var bFind=false;if(IFrameSplitOperator.IsNumber(end.Time))//日期+时间
|
|
3697
|
-
{if(item.Date<end.Date||item.Date===end.Date&&item.Time<=end.Time)bFind=true;}else{if(item.Date<=end.Date)bFind=true;}if(bFind){range.End={Index:i,Date:item.Date};break;}}return range;}
|
|
3697
|
+
{if(item.Date<end.Date||item.Date===end.Date&&item.Time<=end.Time)bFind=true;}else{if(item.Date<=end.Date)bFind=true;}if(bFind){range.End={Index:i,Date:item.Date};break;}}return range;};//获取K线的索引范围
|
|
3698
|
+
// { Date:{ start={ Date, Time }, End:{Date:,Time: } }, //日期范围
|
|
3699
|
+
// Count: 最新的几条
|
|
3700
|
+
this.GetDataRange=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;if(!option)return null;if(option.Date)return this.GetDataRangeByDateTime(option.Date.Start,option.Date.End);else if(IFrameSplitOperator.IsNumber(option.Count))return this.GetDataRangeByCount(option.Count);return null;};//导出单数组数据
|
|
3698
3701
|
this.ExportArrayData=function(aryKData,option){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var start=0,end=this.Data.length-1;//限制范围
|
|
3699
3702
|
if(option&&option.Start&&option.End&&IFrameSplitOperator.IsNumber(option.Start.Index)&&IFrameSplitOperator.IsNumber(option.End.Index)){start=option.Start.Index;end=option.End.Index;}var aryData=[];for(var i=start;i<=end&&i<this.Data.length;++i){aryData[i]=this.Data[i];}return aryData;};this.ExportBoolData=function(aryKData,option){if(!IFrameSplitOperator.IsNonEmptyArray(this.Data))return null;var start=0,end=this.Data.length-1;//限制范围
|
|
3700
3703
|
if(option&&option.Start&&option.End&&IFrameSplitOperator.IsNumber(option.Start.Index)&&IFrameSplitOperator.IsNumber(option.End.Index)){start=option.Start.Index;end=option.End.Index;}var aryValue=[];for(var i=start;i<=end&&i<this.Data.length;++i){var item=this.Data[i];aryValue[i]=false;if(!IFrameSplitOperator.IsPlusNumber(item))continue;aryValue[i]=true;}return aryValue;};//导出K线数据
|
|
@@ -5820,7 +5823,9 @@ IFrameSplitOperator.IsObjectExist=function(obj){if(obj===undefined)return false;
|
|
|
5820
5823
|
IFrameSplitOperator.IsBool=function(value){if(value===true||value===false)return true;return false;};IFrameSplitOperator.IsString=function(value){var type=typeof value==='undefined'?'undefined':(0,_typeof3.default)(value);if(type=='string')return true;return false;};//是否是非空的数组
|
|
5821
5824
|
IFrameSplitOperator.IsNonEmptyArray=function(ary){if(!ary)return false;if(!Array.isArray(ary))return false;return ary.length>0;};IFrameSplitOperator.IsArray=function(ary){if(!ary)return false;if(!Array.isArray(ary))return false;return true;};IFrameSplitOperator.IsFloat=function(value){if(value===undefined)return false;if(value==null)return false;if(isNaN(value))return false;return value!=parseInt(value);};//是否有效
|
|
5822
5825
|
IFrameSplitOperator.IsVaild=function(value){if(isNaN(value))return false;if(value==null)return false;if(value===undefined)return false;return true;};IFrameSplitOperator.IsUndefined=function(value){return value===undefined;};IFrameSplitOperator.IsObject=function(value){return value instanceof Object;};IFrameSplitOperator.RemoveZero=function(strValue){while(strValue.length>0){var index=strValue.length-1;var ch=strValue[index];if(ch=="0"){strValue=strValue.substr(0,index);}else if(ch=="."){strValue=strValue.substr(0,index);break;}else{break;}}return strValue;};//移除代码市场后缀
|
|
5823
|
-
IFrameSplitOperator.RemoveMarketSuffix=function(symbol){if(!symbol)return symbol;var pos=symbol.lastIndexOf(".");if(pos>0)return symbol.substring(0,pos);return symbol;};IFrameSplitOperator.IsNumberString=function(strValue){return /^\d+$/.test(strValue);}
|
|
5826
|
+
IFrameSplitOperator.RemoveMarketSuffix=function(symbol){if(!symbol)return symbol;var pos=symbol.lastIndexOf(".");if(pos>0)return symbol.substring(0,pos);return symbol;};IFrameSplitOperator.IsNumberString=function(strValue){return /^\d+$/.test(strValue);};//是否包含在这个区间内[start, end] dateType 0=日期 1=日期+时间
|
|
5827
|
+
IFrameSplitOperator.IsIncludeDateRange=function(start,end,item){var dataType=arguments.length>3&&arguments[3]!==undefined?arguments[3]:0;if(!start||!end)return false;if(!item)return false;if(dataType===1){if(item.Date<start.Date)return false;if(item.Date==start.Date&&item.Time<start.Time)return false;if(item.Date>end.Date)return false;if(item.Date==end.Date&&item.Time>end.Time)return false;return true;}else{if(item.Date<start.Date)return false;if(item.Date>end.Date)return false;return true;}};//
|
|
5828
|
+
IFrameSplitOperator.ReadNumberValue=function(value){var defaultValue=arguments.length>1&&arguments[1]!==undefined?arguments[1]:null;var option=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;if(!IFrameSplitOperator.IsNumber(value))return defaultValue;return value;};IFrameSplitOperator.ReadStringValue=function(value){var defaultValue=arguments.length>1&&arguments[1]!==undefined?arguments[1]:null;var option=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;if(!IFrameSplitOperator.IsString(value))return defaultValue;return value;};function FrameSplitKLinePriceY(){this.newMethod=IFrameSplitOperator;//派生
|
|
5824
5829
|
this.newMethod();delete this.newMethod;this.CoordinateType=0;//坐标类型 0=普通坐标 1=百分比坐标 (右边坐标刻度) 2=对数对标 3=等比坐标 4=等分坐标 5=黄金分割
|
|
5825
5830
|
this.Symbol;this.Data;//K线数据 (计算百分比坐标)
|
|
5826
5831
|
this.FrameSplitData2;//坐标轴分割方法(计算百分比刻度)
|
|
@@ -8131,7 +8136,7 @@ this.Frame.Data=this.ChartPaint[0].Data;for(var i in this.OverlayChartPaint)//
|
|
|
8131
8136
|
{var showCount=customShow.PageSize;for(var i=0;i<this.Frame.SubFrame.length;++i){var item=this.Frame.SubFrame[i].Frame;item.XPointCount=showCount;}}if(IFrameSplitOperator.IsNumber(customShow.Position)){var xCount=this.Frame.SubFrame[0].Frame.XPointCount;var moveStep=parseInt(xCount/2);index-=moveStep;if(index<0)index=0;}this.ChartPaint[0].Data.DataOffset=index;this.CursorIndex=0;};this.OnDragSelectRectMouseUp=function(e){var paint=this.GetRectSelectPaint();if(!paint)return;var selectData=paint.GetSelectRectData();if(!selectData)return;var pixelTatio=GetDevicePixelRatio();var corssCursor=this.ChartCorssCursor;//十字光标
|
|
8132
8137
|
var x=corssCursor.LastPoint.X/pixelTatio;var y=corssCursor.LastPoint.Y/pixelTatio;if(e){var data={Chart:this,X:x,Y:y,SelectData:selectData,//区间选择的数据
|
|
8133
8138
|
RectSelectPaint:paint//区间选择背景
|
|
8134
|
-
};e.data=data;}var aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,selectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[selectData]}}];var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_DRAG_SELECT_RECT_MOUSEUP);if(event){var sendData={X:x,Y:y,SelectData:selectData,//区间选择的数据
|
|
8139
|
+
};e.data=data;}var aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,selectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[selectData]}},{Name:"区间分析",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_DATA_ANALYZE_ID,Args:[selectData]}}];var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_DRAG_SELECT_RECT_MOUSEUP);if(event){var sendData={X:x,Y:y,SelectData:selectData,//区间选择的数据
|
|
8135
8140
|
RectSelectPaint:paint,//区间选择背景
|
|
8136
8141
|
AryMenu:null,PreventDefault:false};event.Callback(event,sendData,this);if(sendData.PreventDefault==true)return;//已被上层替换,不调用默认的网络请求
|
|
8137
8142
|
aryMenu=sendData.AryMenu;}if(this.IsShowSelectRectDialog())//区间统计
|
|
@@ -8770,7 +8775,7 @@ var bShowCorss=false;//十字光标十字线
|
|
|
8770
8775
|
var bCorssDrawKLine=false;var bCorssDrawVaildTime=false;var bCorssDrawPoint=false;var bCorssBCClick=false;var bCorssShowIncrease=false;var crossXTextAlign=-1;if(this.ChartCorssCursor){bShowCorss=this.ChartCorssCursor.IsShowCorss;bCorssDrawKLine=this.ChartCorssCursor.IsOnlyDrawKLine&&this.ChartCorssCursor.IsShowClose;bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;bCorssBCClick=this.ChartCorssCursor.EnableDBClick;bCorssShowIncrease=this.ChartCorssCursor.StringFormatX.RangeIncrease.IsShow;crossXTextAlign=this.ChartCorssCursor.BottomConfig.Align;}var bPopMinuteChart=false;if(this.PopMinuteChart)bPopMinuteChart=true;var bRButtonSelectRect=false,bLButtonSelectRect=false;if(this.ChartDragSelectRect){bRButtonSelectRect=this.ChartDragSelectRect.EnableRButton;bLButtonSelectRect=this.ChartDragSelectRect.EnableLButton;}var kItem=null;if(frameID>=0&&option&&IFrameSplitOperator.IsNumber(option.CursorIndex)){var kData=this.GetKData();if(kData&&IFrameSplitOperator.IsNonEmptyArray(kData.Data)){var dataIndex=kData.DataOffset+option.CursorIndex;if(dataIndex>=0&&dataIndex<kData.Data.length)kItem=kData.Data[dataIndex];}}//K线浮框 是否显示指标信息
|
|
8771
8776
|
var bTooltipDialogShowIndexTitle=false;if(this.DialogTooltip){bTooltipDialogShowIndexTitle=this.DialogTooltip.IndexTitle.Enable;}var bShowMaxMin=false;var klineChart=this.ChartPaint[0];if(klineChart)bShowMaxMin=klineChart.IsShowMaxMinPrice;var aryMenu=[{Name:"分析周期",SubMenu:[{Name:"日线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[0]},Checked:this.Period==0},{Name:"周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[1]},Checked:this.Period==1},{Name:"双周线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[21]},Checked:this.Period==21},{Name:"月线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[2]},Checked:this.Period==2},{Name:"季线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[9]},Checked:this.Period==9},{Name:"半年",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[22]},Checked:this.Period==22},{Name:"年线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[3]},Checked:this.Period==3},{Name:"1分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[4]},Checked:this.Period==4},{Name:"5分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[5]},Checked:this.Period==5},{Name:"15分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[6]},Checked:this.Period==6},{Name:"30分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[7]},Checked:this.Period==7},{Name:"60分",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[8]},Checked:this.Period==8},{Name:"2小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[11]},Checked:this.Period==11},{Name:"4小时",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[12]},Checked:this.Period==12},{Name:"分笔",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[10]},Checked:this.Period==10},{Name:"自定义周期:3分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20003]},Checked:this.Period==20003},{Name:"自定义周期:35分钟",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[20035]},Checked:this.Period==20035},{Name:"自定义周期:8日",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PERIOD_ID,Args:[40008]},Checked:this.Period==40008}]},{Name:"指标切换",SubMenu:[{Name:"均线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"均线"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BOLL"]}},{Name:"MACD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD"]}},{Name:"MACD(粗)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"MACD2"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"KDJ"]}},{Name:"VOL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"VOL"]}},{Name:"RSI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"RSI"]}},{Name:"BRAR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"BRAR"]}},{Name:"WR",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INDEX_ID,Args:[frameID,"WR"]}}]},{Name:"五彩K线",SubMenu:[{Name:"十字星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-十字星"]}},{Name:"早晨之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-早晨之星"]}},{Name:"垂死十字",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-垂死十字"]}},{Name:"三只乌鸦",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-三只乌鸦"]}},{Name:"光脚阴线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-光脚阴线"]}},{Name:"黄昏之星",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COLOR_INDEX_ID,Args:["五彩K线-黄昏之星"]}}]},{Name:"专家系统",SubMenu:[{Name:"BIAS",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BIAS"]}},{Name:"CCI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-CCI"]}},{Name:"DMI",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-DMI"]}},{Name:"KD",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KD"]}},{Name:"BOLL",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-BOLL"]}},{Name:"KDJ",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_TRADE_INDEX_ID,Args:["交易系统-KDJ"]}}]},{Name:"信息地雷",SubMenu:[{Name:"公告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["公告",!aryKLineInfo.includes("AnnouncementInfo")]},Checked:aryKLineInfo.includes("AnnouncementInfo")},{Name:"业绩预告",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["业绩预告",!aryKLineInfo.includes("PforecastInfo")]},Checked:aryKLineInfo.includes("PforecastInfo")},{Name:"调研",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["调研",!aryKLineInfo.includes("ResearchInfo")]},Checked:aryKLineInfo.includes("ResearchInfo")},{Name:"大宗交易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["大宗交易",!aryKLineInfo.includes("BlockTrading")]},Checked:aryKLineInfo.includes("BlockTrading")},{Name:"龙虎榜",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["龙虎榜",!aryKLineInfo.includes("DragonTigerInfo")]},Checked:aryKLineInfo.includes("DragonTigerInfo")},{Name:"互动易",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["互动易",!aryKLineInfo.includes("InvestorInfo")]},Checked:aryKLineInfo.includes("InvestorInfo")},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"显示位置",SubMenu:[{Name:"底部",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[1]},Checked:infoPosition===1},{Name:"K线上",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_INFO_POSITION_ID,Args:[0]},Checked:infoPosition===0}]},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"新闻",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["新闻",!aryKLineInfo.includes("NewsInfo")]},Checked:aryKLineInfo.includes("NewsInfo")},{Name:"除权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_INFO_ID,Args:["除权",!aryKLineInfo.includes("DividendInfo")]},Checked:aryKLineInfo.includes("DividendInfo")}]},{Name:"缺口提示",SubMenu:[{Name:"显示1个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,1]},Checked:priceGap.Enable==true&&priceGap.Count==1},{Name:"显示2个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,2]},Checked:priceGap.Enable==true&&priceGap.Count==2},{Name:"显示3个缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[true,3]},Checked:priceGap.Enable==true&&priceGap.Count==3},{Name:"隐藏缺口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_PRICE_GAP_ID,Args:[false]},Checked:priceGap.Enable==false}]},{Name:"叠加品种",SubMenu:[{Name:"上证指数",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000001.sh",!aryOverlaySymbol.includes("000001.sh")]},Checked:aryOverlaySymbol.includes("000001.sh")},{Name:"深证成指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399001.sz",!aryOverlaySymbol.includes("399001.sz")]},Checked:aryOverlaySymbol.includes("399001.sz")},{Name:"中小板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399005.sz",!aryOverlaySymbol.includes("399005.sz")]},Checked:aryOverlaySymbol.includes("399005.sz")},{Name:"创业板指",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["399006.sz",!aryOverlaySymbol.includes("399006.sz")]},Checked:aryOverlaySymbol.includes("399006.sz")},{Name:"沪深300",Data:{ID:JSCHART_MENU_ID.CMD_OVERLAY_SYMBOL_ID,Args:["000300.sh",!aryOverlaySymbol.includes("000300.sh")]},Checked:aryOverlaySymbol.includes("000300.sh")}]},{Name:"主图线型",SubMenu:[{Name:"K线(实心)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[0]},Checked:klineType==0},{Name:"K线(空心阳线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[3]},Checked:klineType==3},{Name:"K线(空心阴线)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[20]},Checked:klineType==20},{Name:"K线(空心)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[6]},Checked:klineType==6},{Name:"美国线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:false}]},Checked:klineType==2&&!bThinAKBar},{Name:"美国线(细)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[2,true,{IsThinAKBar:true}]},Checked:klineType==2&&bThinAKBar},{Name:"收盘线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[1]},Checked:klineType==1},{Name:"收盘面积",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[4]},Checked:klineType==4},{Name:"Heikin Ashi",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[11]},Checked:klineType==11},{Name:"Line Break",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[12]},Checked:klineType==12},{Name:"High-low",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[13]},Checked:klineType==13},{Name:"HLC Area",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[15]},Checked:klineType==15},{Name:"HLC Bars",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_KLINE_TYPE_ID,Args:[19]},Checked:klineType==19}]},{Name:"坐标类型",SubMenu:[{Name:"反转坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{IsReverse:coordinateType==0}]},Checked:coordinateType==1},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"普通坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:0}]},Checked:yCoordinateType==0},{Name:"百分比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:1}]},Checked:yCoordinateType==1},{Name:"对数坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:2}]},Checked:yCoordinateType==2},{Name:"等比坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:3}]},Checked:yCoordinateType==3},{Name:"等分坐标",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:4}]},Checked:yCoordinateType==4},{Name:"黄金分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_COORDINATETYPE_ID,Args:[{Type:5}]},Checked:yCoordinateType==5}]},{Name:"指标窗口个数",SubMenu:[{Name:"1个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[2]},Checked:2==windowCount},{Name:"2个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[3]},Checked:3==windowCount},{Name:"3个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[4]},Checked:4==windowCount},{Name:"4个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[5]},Checked:5==windowCount},{Name:"5个窗口",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_WINDOW_COUNT_ID,Args:[6]},Checked:6==windowCount}]},{Name:"十字光标",SubMenu:[{Name:"显示",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_CORSS_LINE_ID,Args:[!bShowCorss]},Checked:bShowCorss},{Name:"显示在K线上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_KLINE_ID,Args:[!bCorssDrawKLine]},Checked:bCorssDrawKLine},{Name:"画在有效X轴上",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID,Args:[!bCorssDrawVaildTime]},Checked:bCorssDrawVaildTime},{Name:"画圆点",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID,Args:[!bCorssDrawPoint]},Checked:bCorssDrawPoint},{Name:"双击显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID,Args:[!bCorssBCClick]},Checked:bCorssBCClick},{Name:"至今涨幅显示/隐藏",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_SHOW_INCREASE_ID,Args:[!bCorssShowIncrease]},Checked:bCorssShowIncrease},{Name:"底部文字对齐",SubMenu:[{Name:"居中",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID,Args:[1]},Checked:crossXTextAlign===1},{Name:"左对齐",Data:{ID:JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID,Args:[0]},Checked:crossXTextAlign===0}]}]},{Name:"其他设置",SubMenu:[{Name:"左键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_LBUTTON_SELECT_RECT_ID,Args:[!bLButtonSelectRect]},Checked:bLButtonSelectRect},{Name:"右键区间选择",Data:{ID:JSCHART_MENU_ID.CMD_RBUTTON_SELECT_RECT_ID,Args:[!bRButtonSelectRect]},Checked:bRButtonSelectRect},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"背景分割",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_BG_SPLIT_ID,Args:[!bBGSpit]},Checked:bBGSpit},{Name:"画图工具",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_DRAWTOOL_ID,Args:[]},Checked:this.IsShowDrawToolDialog()},{Name:"移动筹码图",Data:{ID:bShowStockChip?JSCHART_MENU_ID.CMD_HIDE_STOCKCHIP_ID:JSCHART_MENU_ID.CMD_SHOW_STOCKCHIP_ID,Args:[stockChipConfig.Name,stockChipConfig]},Checked:bShowStockChip},{Name:"双击弹分时图",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_POP_MINUTE_CHART_ID,Args:[!bPopMinuteChart]},Checked:bPopMinuteChart},{Name:"显示走完剩余时间",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_KLINE_DAY_SUMMARY_ID,Args:[!bDaySummary]},Checked:bDaySummary},{Name:"拖动Y轴",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_ZOOM_Y_ID,Args:[{FrameID:0,Enable:!bZoomYCoordinate}]},Checked:bZoomYCoordinate},{Name:"显示最大最小值",Data:{ID:JSCHART_MENU_ID.CMD_SHOW_MAXMIN_ID,Args:[!bShowMaxMin]},Checked:bShowMaxMin},{Name:JSPopMenu.SEPARATOR_LINE_NAME},{Name:"鼠标形状",SubMenu:[{Name:"默认",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["default"]},Checked:this.DefaultCursor=="default"},{Name:"十字线",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DEFAULTCURSOR_ID,Args:["crosshair"]},Checked:this.DefaultCursor=="crosshair"}]},{Name:"语言设置",SubMenu:[{Name:"中文",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["CN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID},{Name:"英语",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["EN"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_ENGLISH_ID},{Name:"繁体",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_LANGUAGE_ID,Args:["TC"]},Checked:this.LanguageID==JSCHART_LANGUAGE_ID.LANGUAGE_TRADITIONAL_CHINESE_ID}]},{Name:"区间选择样式",SubMenu:[{Name:"样式1(默认)",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[0]},Checked:0==this.ChartDragSelectRect.ShowMode},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[1]},Checked:1==this.ChartDragSelectRect.ShowMode},{Name:"样式3",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_RECT_SHOW_MODE_ID,Args:[2]},Checked:2==this.ChartDragSelectRect.ShowMode}]},{Name:"K线浮动框",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:false}]},Checked:!this.DialogTooltip},{Name:"样式1",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:0}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===0},{Name:"样式1-指标显示",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,IndexTitle:{Enable:!bTooltipDialogShowIndexTitle}}]},Checked:bTooltipDialogShowIndexTitle},{Name:"样式2",Data:{ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE,Args:[{Enable:true,Style:1}]},Checked:this.DialogTooltip&&this.DialogTooltip.Style===1}]},{Name:"K线提示框",SubMenu:[{Name:"启用",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{Enable:!this.KLineTooltipConfig.Enable}]},Checked:this.KLineTooltipConfig.Enable},{Name:"键盘左右显示",Data:{ID:JSCHART_MENU_ID.CMD_KLINE_TOOLTIP_ATTRIBUTE,Args:[{EnableKeyDown:!this.KLineTooltipConfig.EnableKeyDown}]},Checked:this.KLineTooltipConfig.EnableKeyDown}]},{Name:"X轴拖动",SubMenu:[{Name:"启动",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[!this.EnableXDrag.Bottom]},Checked:this.EnableXDrag.Bottom},{Name:"左键拖动K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,this.EnableXDrag.LButton.Type===1?0:1]},Checked:this.EnableXDrag.LButton.Type===1&&this.EnableXDrag.Bottom},{Name:"左键缩放K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,this.EnableXDrag.LButton.Type===2?0:2]},Checked:this.EnableXDrag.LButton.Type===2&&this.EnableXDrag.Bottom},{Name:"右键拖动K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,null,this.EnableXDrag.RButton.Type===1?0:1]},Checked:this.EnableXDrag.RButton.Type===1&&this.EnableXDrag.Bottom},{Name:"右键缩放K线",Data:{ID:JSCHART_MENU_ID.CMD_ENABLE_XDRAG_BOTTOM_ID,Args:[null,null,this.EnableXDrag.RButton.Type===2?0:2]},Checked:this.EnableXDrag.RButton.Type===2&&this.EnableXDrag.Bottom}]},{Name:"K线拖动",SubMenu:[{Name:"禁用",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[0]},Checked:0==this.DragMode},{Name:"左键拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[1,false]},Checked:1==(this.DragMode&&!this.KLineDragConfig.EnableShfit)},{Name:"Shift+左键拖拽",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_DRAG_MODE_ID,Args:[1,true]},Checked:1==(this.DragMode&&this.KLineDragConfig.EnableShfit)}]}]}];//复权
|
|
8772
8777
|
if(!MARKET_SUFFIX_NAME.IsSHSZIndex(this.Symbol)&&!MARKET_SUFFIX_NAME.IsBIT(this.Symbol)){var rightMenu={Name:"复权处理",SubMenu:[{Name:"不复权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_RIGHT_ID,Args:[0]},Checked:0==this.Right},{Name:"前复权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_RIGHT_ID,Args:[1]},Checked:1==this.Right},{Name:"后复权",Data:{ID:JSCHART_MENU_ID.CMD_CHANGE_RIGHT_ID,Args:[2]},Checked:2==this.Right}]};aryMenu.splice(1,0,rightMenu);}//删除菜单
|
|
8773
|
-
for(var i=0;i<aryMenu.length;++i){var item=aryMenu[i];if(item.Name=="五彩K线"){if(this.ColorIndex){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除五彩K线",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_COLOR_INDEX_ID}});}}else if(item.Name=="专家系统"){if(this.TradeIndex){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除专家系统",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_TRADE_INDEX_ID}});}}else if(item.Name=="叠加品种"){for(var j=0;j<item.SubMenu.length;++j){if(item.SubMenu[j].Checked){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"取消叠加",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_ALL_OVERLAY_SYMBOL_ID}});break;}}}else if(item.Name=="信息地雷"){for(var j=0;j<item.SubMenu.length;++j){if(item.SubMenu[j].Checked){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除所有",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_ALL_KLINE_INFO_ID}});break;}}}else if(item.Name=="十字光标"){if(kItem){var bLocked=this.IsLockCorssCursor();if(bLocked)item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_UNLOCK_CROSSCURSOR},Checked:bLocked});else item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_LOCK_CROSSCURSOR,Args:[{KItem:{Date:kItem.Date,Time:kItem.Time},Draw:true}]},Checked:bLocked});}}}return aryMenu;};this.PopupSelectRectMenuV2=function(data,e){var _this32=this;var aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,data.SelectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[data.SelectData]}}];var menuData={Menu:aryMenu,Position:JSPopMenu.POSITION_ID.RIGHT_MENU_ID};menuData.ClickCallback=function(data){_this32.OnClickRightMenu(data);};var x=data.X,y=data.Y;this.PopupMenuByRClick(menuData,x,y);};//重新加载画图工具(切换股票|周期)
|
|
8778
|
+
for(var i=0;i<aryMenu.length;++i){var item=aryMenu[i];if(item.Name=="五彩K线"){if(this.ColorIndex){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除五彩K线",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_COLOR_INDEX_ID}});}}else if(item.Name=="专家系统"){if(this.TradeIndex){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除专家系统",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_TRADE_INDEX_ID}});}}else if(item.Name=="叠加品种"){for(var j=0;j<item.SubMenu.length;++j){if(item.SubMenu[j].Checked){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"取消叠加",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_ALL_OVERLAY_SYMBOL_ID}});break;}}}else if(item.Name=="信息地雷"){for(var j=0;j<item.SubMenu.length;++j){if(item.SubMenu[j].Checked){item.SubMenu.push({Name:JSPopMenu.SEPARATOR_LINE_NAME});item.SubMenu.push({Name:"删除所有",Data:{ID:JSCHART_MENU_ID.CMD_DELETE_ALL_KLINE_INFO_ID}});break;}}}else if(item.Name=="十字光标"){if(kItem){var bLocked=this.IsLockCorssCursor();if(bLocked)item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_UNLOCK_CROSSCURSOR},Checked:bLocked});else item.SubMenu.push({Name:"锁十字光标",Data:{ID:JSCHART_MENU_ID.CMD_LOCK_CROSSCURSOR,Args:[{KItem:{Date:kItem.Date,Time:kItem.Time},Draw:true}]},Checked:bLocked});}}}return aryMenu;};this.PopupSelectRectMenuV2=function(data,e){var _this32=this;var aryMenu=[{Name:"区间统计",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_SUMMARY_ID,Args:[e,data.SelectData]}},{Name:"区间放大",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_ZOOM_ID,Args:[data.SelectData]}},{Name:"区间分析",Data:{ID:JSCHART_MENU_ID.CMD_SELECTED_DATA_ANALYZE_ID,Args:[selectData]}}];var menuData={Menu:aryMenu,Position:JSPopMenu.POSITION_ID.RIGHT_MENU_ID};menuData.ClickCallback=function(data){_this32.OnClickRightMenu(data);};var x=data.X,y=data.Y;this.PopupMenuByRClick(menuData,x,y);};//重新加载画图工具(切换股票|周期)
|
|
8774
8779
|
this.ReloadChartDrawPicture=function(){this.ChartDrawPicture=[];if(this.SelectChartDrawPicture)this.SelectChartDrawPicture.IsSelected=false;this.SelectChartDrawPicture=null;this.CurrentChartDrawPicture=null;if(this.ChartDrawStorage){this.ChartDrawStorageCache=this.ChartDrawStorage.GetDrawData({Symbol:this.Symbol,Period:this.Period});}var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_LOAD_DRAWPICTURE);if(event&&event.Callback){var sendData={Symbol:this.Symbol,Period:this.Period,DrawStorage:this.ChartDrawStorage,ChartDrawStorageCache:this.ChartDrawStorageCache};event.Callback(event,sendData,this);}};this.CreateChartDrawPictureByStorage=function()//把缓存(this.ChartDrawStorageCache) 画图工具创建出来
|
|
8775
8780
|
{if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartDrawStorageCache))return;for(var i=0;i<this.ChartDrawStorageCache.length;++i){var item=this.ChartDrawStorageCache[i];if(item.FrameID<0||!this.Frame.SubFrame||this.Frame.SubFrame.length<item.FrameID)continue;var drawPicture=IChartDrawPicture.CreateChartDrawPicture(item);if(!drawPicture)continue;drawPicture.Canvas=this.Canvas;drawPicture.Status=10;drawPicture.Frame=this.Frame.SubFrame[item.FrameID].Frame;//绑定框架坐标
|
|
8776
8781
|
drawPicture.Option=this.ChartDrawOption;drawPicture.HQChart=this;if(drawPicture.ImportStorageData)drawPicture.ImportStorageData(item);if(drawPicture.Period!=this.Period){drawPicture.ChangePeriod(this.Period);}else{drawPicture.UpdateXValue();}drawPicture.ValueToPoint();var self=this;drawPicture.GetActiveDrawPicture=function(){return self.GetActiveDrawPicture();};this.ChartDrawPicture.push(drawPicture);}this.ChartDrawStorageCache=null;//清空缓存
|
|
@@ -8920,15 +8925,16 @@ this.LockCorssCursor=function(option){if(option&&option.KItem)//指定日期时
|
|
|
8920
8925
|
{var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return false;var kItem={Date:option.KItem.Date,Time:option.KItem.Time,Index:-1};kData.FindDataIndexByDateTime([kItem]);if(kItem.Index<0)return false;var xItem=this.GlobalOption.LockCorssCursor.X;xItem.KLine={DataIndex:kItem.Index,Date:kItem.Date,Time:kItem.Time};xItem.Enable=true;}else{if(this.CursorIndex<0)return false;var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return false;var dataIndex=kData.DataOffset+parseInt(this.CursorIndex.toFixed(0));var kItem=kData.Data[dataIndex];if(!kItem)return false;var xItem=this.GlobalOption.LockCorssCursor.X;xItem.KLine={DataIndex:dataIndex,Date:kItem.Date,Time:kItem.Time};xItem.Enable=true;}if(option&&option.Draw)this.Draw();return true;};this.GetCorssCursorPosition=function(){var position={LastPoint:{X:this.LastPoint.X,Y:this.LastPoint.Y},CursorIndex:this.CursorIndex};if(!this.GlobalOption||!this.GlobalOption.LockCorssCursor)return position;var xItem=this.GlobalOption.LockCorssCursor.X;if(xItem.Enable&&xItem.KLine){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return position;position.CursorIndex=xItem.KLine.DataIndex-kData.DataOffset;position.LastPoint.X=this.Frame.GetXFromIndex(position.CursorIndex,false);var border=this.Frame.ChartBorder.GetBorder();if(position.LastPoint.Y<border.Top||position.LastPoint.Y>border.Bottom)//超出图形框子, 调整为收盘价
|
|
8921
8926
|
{var kItem=kData.Data[xItem.KLine.DataIndex];var y=this.Frame.SubFrame[0].Frame.GetYFromData(kItem.Close);position.LastPoint.Y=y;}}return position;};this.GetDateTimeByPoint=function(x,y){var clientPos=this.PtInClient(x,y);if(clientPos<0)return null;if(!IFrameSplitOperator.IsNumber(x))return;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return null;var frame=this.Frame.SubFrame[0].Frame;if(!frame)return null;var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var index=parseInt(frame.GetXData(x));var dataIndex=index+kData.DataOffset;if(dataIndex<0||dataIndex>=kData.Data.length)return null;var kItem=kData.Data[dataIndex];if(!kItem)return null;var result={Date:kItem.Date,Time:kItem.Time,DataIndex:dataIndex,Index:index,ClientPos:clientPos};return result;};//修正十字光标位置有效的K线
|
|
8922
8927
|
this.FixCursorIndexValid=function(){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return false;var dataIndex=this.CursorIndex+kData.DataOffset;if(dataIndex>=kData.Data.length){this.CursorIndex=kData.Data.length-kData.DataOffset-1;return true;}return false;};//option={ FrameID:, Enable: }
|
|
8923
|
-
this.EnableZoomYCoordinate=function(option){if(!option)return false;if(!IFrameSplitOperator.IsNumber(option.FrameID))return false;if(!IFrameSplitOperator.IsBool(option.Enable))return false;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;if(option.FrameID<0||option.FrameID>this.Frame.SubFrame.length)return false;var item=this.Frame.SubFrame[option.FrameID];if(!item||!item.Frame||!item.Frame.YSplitOperator)return false;var frame=item.Frame;var splitOper=frame.YSplitOperator;if(option.Enable){var max=frame.HorizontalMax,min=frame.HorizontalMin;if(!IFrameSplitOperator.IsNumber(max)||!IFrameSplitOperator.IsNumber(min))return false;splitOper.FixedYMaxMin={Max:max,Min:min};splitOper.EnableZoomUpDown=true;frame.XYSplit=true;this.ChartDragSelectRect.EnableLButton=false;}else{splitOper.FixedYMaxMin=null;splitOper.EnableZoomUpDown=false;frame.XYSplit=true;}this.Draw();};this.
|
|
8928
|
+
this.EnableZoomYCoordinate=function(option){if(!option)return false;if(!IFrameSplitOperator.IsNumber(option.FrameID))return false;if(!IFrameSplitOperator.IsBool(option.Enable))return false;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;if(option.FrameID<0||option.FrameID>this.Frame.SubFrame.length)return false;var item=this.Frame.SubFrame[option.FrameID];if(!item||!item.Frame||!item.Frame.YSplitOperator)return false;var frame=item.Frame;var splitOper=frame.YSplitOperator;if(option.Enable){var max=frame.HorizontalMax,min=frame.HorizontalMin;if(!IFrameSplitOperator.IsNumber(max)||!IFrameSplitOperator.IsNumber(min))return false;splitOper.FixedYMaxMin={Max:max,Min:min};splitOper.EnableZoomUpDown=true;frame.XYSplit=true;this.ChartDragSelectRect.EnableLButton=false;}else{splitOper.FixedYMaxMin=null;splitOper.EnableZoomUpDown=false;frame.XYSplit=true;}this.Draw();};this.GetDataRangeDescription=function(option){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var startIndex=0,endIndex=kData.Data.length-1;if(option&&option.DataRange)//某一段时间的
|
|
8929
|
+
{var range=kData.GetDataRange(option.DataRange);if(!range)return null;startIndex=range.Start.Index;endIndex=range.End.Index;}var endItem=kData.Data[endIndex];var startItem=kData.Data[startIndex];var text=null;var bMinutePeriod=ChartData.IsMinutePeriod(this.Period,true);if(bMinutePeriod){text=IFrameSplitOperator.FormatDateString(startItem.Date,"YYYY-MM-DD")+' '+IFrameSplitOperator.FormatTimeString(startItem.Time,"HH:MM")+' - '+IFrameSplitOperator.FormatDateString(endItem.Date,"YYYY-MM-DD")+' '+IFrameSplitOperator.FormatTimeString(endItem.Time,"HH:MM");}else{text=IFrameSplitOperator.FormatDateString(startItem.Date,"YYYY-MM-DD")+' - '+IFrameSplitOperator.FormatDateString(endItem.Date,"YYYY-MM-DD");}return text;};this.GetGraphicsRawDescription=function(option){var strTitle='K线图及其指标数据.\r\n';strTitle+='K\u7EBF\u5468\u671F:'+this.GetPeriodName()+'\r\n';strTitle+='\u6570\u636E\u8303\u56F4:'+this.GetDataRangeDescription(option)+'\r\n';var aryData=[];//K线
|
|
8924
8930
|
var data=this.GetKDataDescription(option);if(data)aryData.push(data);//指标数据
|
|
8925
8931
|
var data=this.GetIndexDataDescription(option);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));//信息地雷
|
|
8926
8932
|
var data=this.GetMinesInfoDescription(option);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));//叠加股票
|
|
8927
|
-
var data=this.GetOverlaySymbolDescription(option);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));return{AryData:aryData,Title:strTitle};};//K线信息
|
|
8928
|
-
this.GetKDataDescription=function(option){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var startIndex=0,endIndex=kData.Data.length-1;if(option){if(option.
|
|
8929
|
-
{var range=kData.GetDataRange(option.
|
|
8930
|
-
this.GetOverlaySymbolDescription=function(){if(!IFrameSplitOperator.IsNonEmptyArray(this.OverlayChartPaint))return null;var aryData=[];var strDescription="";var bMinutePeriod=ChartData.IsMinutePeriod(this.Period,true);for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint[i];if(!item)continue;var kData=item.Data;if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))continue;var strTitle=item.Title+' '+item.Symbol+' K\u7EBF\u6570\u636E';var strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Time:时间 hhmm\r\n";strText+="3. Open:开盘价\r\n";strText+="4. Close:收盘价\r\n";strText+="5. Low:最低价\r\n";strText+="6. High:最高价\r\n";strText+="7. Amount:成交金额\r\n";strText+="8. Vol:成交量\r\n";strText+="原始数据如下\r\n";strText+="Date,Time,Open,High,Low,Close,Vol,Amount\r\n";for(var j=
|
|
8931
|
-
this.GetMinesInfoDescription=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartInfo))return null;var aryData=[];var strText="",strTitle="";for(var i=0;i<this.ChartInfo.length;++i){var item=this.ChartInfo[i];if(item.ClassName=="BlockTrading"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u5927\u5B97\u4EA4\u6613\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Price:交易价格\r\n";strText+="3. Vol:交易金额\r\n";strText+="原始数据如下\r\n";strText+="Date,Price,Vol\r\n";for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!dataItem.ExtendData||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;var price=null,vol=null;var extendData=dataItem.ExtendData;if(IFrameSplitOperator.IsNumber(extendData.Price))price=extendData.Price;if(IFrameSplitOperator.IsNumber(extendData.Vol))vol=extendData.Vol;strText+=dataItem.Date+','+price+','+vol+'\r\n';}strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"大宗交易"});}else if(item.ClassName=="DragonTigerInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u9F99\u864E\u699C\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Title:上榜原因\r\n";strText+="3. BuyAmount:机构买入总金额\r\n";strText+="4. SellAmount:机构卖出总金额\r\n";strText+="5. NetBuyAmount:机构买入净金额\r\n";strText+="6. NetBuyRatio:净买金额占总成交比\r\n";strText+="7. Amount:市场总成交金额\r\n";strText+="原始数据如下\r\n";strText+="Date,Title,BuyAmount,SellAmount,NetBuyAmount,NetBuyRatio,Amount\r\n";for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!dataItem.ExtendData||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;var price=null,vol=null;var extendData=dataItem.ExtendData;strText+=dataItem.Date+','+dataItem.Title+','+extendData.BuyAmount+','+extendData.SellAmount+','+extendData.NetBuyAmount+','+extendData.NetBuyRatio+','+extendData.Amount+'\r\n';}strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"龙虎榜"});}else if(item.ClassName=="DividendInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u9664\u6743\u9664\u606F\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Title:除权除息方案\r\n";strText+="原始数据如下\r\n";strText+="Date,Title\r\n";for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;strText+=dataItem.Date+','+dataItem.Title+'\r\n';}strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"除权除息"});}else if(item.ClassName=="NewsInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u65B0\u95FB\u5217\u8868\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Title:标题\r\n";strText+="3. Url:原文链接\r\n";strText+="原始数据如下\r\n";strText+="Date,Title,Url\r\n";for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;var url=null;if(dataItem.ExtendData&&dataItem.ExtendData.Url)url=dataItem.ExtendData.Url;strText+=dataItem.Date+','+dataItem.Title+','+url+'\r\n';}strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"新闻列表"});}else if(item.ClassName=="ResearchInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u516C\u53F8\u8C03\u7814\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Title:调研内容\r\n";strText+="原始数据如下\r\n";strText+="Date,Title,Url\r\n";for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;strText+=dataItem.Date+','+dataItem.Title+'\r\n';}strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"公司调研"});}else if(item.ClassName=="PforecastInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u4E1A\u7EE9\u9884\u544A\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. ReportDate:报告日期 格式YYYYMMDD\r\n";strText+="3. Content:内容\r\n";strText+="原始数据如下\r\n";strText+="Date,
|
|
8933
|
+
var data=this.GetOverlaySymbolDescription(option);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));return{AryData:aryData,Title:strTitle,Period:this.Period,Right:this.Right,ChartType:"KLine"};};//K线信息
|
|
8934
|
+
this.GetKDataDescription=function(option){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var startIndex=0,endIndex=kData.Data.length-1;if(option){if(option.DataRange)//某一段时间的
|
|
8935
|
+
{var range=kData.GetDataRange(option.DataRange);if(!range)return null;startIndex=range.Start.Index;endIndex=range.End.Index;}}var strTitle=this.Name+' '+this.Symbol+' K\u7EBF\u6570\u636E';var strDescription='\u3010'+strTitle+'\u3011\r\n';strDescription+="字段说明\r\n";strDescription+="1. Date:日期 格式YYYYMMDD\r\n";strDescription+="2. Time:时间 格式hhmm\r\n";strDescription+="3. Open:开盘价\r\n";strDescription+="4. Close:收盘价\r\n";strDescription+="5. High:最高价\r\n";strDescription+="6. Low:最低价\r\n";strDescription+="7. Amount:成交金额\r\n";strDescription+="8. Vol:成交量\r\n";strDescription+="原始数据如下\r\n";var bMinutePeriod=ChartData.IsMinutePeriod(this.Period,true);strText="Date,Time,Open,High,Low,Close,Vol,Amount\r\n";var count=0;for(var i=startIndex;i<kData.Data.length&&i<=endIndex;++i){var kItem=kData.Data[i];var time=null;if(bMinutePeriod)time=kItem.Time;strText+=kItem.Date+','+time+','+kItem.Open+','+kItem.High+','+kItem.Low+','+kItem.Close+','+kItem.Vol+','+kItem.Amount+'\r\n';++count;}strDescription+=strText;strDescription+="\r\n\r\n";return{Title:strTitle,Content:strDescription,Type:"K线数据",Count:count};};//叠加股票信息
|
|
8936
|
+
this.GetOverlaySymbolDescription=function(option){if(!IFrameSplitOperator.IsNonEmptyArray(this.OverlayChartPaint))return null;var aryData=[];var strDescription="";var bMinutePeriod=ChartData.IsMinutePeriod(this.Period,true);for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint[i];if(!item)continue;var kData=item.Data;if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))continue;var startIndex=0,endIndex=kData.Data.length-1;var range=null;if(option&&option.DataRange){range=kData.GetDataRange(option.DataRange);if(!range)continue;startIndex=range.Start.Index;endIndex=range.End.Index;}var strTitle=item.Title+' '+item.Symbol+' K\u7EBF\u6570\u636E';var strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Time:时间 hhmm\r\n";strText+="3. Open:开盘价\r\n";strText+="4. Close:收盘价\r\n";strText+="5. Low:最低价\r\n";strText+="6. High:最高价\r\n";strText+="7. Amount:成交金额\r\n";strText+="8. Vol:成交量\r\n";strText+="原始数据如下\r\n";strText+="Date,Time,Open,High,Low,Close,Vol,Amount\r\n";var count=0;for(var j=startIndex;j<=endIndex&&j<kData.Data.length;++j){var kItem=kData.Data[j];var time=null;if(bMinutePeriod)time=kItem.Time;strText+=kItem.Date+','+time+','+kItem.Open+','+kItem.High+','+kItem.Low+','+kItem.Close+','+kItem.Vol+','+kItem.Amount+'\r\n';++count;}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"叠加股票",Count:count,Symbol:item.Symbol,Name:item.Title});}return aryData;};//信息地雷
|
|
8937
|
+
this.GetMinesInfoDescription=function(option){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartInfo))return null;var range=null;if(option&&option.DataRange)range=kData.GetDataRange(option.DataRange);var aryData=[];var strText="",strTitle="";for(var i=0;i<this.ChartInfo.length;++i){var item=this.ChartInfo[i];if(item.ClassName=="BlockTrading"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u5927\u5B97\u4EA4\u6613\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Price:交易价格\r\n";strText+="3. Vol:交易金额\r\n";strText+="原始数据如下\r\n";strText+="Date,Price,Vol\r\n";var count=0;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!dataItem.ExtendData||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,dataItem,0))continue;var price=null,vol=null;var extendData=dataItem.ExtendData;if(IFrameSplitOperator.IsNumber(extendData.Price))price=extendData.Price;if(IFrameSplitOperator.IsNumber(extendData.Vol))vol=extendData.Vol;strText+=dataItem.Date+','+price+','+vol+'\r\n';++count;}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"大宗交易",Count:count});}else if(item.ClassName=="DragonTigerInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u9F99\u864E\u699C\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Title:上榜原因\r\n";strText+="3. BuyAmount:机构买入总金额\r\n";strText+="4. SellAmount:机构卖出总金额\r\n";strText+="5. NetBuyAmount:机构买入净金额\r\n";strText+="6. NetBuyRatio:净买金额占总成交比\r\n";strText+="7. Amount:市场总成交金额\r\n";strText+="原始数据如下\r\n";strText+="Date,Title,BuyAmount,SellAmount,NetBuyAmount,NetBuyRatio,Amount\r\n";var count=0;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!dataItem.ExtendData||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,dataItem,0))continue;var price=null,vol=null;var extendData=dataItem.ExtendData;strText+=dataItem.Date+','+dataItem.Title+','+extendData.BuyAmount+','+extendData.SellAmount+','+extendData.NetBuyAmount+','+extendData.NetBuyRatio+','+extendData.Amount+'\r\n';++count;}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"龙虎榜",Count:count});}else if(item.ClassName=="DividendInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u9664\u6743\u9664\u606F\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Title:除权除息方案\r\n";strText+="原始数据如下\r\n";strText+="Date,Title\r\n";var count=0;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,dataItem,0))continue;strText+=dataItem.Date+','+dataItem.Title+'\r\n';++count;}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"除权除息",Count:count});}else if(item.ClassName=="NewsInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u65B0\u95FB\u5217\u8868\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Title:标题\r\n";strText+="3. Url:原文链接\r\n";strText+="原始数据如下\r\n";strText+="Date,Title,Url\r\n";var count=0;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,dataItem,0))continue;var url=null;if(dataItem.ExtendData&&dataItem.ExtendData.Url)url=dataItem.ExtendData.Url;strText+=dataItem.Date+','+dataItem.Title+','+url+'\r\n';++count;}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"新闻列表",Count:count});}else if(item.ClassName=="ResearchInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u516C\u53F8\u8C03\u7814\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Title:调研内容\r\n";strText+="原始数据如下\r\n";strText+="Date,Title,Url\r\n";var count=0;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,dataItem,0))continue;strText+=dataItem.Date+','+dataItem.Title+'\r\n';++count;}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"公司调研",Count:count});}else if(item.ClassName=="PforecastInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u4E1A\u7EE9\u9884\u544A\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. ReportDate:报告日期 格式YYYYMMDD\r\n";strText+="3. Content:内容\r\n";strText+="原始数据如下\r\n";strText+="Date,ReportDate,Content\r\n";var count=0;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,dataItem,0))continue;var content="";if(dataItem.ExtendData&&IFrameSplitOperator.IsNonEmptyArray(dataItem.ExtendData.AryData)){for(var k=0;k<dataItem.ExtendData.AryData.length;++k){var subItem=dataItem.ExtendData.AryData[k];content='\u9884\u6D4B\u6307\u6807:'+subItem.Name+' \u9884\u544A\u7C7B\u578B:'+subItem.Text+'.';strText+=dataItem.Date+','+dataItem.ReportDate+','+content+'\r\n';++count;}}else{strText+=dataItem.Date+','+dataItem.ReportDate+','+dataItem.Title+'\r\n';++count;}}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"业绩预告",Count:count});}else if(item.ClassName=="AnnouncementInfo"){if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u516C\u544A\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:公告日期 格式YYYYMMDD\r\n";strText+="2. Title:公告标题\r\n";strText+="3. Url:原文地址\r\n";strText+="原始数据如下\r\n";strText+="Date,Title,Url\r\n";var count=0;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date))continue;if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,dataItem,0))continue;strText+=dataItem.Date+','+dataItem.Title+','+IFrameSplitOperator.ReadStringValue(dataItem.Url)+'\r\n';++count;}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"公告数据",Count:count});}}return aryData;};this.GetPeriodName=function(){var mapName=new _map2.default([[0,'日线'],[1,'周线'],[2,'月线'],[3,'年线'],[9,'季线'],[21,'双周'],[22,"半年"],[4,'1分钟'],[5,'5分钟'],[6,'15分钟'],[7,'30分钟'],[8,'60分钟'],[11,'2小时'],[12,'4小时']]);if(mapName.has(this.Period))return mapName.get(this.Period);return null;};}//API 返回数据 转化为array[]
|
|
8932
8938
|
KLineChartContainer.JsonDataToHistoryData=function(data){var aryDayData=[];if(!data.data)return aryDayData;var upperSymbol=null;if(data.symbol)upperSymbol=data.symbol.toUpperCase();var isFutures=false;//是否是期货
|
|
8933
8939
|
if(upperSymbol)isFutures=MARKET_SUFFIX_NAME.IsFutures(upperSymbol);var list=data.data;var date=0,yclose=1,open=2,high=3,low=4,close=5,vol=6,amount=7,position=8;var fclose=9,yfclose=10;//结算价, 前结算价
|
|
8934
8940
|
var bfactor=11,afactor=12;//前, 后复权因子
|
|
@@ -9723,16 +9729,17 @@ IsShowCorss:this.ChartCorssCursor.IsShowCorss,//是否显示十字线
|
|
|
9723
9729
|
MinItem:minuteItem,Symbol:this.Symbol,Name:this.Name,LastValue:this.ChartCorssCursor.LastValue};this.DialogTooltip.Update(sendData);return true;};this.DrawSelectRectDialog=function(e){if(!this.DialogSelectRect)return;this.UpdateSelectRectDialog(e);};this.UpdateSelectRectDialog=function(e){if(!this.DialogSelectRect)return false;var data=e.data;//区间统计数据
|
|
9724
9730
|
var x,y;if(data&&IFrameSplitOperator.IsNumber(data.X)&&IFrameSplitOperator.IsNumber(data.Y)){var pixelRatio=GetDevicePixelRatio();var rtClient=this.UIElement.getBoundingClientRect();var rtScroll=GetScrollPosition();x=data.X;y=data.Y;x+=rtClient.left+rtScroll.Left;y+=rtClient.top+rtScroll.Top;}var sendData={Symbol:this.Symbol,Name:this.Name,SelectData:data.SelectData,X:x,Y:y,e:e};this.DialogSelectRect.Update(sendData);};this.GetKData=function(){if(!this.SourceData)return null;var data=this.SourceData;if(!data)return null;return data;};//获取最新的一条盘前数据
|
|
9725
9731
|
this.GetLatestBeforeOpenItem=function(){var lastItem=null;if(this.DayCount>1){if(!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayBeforeOpenData))return null;var dayItem=this.MultiDayBeforeOpenData[this.MultiDayBeforeOpenData.length-1];if(!dayItem||!IFrameSplitOperator.IsNonEmptyArray(dayItem.Data))return null;var finder=dayItem.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}else{if(!this.BeforeOpenData||!IFrameSplitOperator.IsNonEmptyArray(this.BeforeOpenData.Data))return null;var finder=this.BeforeOpenData.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}return lastItem;};//获取最新的一条盘后数据
|
|
9726
|
-
this.GetLatestAfterCloseItem=function(){var lastItem=null;if(this.DayCount>1){if(!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))return null;var dayItem=this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1];if(!dayItem||!IFrameSplitOperator.IsNonEmptyArray(dayItem.Data))return null;var finder=dayItem.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}else{if(!this.AfterCloseData||!IFrameSplitOperator.IsNonEmptyArray(this.AfterCloseData.Data))return null;var finder=this.AfterCloseData.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}return lastItem;};this.IsCallAuctionFrame=function(frameID){if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartPaintEx))return false;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;if(frameID<0||frameID>=this.Frame.SubFrame.length)return false;var subItem=this.Frame.SubFrame[frameID];if(!subItem||!subItem.Frame)return false;var subFrame=subItem.Frame;for(var i=0;i<this.ChartPaintEx.length;++i){var item=this.ChartPaintEx[i];if(item.ChartFrame&&item.ChartFrame.Guid==subFrame.Guid)return true;}return false;};this.GetGraphicsRawDescription=function(option){var strTitle='分时图及其指标数据.\r\n';var aryData=[];//分钟线
|
|
9732
|
+
this.GetLatestAfterCloseItem=function(){var lastItem=null;if(this.DayCount>1){if(!IFrameSplitOperator.IsNonEmptyArray(this.MultiDayAfterCloseData))return null;var dayItem=this.MultiDayAfterCloseData[this.MultiDayAfterCloseData.length-1];if(!dayItem||!IFrameSplitOperator.IsNonEmptyArray(dayItem.Data))return null;var finder=dayItem.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}else{if(!this.AfterCloseData||!IFrameSplitOperator.IsNonEmptyArray(this.AfterCloseData.Data))return null;var finder=this.AfterCloseData.Data.findLast(function(element){return element&&IFrameSplitOperator.IsNumber(element.Price);});if(finder)lastItem=finder;}return lastItem;};this.IsCallAuctionFrame=function(frameID){if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartPaintEx))return false;if(!IFrameSplitOperator.IsNonEmptyArray(this.Frame.SubFrame))return false;if(frameID<0||frameID>=this.Frame.SubFrame.length)return false;var subItem=this.Frame.SubFrame[frameID];if(!subItem||!subItem.Frame)return false;var subFrame=subItem.Frame;for(var i=0;i<this.ChartPaintEx.length;++i){var item=this.ChartPaintEx[i];if(item.ChartFrame&&item.ChartFrame.Guid==subFrame.Guid)return true;}return false;};this.GetGraphicsRawDescription=function(option){var strTitle='分时图及其指标数据.\r\n';strTitle+='\u6570\u636E\u8303\u56F4:'+this.GetDataRangeDescription(option)+'\r\n';var aryData=[];//分钟线
|
|
9727
9733
|
var data=this.GetMinuteDataDescription(option);if(data)aryData.push(data);//指标数据
|
|
9728
9734
|
var data=this.GetIndexDataDescription(option);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));var data=this.GetMinesInfoDescription(option);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));//叠加股票
|
|
9729
|
-
var data=this.GetOverlaySymbolDescription(option);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));return{AryData:aryData,Title:strTitle};}
|
|
9730
|
-
|
|
9731
|
-
|
|
9732
|
-
|
|
9733
|
-
this.
|
|
9734
|
-
{if(!IFrameSplitOperator.IsNonEmptyArray(
|
|
9735
|
-
{if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \
|
|
9735
|
+
var data=this.GetOverlaySymbolDescription(option);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));return{AryData:aryData,Title:strTitle,DayCount:this.DayCount,ChartType:"Minute"};};this.GetDataRangeDescription=function(option){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var startIndex=0,endIndex=kData.Data.length-1;if(option&&option.DataRange)//某一段时间的
|
|
9736
|
+
{var range=kData.GetDataRange(option.DataRange);if(!range)return null;startIndex=range.Start.Index;endIndex=range.End.Index;}var endItem=kData.Data[endIndex];var startItem=kData.Data[startIndex];var text=IFrameSplitOperator.FormatDateString(startItem.Date,"YYYY-MM-DD")+' '+IFrameSplitOperator.FormatTimeString(startItem.Time,"HH:MM")+' - '+IFrameSplitOperator.FormatDateString(endItem.Date,"YYYY-MM-DD")+' '+IFrameSplitOperator.FormatTimeString(endItem.Time,"HH:MM");return text;};//分时数据信息
|
|
9737
|
+
this.GetMinuteDataDescription=function(option){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var startIndex=0,endIndex=kData.Data.length-1;if(option){if(option.DataRange)//某一段时间的
|
|
9738
|
+
{var range=kData.GetDataRange(option.DataRange);if(!range)return null;startIndex=range.Start.Index;endIndex=range.End.Index;}}var strTitle=this.Name+' '+this.Symbol+' \u5206\u65F6\u6570\u636E';var strDescription='\u3010'+strTitle+'\u3011\r\n';strDescription+="字段说明\r\n";strDescription+="1. Date:日期 格式YYYYMMDD\r\n";strDescription+="2. Time:时间 格式hhmm\r\n";strDescription+="3. Open:这一分钟起始价格\r\n";strDescription+="4. Close:这一分钟最后的价格\r\n";strDescription+="5. High:这一分钟内最高价\r\n";strDescription+="6. Low:这一分钟内最低价\r\n";strDescription+="7. Amount:这一分钟内总的成交金额\r\n";strDescription+="8. Vol:这一分钟内总的成交量\r\n";strDescription+="9. AvPrice:均价\r\n";strDescription+="10. YClose:昨收价\r\n";strDescription+="11. YClearing:昨结算价\r\n";strDescription+="12. Position:持仓量\r\n";strDescription+="原始数据如下\r\n";strText="Date,Time,Open,High,Low,Close,Vol,Amount,AvPrice,YClose,YClearing,Position,\r\n";var count=0;for(var i=startIndex;i<kData.Data.length&&i<=endIndex;++i){var kItem=kData.Data[i];strText+=kItem.Date+','+kItem.Time+','+kItem.Open+','+kItem.High+','+kItem.Low+','+kItem.Close+','+kItem.Vol+','+kItem.Amount+','+IFrameSplitOperator.ReadNumberValue(kItem.AvPrice)+','+IFrameSplitOperator.ReadNumberValue(kItem.YClose)+','+IFrameSplitOperator.ReadNumberValue(kItem.YClearing)+','+IFrameSplitOperator.ReadNumberValue(kItem.Position)+'\r\n';++count;}strDescription+=strText;strDescription+="\r\n\r\n";return{Title:strTitle,Content:strDescription,Type:"分时数据",Count:count};};//叠加股票信息
|
|
9739
|
+
this.GetOverlaySymbolDescription=function(option){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;var range=null;if(option&&option.DataRange)range=kData.GetDataRange(option.DataRange);if(!IFrameSplitOperator.IsNonEmptyArray(this.OverlayChartPaint))return null;var aryData=[];var strDescription="";for(var i=0;i<this.OverlayChartPaint.length;++i){var item=this.OverlayChartPaint[i];if(!item)continue;var kData=item.Data;if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))continue;var strTitle=item.Title+' '+item.Symbol+' \u5206\u65F6\u6570\u636E';var strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Time:时间 hhmm\r\n";strText+="3. Close:这一分钟最后的价格\r\n";strText+="4. Amount:这一分钟内总的成交金额\r\n";strText+="5. Vol:这一分钟内总的成交量\r\n";strText+="原始数据如下\r\n";strText+="Date,Time,Close,Vol,Amount\r\n";var count=0;for(var j=0;j<kData.Data.length;++j){var kItem=kData.Data[j];if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,kItem,1))continue;strText+=kItem.Date+','+kItem.Time+','+kItem.Close+','+kItem.Vol+','+kItem.Amount+'\r\n';++count;}if(!count)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"叠加股票",Count:count,Symbol:item.Symbol,Name:item.Title});}return aryData;};//信息地雷
|
|
9740
|
+
this.GetMinesInfoDescription=function(option){var kData=this.GetKData();if(!kData||!IFrameSplitOperator.IsNonEmptyArray(kData.Data))return null;if(!IFrameSplitOperator.IsNonEmptyArray(this.ChartInfo))return null;var range=null;if(option&&option.DataRange)range=kData.GetDataRange(option.DataRange);var aryData=[];var strText="",strText="";for(var i=0;i<this.ChartInfo.length;++i){var item=this.ChartInfo[i];if(!item)continue;if(item.ClassName=="MarketEventInfo")//异动信息
|
|
9741
|
+
{if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u5F02\u52A8\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Time:时间 格式hhmm\r\n";strText+="3. Title:异动内容\r\n";strText+="原始数据如下\r\n";strText+="Date,Time,Title\r\n";var count=0;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date)||!IFrameSplitOperator.IsNumber(dataItem.Time))continue;if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,dataItem,1))continue;strText+=dataItem.Date+','+dataItem.Time+','+dataItem.Title+'\r\n';++count;}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"异动数据",Count:count});}else if(item.ClassName=="MinuteNewsInfo")//新闻
|
|
9742
|
+
{if(!IFrameSplitOperator.IsNonEmptyArray(item.Data))continue;strTitle=this.Name+' '+this.Symbol+' \u65B0\u95FB\u5217\u8868\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Time:时间 格式hhmm\r\n";strText+="3. Title:标题\r\n";strText+="4. Url:原文地址\r\n";strText+="原始数据如下\r\n";strText+="Date,Time,Title,Url\r\n";var count=0;for(var j=0;j<item.Data.length;++j){var dataItem=item.Data[j];if(!dataItem||!IFrameSplitOperator.IsNumber(dataItem.Date)||!IFrameSplitOperator.IsNumber(dataItem.Time))continue;if(range&&!IFrameSplitOperator.IsIncludeDateRange(range.Start,range.End,dataItem,1))continue;var url=null;var extendData=dataItem.ExtendData;if(extendData&&extendData.Url)url=extendData.Url;strText+=dataItem.Date+','+dataItem.Time+','+dataItem.Title+','+url+'\r\n';++count;}if(count<=0)continue;strText+="\r\n\r\n";aryData.push({Title:strTitle,Content:strText,Type:"新闻列表"});}}return aryData;};}//盘前数据
|
|
9736
9743
|
MinuteChartContainer.JsonDataToBeforeOpenData=function(data){var symbol=data.stock[0].symbol;var upperSymbol=symbol.toUpperCase();var isSHSZ=MARKET_SUFFIX_NAME.IsSHSZ(upperSymbol);var unit=MARKET_SUFFIX_NAME.GetVolUnit(upperSymbol);var yClose=data.stock[0].yclose;var preClose=data.stock[0].yclose;//前一个数据价格
|
|
9737
9744
|
var stockData=data.stock[0];var date=stockData.date;//日期
|
|
9738
9745
|
var beforeOpenData={Data:[],TotalCount:15,Ver:1.0,Date:date,YClose:stockData.yclose,YClearing:stockData.yclearing};var extendDataIndex=JSCHART_DATA_FIELD_ID.MINUTE_BEFOREOPEN_EXTENDDATA;//扩展数据序号
|
|
@@ -10100,7 +10107,7 @@ this.newMethod();delete this.newMethod;this.ClassName='InvestorInfo';this.Explai
|
|
|
10100
10107
|
function AnnouncementInfo(){this.newMethod=IKLineInfo;//派生
|
|
10101
10108
|
this.newMethod();delete this.newMethod;this.ClassName='AnnouncementInfo';this.Explain='公告';this.RequestData=function(hqChart,obj){var self=this;var param={HQChart:hqChart};if(obj&&obj.Update===true)//更新模式 不清内存数据
|
|
10102
10109
|
{}else{this.Data=[];}if(this.NetworkFilter(hqChart,obj))return;//已被上层替换,不调用默认的网络请求
|
|
10103
|
-
};this.RecvData=function(recvData,param){if(!IFrameSplitOperator.IsNonEmptyArray(recvData.report))return;var aryReport=[];for(var i=0;i<recvData.report.length;++i){var item=recvData.report[i];var infoData=new KLineInfoData();infoData.Date=item.releasedate;infoData.Title=item.title;infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT;if(IFrameSplitOperator.IsNumber(item.time))infoData.Time=item.time;for(var j in item.type){var typeItem=item.type[j];switch(typeItem){case"一季度报告":infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_1;break;case"半年度报告":infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_2;break;case"三季度报告":infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_3;break;case"年度报告":infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_4;break;}}//目前只支持1个类型
|
|
10110
|
+
};this.RecvData=function(recvData,param){if(!IFrameSplitOperator.IsNonEmptyArray(recvData.report))return;var aryReport=[];for(var i=0;i<recvData.report.length;++i){var item=recvData.report[i];var infoData=new KLineInfoData();infoData.Date=item.releasedate;infoData.Title=item.title;infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT;if(IFrameSplitOperator.IsNumber(item.time))infoData.Time=item.time;if(item.url)infoData.Url=item.url;for(var j in item.type){var typeItem=item.type[j];switch(typeItem){case"一季度报告":infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_1;break;case"半年度报告":infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_2;break;case"三季度报告":infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_3;break;case"年度报告":infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT_QUARTER_4;break;}}//目前只支持1个类型
|
|
10104
10111
|
for(var j in item.typeex){var id=item.typeex[j];infoData.InfoType=KLINE_INFO_TYPE.ANNOUNCEMENT_EX_START+id;break;}aryReport.push(infoData);}if(recvData.Update===true&&this.Data.length>0){this.UpdateData(aryReport);}else{this.Data=aryReport;}param.HQChart.UpdataChartInfo();param.HQChart.Draw();};//增量更新
|
|
10105
10112
|
this.UpdateData=function(aryData){if(!aryData||aryData.length<=0)return;var setKeys=new _set2.default();//通过 日期+类型+标题去重
|
|
10106
10113
|
for(var i in this.Data){var item=this.Data[i];var strKey=item.Date+'-'+item.Time+'-'+item.InfoType+'-'+item.Title;setKeys.add(strKey);}var count=0;for(var i in aryData){var item=aryData[i];var strKey=item.Date+'-'+item.Time+'-'+item.InfoType+'-'+item.Title;if(setKeys.has(strKey))continue;this.Data.push(item);++count;}JSConsole.Chart.Log('[AnnouncementInfo::UpdateData] add new count='+count);};this.RecvError=function(http,e,param){console.warn("[AnnouncementInfo::RecvError] error, http ",e,http);//if (param.HQChart.ScriptErrorCallback) param.HQChart.ScriptErrorCallback(e);
|
|
@@ -13961,7 +13968,7 @@ chart.Frame.ChartBorder.Left*=pixelTatio;chart.Frame.ChartBorder.Right*=pixelTat
|
|
|
13961
13968
|
this.ChangeSymbol=function(symbol,option){if(this.JSChartContainer)this.JSChartContainer.ChangeSymbol(symbol,option);};this.SetColumn=function(aryColumn,option){if(this.JSChartContainer)this.JSChartContainer.SetColumn(aryColumn,option);};this.SetSelectedRow=function(option){if(this.JSChartContainer)this.JSChartContainer.SetSelectedRow(option);};this.DeleteSymbol=function(arySymbol,option){if(this.JSChartContainer)this.JSChartContainer.DeleteSymbol(arySymbol,option);};this.AddSymbol=function(arySymbol,option){if(this.JSChartContainer)this.JSChartContainer.AddSymbol(arySymbol,option);};this.EnableDataFilter=function(bEnable,option)//启动|关闭筛选
|
|
13962
13969
|
{if(this.JSChartContainer)this.JSChartContainer.EnableDataFilter(bEnable,option);};//事件回调
|
|
13963
13970
|
this.AddEventCallback=function(obj){if(this.JSChartContainer&&typeof this.JSChartContainer.AddEventCallback=='function'){JSConsole.Chart.Log('[JSReportChart:AddEventCallback] obj=',obj);this.JSChartContainer.AddEventCallback(obj);}};//重新加载配置
|
|
13964
|
-
this.ReloadResource=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.ReloadResource=='function'){JSConsole.Chart.Log('[JSReportChart:ReloadResource] ');this.JSChartContainer.ReloadResource(option);}};this.ChartDestroy=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.ChartDestroy=='function'){this.JSChartContainer.ChartDestroy();}};this.Draw=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.Draw=='function'){JSConsole.Chart.Log('[JSReportChart:Draw] ');this.JSChartContainer.Draw();}};}JSReportChart.Init=function(divElement){var jsChartControl=new JSReportChart(divElement);jsChartControl.OnSize();return jsChartControl;};//自定义风格
|
|
13971
|
+
this.ReloadResource=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.ReloadResource=='function'){JSConsole.Chart.Log('[JSReportChart:ReloadResource] ');this.JSChartContainer.ReloadResource(option);}};this.ChartDestroy=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.ChartDestroy=='function'){this.JSChartContainer.ChartDestroy();}};this.Draw=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.Draw=='function'){JSConsole.Chart.Log('[JSReportChart:Draw] ');this.JSChartContainer.Draw();}};this.GetGraphicsDescription=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.GetGraphicsDescription=='function'){JSConsole.Chart.Log('[JSReportChart:GetGraphicsDescription] ');return this.JSChartContainer.GetGraphicsDescription(option);}};}JSReportChart.Init=function(divElement){var jsChartControl=new JSReportChart(divElement);jsChartControl.OnSize();return jsChartControl;};//自定义风格
|
|
13965
13972
|
JSReportChart.SetStyle=function(option){if(option)g_JSChartResource.SetStyle(option);};//获取颜色配置 (设置配必须啊在JSChart.Init()之前)
|
|
13966
13973
|
JSReportChart.GetResource=function(){return g_JSChartResource;};function HQReportItem(){this.OriginalSymbol;//原始代码
|
|
13967
13974
|
this.Symbol;this.Name;this.YClose;this.Open;this.Price;this.High;this.Low;this.Amount;this.Vol;this.Increase;//涨幅
|
|
@@ -14322,7 +14329,14 @@ var bUpdate=true;if(bUpdate)this.Draw();};//虚拟表格 请求序号 所有数
|
|
|
14322
14329
|
this.RequestVirtualStockData=function(){var chart=this.ChartPaint[0];if(!chart)return;var self=this;var startIndex=this.Data.YOffset;var pageSize=chart.GetPageSize();var endIndex=startIndex+pageSize;var dataCount=chart.GetAllRowCount();if(endIndex>=dataCount)endIndex=dataCount-1;if(!this.NetworkFilter)return;var requestData={range:{start:startIndex,end:endIndex,count:chart.GetAllRowCount()},column:null,sort:0,symbol:this.Symbol,name:this.Name,pageSize:pageSize};if(this.SortInfo&&this.SortInfo.Field>=0&&this.SortInfo.Sort>0)//排序
|
|
14323
14330
|
{var column=chart.Column[this.SortInfo.Field];requestData.column={name:column.Title,type:column.Type,index:this.SortInfo.Field,ID:column.ID};requestData.sort=this.SortInfo.Sort;}var obj={Name:'JSDealChartContainer::RequestVirtualStockData',//类名::函数名
|
|
14324
14331
|
Explain:'报价列表股票数据(虚拟表格)',Request:{Data:requestData},Self:this,PreventDefault:false};if(chart.FixedRowCount>0&&chart.FixedRowData.Type==1){var arySymbol=[];for(var i=0;i<chart.FixedRowData.Symbol.length;++i){var item=chart.FixedRowData.Symbol[i];if(item)arySymbol.push(item);}obj.Request.FixedSymbol=arySymbol;}this.NetworkFilter(obj,function(data){self.RecvStockSortData(data);self.AutoUpdate();});if(obj.PreventDefault==true)return;};//底部标签
|
|
14325
|
-
this.ShowPageInfo=function(bShow){var chart=this.ChartPaint[1];if(!chart)return false;chart.IsShow=bShow;return true;}
|
|
14332
|
+
this.ShowPageInfo=function(bShow){var chart=this.ChartPaint[1];if(!chart)return false;chart.IsShow=bShow;return true;};//把图形数据格式化导出, 给AI分析
|
|
14333
|
+
//option: { AryField:[{ Type, Title:"列名"}] } AryField指定输出的字段, 不指定则输出全部字段
|
|
14334
|
+
this.GetGraphicsDescription=function(option){var data=this.GetGraphicsRawDescription(option);if(!data||!IFrameSplitOperator.IsNonEmptyArray(data.AryData))return null;var strTitle=data.Title;strTitle+="包含以下数据:\r\n";strContent="";for(var i=0;i<data.AryData.length;++i){var item=data.AryData[i];var strCount="";if(IFrameSplitOperator.IsNumber(item.Count))strCount=item.Count+'\u6761';strTitle+=i+1+'. '+item.Title+' '+strCount+'\r\n';strContent+=item.Content;}var date=new Date();strTitle+='\u6570\u636E\u521B\u5EFA\u65F6\u95F4:'+date+'\r\n';var strDescription=strTitle+"\r\n\r\n====================完整数据部分========================\r\n\r\n\r\n"+strContent;var result={Symbol:this.Symbol,Name:this.Name,Data:strDescription,ChartType:data.ChartType};return result;};//获取原始数据, 给AI分析
|
|
14335
|
+
this.GetGraphicsRawDescription=function(option){var chart=this.GetReportChart();if(!chart)return null;var strTitle='\u3010'+this.Name+'\u3011\u5217\u8868\u6570\u636E.\r\n';var aryData=[];var data=this.GetReportDataDescription(option);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));return{AryData:aryData,Title:strTitle,ChartType:"Report"};};this.GetReportDataDescription=function(option){var chart=this.GetReportChart();if(!chart)return null;if(!chart.Data||!IFrameSplitOperator.IsNonEmptyArray(chart.Data.Data))return null;if(!IFrameSplitOperator.IsNonEmptyArray(chart.Column))return null;//图形字段
|
|
14336
|
+
var MAP_CHART_FILED=new _map2.default([[REPORT_COLUMN_ID.CLOSE_LINE_ID,{Type:REPORT_COLUMN_ID.CLOSE_LINE_ID,Title:"走势图"}]]);var aryData=[];var aryField=[];var aryChartField=[];function _Temp_Push_Field(colItem){if(!colItem)return;if(colItem.Type==REPORT_COLUMN_ID.SYMBOL_NAME_ID){aryField.push({Title:"股票代码",Type:REPORT_COLUMN_ID.SYMBOL_ID});aryField.push({Title:"股票名称",Type:REPORT_COLUMN_ID.NAME_ID});}else if(colItem.Type==REPORT_COLUMN_ID.MULTI_LINE_CONTAINER){if(IFrameSplitOperator.IsNonEmptyArray(colItem.AryField)){for(var j=0;j<colItem.AryField.length;++j){var item=colItem.AryField[j];if(!item)continue;if(MAP_CHART_FILED.has(item.Type)){aryChartField.push(MAP_CHART_FILED.get(item.Type));}else{aryField.push({Title:item.Title,Type:item.Type});}}}}if(MAP_CHART_FILED.has(colItem.Type)){aryChartField.push(MAP_CHART_FILED.get(colItem.Type));}else{aryField.push({Title:colItem.Title,Type:colItem.Type});}}if(option&&IFrameSplitOperator.IsNonEmptyArray(option.AryField))//外部指定输出列
|
|
14337
|
+
{for(var i=0;i<option.AryField.length;++i){var item=option.AryField[i];_Temp_Push_Field(item);}}else{for(var i=0;i<chart.Column.length;++i){var colItem=chart.Column[i];_Temp_Push_Field(colItem);}}var data=this.GetReportTextDescription(aryField);if(data)aryData.push(data);var data=this.GetReportChartDescription(aryChartField);if(IFrameSplitOperator.IsNonEmptyArray(data))aryData.push.apply(aryData,(0,_toConsumableArray3.default)(data));return aryData;};//文字字段转描述
|
|
14338
|
+
this.GetReportTextDescription=function(aryFiled){if(!IFrameSplitOperator.IsNonEmptyArray(aryFiled))return null;var chart=this.GetReportChart();if(!chart.Data||!IFrameSplitOperator.IsNonEmptyArray(chart.Data.Data))return null;var strTitle=this.Name+' \u8868\u683C\u6570\u636E';var strText='\u3010'+strTitle+'\u3011\r\n';strText+="原始数据如下\r\n";for(var i=0;i<aryFiled.length;++i){var item=aryFiled[i];strText+=''+IFrameSplitOperator.ReadStringValue(item.Title,"未定义字段");if(i==aryFiled.length-1)strText+="\r\n";else strText+=",";}var count=0;for(var i=0;i<chart.Data.Data.length;++i){var symbol=chart.Data.Data[i];var stock=this.GetStockData(symbol);if(!stock)continue;for(var j=0;j<aryFiled.length;++j){var colItem=aryFiled[j];value=null;if(MAP_COLUMN_FIELD.has(colItem.Type)){var fieldName=MAP_COLUMN_FIELD.get(colItem.Type);var value=stock[fieldName];if(value==null||value==undefined)value=null;}if(j>0)strText+=",";strText+=''+value;}++count;strText+="\r\n";}strText+="\r\n\r\n";return{Title:strTitle,Content:strText,Type:"表格数据",Count:count};};//图新字段转描述
|
|
14339
|
+
this.GetReportChartDescription=function(aryFiled){if(!IFrameSplitOperator.IsNonEmptyArray(aryFiled))return null;var chart=this.GetReportChart();if(!chart.Data||!IFrameSplitOperator.IsNonEmptyArray(chart.Data.Data))return null;var aryData=[];for(var i=0;i<aryFiled.length;++i){var colItem=aryFiled[i];if(colItem.Type==REPORT_COLUMN_ID.CLOSE_LINE_ID){for(var j=0;j<chart.Data.Data.length;++j){var symbol=chart.Data.Data[j];var data=this.GetCloseLineDescription(symbol);if(data)aryData.push(data);}}}return aryData;};this.GetCloseLineDescription=function(symbol){var stock=this.GetStockData(symbol);if(!stock||!stock.CloseLine)return null;var stockItem=stock.CloseLine;if(!IFrameSplitOperator.IsNonEmptyArray(stockItem.Data))return null;if(!IFrameSplitOperator.IsNonEmptyArray(stockItem.Time))return null;var strTitle=stock.Name+'('+stock.Symbol+') \u8D70\u52BF\u56FE\u6570\u636E';var strText='\u3010'+strTitle+'\u3011\r\n';if(IFrameSplitOperator.IsNumber(stockItem.Date))strText+='\u65E5\u671F:'+IFrameSplitOperator.FormatDateString(stockItem.Date,"YYYY-MM-DD")+'\r\n';strText+='\u6628\u6536\u4EF7:'+stockItem.YClose+'\r\n';strText+='\u5B57\u6BB5\u8BF4\u660E\r\n';strText+="1. Time:时间 格式hhmm\r\n";strText+="2. Price:收盘价\r\n";strText+="原始数据如下\r\n";strText+="Time,Price\r\n";var count=0;for(var i=0;i<stockItem.Data.length;++i){var time=stockItem.Time[i];var price=stockItem.Data[i];strText+=IFrameSplitOperator.ReadNumberValue(time)+','+IFrameSplitOperator.ReadNumberValue(price)+'\r\n';++count;}strText+="\r\n\r\n";return{Title:strTitle,Content:strText,Type:this.Data.Name,Count:count};};}function JSReportFrame(){this.ChartBorder;this.Canvas;//画布
|
|
14326
14340
|
this.BorderLine=null;//1=上 2=下 4=左 8=右
|
|
14327
14341
|
this.BorderColor=g_JSChartResource.Report.BorderColor;//边框线
|
|
14328
14342
|
this.LogoTextColor=g_JSChartResource.FrameLogo.TextColor;this.LogoTextFont=g_JSChartResource.FrameLogo.Font;this.ReloadResource=function(resource){this.BorderColor=g_JSChartResource.Report.BorderColor;//边框线
|
|
@@ -16239,17 +16253,17 @@ if(option.NetworkFilter)chart.NetworkFilter=option.NetworkFilter;if(option.IsAut
|
|
|
16239
16253
|
if(option.EventCallback){for(var i=0;i<option.EventCallback.length;++i){var item=option.EventCallback[i];chart.AddEventCallback(item);}}return chart;};this.SetChartBorder=function(chart,option){if(!option.Border)return;var item=option.Border;if(IFrameSplitOperator.IsNumber(option.Border.Left))chart.Frame.ChartBorder.Left=option.Border.Left;if(IFrameSplitOperator.IsNumber(option.Border.Right))chart.Frame.ChartBorder.Right=option.Border.Right;if(IFrameSplitOperator.IsNumber(option.Border.Top))chart.Frame.ChartBorder.Top=option.Border.Top;if(IFrameSplitOperator.IsNumber(option.Border.Bottom))chart.Frame.ChartBorder.Bottom=option.Border.Bottom;var pixelTatio=GetDevicePixelRatio();//获取设备的分辨率
|
|
16240
16254
|
chart.Frame.ChartBorder.Left*=pixelTatio;chart.Frame.ChartBorder.Right*=pixelTatio;chart.Frame.ChartBorder.Top*=pixelTatio;chart.Frame.ChartBorder.Bottom*=pixelTatio;};//事件回调
|
|
16241
16255
|
this.AddEventCallback=function(obj){if(this.JSChartContainer&&typeof this.JSChartContainer.AddEventCallback=='function'){JSConsole.Chart.Log('[JSScrollTextChart:AddEventCallback] obj=',obj);this.JSChartContainer.AddEventCallback(obj);}};//重新加载配置
|
|
16242
|
-
this.ReloadResource=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.ReloadResource=='function'){JSConsole.Chart.Log('[JSScrollTextChart:ReloadResource] ');this.JSChartContainer.ReloadResource(option);}};this.ChartDestroy=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.ChartDestroy=='function'){this.JSChartContainer.ChartDestroy();}};this.Draw=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.Draw=='function'){JSConsole.Chart.Log('[JSScrollTextChart:Draw] ');this.JSChartContainer.Draw();}};this.AddText=function(aryData,option){if(this.JSChartContainer&&typeof this.JSChartContainer.AddText=='function'){JSConsole.Chart.Log('[JSScrollTextChart:AddText] ');this.JSChartContainer.AddText(aryData,option);}};}JSScrollTextChart.Init=function(divElement){var jsChartControl=new JSScrollTextChart(divElement);jsChartControl.OnSize();return jsChartControl;};//自定义风格
|
|
16256
|
+
this.ReloadResource=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.ReloadResource=='function'){JSConsole.Chart.Log('[JSScrollTextChart:ReloadResource] ');this.JSChartContainer.ReloadResource(option);}};this.ChartDestroy=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.ChartDestroy=='function'){this.JSChartContainer.ChartDestroy();}};this.Draw=function(){if(this.JSChartContainer&&typeof this.JSChartContainer.Draw=='function'){JSConsole.Chart.Log('[JSScrollTextChart:Draw] ');this.JSChartContainer.Draw();}};this.AddText=function(aryData,option){if(this.JSChartContainer&&typeof this.JSChartContainer.AddText=='function'){JSConsole.Chart.Log('[JSScrollTextChart:AddText] ');this.JSChartContainer.AddText(aryData,option);}};this.GetGraphicsDescription=function(option){if(this.JSChartContainer&&typeof this.JSChartContainer.GetGraphicsDescription=='function'){JSConsole.Chart.Log('[JSScrollTextChart:GetGraphicsDescription] ');return this.JSChartContainer.GetGraphicsDescription(option);}};}JSScrollTextChart.Init=function(divElement){var jsChartControl=new JSScrollTextChart(divElement);jsChartControl.OnSize();return jsChartControl;};//自定义风格
|
|
16243
16257
|
JSScrollTextChart.SetStyle=function(option){if(option)g_JSChartResource.SetStyle(option);};//获取颜色配置 (JSStatusBarChart.Init()之前)
|
|
16244
16258
|
JSScrollTextChart.GetResource=function(){return g_JSChartResource;};function JSScrollTextChartContainer(uielement){this.ClassName='JSScrollTextChartContainer';this.Frame;//框架画法
|
|
16245
16259
|
this.ChartPaint=[];//图形画法
|
|
16246
16260
|
this.Canvas=uielement.getContext("2d");//画布
|
|
16247
16261
|
this.NetworkFilter;//数据回调接口
|
|
16248
|
-
this.Data={AryText:[]
|
|
16249
|
-
/*
|
|
16262
|
+
this.Data={AryText:[],//{ AryText:[ { Text:, Color:, Font: },] }
|
|
16263
|
+
Name:"滚动新闻"/*
|
|
16250
16264
|
AryText:
|
|
16251
16265
|
[
|
|
16252
|
-
{ Content:[ { Text:"滚动信息1:36238347-D299-42DA-BAA2-3A3C1B5A8ACB" } ] },
|
|
16266
|
+
{ Content:[ { Text:"滚动信息1:36238347-D299-42DA-BAA2-3A3C1B5A8ACB" } ], Url:, Date, Time, Title: },
|
|
16253
16267
|
{ Content:[ { Text:"滚动信息2:358D6F13-C845-4AD1-8415-A9C3A62C1F1E."}, ] },
|
|
16254
16268
|
{ Content:[ { Text:"滚动信息3:144F91C3-6181-4C47-A620-62AAFA3BB377."}, ] },
|
|
16255
16269
|
{ Content:[ { Text:"滚动信息4:BCC78A08-84B3-4A10-8CE8-13C64C72972D."}, ] },
|
|
@@ -16283,7 +16297,9 @@ document.onmousemove=null;document.onmouseup=null;this.MouseDrag=null;this.Click
|
|
|
16283
16297
|
this.Canvas.lineWidth=pixelTatio;//手机端需要根据分辨率比调整线段宽度
|
|
16284
16298
|
this.Frame.Draw();this.Frame.DrawLogo();//框架内图形
|
|
16285
16299
|
for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];item.Draw();}};this.OnSize=function(){if(!this.Frame)return;this.SetSizeChange(true);this.Draw();};this.SetSizeChange=function(bChanged){for(var i=0;i<this.ChartPaint.length;++i){var chart=this.ChartPaint[i];if(chart)chart.SizeChange=bChanged;}};this.ReloadResource=function(option){this.Frame.ReloadResource(option);for(var i=0;i<this.ChartPaint.length;++i){var item=this.ChartPaint[i];if(item.ReloadResource)item.ReloadResource(option);}if(option&&(option.Redraw||option.Draw)){this.SetSizeChange(true);this.Draw();}if(this.TooltipMinuteChart)this.TooltipMinuteChart.ReloadResource(option);//分时图
|
|
16286
|
-
};this.GetScrollTextChart=function(){var chart=this.ChartPaint[0];if(!chart)return null;return chart;};this.HideAllTooltip=function(){};this.ScrollStep=function(){var defaultStep=arguments.length>0&&arguments[0]!==undefined?arguments[0]:null;var chart=this.GetScrollTextChart();if(!chart)return;if(chart.ScrollStep(defaultStep))this.Draw();}
|
|
16300
|
+
};this.GetScrollTextChart=function(){var chart=this.ChartPaint[0];if(!chart)return null;return chart;};this.HideAllTooltip=function(){};this.ScrollStep=function(){var defaultStep=arguments.length>0&&arguments[0]!==undefined?arguments[0]:null;var chart=this.GetScrollTextChart();if(!chart)return;if(chart.ScrollStep(defaultStep))this.Draw();};//把图形数据格式化导出, 给AI分析
|
|
16301
|
+
this.GetGraphicsDescription=function(option){var data=this.GetGraphicsRawDescription(option);if(!data||!IFrameSplitOperator.IsNonEmptyArray(data.AryData))return null;var strTitle=data.Title;strTitle+="包含以下数据:\r\n";strContent="";for(var i=0;i<data.AryData.length;++i){var item=data.AryData[i];var strCount="";if(IFrameSplitOperator.IsNumber(item.Count))strCount=item.Count+'\u6761';strTitle+=i+1+'. '+item.Title+' '+strCount+'\r\n';strContent+=item.Content;}var date=new Date();strTitle+='\u6570\u636E\u521B\u5EFA\u65F6\u95F4:'+date+'\r\n';var strDescription=strTitle+"\r\n\r\n====================完整数据部分========================\r\n\r\n\r\n"+strContent;var result={Data:strDescription,ChartType:data.ChartType};return result;};//获取原始数据, 给AI分析
|
|
16302
|
+
this.GetGraphicsRawDescription=function(option){var chart=this.GetScrollTextChart();if(!chart)return null;var strTitle=chart.Label.Text+'\u6570\u636E.\r\n';var aryData=[];var data=this.GetDataDescription();if(data)aryData.push(data);return{AryData:aryData,Title:strTitle,ChartType:"ScrollText"};};this.GetDataDescription=function(){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return null;var strTitle='\u65B0\u95FB\u6570\u636E';strText='\u3010'+strTitle+'\u3011\r\n';strText+="字段说明\r\n";strText+="1. Date:日期 格式YYYYMMDD\r\n";strText+="2. Time:时间 格式hhmmss\r\n";strText+="3. Title:标题\r\n";strText+="4. Url:原文地址\r\n";strText+="原始数据如下\r\n";strText+="Date,Time,Title,Url\r\n";var count=0;for(var i=0;i<this.Data.AryText.length;++i){var item=this.Data.AryText[i];strText+=item.Date+','+item.Time+',"'+IFrameSplitOperator.ReadStringValue(item.Title)+'",'+IFrameSplitOperator.ReadStringValue(item.Url)+'\r\n';++count;}strText+="\r\n\r\n";return{Title:strTitle,Content:strText,Type:this.Data.Name,Count:count};};}function JSScrollTextFrame(){this.ChartBorder;this.Canvas;//画布
|
|
16287
16303
|
this.BorderLine=null;//1=上 2=下 4=左 8=右
|
|
16288
16304
|
this.ClassName="JSScrollTextFrame";this.BorderColor=g_JSChartResource.StatusBar.BorderColor;//边框线
|
|
16289
16305
|
this.LogoTextColor=g_JSChartResource.FrameLogo.TextColor;this.LogoTextFont=g_JSChartResource.FrameLogo.Font;this.ReloadResource=function(resource){this.BorderColor=g_JSChartResource.StatusBar.BorderColor;//边框线
|
|
@@ -16363,7 +16379,7 @@ if(this.MouseOnItem){if(this.MouseOnItem.Data==item)color=this.TextConfig.MouseO
|
|
|
16363
16379
|
*/this.Canvas.restore();this.ResizeDataCount(endIndex);};this.ResizeDataCount=function(startIndex){if(!IFrameSplitOperator.IsNumber(startIndex))return;if(startIndex<=0)return;if(this.LimitCount<=0)return;if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return;if(this.Data.AryText.length<=this.LimitCount)return;var delCount=this.Data.AryText.length-this.LimitCount;for(var i=0;i<delCount&&i<startIndex;++i){this.Data.AryText.shift();}};this.GetTooltipData=function(x,y,tooltip){var rtClient=this.GetClientRect();if(x>=rtClient.Left&&x<=rtClient.Right){for(var i=0;i<this.AryRect.length;++i){var item=this.AryRect[i];if(Path2DHelper.PtInRect(x,y,item.Rect)){tooltip.Data=item;tooltip.ChartPaint=this;tooltip.Type=1;return true;}}}return false;};this.ScrollStep=function(defaultStep){if(!this.Data||!IFrameSplitOperator.IsNonEmptyArray(this.Data.AryText))return false;if(!this.FirstItem)return false;var moveStep=this.MoveStep;if(IFrameSplitOperator.IsNumber(defaultStep))moveStep=defaultStep;var rtClient=this.GetClientRect();var left=rtClient.Left;var right=rtClient.Right;var width=this.FirstItem.Move.Width;var xOffset=this.FirstItem.Move.XOffset+moveStep;if(right-xOffset+width<left){var startIndex=this.GetDataIndex(this.FirstItem);nextIndex=startIndex-1;if(nextIndex<0){var index=this.Data.AryText.length-1;this.FirstItem=this.Data.AryText[index];this.FirstItem.Move={XOffset:0};}else{this.FirstItem=this.Data.AryText[nextIndex];this.FirstItem.Move={XOffset:xOffset-width};}}else{this.FirstItem.Move.XOffset=xOffset;}return true;};}/********************************************************************************
|
|
16364
16380
|
* 版本信息输出
|
|
16365
16381
|
*
|
|
16366
|
-
*/var HQCHART_VERSION="1.1.
|
|
16382
|
+
*/var HQCHART_VERSION="1.1.15783";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();//把给外界调用的方法暴露出来
|
|
16367
16383
|
exports.default=(_jsChartInit$jsChartS={jsChartInit:JSChart.Init,jsChartStyle:JSChart.SetStyle,// IsIndexSymbol:IsIndexSymbol,
|
|
16368
16384
|
// BaseIndex:BaseIndex,
|
|
16369
16385
|
// ChartLine:ChartLine,
|