windows 10 64位+anaconda3 64bit最新版.
需要用到的Python库:talib、pandas、tushare、os
再次测试,当前可用。
文件1:本地TS数据简单RSI买入策略20170730.py
- 本地TS数据简单RSI买入策略20170730.py
首先,感谢下面文章的作者。
https://bbs.pinggu.org/thread-5844312-1-1.html
策略说明:
1、出现RSI信号后,RSI上涨为买入时机;
2、策略回测的周期以交易日天数进行了简单限定(以iloc限定);
3、股票买入日计入持股1天,但仍以当日收盘价作为买入价;
缺陷:
1、单只股票没有考虑交易成本(汇总统计时考虑了成本);
2、没有考虑交易时间的重叠,即同一时间可能有多支股票符合买入条件;
3、收益计算的时间点上不是比较清晰,仍需检查。
本次更改说明:(和参考文章比较)
1、添加更多的可直接调整参数;
2、更改单只股票策略收益的存放位置(原,存放于最后持股日;现,存放于股票买入日);
3、原print ' 总收益:%.2f' %(sum(list(all_profit[profit])) - (count*0.0015) - 1) + '倍'
改为,去除-1
未来调整方向:
1、用timelist限定回测周期(strategy_testing_period);
2、完善买入策略
3、添加卖出策略,或自动计算最优策略(达到收益最大化的持有天数);
可调整参数说明:
*rsi_period:RSI的Period
*rsiValue:策略的RSI比较值
*holding_days_list:‘持有天数’(限定为4个)
*strategy_testing_days:策略回测的周期
*waiting_days:RSI达到设定值到买入的等待时间
*data_path:股票quotes的储存路径
*calc_path:策略详细细节的储存路径
*sum_path:策略汇总统计的储存路径
@author: Wilson J
------------------------------------
文件2:Tushare下载所选股票历史行情数据到本地-前复权.py
数据说明:
1、通过Tushare接口获取交易数据(前复权)
2、股票代码可以直接输入有限多个,或者采用Tushare函数basic_info中的Code
(注:控制Code数量,建议设定适当的筛选条件)
参数:
1、交易数据开始日期、结束日期
2、CSV文件输出路径
@author: Wilson J