线性回归指标

在股市投资中,投资者往往需要根据历史数据来预测未来的市场趋势,以便做出更明智的投资决策。线性回归作为一种经典的统计工具,在股票量化策略中发挥着举足轻重的作用,它通过对历史数据进行统计分析,建立出一个尽可能反映市场规律的模型,从而预测未来的股票价格走势。

建立线性模型的主要思路为:

1. 确定自变量和因变量。因变量一般就是每日的股票价格,如收盘价;自变量可以是价格、财务指标、量化因子等等。

2. 确定训练数据和预测数据的天数,取前 n 天数据做训练,近 m 天数据做预测。例如取前 n 天数据训练,近 m 天数据预测

3. 对自变量特征进行 PCA 主成分分析,提取前 k 个主要成分。

4. PCA 降维之后,用 linefit() 函数做线性回归的预测模型。

5. 在预测数据上做预测,得到第二天的股票价格


指标参数:

y

指标返回列,模型预测的股票价格

n

数字,训练数据天数

m

数字,预测数据天数

k

数字,主成分个数,缺省值为 4


函数代码:


A

B

1

func PCALF(A, $y, n, m, k=4)

=A.derive@o(~[-m+1:0].conj([开盘,收盘,最高,最低]):PCALF0)

2


=A.run( if( #>n+m, (

ox=PCALF0[-n:-1], tm=pca(ox, k), tx=pca(ox, tm),

ty=收盘[-n+1,0], mc=linefit(tx.(~|1), ty ),

d=pca([PCALF0], tm ).(~|1),${y}=mul(d, mc)

)))

3


=A.alter(; PCALF0)

这段代码中 pca 函数来自于数学库,读者使用时要在工具→选项菜单中加载数学库。

B49 格中的“[开盘, 收盘, 最高, 最低]”是建模的自变量,读者可以自行修改。

举例:

调用脚本计算浦发银行 2024 年的线性回归指标。n 取 100,m 取 5。


A

B

5

=call@f("indicator.splx")

登记脚本中的函数

6

计算出源数据

7

=A6.derive(:LF)

增加要返回的指标字段

8

=PCALF(A7, LF, 100, 5)

调用函数计算指标

运行效果:

..

指标应用说明:第 14 章 线性回归预测策略 - 乾学院