量化金融的需要计算营收增长率,过去 5 年每股营业收入关于[0,1,2,3,4]回归的斜率系数,然后再除以过去 5 年每股营业收入的均值的绝对值。
用TALIB库中的LINEARREG函数计算出来感觉不对,不知哪位大师能指点一二,用python实现
ChatGPT尝试为您解答,仅供参考
首先,我们需要使用 Python 的线性回归模块 linregress,它可以帮助我们计算给定数据的线性回归方程的斜率和截距。我们可以使用如下代码来计算斜率系数:
from scipy.stats import linregress
# 过去 5 年每股营业收入数据
revenue = [0,1,2,3,4]
# 计算斜率系数
slope, intercept, r_value, p_value, std_err = linregress(range(5), revenue)
print(slope)
接下来,我们需要使用 Python 的内置函数 mean 计算过去 5 年每股营业收入的均值,然后除以均值的绝对值即可得到营收增长率。
代码如下:
from scipy.stats import linregress
from statistics import mean
# 过去 5 年每股营业收入数据
revenue = [0,1,2,3,4]
# 计算斜率系数
slope, intercept, r_value, p_value, std_err = linregress(range(5), revenue)
# 计算营收增长率
growth_rate = slope / abs(mean(revenue))
print(growth_rate)