量化投资学习笔记13——各种指标的绘图、计算及交易策略
《量化投资:以python为工具》第五部分笔记
先来画k线图,要注意finance模块已经从matplotlib库中去除,现在要用mpl_finance库,单独安装。
其中有candlestick_ohlc函数,用来画k线图或者叫蜡烛图。函数接受的日期格式是浮点类型,接受的数据格式是列表型,要进行相应的转换,详见github库里本章的代码。
下面尝试几个跟指标有关的交易策略。
1.动量交易策略
即股价上涨或下跌的惯性。
计算方法有作差法,即今天的价格减去一段时间间隔以前的价格。
动量m = Pt - Pt-m
计算万科的5日动量,作图
动量交易策略:动量大于0,买入,动量小于0,卖出。
计算策略的胜率,画出直方图。
胜率大于0.5,但也没有大太多。
2.RSI指标
用来衡量股票买卖力量的相对强弱。
RSI = 100×(UP/(UP+DOWN))
UP表示周期内股价上涨幅度的平均值, DOWN表示周期内股价下跌幅度的平均值。
RSI取值范围为0~100,大于50越多,表明股价上涨力量超过下跌力量越多。
用交通银行股票做例子,先按上述公式计算RSI值,时间周期取6天。
最下面一个是RSI值。
再计算RSI24的值。
当短期rsi线穿过长期rsi线,为黄金交叉,买入信号,反之为死亡交叉,为卖出信号。
接着进行具体的策略回测。
策略为:当RSI6>80或RSI6向下穿过RSI24为卖出信号。当RSI6<20或RSI向上穿过RSI24为买入信号。
策略的收益时序图
策略的胜率计算
58%
再画图看一下累积收益率
上面是股票本身的累积收益率,下面是策略的累积收益。可以看到策略还不如直接买入然后持有呢。
本章代码: https://github.com/zwdnet/MyQuant/tree/master/13
我发文章的四个地方,欢迎大家在朋友圈等地方分享,欢迎点“在看”。
我的个人博客地址:https://zwdnet.github.io
我的知乎文章地址: https://www.zhihu.com/people/zhao-you-min/posts
我的博客园博客地址: https://www.cnblogs.com/zwdnet/
我的微信个人订阅号:赵瑜敏的口腔医学学习园地