SPL做量化----ENE 轨道线
轨道线(ENE)由上轨线 (UPPER) 和下轨线 (LOWER) 及中轨线 (ENE) 组成,轨道线的优势在于其不仅具有趋势轨道的研判分析作用,也可以敏锐的觉察股价运行过程中方向的改变。此代码比较短,和前面章节的 MA 一样,可以用 func 的形式保存在 index.splx 中。例如计算浦发银行 2024 年的收盘价的轨道线指标,n、M1、M2 分别取 25、6、6。例如,调用脚本计算浦发银
轨道线(ENE)由上轨线 (UPPER) 和下轨线 (LOWER) 及中轨线 (ENE) 组成,轨道线的优势在于其不仅具有趋势轨道的研判分析作用,也可以敏锐的觉察股价运行过程中方向的改变。
计算方法:
1.UPPER=(1+M1/100)* 收盘价的 n 日简单移动平均
2.LOWER=(1-M2/100)* 收盘价的 n 日简单移动平均
3.ENE=(UPPER+LOWER)/2
例如计算浦发银行 2024 年的收盘价的轨道线指标,n、M1、M2 分别取 25、6、6。
代码示例:
| A | |
| 1 | 600000 |
| 2 | 2024-01-01 |
| 3 | 2024-12-31 |
| 4 | =call("adjustprice.splx", "", call("loadkday.splx", A1, A2,A3) ) |
| 5 | 25 |
| 6 | 6 |
| 7 | 6 |
| 8 | =A4.new(code,tdate,(1+A6/100)*avg(close[1-A5:0]):UPPER,(1-A7/100)*avg(close[1-A5:0]):LOWER,(UPPER+LOWER)/2:ENE) |
A1-A4 读取股票数据
A5-A7 输入 n、M1、M2
A8 计算轨道线指标

为了使用方便,可以用宏封装成通用函数供调用。
函数代码:
| A | B | |
| 1 | func ene(data,field,N) | =data.new(code,tdate,(1+N(2)/100)*avg(${field}[1-N(1):0]):UPPER,(1-N(3)/100)*avg(${field}[1-N(1):0]):LOWER,(UPPER+LOWER)/2:ENE) |
此代码比较短,和前面章节的 MA 一样,可以用 func 的形式保存在 index.splx 中。
参数:
| data | 序表,某支股票的日线数据 |
| field | 字符串,字段名 |
| N | 序列,n、M1、M2 如[25,6,6] |
返回数据集结构:
| code | 股票代码 |
| tdate | 日期 |
| UPPER | 上轨线 |
| LOWER | 下轨线 |
| ENE | 轨道线 |
例如,调用脚本计算浦发银行 2024 年的收盘价的轨道线指标,N 取 [25,6,6]。
| A | B | |
| … | … | |
| 6 | =call@f("index.splx") | 登记脚本中的函数 |
| 7 | … | 计算出源数据 |
| 8 | =ene(A7,"close",[25,6,6]) | 调用函数 |
运行效果:

SPL 可以在这里下载:免费下载。使用免费的桌面版就可以了,直接安装即可使用。专业程序员也可以使用这里的开源版,但需要自行配置部署。
SPL 配有系统的教程,这里有面向新手的课程(含视频):SPL程序设计语言 · 乾学院VIP课程 ,乾学院 也有更多学习资料。
更多推荐



所有评论(0)