应用场景

有的时候我们需要在一个窗口里面显示多个指标,但每个指标的数值单位相差太大,这个时候我们就需要给每个指标分配一个独立的坐标

效果图

测试地址:https://opensource.zealink.com/hqweb/demo/phone22.html
HQChart使用教程17- 多技术指标独立坐标叠加_HQChart使用教程

部分页面代码

我们只需要在option变量里面增加一个叠加指标设置
我在第1章的教程里(HQChart使用教程1- 如何快速创建一个K线图页面) 增加这个设置就可以。

var option=
 {
      Type:'历史K线图',
      .............
      OverlayIndex: //叠加指标设置
      [
          {Index:'RSI', Windows:0 },
          {Index:'MACD', Windows:0 },
          {Index:'MA', Windows:1 }
      ],  //叠加指标

      OverlayIndexFrameWidth:50, //每个子坐标的间距
}

这样多坐标叠加就完成了

配置参数说明

Index

指标的名字 如:MACD,RSI 等

Windows

窗口索引, 把指标叠加到指定的窗口上

IsShareY

1.9233 版本以后才有效
是否和主图指标公用Y轴 (默认是false, 独立Y轴坐标)
false 效果见下图
HQChart使用教程17- 多技术指标独立坐标叠加_HQChart使用教程_02
true 效果见下图
HQChart使用教程17- 多技术指标独立坐标叠加_HQChart使用教程_03

OverlayIndexFrameWidth

每个子坐标的间距,见下图
HQChart使用教程17- 多技术指标独立坐标叠加_HQChart使用教程_04

ShowRightText

是否显示右侧子坐标, 可以缺省, 默认true

Args

指标参数 Name:变量名 Value:数值
如:Args:[ { Name:‘M1’, Value:20}, { Name:‘M2’, Value:30} ]

API

远程API指标
{ Name:指标名称,Script:指标脚本(可选),Args:指标参数 }
如:
下面是在第1个指标窗口 配置1个后台(多线段指标)指标,一个MACD指标, 一个动态指标)

OverlayIndex:
[
     {
         Index:'多线段指标', Windows:0 ,
         API: 
         {
             Name:'多线段指标',
             Script:null,
             Args:null, 
             Url:'http://127.0.0.1:18080/api/jsindex' 
         }, 
         ShowRightText:true
     },
     {Index:'MACD', Windows:0 },
     {Windows:0, IndexName:"指标ID", Name:"自定义指标", Script:"T:MA(O,20);", Identify:"guid_66990"}
     //{Index:'MA', Windows:1 }
 ],  //叠加指标
动态添加和删除叠加接口

1. 添加一个叠加指标

chart.AddOverlayIndex(obj)
obj={WindowIndex:窗口ID, IndexName:指标ID, Identify:叠加指标ID(可选), API(可选),ShowRightText:可选 }

windowIndex: 窗口的索引,把指标叠加到指定的窗口上
indexName:指标的名字
identify: 指标id,给指标指定一个唯一的id, 如果为空, 内部会自动产生一个guid 做为这个指标的id
ShowRightText:是否显示右侧子坐标, 可以缺省, 默认true
Args: 指标参数 Name:变量名 Value:数值
如:Args:[ { Name:‘M1’, Value:20}, { Name:‘M2’, Value:30} ]

例子1 叠加动态脚本指标

var option={WindowIndex:0, IndexName:"指标ID", Name:"自定义指标", Script:"T:MA(O,20);", Identify:"guid_66990"};
this.Chart.AddOverlayIndex(option);

Name:是指标在顶部显示的指标名字
Script: 指标脚本

叠加系统指标

 var option={WindowIndex:0, IndexName:"MACD", Identify:"guid_66991"};
 this.Chart.AddOverlayIndex(option);

2. 删除一个叠加指标

chart.DeleteOverlayWindowsIndex(identify)

identify: 需要删除的指标id

QQ群: 950092318

如果还有问题可以加交流QQ群: 950092318

HQChart代码地址

地址:https://github.com/jones2000/HQChart

个人爱好(模型/摄影)

HQChart使用教程17- 多技术指标独立坐标叠加_HQChart使用教程_05
HQChart使用教程17- 多技术指标独立坐标叠加_HQChart使用教程_06
HQChart使用教程17- 多技术指标独立坐标叠加_HQChart使用教程_07
HQChart使用教程17- 多技术指标独立坐标叠加_HQChart使用教程_08