SMA(算术移动平均)
简单移动平均线(SMA)又称“算术移动平均线”,是在投资股票时用于分析股票价格走势的一项指标。它是一个简单地将某一证券在某一时间段的收盘价之和进行算术平均的方法,并随着时间的推移将这些平均值连成一条线便可得出 SMA。
计算方法:
如求指标 X 的 N 日移动平均,M 为权重。
算法:SMA=(M*X+(N-M)*SMA[-1])/N,其中 SMA[-1] 表示上一日 SMA 值,N 必须大于 M。
指标参数:
y |
指标返回的字段名。 |
x |
要计算的字段,如收盘 |
n |
时间周期,如 5 |
m |
权重,如 1 |
函数代码:
A |
B |
|
1 |
func SMA(A,$y,$x,n,m) |
=A.run(if(#>1,(m*${x}+(n-m)*${y}[-1])/n,${x}):${y}) |
将函数保存在脚本 indicator.splx 中。
举例:调用函数计算浦发银行 2024 年收盘价的 5 日 SMA。要返回指标字段命名为 SMA。
A |
B |
|
… |
… |
|
5 |
=call@f("indicator.splx") |
登记脚本中的函数 |
6 |
… |
计算出源数据 |
7 |
=A6.derive(:SMA) |
增加要返回的指标字段 |
8 |
=SMA(A7,SMA, 收盘,5,1) |
调用函数计算指标 |
运行效果: