动态展示K线图指标模板
应用场景
定义好几个指标模板(模板1 = MA(20,30,60)+MACD+VOL 模板2=BOLL+CCI),根据用户选择在K线图上动态切换指标模板.
模板1 展示3个指标
1. MA(20,30,60)
2. MACD,
3. VOL
模板2 展示2个指标
1. BOLL
2. CCI
ChangeIndexTemplate
动态切换模板函数
ChangeIndexTemplate(option) 可以动态切换指标模板
option 设置指标模板数据
option.Windows[] 指标窗口数组 具体格式参见教程 HQChart使用教程49-指标配置项说明
option.KLine.Period 周期设置,缺省使用当前周期 (ver>=8734)
option.KLine.Right 复权设置,缺省使用当前复权 (ver>=8734)‘’
option.OverlayIndex[] 叠加指标, 具体格式参见教程 HQChart使用教程17- 多技术指标独立坐标叠加
模板1的配置
//带参数
var option=
{
Windows:
[
{Index:"MA", Args:[ { Name:'M1', Value:20}, { Name:'M2', Value:30 }, { Name:'M3', Value:60} ]},
{Index:"MACD"},
{Index:"VOL"},
], //窗口指标
}
模板2的配置
//模板2的配置
var option=
{
Windows:
[
{Index:"BOLL"},
{Index:"CCI"},
], //窗口指标
}
模板3 系统指标+自定指标
var option=
{
Windows:
[
{
ID: "MA",
Name: 'MA组合',
Description: '均线',
IsMainIndex: true,
Args: [
{ Name: 'M1', Value: 5
},
{ Name: 'M2', Value: 10
},
{ Name: 'M3', Value: 20
},
{ Name: 'M4', Value: 40
},
{ Name: 'M5', Value: 60
},
{ Name: 'M6', Value: 0
},
],
Script:
'MA5:MA(CLOSE,M1);\n' +
'MA10:MA(CLOSE,M2);\n' +
'MA20:MA(CLOSE,M3);\n' +
'MA40:MA(CLOSE,M4);\n' +
'MA60:MA(CLOSE,M5);\n' +
'MA:MA(CLOSE,M6);\n',
},
{
Change: false,
Index: "VOL",
Modify: false,
TitleHeight: 24
}
]
}
模板3 系统指标+后台指标
this.Chart.ChangeIndexTemplate(
{
Windows:
[
{
Index: "MA",
},
{
Index:'后台指标',
API:
{
Name:'后台指标',
Args:null,
Url:'http://local',
}
}
],
});
通过chart.ChangeIndexTemplate(option) 就可以动态切换指标模板
示例
- https://jones2000.github.io/HQChart/webhqchart.demo/samples/chart_minute_template_index.html
- https://jones2000.github.io/HQChart/webhqchart.demo/samples/chart_kline_template_index.html
ChangeIndexWindow
修改单个窗口的指标,和叠加指标
函数定义如下
//切换窗口指标 option={ Window:{}, OverlayIndex:[], Frame:{ }}
this.ChangeIndexWindow=function(windowIndex, option)
windowIndex
窗口索引
Window
主指标信息
OverlayIndex
叠加指标信息 数组类型
Frame
窗口属性设置
示例1
修改第1个窗口指标
var option=
{
Window:{ Index:"BOLL"},
OverlayIndex: //叠加指标设置
[
{Index:'MA', IsShareY:true,ShowRightText:false },
{Index:'RSI', ShowRightText:false },
],
Delete:
{
Window:true/false ,删除主指标
Overlay:true/false 删除所有叠加指标
}
}
this.Chart.ChangeIndexWindow(0, option);