HQChart使用教程17- 多技术指标独立坐标叠加

151 篇文章 33 订阅

应用场景

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

效果图

测试地址:https://opensource.zealink.com/hqweb/demo/phone22.html
在这里插入图片描述

部分页面代码

我们只需要在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

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

FloatPrecision

指标标题栏输出小数位数(缺省2位)

IsShareY

1.9233 版本以后才有效
是否和主图指标公用Y轴 (默认是false, 独立Y轴坐标)
false 效果见下图
在这里插入图片描述
true 效果见下图
在这里插入图片描述

IsCalculateYMaxMin

共享Y轴时,叠加指标的数据是否需要调整共享Y轴最大最小值,默认true

OverlayIndexFrameWidth

每个子坐标的间距,见下图
在这里插入图片描述

ShowRightText

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

ShowToolbar

是否显示关闭及切换指标按钮

IsShowIndexTitle

是否显示指标标题栏

IsShowMainFrame

把叠加指标Y轴绑定到窗口的Y轴上.
0=不绑定 (默认)
1=绑定到左侧Y轴上
2=绑定到又侧Y轴上

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

HQChart代码地址

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

个人爱好(模型/摄影)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HQChart

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值