尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

通达信龙抬头指标源码拆解:低位放量选股模型

通达信龙抬头指标源码拆解:低位放量选股模型 简介这份《自用多年的龙抬头通达信指标公式源码.doc》适合通达信软件用户、股票技术分析爱好者以及希望自主编写或改良选股公式的投资者。文档完整给出指标源码并逐条拆解其核心条件成交量放大配合均线关系、收盘价触及阶段高位、涨幅过滤以及排除ST、停牌、高价股和大盘股等限制帮助读者理解“龙抬头”信号背后的筛选逻辑便于直接套用或按需调整参数。资源为单个doc文档压缩包共171KB内容紧凑无冗余。目前已有258人学习下载如需一套经过多年实战打磨的选股条件组合可直接参考其公式结构并迁移至自己的通达信版本。1. 龙抬头指标源码拆解低位放量模型在通达信里的实现复盘的时候你有没有遇到过这种情况翻完几千个通达信选股结果最后让你愿意多看两眼的往往不是涨得最猛的而是第一个在底部把量能“顶”出来的票。这套龙抬头通达信指标公式我自用了很多年它的核心逻辑其实很朴素——在低位放量突破21日新高的那一刻用4.9%以上的当日涨幅确认资金真的进场再通过现价、流通股本和停牌状态把不适合参与的标的筛掉。信号数量不多一年全市场也就几十次但每次信号背后都对应一根比较标准的启动K线。适合研究突破形态、做短线启动买点的人也适合拿它当量化指标源码的底稿去二次开发。2. AA量价条件逐行拆解VOL、HHV、LLV的参数边界与改法这套公式最核心的部分是开头的AA变量它决定了“什么叫启动”。多数人拿到源码后第一反应是直接贴进通达信公式管理器看信号但真正值得做的是把这串连续AND的条件拆开搞清楚每一段在过滤什么。2.1 量能条件为什么是1.5倍而不是2倍先把AA条件单独摘出来看。原公式里量能相关的部分是VOL1.5*REF(VOL,1)和VOLREF(MA(VOL,21),1)前者要求当日成交量大于昨日1.5倍后者要求大于21日平均成交量。{ 龙抬头 AA核心条件片段 } AA:( VOL1.5*REF(VOL,1) {量1: 当日量大于昨日1.5倍} AND VOLREF(MA(VOL,21),1) {量2: 当日量大于21日均量} AND CLOSE1.03*OPEN {价1: 阳线, 且收盘比开盘高3%} AND CLOSEHHV(CLOSE,21) {价2: 收盘价创21日新高} AND CLOSE1.25*LLV(CLOSE,21) {位1: 收盘价距21日最低点不到25%} AND REF(CLOSE,1)1.2*REF(LLV(CLOSE,20),1) {位2: 昨日收盘低于20日低点20%} AND REF(CLOSE,1)1.5*REF(LLV(CLOSE,60),1) {位3: 昨日收盘低于60日低点50%} AND REF(CLOSE,1)2*REF(LLV(CLOSE,120),1) {位4: 昨日收盘低于120日低点1倍} );第一段量能条件里1.5倍这个数字很有讲究。如果把它改成2倍以上你只会抓到那种当天直接拉涨停的情绪爆发票买点往往已经在半山腰如果低于1.2倍又混入太多没有资金关注的阴跌反弹。1.5倍配合“大于21日均量”过滤掉的是“今天比昨天多放了一点点量但整体仍处于地量状态”的假突破。注意量2这里用的是REF(MA(VOL,21),1)也就是“昨天的21日均量”不是今天的。这么做是为了防止当天放量本身把均量线抬高导致比较基准失真。很多同类指标源码直接写VOLMA(VOL,21)在连续放量后会出现漏掉首次启动点的问题这一点老手看源码时一眼就能分辨。2.2 价格确认与低位区间B3到B8各自在挡什么CLOSE1.03*OPEN要求当天收出实体超过3%的阳线这是把“启动”和“异动”区分开的第一道门槛。真正关键的是后面那句CLOSEHHV(CLOSE,21)它要求收盘价恰好等于21日内的最高收盘价也就是今天必须创出21日收盘新高。这里有个细节容易踩坑HHV(CLOSE,21)取的是“21日内的最高收盘价”不是最高价。有些改版会写成CLOSEHHV(HIGH,21)那等于要求突破21日最高价压力位条件更严信号会少一半以上。原公式用收盘价对比本质是看“资金愿意把收盘价顶到21日最高收盘位置”和盘中冲高回落是完全不同的含义。后面的三组低位限制条件可以用一张表看它们各自的职责。这类参数在原公式里的设计意图是启动点必须处于相对低位区间防止你在已经涨了一段的半山腰上接盘。条件原文实际含义防止踩到什么短线过滤REF(CLOSE,1)1.2*REF(LLV(CLOSE,20),1)昨日收盘距20日最低收盘价不超过20%避免介入20日短线涨幅已大的品种中期过滤REF(CLOSE,1)1.5*REF(LLV(CLOSE,60),1)昨日收盘距60日最低收盘价不超过50%保证中期位置处于回踩充分的状态长期过滤REF(CLOSE,1)2*REF(LLV(CLOSE,120),1)昨日收盘距120日最低收盘价不超过1倍排除一年维度已大涨的高位票注意这三组条件用的都是REF(CLOSE,1)也就是“昨天的收盘价”不是今天的。这说明AA是在盘中实时计算的当价格还在变化时昨天收盘价是固定值只有今天创出21日新高后条件才会整体为真。2.3 参数宽容度与可调整方向CLOSEHHV(CLOSE,21)用“等号”是个隐患。如果连续两根K线的收盘价都刷出21日新高等号条件只在创新高的那一天为TRUE第二天即使继续强势也不会二次触发。这在实战中意味着你可能错过连板启动后的第一个分歧点。{ 把21日新高改成“区间内触及” } {用收盘价不低于21日最高收盘价的0.99倍小幅放宽} AA2:( VOL1.5*REF(VOL,1) AND VOLREF(MA(VOL,21),1) AND CLOSE1.03*OPEN AND CLOSEHHV(CLOSE,21)*0.99 AND CLOSE1.3*LLV(CLOSE,21) AND REF(CLOSE,1)1.2*REF(LLV(CLOSE,20),1) AND REF(CLOSE,1)1.5*REF(LLV(CLOSE,60),1) AND REF(CLOSE,1)2*REF(LLV(CLOSE,120),1) );改法逻辑把等号换成HHV*0.99等于给突破留出1%的容错空间在震荡行情里能多抓一些股价刚站上21日收盘新高、随后小幅回踩确认的样本。同理位1条件从1.25放宽到1.3信号数量大约多出两三成但失败率也会上升收紧到1.15信号更少、更干净。建议在不同市场状态下保留两套参数震荡市用放宽版趋势市用原版别指望一套打天下。3. DYX涨幅确认与EXIST过滤陷阱4.9%阈值和ST命名的反逻辑AA条件解决的是“位置”问题DYX解决的是“当天是否真的动手”的问题。换手率和过滤条件则决定谁有资格参与这个信号。这一层看着简单但原公式里藏着一个非常容易误读的坑就是“去除ST”那行的实际行为。3.1 DYX里的1.049是怎么算出来的DYX:C/REF(C,1)1.049从数学上看这是要求当日收盘价相对昨日至少上涨4.9%。为什么要卡在4.9%而不是5%或者干脆用涨停板因为5%以上基本就接近普通涨停幅度你根本买不进去4.9%这条线既能确认主力当天是拉大阳线干活又给盘中介入留出了成本空间。{ DYX计算 } DYX:C/REF(C,1)1.049; {当日涨幅大于等于4.9%}这个条件的设计思路和涨停板公式不同涨停板公式关注的是“封住”龙抬头关注的是“正在启动”。4.9%意味着收盘前即使冲高回落只要不跌破这个涨幅信号依然成立。如果把阈值改成1.03那和普通大阳线没什么区别后面会混入大量反抽信号改成1.06信号太少一个月未必拍得到一个。3.2 四个过滤条件真正的陷阱在“去除ST”源码里的四个过滤条件写法如下{ 过滤条件与合成 } 去除ST:EXIST((C/REF(C,1)-1)*1005.6,60); 去除停牌:DYNAINFO(4)0; 去除高价:DYNAINFO(7)40; 去除大盘股:CAPITAL/100000010; AAAA:去除ST AND 去除停牌 AND 去除高价 AND 去除大盘股;先看后三个没有问题DYNAINFO(4)0通过“今开大于0”排除停牌股DYNAINFO(7)40把现价压在40元以下CAPITAL/100000010限制流通股本少于10亿股。这里CAPITAL的单位是手除以1000000之后得到的是“亿股”口径所以条件等价于流通股本在10亿股以内不是10亿元市值很多资料在转述时都写错了。真正需要注意的是“去除ST”这一行。它的实际行为是过去60个交易日内只要存在任何一天单日涨幅超过5.6%EXIST就返回1。这意味着它不但没有“去掉ST”反而要求这只股票近期被资金暴力炒作过。和“去除停牌”“去除高价”放在一起做AND运算后实际效果是——这套源码选出来的根本不是“低位首涨”而是“过去60天已经出现过5.6%以上大阳线、今天再次发力启动”的强势股。原作者把它命名为“去除ST”但从执行逻辑上看它更像一个“近期异动确认”条件。提示如果你要的确实是剔除名称带ST的股票不要把这一行当作过滤器。正确做法是改成“去除ST:NOT(NAMELIKE(ST) OR NAMELIKE(*ST))”或者把EXIST改成NOT EXIST再自由选择是保持原逻辑还是做严格剔除。3.3 条件合成与典型改版龙抬头最终的信号行是“0启动 AND DYX AND AAAA”其中“0启动”是老式通达信源码里常见的写法等效于“启动1”。整套条件串起来后的执行顺序是先确认量价位置AA再确认当天涨幅DYX最后用异动记录和流动性条件做收尾过滤。如果想把原公式改成更贴近命名原意的版本可以这样调整{ 严格剔除ST的改版 } 去除ST:NOT(NAMELIKE(ST) OR NAMELIKE(*ST)); 去除停牌:DYNAINFO(4)0; 去除高价:DYNAINFO(7)40; 去除大盘股:CAPITAL/100000010; AAAA:去除ST AND 去除停牌 AND 去除高价 AND 去除大盘股;这个改版唯一的问题是会让信号数量比原版少很多因为原版条件实际要求股票近60天内有异动。这里没有绝对的对错只看你的目标是找“低位沉寂后首动”还是找“强势股回踩后的二波启动”。用的时候搞清楚自己到底在跑哪种逻辑比纠结一行代码怎么写更重要。4. 从副图指标到条件选股通达信公式管理器里的移植与参数调整拿到源码后第一步是在通达信公式管理器中把它跑起来验证副图效果再做二次加工。这个流程涉及公式管理器的基本操作、变量名规范和条件选股的迁移方式。4.1 新建公式与两个常见编译错误按CtrlF打开公式管理器选择“副图指标”新建一个公式粘贴代码。粘贴时需要注意通达信公式只认半角标点逗号、括号、分号全部要用英文输入法录入AND、OR两侧至少保留一个空格避免被解析成变量名的一部分。{ 可编译的副图版本 } AA:(VOL1.5*REF(VOL,1) AND VOLREF(MA(VOL,21),1) AND CLOSE1.03*OPEN AND CLOSEHHV(CLOSE,21) AND CLOSE1.25*LLV(CLOSE,21) AND REF(CLOSE,1)1.2*REF(LLV(CLOSE,20),1) AND REF(CLOSE,1)1.5*REF(LLV(CLOSE,60),1) AND REF(CLOSE,1)2*REF(LLV(CLOSE,120),1)); 换手:VOL/CAPITAL*100; MA21换手:MA(换手,21); DYX:C/REF(C,1)1.049; 启动:AA; 去除ST:EXIST((C/REF(C,1)-1)*1005.6,60); 去除停牌:DYNAINFO(4)0; 去除高价:DYNAINFO(7)40; 去除大盘股:CAPITAL/100000010; AAAA:去除ST AND 去除停牌 AND 去除高价 AND 去除大盘股; 龙抬头:0启动 AND DYX AND AAAA; DRAWBAND(龙抬头,RGB(255,0,0),0,RGB(0,255,0));贴进去后点击“测试公式”如果提示“缺少语句”或“变量未定义”优先检查两个位置。第一个是“MA21换手”这个变量名原文档里写作“MA21 换手”中间带一个空格通达信变量名不允许空格必须改成MA21换手或者MA21_换手。第二个是CHECK缓存问题改完代码后记得到公式管理器里勾选“仅显示最近N个周期”再重新计算否则副图上可能看不到新版信号。4.2 信号频率与阈值对照把这套公式放到不同行情下看信号频率会差很多。想控制出手次数最有效的调整点是CLOSEHHV(CLOSE,21)和DYX的1.049。下面的对照表是我实盘踩过之后整理出来的参数组合供在公式管理器里快速切换时参考。参数位置原版值收紧方向放宽方向适用场景VOL放量倍数1.51.81.3趋势市收紧震荡市放宽突破周期21日34日13日捕捉波段级别还是短线级别高位上限1.251.151.4防追高的严格程度DYX涨幅1.0491.0551.035确认强度的门槛最大现价40元30元60元参与活跃度的偏好调整思路是震荡市里放量倍数和涨幅阈值稍微放宽提高信号触发率趋势市里收紧高位上限和最大现价过滤掉已经拉高的票。每改一次先统计过去一年的历史信号数量信号低于20次说明条件过紧高于100次需要反思是不是把反弹也当成启动了。4.3 把信号转成条件选股公式副图指标只能看要批量扫描全市场需要另存一个条件选股公式。原公式末尾的DRAWBAND绘图语句在选股公式里必须删掉否则会被当作输出语句干扰结果。{ 条件选股专用版本 } AA:(VOL1.5*REF(VOL,1) AND VOLREF(MA(VOL,21),1) AND CLOSE1.03*OPEN AND CLOSEHHV(CLOSE,21) AND CLOSE1.25*LLV(CLOSE,21) AND REF(CLOSE,1)1.2*REF(LLV(CLOSE,20),1) AND REF(CLOSE,1)1.5*REF(LLV(CLOSE,60),1) AND REF(CLOSE,1)2*REF(LLV(CLOSE,120),1)); 换手:VOL/CAPITAL*100; MA21换手:MA(换手,21); DYX:C/REF(C,1)1.049; 启动:AA; 去除ST:EXIST((C/REF(C,1)-1)*1005.6,60); 去除停牌:DYNAINFO(4)0; 去除高价:DYNAINFO(7)40; 去除大盘股:CAPITAL/100000010; AAAA:去除ST AND 去除停牌 AND 去除高价 AND 去除大盘股; XG:0启动 AND DYX AND AAAA;在条件选股公式里XG被当作默认输出名写别的名字也行。选股前把“复权”设为前复权否则历史价格除权后会导致HHV和LLV序列不准信号位置会整体偏移。选股结果可以直接导出到自定义板块再配合通达信实时行情排序按换手率和量比把票放在一起检查不必在公式里做更复杂的排序逻辑。5. DRAWBAND可视化误读与尾盘验证信号画出来不等于买点源码最后一行DRAWBAND(龙抬头,RGB(255,0,0),0,RGB(0,255,0))很多人以为这段代码是在副图画买卖点箭头每次都盯着红绿区间发呆。实际上DRAWBAND画的是“两条条件线之间的填充区间”这里的两个条件是龙抬头和0画出来就是一段段红绿交替的色块。它只有一个含义条件为真的时候副图出现红色填充区域条件为假时是绿色填充。从头到尾没有任何“买入后继续持有”之类的时间维度信息。想让信号更直观常见做法是把填充色块改成K线上方的标记箭头这样一眼就能看到信号发生在哪根K线上双箭头重叠时停牌和复牌造成的重复信号也更明显。{ 把DRAWBAND替换成箭头标记 } DRAWICON(龙抬头0 AND COUNT(龙抬头,5)1, LOW*0.98, 1); STICKLINE(龙抬头0, LOW*0.96, LOW*0.955, 2, 0), COLORRED;COUNT(龙抬头,5)1限制的是5个周期内只取首次信号避免同一轮启动里连续多天重复画箭头。盘中验证时要注意CLOSEHHV(CLOSE,21)是实时条件14:30之前用15分钟K线看可能已经满足但尾盘跌回去信号就消失了所以真正确认要放在收盘前20分钟。用这套源码跑近半年全市场选股你会发现信号大多出现在13:00到14:30之间真正收盘前才确认的反而集中在最后10分钟配合板块强度和当日大盘环境再决定是否参与信号质量会明显不一样。本文还有配套的精品资源点击获取
返回列表