Python量化交易——股票择时到底能否赚钱?技术指标大比拼——STOCHF指标

Python量化交易——STOCHF技术指标的有效性研究

背景介绍

技术指标是股票交易中最常用的技术手段之一,abc几乎所有的技术文章或股票分析文章都离不开通过MACD等各种指标来判断一支股票的买点和卖点,做量化的也会经常接触TA-Lib中提供的各种技术指标。从股评人的文章里看,似乎这些指标都有指哪打哪的能力,但是,我们既然做量化交易,就必须用数据说话,一个技术指标到底好不好,有没有用,不是靠嘴说的,是靠数据来验证的。因此,我这个系列文章的目标,就是把TA-Lib中的技术指标全都拿出来溜一溜,做一个横向大评比。俗话说,是骡子是马拉出来溜溜,通过大数据分析,我们就应该对指标的有效性有一个大致的了解。

为此,我通过一个系列文章,来综合评测33种TA-Lib中的技术指标的有效性,详情请点击这里

STOCHF技术指标介绍

STOCH指标(Stochastic Oscillator)向我们展示了有关动量和趋势强度的信息。正如我们将很快看到的,该指标分析价格变动,并告诉我们价格变动的速度和力度。STOCH指标计算K和D两条线,都在0~100之间波动。

STOCHF指标与STOCH类似,使用快速随机指标判断价格趋势。

指标用法建议

使用方法:

  1. 从KD的取值方面考虑,80以上为超买区,20以下为超卖区,KD超过80就应该考虑卖了,低于20就应该考虑买入了;
  2. KD指标的交叉方面考虑,K上穿D是金叉,为买入信号,金叉的位置应该比较低,是在超卖区的位置,越低越好。交叉的交数以2次为最少,越多越好;
  3. KD指标的背离方面考虑 当KD处在高位,并形成两个依次向下的峰,而此时股份还在一个劲地上涨,这叫顶背离,是卖出的信号。 当KD处在低位,并形成一底比一底高,而股价还继续下跌,这构成底背离,是买入信号。

qteasy中内置了MACD交易策略

这里使用qteasy作为回测评测的工具。

qteasy是本人正在开发的一个快速量化交易工具包,使用这个工具包,可以快速灵活地生成各种量化交易策略,生成历史数据并回测策略的表现,有针对性地优化策略的性能;还能模拟实盘自动化交易。qteasy目前最新版本为v1.0.14,可以通过pip安装,Github项目地址在这里,安装方法如下:

python -m pip install qteasy

qteasy提供了一个基于STOCHF的内置交易策略,其创建规则如下:

策略参数:
fk: int, 快速K均线计算周期
fd: int, 快速D均线计算周期
fdm: int, 快速D均线类型,取值范围0~8
信号规则:
按照规则计算k值和d值,根据k值生成比例买卖交易信号:
1, 当k > 80时,产生逐步卖出信号,每周期卖出持有份额的30%
2, 当k < 20时,产生逐步买入信号,每周期买入总投资额的10%
3, 当k和d发生背离的时候,不会产生信号(用户可自行定义信号规则)

上述规则是qteasy内置策略的定义,用户完全可以根据自己的理解重新定义交易规则,或者选用其他策略参数。详细用法参见qteasy文档

433支股票五年回测结果

下面使用qteasy进行技术指标的回测
使用qteasy回测所有433支股票的回测结果,每次回测的时间跨度都是5年,从2015年1月1日开始投资于一个股票,在技术指标发出买入信号时全仓买入,在发出卖出信号后全仓卖出,一直到2019年21月31日为止,最后综合计算每个技术指标的指标强度适应性,通过两个数字来反映技术指标的有效性。关于计算方法的详细介绍,请参见这里

首先放出结果:STOCHF策略的强度为

-71.5% ——该指标平均跑输原始股票-71.5%

return 策略收益率benchmark 基准收益率mdd 最大回撤sharp 夏普率alpha 超额收益diff
count288288288288288288
mean34.94%106.44%33.79%-12267.38%-24.51%-71.50%
std47.15%178.18%12.82%208722.74%35.23%153.22%
min-62.61%-57.14%11.04%-3542109.87%-146.58%-1277.79%
25%1.99%-11.96%25.20%3.52%-42.62%-108.83%
50%30.35%40.12%31.94%38.67%-14.37%-17.66%
75%65.19%156.31%41.24%78.18%2.75%20.41%
max175.63%1420.35%72.26%177.22%61.68%119.85%

288支股票的平均收益率是34.94%,而策略平均收益为106.44%,平均跑输了原始股票103.82个百分点。

再看策略适应性:

-210.3%——该指标平均适应度-210.3%,表现非常差

在所有有回测结果的288支股票中,六种典型结果的数量分别如下:

序号组别股票数量该组平均基准收益该组平均择时收益该组平均超额收益
1力挽狂澜36-19.94%22.52%42.45%
2锦上添花4726.52%49.30%22.79%
3差强人意137220.12%62.63%-157.49%
4无力回天38-38.84%-18.71%20.13%
5屋漏逢雨13-26.05%-40.92%-14.88%
6乐极生悲17104.90%-23.75%-128.65%
综上,结论如下:
  • 该指标在绝大部分情况下会产生正收益,产生正收益的比例有约76%,但是,产生的所有正收益都较低,而且其中有大约2/3都是会跑输原始股票
  • 该指标产生的实际择时效果有限,无法选择出有效的上涨波段,通常需要通过调整参数进一步改进策略的表现
  • 更过分的是,有17只平均收益率还不错的股票,在择时后直接变为负收益率

总体来说,该指标的择时效果较差,抗跌性能也不行,平均超额收益更是不够理想。如果要看其他所有股票的结果,请点击这里

posted @ 2024-01-25 06:00  JackiePENG  阅读(45)  评论(0编辑  收藏  举报  来源