利用强化学习进行股票操作实战
今天开始利用强化学习实现股票操作。
我在网上找了一个简单的强化学习进行股票操作的例子,并在此基础上进行了小改动。
首先讲下建模的思路,当模型发出买入指令时,我们一次性全部买入;当模型发出卖出指令时则一次性全部卖出。模型只在一支股票上进行操作。模型我们选取Q-learning模型。(如果对Q-learning和DeepQ不了解的,建议先理解这两个模型,不然后面看不懂)
废话不多说直接上代码。
定义一个agent类
其初始化参数包括以下:
参数解释:
state_size: q-learning需要输入一个状态(目前环境状态),其大小表示状态的维度。
window_size: 在这里我们利用过去一段时间的收盘价表示输入的状态,window_size表示观测数据的时间窗大小。如果window_size=5,表示利用过去5天收盘价(包括当天)。
trend: 用于训练的数据,为历史收盘价数据
skip:操作频率
action_size: 3 (有买入、卖出、观望三种操作)
batc