股票量化分析工具QTYX使用攻略——底部突破形态选股(双底&箱体)(更新2.7.4)


e057e6429679755aee56cf6087582d53.png

搭建自己的量化系统

4eeddfa380b439792f1a95f1a06c8b6b.png

股票量化交易系统QTYX是一个即可以用于学习,也可以用于实战炒股分析的系统。

分享QTYX系统目的是提供给大家一个搭建量化系统的模版,最终帮助大家搭建属于自己的系统。因此我们提供源码,可以根据自己的风格二次开发。

关于QTYX的使用攻略可以查看链接:QTYX使用攻略

QTYX一直迭代更新,当前版本V2.7.4。后续升级版本会同步更新文档内容。

a918abb73b02be31ef4322cafd72e52c.png

功能概述

abbb269a8d4657fe6998bd75addf70a6.png

针对做底部高安全边际票的学员(后期升级后也可以在ETF数据上做形态分析),QTYX从2.7.4版本开始把“双底形态突破”和“箱体形态突破”两个选股形态做了叠加。

c6dcfe49164b342983bbb34bc24db5b5.png

快速使用‍‍‍‍‍

c64e335a5bef23f62719ddf2305cfbe7.png

接下来说说怎么使用吧!

在【选股流程】页面中,有“数据驱动型”“形态驱动型”“RPS驱动型”三种选股思路,相辅相成。

此处“选股模型”选择“底部突破(箱体形态&双底形态)”。

8817fcfee23e9e4ad247273bd9cd0cfc.png

介绍下关键几个选项的作用:

  • 选股日期:选取形态分析的日期(支持选取历史日期用于回测)

  • 上市时间:根据上市时间滤除次新股(工具会过滤掉设置时间之后的次新股)。新股上市后处于暴涨暴跌的态势,走势并不稳定,也没有足够的数据进行回测。选股时候应该提前把这类股票给剔除掉的

  • 剔除ST/*ST:对于ST股来说,面临着极高的退市风险,股民们应该避之不及,选股时候应该提前把这类股票给剔除掉的

  • 叠加分析数据:目前支持“季度利润报表”和“每日基本面指标”,勾选后会在生成的股票清单中叠加对应数据

  • 股票池:选择扫描的股票池,全市场股票池、自选股票池、概念板块池、行业板块池

  • 选股模型:选择选股的模型,比如主升浪(均线多头&突破前高)、底部突破(箱体形态&双底形态)

很多时候我们更关注当前热门板块的股票。因此,QTYX系统选股功能中增加了概念板块和行业板块的分类选择。这样一来,我们可以针对性地选取自己关注板块的个股,同时选股也变得非常快速。

比如选择“概念股票池”后,出现列表对话框。左边是未选择的概念板块,右边是已经选择的。点击左边列表的板块会加入到右边选股列表中,点击右边选股列表的板块则取消,会返回到左边。“行业股票池”同理。关闭板块选取对话框后,股票池生效。

83ad06d6f0ef1bca3aa4879a7be52a8c.png

点击“确认”后配置形态选股参数。通过使能开关把之前独立的“箱体形态突破”和“双底形态突破”两个模型叠加了起来。

02c72a4d0ec7ba4d97cb511c8ab16ef8.png

“箱体形态”和“双底形态”关键参数在下文会详细介绍。

说明:“箱体形态”和“双底形态”这两个模型可以叠加使用,也可以单独使用。只需要勾选“使能”框即可。

注:此版本开始在形态分析之前, 无需提前更新股票的行情数据!!!

开始选股后,左上角的日志栏会自动切换到【选股日志】显示有符合特征的股票。

开始选股后,比如发现参数配置不对时,可以停下来修改参数,然后重新开始。如果要取消选股,只需要点击【停止选股】->【形态驱动型选股】即可。

过滤完成后的股票清单如下所示,可以看到粉色框图中的股票是符合双底形态的,红色框图中的股票是符合箱体形态的,如果个股同时符合两种形态,相应的数据列上会标识数据。

66ec4aa37edca7f8f2bbfb3723b881a5.png

选股完成后会把选股结果保存在“ConfigFiles/全市场选股结果”路径下。选完后就可以进行选股的下一步流程。

0e43c56ca0226268bfbf9d9fa8dab4bb.png

双底形态突破

74e1ee1ef4729cbcb5bf5e255bd2328b.png

双底形态是由市场力量形成的,我们只需顺势而为即可,特别是大周期、多K线形成的双底形态,它的效果更好!

双重底也称“W底”,是指股票的价格经过一段下跌后,形成一个低点后展开反弹,随后再次回落,在上一个低点附近形成新的低点,此后股价再次往上运行,这样就形成了两个底部,成为双重底。

两个跌至最低点的连线称为“支撑线”。

两个低点之间的高点价格称为“颈线”价格。

通常放量突破颈线时是一个不错的买点。

突破后会有两种形态:第一种是突破后直接快速拉升;第二种是突破之后缩量回踩颈线位置附近,确认突破有效后再快速拉升。

fcbbe93277638848f9b7e84f9a6c7630.png

ed4e9c368bc5ae818222be61527e58ba.png

如上图所示,我们以个股的收盘价时间序列为分析数据。当前交易日期为终点,往前从历史交易日中选择两个连续区间。

这两个区间先按完全相等的范围设定,然后增加一个区间叠加变量,这个变量的作用是可以进一步去过滤像头肩底或者V型底的形态。

当然也可以动态去划分,划分的规则可以根据市场的整体走势来设定。

然后按以下步骤分析:

  • 找区间1的极小值,为左底

  • 找区间2的极小值,为右底

  • 找左底与右底之间区域的极大值

  • 比较左底与右底的涨幅,是否相差<3%

  • 当前日期收盘价是否突破颈线位>3%

识别形态的源代码存放在StrategyGath/PattenGath.py中,感兴趣的朋友可以研究下。

选股数据对话框点击“确认”,会出现形态识别算法相关参数的配置界面。

总共开放了这些参数:选取K线范围、选取中间区域误差、双底低点之间误差、有效突破确认的幅度、有效突破当天涨跌幅、有效突破成交量阈值。

247b827f0e27da4f25901cf358d8fdc5.png

大部分参数的含义可以结合算法原理去理解。部分特殊参数的含义说明如下:

“是否为首次突破的判断”。比如我们今天使用工具QTYX去全市场寻找符合形态条件的股票,发现了以下这只股票。这只股票符合双底形态,但是已经突破好几天了(注:如果每天都使用工具筛选一遍是可以发掘到首次突破当天的),现在买入位置并不是非常合适。

5461d1050f95273f3ef78f11730941e3.png

我们更倾向于选择那些首次突破颈线的个股,这个时候买入的时机恰到好处。

比如像华数传媒,离突破当天已经有5个交易日了,属于非首次突破!

3a387d2514e2ab95c5addbaff028a7c4.png

比如像通程控股,由于我们设置了有效突破的幅度是大于颈线3%以上,因此今天属于首次突破的日子!

7a703396f307e1b56443cb0403c58f22.png

dd7f29ff2242ba05c8953a2d5e46a2cd.png

此外我们还结合成交量及当日涨跌幅去叠加判断,毕竟底部出现放量跳空上涨时,说明该股更加强势,使双底形态突破后的上涨成功率更大。

(1)比如双底形态突破时结合成交量是否放大,来判断是否为有效突破。有效突破成交量阈值表明,在突破当天的成交量要高于“选取K线范围”内成交量均值的百分之X以上。

(2)比如在双底形态识别的同时判断该股近期是否有向上跳空缺口配合出现,如果有的话可以侧面说明该股的强势。

02cae7c45273c3f062859ea29d926fa3.png

箱底形态突破

1869b92e1eb7fb6d0dd3dc83a95a6b1c.png

大牛股在上涨初期往往会有一些特征信号,根据这些特点过滤出可能成为牛股的标的,然后重点跟踪它们,这无疑是非常有效的选股方式。

我们来看下欢瑞世纪这只票上涨初期的特征。股价在区间内上下波动,20日、30日、60日、120日均线逐步收敛,当一根长阳创近期新高后,均线开始快速发散,从而开启一轮势不可挡的上涨。

8320c202ec4aeefaa241d4ec4a4a66b3.png

通常我们称具有这种牛股初期的特征——“底部均线粘合,长阳突破”为箱体突破形态。股票量化分析工具QTYX的选股功能支持这种形态股票的筛选。

在【选股流程】页面中,选择“形态驱动型”选股策略,“选股模型”选择“底部突破(箱体形态&双底形态)”。

然后可以看到针对箱体形态突破的专用配置界面。

选择箱体形态特征相应的参数。此处参数表示股价在40日均线上下波动不超过15%,20日、30日、60日均线收敛幅度小于5%,当日涨幅超过5%且股价创40日新高。

6b0737a10ac507f453cb30c9110f586d.png

f72d2b860d0052d90175e30532ca4fd6.png

形态选股回测

45f87fa2835d8098546c51660f4dbdd2.png

买入符合形态的股票后,到底是亏损还是盈利呢,我们增加了回测功能就能一目了然。比如在持有的时间内,盈利可以超过10%,而亏损只有3%,那么就能从盈亏比角度去设计我们的策略。

回测功能的用法可参考使用攻略:

股票量化分析工具QTYX使用攻略——回测评估形态选股收益(更新v2.7.2)

回测功能在原理上是取两段数据,一段数据用于识别形态(符合形态条件时买入),另一段数据用于计算买入该股后盈亏的情况。

3837492ecb12369e07d61453781557c8.png

a66cca25eeb34ad874402fc1ab946074.png

后续选股分析‍

f5f8dcc8e0bffd3adfcab6d3d33781f9.png

由于QTYX中已经打通了“数据驱动选股”和“形态驱动选股”,点击 “开始选股”->“开始条件选股”,然后就可以用条件表达式选股。

比如根据业绩数据选择基本面良好的个股(需要叠加“季度利润报表”),

bd7b77c1ed3e78ac1602e80c2c07bcb7.png

9a10aae298cb417be7f5aafdbf66850b.png

0041729a91ed536c54505736f96c0135.png

1dc5ed2557504570e12f116415d1b137.png

也可以根据行业板块轮动思路选择属于近期热门板块的个股(需要叠加“每日基本面指标”)。

7a683cd93451925859914709d6127f07.png

双击股票名称或代码也可以使用QTYX其他高级分析功能:

ee23eb9c3f3d443057fcff426a2409e6.png

a83803b48f1a2e1892c48c476c1efcc0.png

总结‍‍

fac87ab82e014fc24f5c152e99dc3619.png

在使用上,我们识别出来的股票池,是一个“大概率”会产生牛股的股票池。然后再叠加自己其他维度的分析因子,进一步缩小到几只股票作为自己交易目标。

同时设置好止盈止损的点位,保证整体的盈亏比,亏的时候亏一点就止损,赚的时候赚个盆满钵满。这就是底部形态的核心玩法!

交易其实很简单,有时候亏钱是我们把它想得太复杂了!

说明

想要加入知识星球《玩转股票量化交易》的小伙伴记得先微信call我获取福利!

知识星球介绍点击:知识星球《玩转股票量化交易》精华内容概览

34e39169e373352773828de6654eb84b.jpeg

&lt;think&gt;好的,用户的问题是关于QMT平台中集合竞价选股的方法或策略。首先,我需要回顾一下QMT平台的相关知识,并结合提供的引用内容来整理答案。 用户提到的引用中有关于QMT平台的介绍,比如引用[2]提到在QMT中使用通达信公式转换,处理日线回测时需要注意下单价格为当天收盘价。这可能和集合竞价阶段的数据获取有关。此外,引用[1]提到在分钟回测中可用当天开盘价,但集合竞价下单时无法使用,这可能影响策略的设计。 接下来,我需要确定集合竞价选股的关键点。通常,集合竞价阶段的数据包括开盘价、成交量、委托量等。策略可能基于这些指标,比如高开幅度、成交量突增等。需要确保在QMT中能够获取这些数据,比如使用get_current_data函数,但要注意在回测中的限制,如引用[1]所说,集合竞价时无法知道开盘价,可能需要调整回测逻辑。 然后,考虑策略构建方法。可能需要结合技术指标,如引用[2]中的通达信公式转换,将选股条件转换为Python代码。例如,使用量价关系或市场情绪指标。此外,引用[3]提到QTYX系统支持自定义选股,可能可以参考其选股框架,利用问财等工具获取数据。 还需要考虑回测机制,如引用[2]提到的日线周期回测使用handlebar机制,下单价格为收盘价。这可能与实际集合竞价的成交价不同,需要特别注意回测结果的准确性,可能需要使用分钟级别的回测数据。 最后,整理步骤:数据获取、策略逻辑、编码实现、回测优化。确保每个步骤都符合QMT平台的功能和限制,并引用相关的参考资料来支持建议。&lt;/think&gt;关于QMT平台集合竞价选股策略的构建方法,可参考以下步骤: ### 一、数据获取要点 1. 使用$get\_current\_data()$获取实时数据,需注意**集合竞价阶段**的特殊性: - 可获取$pre\_close$(前收盘价)、$limit\_up\_price$(涨停价)等静态数据 - 动态数据如$bid\_volumes$(委买量)、$ask\_volumes$(委卖量)需通过Level2接口获取[^1] 2. 关键指标计算公式: - 开盘强度比:$$强度比 = \frac{open\_price}{pre\_close} \times 100\%$$ - 委托不平衡度:$$委差比 = \frac{bid\_volume - ask\_volume}{bid\_volume + ask\_volume}$$ ### 二、策略逻辑设计 1. **量价突破型策略**(参考引用[2]的指标转换方法): - 条件1:前日涨停且当日竞价涨幅&gt;3% - 条件2:竞价量能&gt;5日均量的2倍 - 实现示例: ```python def is_breakout(stock): data = get_history_data(stock, &#39;1d&#39;, &#39;close,volume&#39;, 5) current = get_current_data(stock) cond1 = (data[&#39;close&#39;][-2] == data[&#39;close&#39;][-2] * 1.1) # 前日涨停判断 cond2 = (current[&#39;open&#39;] / data[&#39;close&#39;][-1] &gt; 1.03) cond3 = current[&#39;volume&#39;] &gt; data[&#39;volume&#39;].mean() * 2 return cond1 &amp; cond2 &amp; cond3 ``` 2. **市场情绪联动策略**(基于引用[3]的选股框架): - 步骤1:筛选所属行业竞价强度Top3的板块 - 步骤2:在板块内选择委买比率前5的个股 - 使用$get\_industry\_stocks()$获取行业成分股[^3] ### 三、回测注意事项 1. 时间设定: - 回测周期应包含**09:15-09:25**的集合竞价时段 - 使用分钟级回测模式而非日线模式[^2] 2. 成交机制模拟: - 价格匹配:按**最大成交量原则** - 委托方式示例: ```python order(stock, &#39;limit&#39;, price=涨停价, amount=委托量, time=&#39;09:25:00&#39;) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值