强化学习交易应用相关
强化学习交易应用相关
强化学习交易主要有两个前提:交易环境构建和强化算法实现。
FinRL尝试
这是第一个开源的金融强化学习框架,FinRL已经发展成为一个包含丰富资源的生态系统,为金融强化学习的研究和应用提供了强大的支持,包含交易环境构建(FinRL-Meta)和强化算法实现(ElegantRL、RLib、Stable Baselines 3)。
项目地址:https://github.com/AI4Finance-Foundation/FinRL
个人使用体验:可能因为维护不及时,示例代码无法顺利运行,需要各种修补才能勉强运行,体验较差。
针对交易环境构建和强化算法实现,又探索了以下库。
交易环境构建
环境构建一般用到openai的gym库,一个为强化学习设计的API标准,它包含了多种不同的参考环境,以便于进行算法的测试和评估。以下为gym官网上跟交易相关的环境(https://gymnasium.farama.org/environments/third_party_environments/):
-
AnyTrading 是 Gym 环境的集合,用于基于强化学习的交易算法,非常注重简单性、灵活性和全面性。
-
gym-mtsim:MetaTrader 5 平台的金融交易
MtSim 是MetaTrader 5交易平台的基于强化学习的交易算法的模拟器。
-
Gym Trading Env 根据历史数据模拟股票(或加密货币)市场。它设计得快速且易于定制。
使用体验:gym-anytrading对初学者更友好一些,可以作为入门库。其他库还有待研究。
强化学习算法
强化学习算法如DDPG、TD3、SAC、PPO、DQN等算法,可以使用pytorch自己写,也可以使用现有的强化学习算法库,常见的强化学习库如下:
使用体验:pytorch官网有DQN网络创建示例,但是考虑到其他各种各样的强化学习库,建议直接用算法库,Stable-Baselines3社区更活跃,ElegantRL与FinRL同属一个组织。
相关视频教程
【【对新手非常友好】三小时深度学习PyTorch快速入门!包教会你的! --人工智能/深度学习/pytorch】
【[pytorch 强化学习] 01 认识环境(environment,gym.Env)以及 CartPole-v0/v1 环境】
深入探索 gym-anytrading:最简单、灵活且全面的 OpenAI Gym 交易环境
后期方向(以gym-anytrading为基础)
gym-anytrading 可以轻松与其他强化学习和交易分析库集成。例如:
- 与 Stable-Baselines3 集成,用于训练 RL 模型。
- 与 QuantStats 集成,进行交易策略的统计分析。
这些集成示例可以在项目的 examples 目录中找到。
如果gym-anytrading不满足要求,可以进阶以下中高阶同类库: