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

资讯详情

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

博易大师无未来短线指标源码拆解:BACKSET边界与量价信号

博易大师无未来短线指标源码拆解:BACKSET边界与量价信号 简介一份面向股票/期货技术分析爱好者及博易大师、信管家软件用户的短线指标公式解读文档。文档围绕成功率99%无未来短线指标展开逐行拆解 MA10/MA60 双均线、VAR6~VAR8 波动率系数、加仓/减仓/洗盘/高抛信号识别、前期高低位判断以及 JJ 与 TJ1 指标的计算逻辑适合有一定 K 线基础、希望理解公式原理并据此优化交易系统的读者。包体为单个 doc 文档共 1 个文件约 37KB内容精炼可直接复制到指标编辑器中对照学习。目前已有 329 人学习资料虽小但知识密度较高读者可从中掌握高低位过滤、放量确认、信号组合等关键写法并迁移到其他选股或看盘策略中有效提升指标编写与行情判断能力。1. 博易大师无未来短线指标先从 BACKSET 与 VAR 系数的边界说起一份把加仓、减仓、洗盘、高抛画在同一根 K 线上的博易大师指标常被贴成功率 99无未来标签。拆开源码REF、HHV、BARSLAST 都没有读取未来 K 线问题集中在 VAR6/VAR7/VAR8 的分母和 BACKSET 的回填边界上。这个公式适合在博易大师、信管家这类类通达信语法的平台做主图覆盖 1 到 15 分钟周期也适合想读懂量化指标公式源码、按自己习惯调参的交易者。逻辑分两层VAR 三系数把成交量切成实体、上影、下影输出四色信号BACKSET 配合 FILTER 识别前期高低点再叠加 JJ 与 TJ1 的倍量确认。先立住一个判断公式里 REF、HHV、BARSLAST 都指向已收盘历史数据无未来在实时信号层面成立BACKSET 只回填历史画线不会让最后一根 K 线提前出现信号。下面从四个信号共用的 VAR 系数拆起。2. VAR6/VAR7/VAR8 三量分配加仓、减仓、洗盘、高抛的判定骨架2.1 三个 VAR 系数的物理含义拆解核心代码只有三行下面的代码块统一用 Pascal 风格标注高亮实际语言是博易大师公式// 实体量成交量按实体振幅占比分配 VAR6 : (( ABS((OPEN-CLOSE))/(HIGH-LOW))*VOL); // 上影量最高价到开盘/收盘较高者的区间 VAR7 : (( (HIGH-IF((CLOSEOPEN),CLOSE,OPEN))/(HIGH-LOW))*VOL); // 下影量开盘/收盘较低者到最低价的区间 VAR8 : (( (IF((CLOSEOPEN),OPEN,CLOSE)-LOW)/(HIGH-LOW))*VOL);VAR6 的分子是 OPEN 与 CLOSE 的绝对差也就是 K 线实体高度VAR7 的分子是 HIGH 与开盘收盘较高者的差即上影线部分VAR8 的分子是开盘收盘较低者与 LOW 的差即下影线部分。三者的分母同为 HIGH-LOW即整根 K 线振幅因此三个系数分别表示实体、上影、下影在振幅中的占比再乘以当日成交量 VOL得到成交量在这三个区域的分配量。这里有一个值得注意的恒等关系VAR6VAR7VAR8 恒等于 VOL。因为振幅恰好可以拆成上影、实体、下影三段之和乘以 VOL 后三块相加就是全部成交量。这意味着这三个系数不是互相独立的指标而是把一根 K 线的成交量按形状切成三块。只要开收高低四个价格齐全任何 K 线都能完成这种切分四个信号的比较逻辑本质上就是在问今天的量能主要堆在实体内、上影里还是下影里// 四个动作信号VAR6 最大时按阴阳分加仓减仓 加仓:VAR6VAR7 AND VAR6VAR8 AND CLOSEOPEN,NODRAW,COLORRED; 减仓:VAR6VAR7 AND VAR6VAR8 AND CLOSEOPEN,NODRAW,COLORBLUE; // VAR8 最大为洗盘VAR7 最大为高抛 洗盘:VAR8VAR6 AND VAR8VAR7,NODRAW,COLORWHITE; 高抛:VAR7VAR6 AND VAR7VAR8,NODRAW,COLORMAGENTA; DRAWKLINE(H,O,L,C); // 在 K 线实体上着色宽 1 实心 STICKLINE(加仓,O,C,1,0),COLORRED; STICKLINE(洗盘,O,C,1,0),COLORWHITE; STICKLINE(减仓,O,C,1,0),COLORBLUE; STICKLINE(高抛,O,C,1,0),COLORMAGENTA;加仓和减仓共享VAR6 最大这个条件区别只在收阳还是收阴洗盘要求 VAR8 最大表示下影承接量最大高抛要求 VAR7 最大表示上影抛压量最大。NODRAW 让这些条件只参与逻辑计算、不显示数值真正的视觉呈现由后面的 STICKLINE 完成。DRAWKLINE 用当根最高最低开收价重绘主图 K 线STICKLINE 再以开盘价到收盘价画宽度 1 的实心柱颜色覆盖上去后每根 K 线被标成红、蓝、白、品红四色之一。四个信号的边界条件可以压成一张表。信号量能分配条件附加价格条件显示颜色短线含义加仓VAR6 最大CLOSEOPEN 收阳红实体量占优多方推动减仓VAR6 最大CLOSEOPEN 收阴蓝实体量占优空方打压洗盘VAR8 最大无条件白下影承接明显疑似洗盘高抛VAR7 最大无条件品红上影抛压明显冲高遇阻一个容易被忽略的细节当某根 K 线同时满足多个条件时后面的赋值会覆盖前面的颜色。原式把高抛写在最后所以同分状态下高抛优先显示。这个优先级只是画线顺序不代表市场含义复盘时不要把它当成严格唯一的分类。2.2 录入博易大师与信管家的操作要点在博易大师里新建指标的一般流程打开指标管理器不同发行版的菜单位置略有差异通常在功能菜单下或按 CtrlF 调出新建公式后语言选择博易大师公式把上面整段文本粘贴进去编译。信管家与博易大师共用同一套公式引擎操作一致只是原始文件的 .doc 后缀是说明文稿不要直接拖入软件要复制公式文本再编译。编译时最容易踩的坑有三个一是全角括号或中文分号混入报未定义标识符二是输出变量名与软件内置函数重名三是漏掉分号。博易公式要求赋值语句以英文分号结束:表示中间变量、不输出单冒号:表示输出变量。原式里 VAR6、VAR7、VAR8 全部用:只有四个信号和两条画线是单冒号语义正确。若平台提示 DRAWKLINE 未定义直接删掉这一行也不影响信号计算四色柱子仍然会画出来。2.3 用颜色区分信号时的参数细节STICKLINE 的六个参数依次是条件、起点、终点、宽度、空心标志颜色关键字放在最后可省略。STICKLINE(加仓,O,C,1,0),COLORRED表示条件为真时从开盘价画到收盘价宽度 1 是最细档0 表示实心。觉得颜色太淡可以把宽度改成 3但不建议超过 5否则会盖住 DRAWKLINE 画出的上下影线影响对洗盘和高抛信号的观察。3. BACKSET/FILTER 高低点识别前期高位与前期低位的无未来判定3.1 十周期顶底判定的三段式写法TY:C; // A1: 判断 10 根前的收盘是否为 21 根窗口最高收盘 A1:REF(TY,10)HHV(TY,2*101); // B1: 10 周期内只保留第一个信号 B1:FILTER(A1,10); // C1: 把信号回填 11 根作为画线起点 C1:BACKSET(B1,101); HD:FILTER(C1,10); A2:REF(TY,10)LLV(TY,2*101); B2:FILTER(A2,10); C2:BACKSET(B2,101); LD:FILTER(C2,10);这八行是整份指标里最有信息量的部分。A1 判断十天前的收盘价是否为过去二十一根 K 线里的最高收盘价HHV(TY,21) 从当前 K 线向左数二十一根而 REF(TY,10) 恰好定位在这段窗口的中间位置所以它在回答十天前那根 K 线左边十天和右边十天里有没有更高的收盘价。B1 用 FILTER 把 A1 的连续真值压缩成十周期内只保留第一次避免同一轮上升结构里反复标记。C1 再用 BACKSET 把确认信号回填到十一根之前最后用 FILTER 再过滤一次得到最终的 HD 顶分型序列。LD 是同一逻辑的镜像用于底分型。在实时行情视角下以上每一步都只使用当前 K 线之前的数据。HHV、LLV、REF 的偏移量全部是正数或零A1 是否成立在当前根就能确定。BACKSET 虽然会把信号向历史方向填充但它输入的是已经确认的 B1 序列并不是下一根 K 线的数据所以最后一根 K 线不会提前出现尚未形成的顶底信号。各函数在本段公式里的作用可以速查。函数作用在本公式中的位置REF(TY,10)取 10 根前的值定位窗口中心HHV/LLV(TY,21)21 根极值判断顶/底分型FILTER(cond,10)对信号去重防止连续标记BACKSET(cond,11)向历史回填形成画线起点BARSLAST(HD)最近信号距离取对应 K 线价格3.2 前期高位、前期低位画线的取价逻辑// 最近一次顶分型的最高价点状虚线 前期高位:REF(H,BARSLAST(HD)), COLORFF00FF,POINTDOT,LINETHICK3; // 最近一次底分型的最低价点状虚线 前期低位:REF(L,BARSLAST(LD)), COLORGREEN,POINTDOT,LINETHICK3;BARSLAST(HD) 返回最近一次 HD 为真到当前周期的距离REF(H, 该距离) 取的是那根 K 线的最高价也就是最近一个顶分型的最高点。低位同理。COLORFF00FF 是品红POINTDOT 让线条以点状虚线画出LINETHICK3 把线宽设为第 3 级。主图上的效果是每个被确认的顶或底都会在后续 K 线里留下一根水平虚线直到出现新的顶或底。BARSLAST 有返回值无效的场景数据不足、或 HD 从未成立时REF 得到空值画线自动不显示不会报错。实盘里更常见的是横盘震荡时顶底交替太快虚线频繁跳变。这种情况不用特别处理因为这个公式的定位就是短线频繁切换本身就是横盘行情的一部分。3.3 BACKSET 的未来函数争议与使用边界在通达信类平台的帮助文档里BACKSET 通常会被标注为未来函数。原因在于它把当前确认的信号回填到历史 K 线上导致历史位置看起来提前出现了标记如果拿 BACKSET 写选股条件选出来的历史位置在当时是不可知的。但把它用在画线而不是选股并且配合 FILTER 做去重是在利用回填特性做视觉引导并不会污染实时信号。判断指标是否真正使用未来数据要看计算当前 K 线信号时有没有引用当前之后的行情。原公式里唯一带回填语义的 BACKSET 只作用于形态确认后的画线四个交易信号、VAR 系数、TJ1 全部独立于未来值因此无未来针对实时信号这个层面是成立的。FILTER-BACKSET-FILTER 这种三段式写法在指标公式源码里很常见理解了它的边界就不会看到 BACKSET 就直接判定整个指标不可用。4. JJ 加权均价与 TJ1 倍量确认量能过滤与参数失效场景4.1 VAR1 加权均线的结构与一处笔误原公式从 JJ 开始进入第二套计算系统// 收盘权重 3开高低各 1六项平均 JJ:(3*CHLO)/6; // 对 JJ 做 8 周期线性加权注意原式跳过了 REF(JJ,7) VAR1:(8*JJ7*REF(JJ,1)6*REF(JJ,2)5*REF(JJ,3)4*REF(JJ,4)3*REF(JJ,5)2*REF(JJ,6)REF(JJ,8))/36;JJ 是加权均价收盘价权重 3、最高最低开盘权重各 1六项求和再除以 6比单纯收盘价平滑也比 (HLC)/3 更能体现最近成交价的主导作用。VAR1 对它做八周期线性加权平均理论上权重应从 8 递减到 1对应当前 JJ 到七天前的 JJ。但原式在 REF(JJ,6) 之后直接跳到 REF(JJ,8)分子实际权重是 8,7,6,5,4,3,2,0,1分母却是严格的 36即 87654321。这不是什么高深设计更像从 .doc 里抄录公式时漏了一项。建议使用时补齐 REF(JJ,7)恢复标准的连续递减权重VAR1:(8*JJ7*REF(JJ,1)6*REF(JJ,2)5*REF(JJ,3)4*REF(JJ,4)3*REF(JJ,5)2*REF(JJ,6)REF(JJ,7))/36;这个修改会让 VAR1 曲线更平滑但对 TJ1 的触发影响很小因为 TJ1 只要求 CLOSE 大于 VAR1而线性加权均值对单根异常值本来就不敏感。从文档复制公式时权重和与分母是否一致是最值得先检查的隐性错误点。4.2 TJ1 倍量突破的确认逻辑// 四重条件10 周期最高量、倍量、站上均价、收高 TJ1:VOLHHV(VOL,10) AND VOL2*REF(VOL,1) AND CLOSEVAR1 AND CREF(C,1); // 5 根内只保留第一个信号 LJL:FILTER(TJ1,5); // 在确认日低价和收盘价位置画竖线作为后续锚点 STICKLINE(CLOSE,REF(LOW,BARSLAST(LJL)),REF(LOW,BARSLAST(LJL)),1,0),COLORRED; STICKLINE(CLOSE,REF(CLOSE,BARSLAST(LJL)),REF(CLOSE,BARSLAST(LJL)),1,0),COLORYELLOW; // 把确认 K 线的实体涂黄 STICKLINE(LJL,OPEN,CLOSE,1,0),COLORYELLOW;TJ1 把倍量突破定义为四个条件同时成立成交量等于近十周期最大值、是昨日成交量的两倍以上、收盘价站上 VAR1 加权均价、收盘价较昨日抬高。四条分别过滤掉缩量新高、放量阴线、跌破均线的反弹和没有延续性的滞涨。FILTER(TJ1,5) 让同一轮放量中只确认第一个信号把关注点锁在最初的爆发 K 线上。确认后的三条 STICKLINE 用途不同。前两条用 BARSLAST(LJL) 定位最近一次确认日在其最低价和收盘价位置各画一条从当前收盘价出发的竖线后续回踩不破这两条线说明倍量突破得到承接第三条直接在 LJL 为真的那根 K 线上把实体涂黄标记这里是倍量确认日。这种放量入场点 价格锚点的写法在主力追踪类的指标公式源码里很常见核心思路始终是用放量确认突破用价格锚点跟踪后续。4.3 参数失效场景与平台差异排错表实战中指标不显示或显示异常先按表排查比反复改公式效率高。现象可能原因处理信号全部消失HIGH-LOW 等于 0VAR 系数无定义振幅分母加 MAX(HIGH-LOW,0.0001)编译报未定义标识符全角括号或中文分号统一转半角再编译主图出现两套 K 线公式已含 DRAWKLINE又叠加普通 K 线主图只加载本指标一加载就卡顿1 分钟周期、全市场扫描限制 K 线根数或换 5 分钟周期黄色确认柱不出现量能始终不足两倍检查 VOL2*REF(VOL,1) 是否过于苛刻博易大师公式引擎与通达信语法兼容度很高但 DRAWKLINE、NODRAW 这类关键字在个别版本上表现不一致。从通达信抄来的指标在博易里报错时优先检查这两个函数。信管家与博易大师共用公式引擎指标文本可以直接移植不需要改函数名。5. 落地复核用信号统计功能验证短期成功率与参数微调5.1 手动统计信号后三根、五根 K 线表现成功率 99这类数字脱离了周期、品种和出场规则没有意义。验证办法是选固定合约和周期建议 5 分钟、K 线不少于 500 根主图加载公式后记录每次加仓信号出现的时间用十字光标对比信号收盘价与后续第三根、第五根 K 线最高价。后续高点比信号收盘价高 1% 以上记为一次有效减仓信号对称统计跌幅。信号样本最好累计三十次以上并且样本里要混入一段横盘行情因为短线指标在趋势里胜率偏高、在震荡里会明显下降。部分博易大师版本带信号测试或交易系统评测可以把信号输出改写成 ENTERLONG/EXITLONG 做批量回测但滑点和手续费会让实盘成功率比回测低几个百分点。注意这个公式以 K 线收盘确认信号实际操作时最早也在收盘价附近成交不能按信号 K 线内部的最优价统计。5.2 一字板保护与 MA60 方向过滤原始 VAR 系列分母为 HIGH-LOW一字板时除零。常见做法是加一道振幅保护安全振幅:MAX(HIGH-LOW,0.0001); VAR6:ABS(OPEN-CLOSE)/安全振幅*VOL; VAR7:(HIGH-IF(CLOSEOPEN,CLOSE,OPEN))/安全振幅*VOL; VAR8:(IF(CLOSEOPEN,OPEN,CLOSE)-LOW)/安全振幅*VOL;振幅极小时百分比会偏大但四个信号只比较 VAR6、VAR7、VAR8 之间的大小关系绝对值偏大不影响触发。再把 MA60 方向并入加仓和减仓条件CLOSEMA60 时只保留加仓和洗盘CLOSEMA60 时只保留减仓和高抛单边行情里能滤掉约三成逆势噪声。5.3 逆势减仓加粗显示的具体画法最后一个落地技巧让逆势减仓在盘面上更突出。在公式末尾追加两条语句STICKLINE(减仓 AND CLOSEMA60,O,C,3,0),COLORBLUE; STICKLINE(高抛 AND CLOSEMA60,H,CLOSE,1,0),COLORMAGENTA;第一条把收盘价低于 MA60 的减仓信号用宽度 3 的蓝柱加重标识下跌趋势中的实体放量第二条在高抛且收盘价高于 MA60 时从最高价到收盘价画细品红柱标识上升趋势中的冲高回落。两条语句必须放在原有 STICKLINE 之后否则会被后执行的原语句覆盖。编译后对比修改前后的信号分布重点看逆势减仓是否刚好落在每轮下跌的初期。本文还有配套的精品资源点击获取
返回列表