# 基于模型的深度强化学习资产组合优化框架

By [Knowledge is power.](https://paragraph.com/@knowledge-is-power) · 2023-11-25

---

**论文解读：Model-based Deep Reinforcement Learning for Dynamic Portfolio Optimization**

大家好，我是知识就是力量，致力于分享我将知识用于变现的思考。

这是我基于Web3的第一篇分享。随着时代的发展，我逐渐从传统的平台（知乎），向Web3平台转移，但分享知识的初衷是不变的。

今天介绍的这篇论文是基于深度强化学习去做投资组合优化的论文。论文中采用了Model-Based RL，想必大家是比较感兴趣的。这篇文章的主要创新点在于，设计了几个帮助强化学习的模型：

1.  预测模块（IPM，Infused Prediction Module）
    
2.  基于生成对抗的数据增广模块（DAM，Data Augmentation Module）
    
3.  行为学习模块（BCM，Behavior Cloning Module）
    

总的来说把量化和RL领域的几个Trick进行了大杂烩，然后这些东西都与DDPG结合起来，看起来还是很有道理的（没有道理我们就不会解读了）。

对于资产组合管理问题的建模，本文没有特别说折扣因子是否为0。在与一些Model-Free的论文作者讨论中，有大神认为交易问题中，完全观察的假设（折扣因子为0）是不对的，这个我才疏学浅，不敢妄下断言。但是我个人觉得交易和打FPS游戏有异曲同工之妙，在任意时刻其实都不能看到整个世界，所以更类似于PO-MDP（Partial Observed MDP），然后就开始挑战Bellman方程的有效性了……这实在是我等工程师无法涉足的领域，还请理论大神们赐教。

但是即使理论不牢靠，我们也已经见识到RL在游戏领域的强大威力了。所以我们也许可以暂时把理论问题放在一旁，先讨论比较具体的问题（说到底深度技术本身就是一个实验先行的领域）。总之强化交易系统可以看作如下图的架构：

![整体架构](https://storage.googleapis.com/papyrus_images/441852e529b1f26c09f0d18b5768c83a63bb8b7eaf7dd502b5f7c6a5b8efe3c2.jpg)

整体架构

其实就是一个环境（MSE部分），加上数据处理模块（DH），加上交易的Agent（AE）。我们可以看到IPM、DAM和BCM都是外挂在Agent上的，因此这个架构其实是可以作为一个通用架构去推广。具体来讲Agent的架构如下图所示：

![交易代理的架构](https://storage.googleapis.com/papyrus_images/17a9a5ca5c7d7ecaaa80b26ed36ae7f79b4a292265c70cdfad3aaec58cd77e22.jpg)

交易代理的架构

先拿掉IPM、DAM、BCM，我们看到的就是非常经典的Actor-Critic+Replay Memory架构。我们来详细解释一下新模型的用处：

**IPM**和特征提取器（FE）一样读取原始的价格信息，输出再与特征连结起来，也就是把价格预测作为外挂特征提取器了。IPM是用非线性玻尔兹曼机（NDyBM）或者WaveNet实现的。

**BCM**，顾名思义是动作拷贝，这是RL里面比较经典的技术了。个人认为BC是比较类似于有监督学习的，那么这里的监督信号，就是使得当天利润最大化的调仓比例（可以通过读取下一天的价格，求解优化问题算出来）。当天利润最大化的调仓比例，和策略网络给出的调仓比例之间，存在Loss，就可以计算梯度。Policy Gradient和有监督Gradient通过一个比例进行调整，就可以保证策略更新不会过度偏离当天利润最优解（好像有点PPO的意思？）。BCM只对策略网络有影响，对于估值是没有影响的。

**DAM**，就是用RGAN（Recurrent GAN）去生成时间序列，解决历史数据较少的问题（实验做的小时线，还少吗？）。

**实验**部分，是在美股小时线上做的，考虑了0.2%的交易佣金和0.5%的滑点，条件还是比较苛刻了。模型看到的状态是当前归一化价格矩阵+上一时刻的资产权重。我们先来看看结果：

![回归测试的结果](https://storage.googleapis.com/papyrus_images/fff921d526171ab0b8a64516e353bae3fae69baebb1bf43df6a77a1ef9008b68.jpg)

回归测试的结果

具体分析，IPM可以提高收益，但是有过拟合的可能性，增加风险。IPM+DAM可以降低风险但是收益也同时降低了，所以再加上BCM又可以把收益补回来。总之就是以毒攻毒抵消所有不利因素剩下全是好的这个样子（有点像段誉、令狐冲这类龙傲天的成长套路）。最后文章指出这个框架不仅可以用于DDPG这类Off-Policy的算法，也可以用于PPO这类On-Policy的。

其实个人觉得所谓Model-Based，应该是对价格走势建模这些吧。DAM、BCM是做的数据增广、Loss正则化这类的改进，唯有IPM算是Model-Based部分，但是直接预测价格显得过于简单粗暴了。对于噪声很大的金融序列来说，Feature Engineering还有很大的潜力可挖，当然这就和RL关系不大了。

（PS，题图这个买卖信号图感觉好强大，高抛低吸步步为营，为什么我就训练不出来？！）

（PS1，文章附录有很多信息，值得一看）

---

*Originally published on [Knowledge is power.](https://paragraph.com/@knowledge-is-power/Jv0y0BiTbn4R1ZkMkSUJ)*
