强化学习交易应用相关

强化学习交易应用相关

 强化学习交易主要有两个前提:交易环境构建和强化算法实现。

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/):

使用体验:gym-anytrading对初学者更友好一些,可以作为入门库。其他库还有待研究。

强化学习算法

强化学习算法如DDPG、TD3、SAC、PPO、DQN等算法,可以使用pytorch自己写,也可以使用现有的强化学习算法库,常见的强化学习库如下:

Stable-Baselines3

ElegantRL

使用体验:pytorch官网有DQN网络创建示例,但是考虑到其他各种各样的强化学习库,建议直接用算法库,Stable-Baselines3社区更活跃,ElegantRL与FinRL同属一个组织。

相关视频教程

【【对新手非常友好】三小时深度学习PyTorch快速入门!包教会你的!  --人工智能/深度学习/pytorch】 

【[pytorch 强化学习] 01 认识环境(environment,gym.Env)以及 CartPole-v0/v1 环境】 

深入探索 gym-anytrading:最简单、灵活且全面的 OpenAI Gym 交易环境

后期方向(以gym-anytrading为基础)

gym-anytrading 可以轻松与其他强化学习和交易分析库集成。例如:

  1. 与 Stable-Baselines3 集成,用于训练 RL 模型。
  2. 与 QuantStats 集成,进行交易策略的统计分析。

这些集成示例可以在项目的 examples 目录中找到。

如果gym-anytrading不满足要求,可以进阶以下中高阶同类库:

  • DI-engine: 提供了 gym-anytrading 的扩展版本,增加了更多动作和仓位选择。
  • gym-mtsim: 适合专业用户的更复杂交易模拟环境。
posted @ 2024-11-26 19:55  小树的朋友  阅读(18)  评论(0编辑  收藏  举报