本文是通过之前学习《Python量化入门》课程系列后,进行的学习研究,将思路和结果供大家分享一起讨论。
关键词:Python, 量化研究,移动平均线。
实验目的:对多个股票,使用多组参数,进行交易策略回测模拟,并对回测结果进行分析。
关于单组测试的模拟,请回顾
刀客特鹿:量化学习笔记#股票的移动平均线的研究(1)单股单组均线zhuanlan.zhihu.com
重复部分,不会再记录。
原始数据:code_list = ['sh600004', 'sh600007', 'sh600104', 'sh600366', 'sh600823', 'sz000709', 'sz000733', 'sz000895', 'sz000936', 'sz000988']
人为随机挑选以上十个股票,数据的要求,上市日都要早于20050101,并且未退市。
多组参数:短期均线 ma_short range(20,121,5)
长期均线 ma_long range(20,121,5)
交易策略:最小交易周期:日
买入信号:当短期均线上穿长期均线时候 ma_short >= ma_long
卖出信号:当长期均线下穿长期均线时候 ma_short < ma_long
信号的判别价格:每日收盘价(历史除权价格)
交易计算价格:信号发生后的第二日开盘价(历史未除权价格)
交易手续费:按0.0005计算
印花税:按0.001计算,仅在卖出时发生
交易初始资金 1000000
最小交易数量:100股
测试的时间范围:20050101-20170512
Benchmark: 上证指数
实验步骤:
第一步 获取指定股票的所有均线参数的收益结果
1. 根据之前的实验策略,对code_list = ['sh600004', 'sh600007', 'sh600104', 'sh600366', 'sh600823', 'sz000709', 'sz000733', 'sz000895', 'sz000936', 'sz000988']
for code in code_list:
get_stock_output(code)
获取单个股票所有均线参数的收益结果的思路,请参考:
刀客特鹿:量化学习笔记#股票的移动平均线的研究(2)单股多组均线zhuanlan.zhihu.com
第二步. 读取以上的数据结果,进行分析
1. 根据上一笔记,对单个股票分析的思路,分别对10个股票进行数据分析
1) sh600004 白云机场
排名前十的参数和收益结果
收益率曲线:
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
2)sh600007 中国国贸
排名前十的参数和收益结果
收益率曲线:
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
3)sh600104 上汽集团
排名前十的参数和收益结果
收益率曲线:
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
4)sh600366 宁波韵升
排名前十的参数和收益结果
收益率曲线
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
5)sh600823 世茂股份
排名前十的参数和收益结果
收益率曲线
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
6)sz000709 河钢股份
排名前十的参数和收益结果
收益率曲线
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
7)sz000733 振华科技
排名前十的参数和收益结果
收益率曲线
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
8)sz000895 双汇发展
排名前十的参数和收益结果
收益率曲线
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
9)sz000936 华西股份
排名前十的参数和收益结果
收益率曲线
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
10)sz000936 宁波韵升
排名前十的参数和收益结果
收益率曲线
3D绘图 长期均线,短期均线,策略年化收益 / 最大回撤
实验总结
以上10个股票, 5个是上证主板,5个是深圳中小板
最优均线策略 的收益 明显大于 股票自身收益的有6个:
sh600004 白云机场 最优均线参数范围 长期均线 49-66 短期均线3-8
sh600104 上汽集团 最优均线参数范围 长期均线 41-53 短期均线9-13
sh600823 世茂股份 最优均线参数范围 长期均线 38-43 短期均线2-4
sz000709 河钢股份 最优均线参数范围 长期均线 101-108 短期均线7-11
sz000733 振华科技 最优均线参数范围 长期均线 20-33 短期均线2-15
sz000936 华西股份 最优均线参数范围 长期均线 20-57 短期均线1-9
根据以上结果,个人得到的结论是:
利用均线个股自己的股价产生的均线策略,能获得大于等于自身收益的表现。
但是每个个股的长短均线参数并没有明显的共性。
这个符合之前个人的逻辑猜测,由个股的股价产生的均线策略,源于个股本身,是一种内生变量,所以较难在参数上找到共性。
以上结果可能存在的问题:目前A股股票近4000个, 2005年时股票估计也近1300个,此次实验仅仅使用10个股票数据作为样本,存在偏差的可能性较大。
后续研究方向:
1. 抽取更多的股票样本进行分析,验证以上的逻辑
2. 尝试其他的技术指标
3. 尝试多技术指标叠加效果(如KDJ,MACD等)
4. 结合动量和反转策略
5. 尝试使用均线选股
以上交易策略的大量原始代码和框架,师从于《Python量化入门》课程系列,想获得所有的源代码,并建立自己的交易策略,建议购买课程后深入学习。
课程评价
优点:这套课程特别适合对Python,pandas都没掌握的同学,和“入门”二字很贴切。虽然价要收取一定的费用,但是对于零基础的同学还是墙裂推荐。当然我的笔记是完全免费的,但这个只能作为点心,毕竟正餐才是最有营养的~而且还有大量的源代码A股所有的股票历史交易数据。
缺点:只能用微信访问学习,PC端的话要通过微信客户端访问。
系列总课时约12多个小时,会获得课程讲解的所有源代码。如要深入熟练掌握,课外练习可能需要100小时+。
课程传送门: