手把手教你用三行python 代码做一个动量策略「量化投资系列」

【爆款推荐】一次性医用口罩医疗三层防护成人医生专用夏天夏季透气单独立包装 2小时销量达421件 原价9.90元,券后价仅6.90元 【立即领券】即可领券购买
【立即下单】

动量策略是右侧交易里最常见的,背后的逻辑是就现在涨的,后市还会涨,动量具有惯性的意思。

首先加载原始数据,我们用天的收盘价即可,按统一转为收益率。因为点位本身不重要,我们最后只关心变化率。

以沪深300数据为例,从2010-01-01到现在。

df['position'] = np.sign(df[code])

numpy.sign可以向量化的判断收益率为正或负。——其实收益率就是1天的动量。

下面我们做一个最简单的动量策略,就是昨天收益率(动量)为正当天持仓; 如果昨天为负,则当天空仓,一行代码就够了:

df['strategy'] = df['position'].shift(1) * df[code]

shift把position统一向上撤一行,否则就是未来函数。

这一句就把策略的收益直接算出来:

剩余80%内容付费后可查看