
通过机器学习预测市场动向
|
183
图 5-21:与基于深度学习的策略相比,EUR / USD 的总绩效(样本外,无交易成本)
5.3.3
添加不同类型的特征
到目前为止,分析主要集中在直接对数收益上。当然,不仅可以添加更多的类别
/
分类,还可以在混合中添加其他类型的特征,例如基于动量,波动性或距离度量的
特征。以下代码派生了其他特征,并将它们添加到数据集中:
In [179]: data['momentum'] = data['return'].rolling(5).mean().shift(1)
In [180]: data['volatility'] = data['return'].rolling(20).std().shift(1)
In [181]: data['distance'] = (data['price'] -
data['price'].rolling(50).mean()).shift(1)
In [182]: data.dropna(inplace=True)
In [183]: cols.extend(['momentum', 'volatility', 'distance'])
In [184]: print(data.round(4).tail())