什么是动量效应和动量交易策略?
动量效应是指过去收益较高的资产,在未来一段时间内仍获得较高的收益,过去收益较低的资产在未来仍获得较低的收益。对于动量效应现象的解释,传统金融学认为,动量效应的存在并不是市场无效的证据,并试图从理性风险补偿这一角度对其进行解释;而行为金融学认为动量效应是由投资者的非理性行为和反应不足影响的。虽然两种学说的理论依据有所不同,但都从不同方面解释了动量效应的存在,这为动量效应的研究奠定了理论基础,也为投资者寻找套利机会提供了依据。
1. 引库
import numpy as np
import pandas as pd
import tushare as ts
import matplotlib.pyplot as plt
import seaborn
plt.style.use('seaborn')
import matplotlib as mpl
%matplotlib inline
mpl.rcParams['font.family'] = 'serif'
import warnings; warnings.simplefilter('ignore') # 忽略警告信息
2. 数据准备 & 回测准备
# tushare 获取沪深300股票数据
data = ts.get_k_data('hs300', start = '2010-01-01', end='2017-06-30')[['date','close']]
data.rename(columns={
'close': 'price'}, inplace=True)
data.set_index('date', inplace = True)
data.head()
3. 策略开发思路
# 计算连续收益率
data['returns'] = np.log(data['price'] / data['price'].shift(1))
# np.sign()符号函数支持向量化
data['position'] = np