关闭
您正在使用的浏览器版本较低,无法支持聚宽的某些特性。
为了获得更好的体验,推荐使用:
Google Chrome
或者
Mozilla Firefox
或者
IE9以上
。
返回主题列表
alpha 量价因子与机器学习模型
JinnyKoo
发布于2022-07-28
回复 25
浏览 7319
10
listen
分享到:
微信
微博
雪球
前几天看了一下微软的Qlib框架,感觉也没有新的东西。到是提供了两个数据集alpha158和alpha360。于是看了几个例子,想看看Qlib 是如何利用alpha158 来做量化的。 alpha158 包含了158个量价因子。其实alpha101也好,或者是alpha191因子,如果你仔细看一下这些因子的公式,我猜测应该是根据类似遗传算法这种生成的。也就是说,这些个因子就是从原始的开盘价,收盘价,最高价,最低价等数据的基础上计算出来的。我其实一开始接触量化最早接触的也是这些因子,但是我总是认为,既然这些因子是在原始量价数据上二次加工的,难免会丢失一些信息,还不如直接用原始的数据。但是这几天看了微软的Qlib,也决定跑跑看这些个模型。 言归正传,QLib提供的几个例子的思路基本上是,比如对于alpha158数据集,计算T交易日的量价因子,将其作为特征。然后对T+n天的收益率做回归,n可以是1,2,3 等等。所以基本上对于alpha158,就会有158个特征。QLib 提供了lightgbm 等很多模型,这里我用lightgbm 举例。后来发现joinquant 没有安装Qlib,那我就顺着这个思路用alpha191来写了个策略。策略思路如下: - 第一步,先选取一个备选的股票池,比如全部消费类股票。 - 第二步,计算每一只股票的全部191 个因子 (为了有足够多的数据来进行模型训练,我取了T-7天到T天的所有数据。但是发现聚宽的alpha 函数运行非常慢,而且一次只能取一天的数据)。 - 第三步,对模型进行回归训练。(由于我担心特征太多,数据太少,就用了PCA保留了5个主要特征, 模型的话测试了Linearregression 和lightgbm) - 第四步,在T+n 天早上根据模型的预测,购入评分最高的5只股票。(我这边n取了1,也就是每天都会进行买卖)。 - 第五步,每隔30天重新训练模型。 由于模型对于每天的买卖进行预测,所以我是希望模型的收益曲线大部分时间能在基准之上。 贴个回测供参考(非常耗时,只测了今年的数据,消耗了大概200多分钟)
10
listen
分享到:
微信
微博
雪球
评论
keep_silent
那个,提个小建议取7天的数据get_price是不是用count=7好一点,不然有可能遇到节假日导致数据不足7个交易日。
2022-07-28
JinnyKoo
@拯救兄弟 那个7天的数据只是用来训练,多个几天少几天问题也不是很大,但是天数太多就会很慢跑起来。
2022-07-28
mrcao
你确定7天数据就能训练出来了?
2023-06-01
JinnyKoo
@mrcao 不确定,这里7天是个参数
2023-06-02
松楠
谢谢分享!
2023-06-02
zheJiangCX
牛,赞
2023-06-02
mrcao
我也用191因子,用2年数据训练要的吧,在这网站上想多别想,直接崩了,只能下下来在自己电脑上跑(你得有个强大的显卡,1060以上显卡,6G显存以上吧),深度学习一年数据6小时(我用的4天步长),预测出了股票整理好,再放在这网站上回测,收益不行,但,超额收益真的很高,还在找收益的漏洞
2023-07-04
tmg
@mrcao 用显卡干啥,你用了深度学习模型?
2023-12-18
zmjames
@mrcao label是怎么设计的? 如果是分类问题,感觉 蒙对的概率比较大。尤其是label只是0和1
2024-03-25
mrcao
@tmg LSTM模型,在本地机上训练,不用GPU训练,就一个慢
2024-03-31
呵呵猪
狠狠地赞了,求回复
2024-03-31
灰灰巫
@呵呵猪 jia
2024-03-31
呵呵猪
@灰灰巫 huizan
2024-03-31
水煮鱼2
狠狠
2024-03-31
尘里微
@水煮鱼2 学习了
2024-03-31
水煮鱼2
@尘里微
2024-03-31
尘里微
@水煮鱼2 学习了
2024-03-31
水煮鱼2
@尘里微
2024-03-31
尘里微
@水煮鱼2 学习了
2024-03-31
水煮鱼2
@尘里微
2024-03-31
首页
上一页
1
2
下一页
尾页
您尚未登录,请
登录
或者
注册
聚宽发表回复。
取 消
提 交