HQChart使用教程28-如何创建系统指标

433 阅读3分钟

什么是系统指标

HQChart 内置100多个系统指标, 避免重复开发指标。常用MA,MACD,KDJ,KD, RSI 等都已经录入到系统指标中了,具体可以查看 umychart.index.data.js文件, 这个文件保存了HQChart所有系统指标.

如何增加系统指标

随者业务的拓展,可能HQChart提供的系统指标已不能满足现有业务需求,这个时候需要新增加系统指标。

JSIndexScript.AddIndex(aryIndex) 支持动态批量增加系统指标 aryIndex 只一个指标数数组

vue前面加空间命

import HQChart from 'hqchart'
........

HQChart.Chart.JSIndexScript.AddIndex()

小程序增加系统指标

小程序需要导入系统指标文件 umychart.index.data.wechat.js

import { JSCommonIndexScript} from "../../jscommon/umychart.index.data.wechat.js";

.....
onLoad:function()
{
...........
var index =
 [
     {
         ID: "MA",                //指标ID                    
         Name: 'MA',              //指标名称                    
         Description: '均线',     //描述信息                    
         IsMainIndex: true,       //是否是主图指标                    
         Args:                   //指标参数                    
             [
                 { Name: 'M1', Value: 5 },
                 { Name: 'M2', Value: 10 },
                 { Name: 'M3', Value: 20 },
                 { Name: 'M4', Value: 60 },
                 { Name: 'M5', Value: 120 },
             ],
         Script:                 //指标脚本                    
             'MA1:MA(CLOSE,M1),COLOR660025;\n' +
             'MA2:MA(CLOSE,M2),LINETHICK3;\n' +
             'MA3:MA(CLOSE,M3);\n' +
             'MA4:MA(CLOSE,M4);\n' +
             'MA5:MA(CLOSE,M5);\n'
     },
 ];

 JSCommonIndexScript.JSIndexScript.AddIndex(index);
}

COLOR660025 是指定这个MA1 输出线段颜色, 颜色可以自己设定,具体参见 颜色值帮助说明 LINETHICK3 指定MA2的线段粗细使用3个像素 ,详见参数帮助 LINETHICK帮助说明

用例1 修改MA指标

目前系统提供的MA 只有3个周期变量。我们可以提供一个新的MA指标来替换系统MA指标,新的MA 支持5个周期 指标脚本如下: MA1:MA(CLOSE,M1);
MA2:MA(CLOSE,M2);
MA3:MA(CLOSE,M3); MA4:MA(CLOSE,M4);
MA5:MA(CLOSE,M5);

var index=           
 [                
    {  ID:"MA",                //指标ID                    
       Name:'MA',              //指标名称                    
       Description:'均线',     //描述信息                    
       IsMainIndex:true,       //是否是主图指标                    
       Args:                   //指标参数                    
       [                        
         { Name:'M1', Value:5},                         
         { Name:'M2', Value:10},                        
         { Name:'M3', Value:20},                         
         { Name:'M4', Value:60},                        
         { Name:'M5', Value:120},                     
       ],                       
       Script:                 //指标脚本                    
       'MA1:MA(CLOSE,M1);\n'+                        
       'MA2:MA(CLOSE,M2);\n'+                        
       'MA3:MA(CLOSE,M3);\n'+                        
       'MA4:MA(CLOSE,M4);\n'+                        
       'MA5:MA(CLOSE,M5);\n'                
       },            
];
            
JSIndexScript.AddIndex(index);

这样系统函数MA就替换成新的MA指标了

用例2 如何把pc端行情软件中的指标添加到系统指标

  1. 首先我们打开pc软件点击公式编辑器参看指标。我们使用东方财富终端做为例子 在这里插入图片描述
  2. 把指标和对应的参数写成一个指标的结构体
var index=           
 [                
    {  ID:"定制指标1",                //指标ID                    
       Name:'东方财富指标MFI',              //指标名称                    
       Description:'资金流量指标',     //描述信息                    
       IsMainIndex:false,       //是否是主图指标                    
       Args:                   //指标参数                    
       [                        
         { Name:'N', Value:14},                         
         { Name:'N2', Value:6}                            
       ],                       
       Script:                 //指标脚本                    
       'TYP := (HIGH + LOW + CLOSE)/3;\n'+
       'V1:=SUM(IF(TYP>REF(TYP,1),TYP*VOL,0),N)/SUM(IF(TYP<REF(TYP,1),TYP*VOL,0),N);\n'+
       'MFI:100-(100/(1+V1)); '             
       },            
];
            
JSIndexScript.AddIndex(index);

下图是pc端行情软件指标和HQChart指标的对应关系 在这里插入图片描述 这样pc端的一个指标就迁移到HQChart的系统指标中了。

效果如下图: 在这里插入图片描述 点击参数修改可以对N, N2进行修改。 在这里插入图片描述

交流QQ群

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

HQChart代码地址

地址:github.com/jones2000/H…

个人爱好(模型/摄影)

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