v75110/21只修日线图第二行锚30F中枢zs(_sdSegsForLevelZs),30F/5F/1F图保持锚biZs(别的级别逐步讨论)。版本 v750→v751。
v75010/21app2 tNum作用域修复:tNum原定义在UI IIFE内部(IIFE私有、全局不可见),engine块全局区的analyzeStockRes区间套锚定(v740/v745)调用它→批量分析/查询参照抛tNum is not defined(002016判例)。修复=tNum上移到engine块全局区。版本 v749→v750。
v74910/20四图进出段两级行6处缺口整改(E2扩张补进入段/E3区间套不跳过done/E4a离开段未走出兜底/R2未完成标记线段层isSure)。版本 v748→v749。
v74810/191F图次级别行标签「1F以下级别」改为「1F笔」,上下级对应。版本 v747→v748。
v74710/19尾段离开确认:<3笔尾残段在末中枢有待确认离开段时仍参与v196成对判定(仅确认不构中枢,v276≥3笔构件保护不变),修复600613日线离开段随5F尾部重切整组翻转。版本 v746→v747。
v74610/19进出段标签改回级别口径(v736段口径废止):递归链整改后进出段=上级别走势组成段,标签指结构级别——日线图→日线级别/30F级别,四图链 D/M30/M5/M1→日线/30F/5F/1F级别+次级别行30F/5F/1F/1F以下级别;app1/app2/app4三副本同源。版本 v745→v746。
v74510/18进出段文字行同源修复:离开段显示终点改极值端点(v744 extB同源,600613 4.33-12.77非4.33-8.46) + 日线图第二行走区间套锚定,未走出次级别中枢时如实显示不回退全局末段(app1/app2/app4三副本)。版本 v744→v745。
v74410/18三买/三卖候选:recursiveToCoreA tail段输出extB端点(离开段高点锚定延伸峰值而非当前临时终点,600613日线hLeave锚12.77而非最后一根)。版本 v743→v744。
v74310/18长针翻转精准守卫(600613 30F 6.92顶不裁)+跳过创全场新极值趋势段(日线递归中枢A进入段/区间[6.12,6.92]正确)。版本 v742→v743。
v74210/18反转段守卫加 !zz.pendingSeg 闸门(pendingSeg=真离开段不回退 endBi,600613 日线中枢A 进出段方向纠正为向上)。版本 v741→v742。
v74110/18app2/app4 进出段迁移 v734/v736/v740 新口径(_sdSegs短差优先+次级别_sdSub图上画线+v740区间套锚定,三副本同源)。版本 v740→v741。
v74010/18区间套逐级套嵌:次级别进出段锚定上级离开段内部(引擎zsEnterLeaveDiv加anchorBar第3参+app1 _sdSegsForLevel锚定+_barIdxByTime定位)。版本 v739→v740。
v73910/18笔背驰改名+端点括号价归笔背驰按钮((7.49)可控·四价齐)+价签疏散升级(竖直220px+水平邻位·不叠一坨压笔)。版本 v738→v739。
v73810/18价位按钮拆入线段/笔:线段端点价归线段(色同线段)、笔折点价归笔(色同笔),删一刀切价位按钮。版本 v737→v738。
v73710/18K线图按钮拆7组(中枢/线段/笔/价位/背驰括号/买卖点/进出段),删一刀切隐藏标注。版本 v736→v737。
v73610/17进出段标签改段口径(30F线段/5F线段/1F线段/1F笔,30F图上进出段实为5F线段)。版本 v734→v736。
v73410/17跨图进出段同源(_sdSegs优先)+次级别_sdSub图上画线+1F以下段湖青改紫。版本 v733→v734。
v73310/17进出段两级行四图通用(日线/30F/5F补次级别行)+1F以下段改湖青#0891b2。版本 v732→v733。
v73210/17段标注按级别分色(30F黑/5F藏青/1F土黄/日线大红/1F以下深灰)+ 买卖点标注文字归标注层(隐藏标注可隐藏)。版本 v731→v732。
v73110/17全级别链同源:5F中枢对齐30F线段(分钟粒度)+30F中枢对齐日线线段(天粒度)。版本 v730→v731。
v73010/171F图叠加最近2条完成5F线段·上下级对应(600613上段7.90→8.74+下段8.74→7.49,线段内各有1F中枢)。版本 v729→v730。
v72910/171F图中枢对齐5F图:分钟粒度边界切分,600613三个中枢对齐5F次级别中枢。版本 v728→v729。
v72810/17短差逆势买点文案从不建议改仅作超短差(不否定买点)。版本 v727→v728。
v72810/17短差逆势买点文案从「不建议」改「仅作超短差」:背驰买点本级必对,逆势只影响持有预期不否定买点(app1+企微)。版本 v727→v728。
v72710/17短差逆势口径改回紧邻上一级(撤销v709任一更粗)。版本 v726→v727。
v72610/17短差卡逆势买点小字明确逆哪个势。版本 v725→v726。
v72510/17短差口径对齐:后端_lv_name补D→30F映射+说明中心补日线四级口径。版本 v724→v725。
v72510/17短差口径对齐:后端企微 _lv_name 补 D→30F 映射(日线操作做T label 由「D(1买)」→「30F(1买)」)+ 说明中心 2.2.2 补日线操作四级口径。版本 v724→v725。
v72410/17APP1 交易卡片默认折叠+点分析不影响其他卡。版本 v723→v724。
v72310/16APP2 同级别策略流转自动切模式二。版本 v722→v723。
v72210/16APP1 模拟区:录入拆实操/模拟双入口,总览分实操区+模拟区,模拟卡不计执行力/不生成明日计划/不上报企微。版本 v721→v722。
v72110/16app3 同级别策略新增筛选条:方向/类型/时机/质量四维筛选。版本 v720→v721。
v72010/16市场扫描新增第5策略「同级别」:30F一笔=5F线段内1F中枢背驰短线买卖+1F笔保留层;引擎 keepColFx 开关。版本 v719→v720。
v71910/16取消短差1F笔独立信号层(假信号多),保留1F笔作1F以下中枢结构地基;引擎colFx=null+前端删1F笔行+企微删1F笔行+app5改三级口径。版本 v718→v719。
v71810/16BUG-122 线段划分递归死循环保护(600613 1F双底+反弹+新低震荡不再栈溢出→无数据)。版本 v717→v718。
v71710/14修复 analyzeLevel 丢 fxXd/fPts(BUG-121),601788 5F 图 14.14→13.41 恢复绿实线完成段,替代递归 tail 段玫红虚线。版本 v716→v717。
v71210/135F图笔改回分型笔(符合原文62课)·引擎fxBis平行数组+前端笔渲染改读·601788 14.14→13.41显示7笔下上下。版本 v711→v712。
v71110/13recursiveM5 边界拼接修复:lastKeepIdx 改终点判定+M5 补方向交替守卫,601788 5F 14.14 高点恢复。版本 v710→v711。
v71010/13中枢框左边界改第三段起点口径:601788 中枢E 左边界右移到 21.65。版本 v709→v710。
v70910/13跨级别服从矩阵补全:rows/colFx 的 againstTrend·reboundSell 判据从「紧邻上一级别」升级「任一更粗级别行」(线段向下或已报卖);企微 auto_alert 买侧消费 againstTrend 降级「逆势买点·不建议」(601788判例:1F2卖+1F笔1买企微推送打架)。版本 v708→v709。
v70810/13行级卖点遵循更大级别:短差卡任一级行报卖且更粗级别线段向下(底背驰迹象)时reboundSell降级展示,消除5F1买+1F以下1卖红绿打架(600613判例);app1+企微auto_alert双出口同口径。版本 v707→v708。
v70710/13中枢ZG止损位三买专用:一买/二买不再把上方压力位ZG当止损位(601788光大证券30F一买现价13.72,锚定中枢ZG=15.71是上方压力位非止损位)。版本 v706→v707。
v70610/13extended中枢现价离开判断改用gg/dd(zsDeparted用zsLeaveTop3,001914现价9.11。版本 v705→v706。
v70510/121F笔卖点遵循更大级别:马上卖出降级为反弹结束·不建议卖出(app1+企微)。版本 v704→v705。
v70410/12结构守卫:离开段未出中枢不比背驰(!brokeOut守卫+leaveInsideZs标记,600613尾盘微弹伪顶背驰1卖消除·第24课离开段须离开中枢)。版本 v703→v704。
v70310/121F笔卖点在下跌趋势中加小字说明(反弹结束不影响底背驰)+ 预形成买点触发门槛收紧(涨过理论买点0.5%才触发) + promote写回失败兜底。版本 v702→v703。
v70210/12小级别买点服从大级别(逆势买降级)+ 冲突改小级别服从大级别 + 大盘参考。版本 v701→v702。
v70110/12短差卡1卖1买同现T节奏合并文案+已过最佳点标注(引擎conflict/passedBest)。版本 v700→v701。
v70010/12图例折叠补全app1观察卡(与app2同款看图三层默认折叠)。版本 v699→v700。
v69910/12看图三层图例折叠展开(观察卡结构图内长图例默认折叠)。版本 v698→v699。
v69810/11预形成2买/3买盘中跟踪+企微新机器人提醒+点链接生成观察卡片。版本 v696→v698。
v69610/11修复手动录入无信号股票观察卡片无法生成(sig.gateLv 空指针守卫)。版本 v695→v696。
v69510/10卖侧二卖/三卖已形成确认提前到笔级,与买侧v694对称放宽。版本 v694→v695。
v69410/10二买/三买已形成中枢数同源化+面积按a+A+b划分(方向A,sh600905 buy2 首次毕业)。版本 v693→v694。
v69310/101F以下中枢扩张识别:相邻已完成中枢波动重叠=更大级别中枢构造中(非趋势,第20课中枢中心定理二),短差卡不再误报无中枢。版本 v692→v693。
v68910/09疑似极值预警(独立参考层):detectExtremes识别当天最高/最低点本身(底=看涨吞没+开即最低、顶=缩量创新高滞涨·覆盖式定格当天唯一极值),与背驰买卖点彻底解耦,app1短差卡+做T企微附展示,量能链路打通(_df_to_bars/normBars/barsFromMin保volume)。版本 v688→v689。
v68810/09删除反弹/回落≥3%比例过滤(v583/v687):先验机械阈值缠师否定,买卖点唯一原则=底背驰买/顶背驰卖,1F笔用MACD柱缩短+分型落地(背驰微观化)。版本 v687→v688。
v68710/09当日反弹过滤:1F层(M1行+1F笔colFx)反弹/回落基准改用当日极值(_dayReboundMissed),修600613早盘深水低点滑出60根窗口致11:00在+3.4%高位仍报1买马上。版本 v686→v687。
v68610/09反转段守卫:leaveSeg跨越整个中枢回退endBi,修复600613日线递归中枢进出段方向锚反。版本 v685→v686。
v68510/09app1总览页头部排版修复:标题独占一行+四按钮铺满均分,修复标题被挤成竖排窄列。版本 v684→v685。
v68410/09app1新增撤销企微提醒:勾选标的不再上报、不再企微提醒,可恢复。版本 v683→v684。
v68310/08短差四级对齐:恢复1F笔(colFx)行+levels链补M30(5F短差锚)+app5四级口径。版本 v677→v683。
v67710/071/2/3类买点原文对照·信号输出硬校验(signalSelfAudit六条自证+detectAll闸门)。版本 v676→v677。
v67610/07TQS判例库落地:1/2/3类买点原文对照自证清单(二买级别链递归+两档强度·三买三态门槛+实操口径分界,对照《1.2类买点》《30F3买解释》两份PDF)。版本 v675→v676。
v67510/0730F进入段与离开段方向相反修正(600613 中枢C 进入段7.10→6.15改6.15→7.35)。版本 v674→v675。
v67410/06间隔笔拆行+图上括号标记+日线进入段跨段截取(600613 4.65→6.83)。版本 v673→v674。
v67310/06进入段/连接段/离开段取最近(引擎趋势段跨越修正·600613 5F 12.77→8.76)+段名左侧取消改顶部文字行三源优先级。版本 v672→v673。
v67210/06图上进入段/离开段改锚最后中枢(24/43课 a+A+b),弃biBei隔笔比较(39/40课只留诊断文字)。版本 v671→v672。
v67110/06v670补漏:app1 _pTxtSmart+_pTxtBox 两函数对称加端点竖直疏散(日线图右缘密集簇同款盖图问题·全平台疏散口径统一)。版本 v670→v671。
v67010/06三修:背驰行未完成双来源(000799 pending_buy1判例·isSure||sigPend)+端点竖直疏散(右缘密集簇不叠坨盖图)+垫片class同步显隐(隐藏价格白块残留)。版本 v669→v670。
v66910/06市场扫描进入待操作→直接进实操参考识别列表(app2 autoAddPendingOps自动联网校验+防抖锁+级别同步·消费点consumePendingJump/message)。版本 v668→v669。
v66810/06背驰行文字离开段未完成同步标注(v667图上标签漏了v665文字行·app2/app4·isSure=false同口径)。版本 v667→v668。
v66710/06离开段(背驰段)未完成标「(未完成)」:信号预形成 sig.pending / 诊断末笔 isSure=false 双来源。版本 v666→v667。
v66610/06背驰标注收尾:①三级结构背驰行补「进入段:a-b,离开段:a-b」价格区间(app2/app4·与图上彩线同源);②背驰彩线起止价禁走网格搜(noSearch=true·12处调用点),端点密集区价签回端点+白底垫片各在其位,不再堆成竖列。版本 v664→v666。
v66410/06带框价标避让收敛对齐v658:_pTxtBox废弃v540全图搜+箭头长指引(002352三价签飞右上角),限半径110px就近挪+指引仅远位移+端点回退白底框;后端signal_track加预形成历史库(pending落库+转正血缘+转化统计)。版本 v663→v664。
v66310/06信号背驰对比也改加粗彩线:v660半透明色带废弃,一买/一卖segs与v662诊断同款v505三件套(彩线盖走势+段名左侧+起止价避让标注·字体色=段色·端点价按方向取极值)·迁主绘制之后,全平台进入段/离开段一个口径。版本 v662→v663。
v66210/06诊断级背驰对比改加粗彩线:废弃v661色带,v505短差同款——进入段(藏青)/离开段(墨黑)彩线盖笔+段名左侧白底框+起止价位避让标注,字体色=段色,各级别全股票。版本 v661→v662。
v66110/06诊断级背驰对比色带:文字行「最近笔盘整背驰」→图上画进入段(藏青)/背驰段(离开段·墨黑)色带,从R.biBei最近事件推导,各级别全股票通用,m2缩略图不画。版本 v660→v661。
v66010/06背驰对比段标注收敛:图例只留进入段/离开段(背驰段);色带白名单只画背驰对比结构,背驰段按离开段上图(墨黑);二买反弹回调段/三买回试段不再上图。版本 v659→v660。
v65910/06进入段/离开段颜色统一黑系(藏青#1e3a8a/墨黑#111827):SEG_COL色带+③段标注图例+hlStruct文字行三处对齐v603短差卡口径,避开级别色橙紫撞色。版本 v658→v659。
v65810/06端点价标签避让收敛:网格搜限半径110px就近挪+指引虚线仅远位移才画+端点回退位白底垫片,修复v654全图搜拖长虚线太乱。版本 v657→v658。
v65710/06三级结构背驰行结构要素着色:进入段/离开段等按K线图例SEG_COL同色,背驰词按方向色红买绿卖(app2×2+app4×1)。版本 v656→v657。
v65610/06中枢框/次级别中枢框/红虚线/成交价线预登记为避让障碍,修复1买标注落进中枢框内+30.13骑红虚线。版本 v655→v656。
v65510/06图例级别传递细化:日线笔=30F线段=5F走势类型·30F笔=5F线段=1F走势类型,补线段同理链。版本 v654→v655。
v65410/06端点价标签全冲突改网格搜最近空白格+细虚线指引,修复贴底贴缘30.13类标签回退位硬放仍被红点/买点标注压住。版本 v653→v654。
v65310/06K线放大缩小按钮修复:缩放改实际渲染宽度px+同步min-width,修复手机窄屏min-width:520px顶住百分比缩放。版本 v652→v653。
v65210/05v652 tail残段按笔呈现+价位标签遮挡彻查整改:tail未确认线段改笔色折线(日线笔=橙),信号箭头/理论买点圆点障碍预登记防压标签,贴缘端点价回退位水平钳制防裁切。版本 v651→v652。
v65210/05v652 tail残段按笔呈现+价位标签遮挡彻查整改:①tail残段(未确认线段,顺丰判例 30.13→35.47→30.14)不再画紫色段线,改按笔色折线(日线笔=橙、30F笔=绿)+虚实分级;②价位标签遮挡整改——信号箭头/理论买点圆点/买卖大箭头包围盒预登记进标签避让,先画的端点价不再被压住(30.14 被红点压住判例);③贴右缘端点价回退位水平钳制,不再被裁半(30.73 判例)。app1/app2/app4 三处同改,引擎不动。版本 v651→v652。
v65110/05v651 v650复盘修正:borrowedBack判灰证伪回退(它是三买卖关闭的常态记账非罕见中阴),已定案中枢恢复级别色实线,未完成保持级别色虚线(30F橙虚线保留),灰色样式闲置。版本 v650→v651。
v65110/05v650 复盘修正:borrowedBack 判灰证伪回退——引擎里每个被三买/三卖确认关闭的中枢都置 borrowedBack=true(v629 常态记账),v650 拿它判灰导致日线/30F 已定案中枢全灰。恢复:done=级别色实线,未完成(含离开待确认)=级别色虚线(30F 橙虚线保留),灰色视觉样式暂时闲置。app1/app2/app4 三处同改,引擎不动。版本 v650→v651。
v65010/05v650 中阴中枢渲染收窄:灰色虚线只用于真中阴(borrowedBack),leaveDir=±1 离开待确认改画级别色虚线(30F=橙虚线),app1/app2/app4 三处同改。版本 v649→v650。
v64910/05v649 陈旧二买/二卖边界:l2/t2 只取「回调/反弹结束边界」前的最后一段底/顶,防 v646/v647 去 fresh 后锚到远古回调段。版本 v648→v649。
v64810/05v647 二卖对称解耦fresh + v648 凹字形背驰一买/一卖formed补凹字形判据(第25课)修复面积判据不对称误杀。版本 v646→v648。
v64610/05纯思路2二买结构判定:回退v645历史库注入,buy1Anchor去fresh无条件设立+二买去fresh时间窗(600809判例)。版本 v644→v646。
v64410/05撤销borrowedBack误杀三买卖:buy3归零根治(002815判例)。版本 v643→v644。
v64310/04tail段按笔分级折线:跨级别虚实统一(600613判例)。版本 v642→v643。
v64210/04买点输出只保留30F/5F(日线误报不外流)+端点价位标签改下方优先+tail残段终点改段内极值端点(600613上下级别统一)。版本 v639→v642。
v63910/04中枢升级只放宽上涨扩张(000333三买退化)+borrowedBack收窄静默范围。版本 v637→v639。
v63710/03相邻中枢框边界裁剪(v637·603260判例):trimZsOverlap 只裁渲染右边界 rightBi 不碰结构记账,30F中枢C框止于62.37垂直。版本 v635→v637。
v63510/03删除 reanchorSignals 冗余(v634 后 A.pts.anchor 已递归同源,二次回锚幂等冗余 + _recAnchorMemo 旧式 key 跨股串台隐患);回归 487 全绿。版本 v634→v635。
v63410/03判定端递归同源·coreAnalyzeUnified统一入口(废分型笔构本级别中枢,#840)。版本 v633→v634。
v63310/03一字板不坍缩守卫:连续涨停/跌停一字板互不合并、保留真实跨度,修复000935涨停段成笔被吞(符合原文,不碰600613笔地基)。版本 v632→v633。
v63210/03撤销 v630 门槛中枢匹配失败静默兜底(lastZs=null),修复日线一买/一卖 143→4 暴跌回归。版本 v630→v632。
v63010/03门槛中枢文图同源根治:v589回锚阈值0.01绝对改相对2%+失败静默(600822判例,判定端不再锚coreAnalyze伪中枢)。版本 v629→v630。
v62910/03中阴中枢归属回退引擎落地(88课·用户拍板):三买卖关闭中枢打borrowedBack回退标记(4处)+全链透传(zsBrief/coreAnalyze/递归)+判定级守卫(002354判例:锚到已回退中枢的三买卖静默,1/2类照常)+self_audit #7核对+巡检check_v629。版本 v628→v629。
v62810/03门槛中枢文图同源(600822判例):图上门槛中枢标签改读信号自带判定门槛中枢(app1 opSig.gateZs/app2 sig.gateZs+扫描来源sg.zs权威兜底+gateLv限定判定级别),不再取本图zsWin末项渲染端二次推断;判定30F级别就只在30F图写门槛中枢,其他级别一律不写;app4无判定撤标签。版本 v627→v628。
v62710/03拼接方向交替守卫(000935判例): recursiveM30Structure边界拼接处30F分型笔与5F线段映射笔同向相邻致CSegListChan崩溃、30F递归整体失败回退两套旧口径、日线/30F两图30F中枢不同源;同向收口(越过合并/未越过丢弃)恢复交替,递归区绿色笔恢复5F线段级干净口径。版本 v626→v627。
v62610/03TQS文案颜色对齐v271实际梯度(5F绿/1F粉红/1F笔蓝/biZs随次级别色)。版本 v625→v626。
v62510/03信号锚点同源化(#823·自证#1):anchor按值回锚递归端点。版本 v624→v625。
v62410/03中枢合并区间收紧(doCombine取交集ZD/ZG非dd/gg·根因②自证#4) + 巡检check_v623(数据级自证#5/#6无div0一买卖) + check_v624(doCombine守卫)。版本 v622→v624。
v62210/03二买二卖级别链修正(次级别一买锚定·SUB_LEVEL下钻至1F) + 背驰段面积非0守卫(div.area_c/peak_c=0拦一买卖) + TQS质检台(原文学习迁入买点自查·新增TQS标准手册栏目)。版本 v620→v622。
v62010/02递归线段升级切断严格化:600985 判例证伪 v619 均匀切断(连续同向假线段+切点非极值),改为严格极值+交替分解有解才切、无解保留原段。版本 v619→v620。
v61910/02递归日线线段升级切断:段内笔>9按笔数均分强制切断(002354/002012判例,切点=笔端点);仅D输出层M5/M30不动(链式管线保护);tail残段不切;segRanges同步重建。版本 v618→v619。
v61810/02三买/三卖中阴态守卫:回试低点未离开最后计数中枢(中阴态延伸)时已形成/高预警静默(002025/002354/002012 判例);pullLastZsInfo 与 countTrendBiZs 同管线同源;600985 好案例放行。版本 v617→v618。
v61710/02三买/二买中枢计数同源化:countTrendBiZs/countBiZs 改「笔完全在区间内」过滤,_zs3 废止 pullSeg3.zsCount 切片覆盖(600985 判例)。版本 v616→v617。
v61610/02三买口径合并:buy3s/buy3p/sell3s/sell3p/pending_buy3s/pending_sell3s 六类合并回归统一 buy3/sell3;三买=次级别一买强制背驰双条件(面积缩小done+黄白线背离pullOk)剔除假三买;回试段中枢数打「浅回试(1中枢)/充分回踩(≥2中枢)」标签;取消前端最强三买(理论/实操)两按钮;买点自查改按中枢数分档。版本 v615→v616。
v61510/02买点自查新增三买分档归因(普通/理论最强/实操最强胜率对比);回测+自查同步记录背驰确认standard与中枢数分档字段,数据验证三买差在浅回试。版本 v614→v615。
v61410/02布林通道(第90课)引擎辅助:calcBoll/bollInfo+三买卖收口共振+一买卖超强区+二买卖轨道参考价+短差跨级别布林+观察卡/短差卡说明(不碰线段划分本体)。版本 v613→v614。
v61310/02买点自查文案修正:误差正负口径统一(负=判高/正=判低,买卖点对称不再写反)+失败标签改「未突破理论点」+卖点判低措辞「实际冲得更高卖早了」。版本 v612→v613。
v61210/01买卖点标注两行化(名称+括号价格分行,防右缘裁切与重叠)。版本 v611→v612。
v61110/01线段级中枢rightBi同口径修复(4处管线,1F图1F中枢框延伸到6.67根治)。版本 v610→v611。
v61010/01图上买卖点标注:箭头改带箭杆形式(类似→箭头)。版本 v610→v610。
v61010/01图上买卖点标注改版:圆点改箭头+括号标信号价+智能避让(含m2,app1/2/4)。版本 v610→v610。
v61010/01图上买卖点标注改版:圆点改箭头+括号标信号价+智能避让(app1/2/4)。版本 v609→v610。
v60910/01说明中心文案同步最新(巡检280余项+消息面五板块研报+研报时间)。版本 v608→v609。
v60810/01说明中心五分组数字编号(1-5+子级N.M.K去图标)。版本 v607→v608。
v60710/01中枢框右边界修正(done不延到离开段)+短差锚定跳过已定案中枢(600986)。版本 v606→v607。
v60610/01短差三级固定无信号也显示+短差说明卡复检块+app5新口径文案。版本 v606→v606。
v60610/01短差三级固定无信号也显示+短差说明卡复检块+app5新口径文案。版本 v605→v606。
v60510/01修复进入段/离开段跨走势类型(600986:离开段改中枢后第一根同向笔)。版本 v604→v605。
v60410/01K线观察卡不持久化(修复存储空间不足:klineCard完整SVG不再写localStorage)。版本 v603→v604。
v60309/30短差背驰段配色藏青/黑+背驰段纯黑加粗(避开级别色橙/紫撞色)。版本 v602→v603。
v60209/30短差背驰段配色重定:进入段/连接段=橙、离开段=紫、背驰段=深紫(红区分度不够)。版本 v601→v602。
v60109/30大盘K线画法对齐app1/app2(递归结构+级别着色+线段虚实+次级别中枢+价位避让+级别图例);001388买卖点标注加级别+白描边防压线。版本 v600→v601。
v60009/30修复递归边界拼接seamBar裁剪口径(end>seamBar→begin>=seamBar):上证指数30F递归0中枢(M30+M5同源),横跨seamBar的5F线段误保留导致索引倒退segList死循环。版本 v599→v600。
v59909/30短差三级级别口径(5F/1F/1F以下)+删1F以下红绿柱独立行(企微不再高频提醒)+短差段进入/连接/离开段样式(粗细2.4+统一红/深红)+app4大盘读min_history历史库(30F2.5年/5F6个月)。版本 v598→v599。
v59809/30三买离场级别改次级别一卖(第20课:三买=次级别一买),backtest_400.js 新增 buy3_sub 配对口径,app5 综合窗口增加「本级别一卖 vs 次级别一卖」对比表。版本 v597→v598。
v59709/30①门槛中枢金框撤回(判定端保留);②大盘K线观察对齐交易卡(四级别+级别色);③二买级别=次级别统一(001388=5F二买);④测试2/3扩展九种情况表+持有天数。版本 v596→v597。
v59609/29回测口径改为「买点→本级别一卖」配对(不再固定持有N根),反向统计持有K线根数众数/中位数。版本 v595→v596。
v59509/29测试3·前向实战同步改造为操作指导卡(塔尖近期实战结论+✅真涨/❌没涨/⏳样本不足清单+一行一个买点数据表+卖点折叠自检,与测试2口径一致)。版本 v594→v595。
v59409/29测试2从胜率矩阵表改造为操作指导卡(金字塔:塔尖最优买点结论+✅可做/❌别做/⏳积累中清单+一行一个买点×持有期数据表+卖点折叠自检);回退v593绩效归因(与测试2口径重叠)。版本 v593→v594。
v59309/29绩效归因初版(信号价买入持3/5/10日算收益/胜率/盈亏比)——发现与「测试2胜率回测」口径重叠,回退(结论并入 v594 操作指导卡)。版本 v592→v593。
v59209/29买点自查新增「按信号日」分组(附当日大盘涨跌),区分信号质量 vs 行情窗口,防误读成功率。版本 v591→v592。
v59109/29二买/二卖定位锚改为次级别一买/一卖,预二买/预二卖三态对齐预三买(低/高预警)。版本 v590→v591。
v59009/29门槛中枢递归同源根治·按值回锚(回退整体接管/直接换lastZs两版,信号面恢复)。版本 v589→v590。
v58909/29门槛中枢递归同源根治(600985判例):判定端1/2/3买卖点六类消费点整体接管图上递归口径(中枢锚定/pts/segs/biList/趋势分类/扩张判定),subBars缺失回退coreAnalyze;前后端右上角加门槛中枢标注。版本 v588→v589。
v58809/29短差卡1F以下补分型确认(柱缩短+分型双条件)。版本 v587→v588。
v58709/29短差卡各级别固定显示(无信号也标注)。版本 v586→v587。
v58609/29短差卡1F以下翻色保留期(已反弹/已回落)。版本 v585→v586。
v58509/29短差卡1F以下方向改用M1最后一笔。版本 v584→v585。
v58409/29短差卡背驰强度分层+中继分型静默。版本 v583→v584。
v58309/29短差卡方向/时机修复:分型窗口扩展+反弹回落≥3%过滤(神奇制药7.9→8.40不再提示准备买入)。版本 v582→v583。
v58209/29短差卡参考价「准备」状态也写(refPrice=现价去激进价,马上/准备都写)。版本 v581→v582。
v58109/29002931判例:递归笔虚实口径同步(recursiveD isSure继承broken,日线末笔与30F线段一致虚线)+线段内部极值标注泛化(118.10冲顶极值▲可见,67课分型确认口径端点=分型高点非极值)。版本 v579→v581。
v57909/28三买/三卖离开段暴涨暴跌守卫:002931锋龙股份日线唯一中枢ZG19.49离开段暴涨6倍被误判最强三买,加离开段>ZG×2/离开段。版本 v578→v579。
v57809/28短差卡三级简版(只留5F/1F/1F以下三行·买卖逻辑移说明中心)+说明中心金字塔5大类可折叠。版本 v577→v578。
v57709/28修正v575源级tail笔数口径:recursiveM5/M30/D统一xd[last].b-a,600613 5F 9.60→8.04未完成线段恢复虚线(线段只被线段破坏铁律)。版本 v576→v577。
v57609/28短差卡三级简版(5F/1F/1F以下·准备买卖/马上买卖·参考价·买入红卖出绿·一买卖二买卖都提醒)+企业微信三行简版+买点自查22:30/涨停回测16:20完成时间。版本 v575→v576。
v57509/28线段破坏铁律broken字段:线段只能被线段破坏,未被线段破坏=未定案=虚线。600613 5F 9.60→8.04未完成线段恢复虚线(源级1F tail 1笔未构成反向线段),601601 日线28.21→34.92 源级30F tail 5笔=实线。版本 v574→v575。
v57409/28601601日线虚线泛滥根治+递归笔同源去重:确认收敛len-2改len-1、tail残段仅末笔虚线、_xdDash改tail||末元素、subR.xd递归去重。版本 v573→v574。
v57309/28递归链同源+锯齿合并:日线笔=recursiveM30递归线段链、日线橙框30F中枢与30F图中枢F同源(601601判例);tail残段按笔展开保真实极值(34.92);updatePeak锯齿死锁豁免(28.21判例);次级别线段叠加虚线只在未完成。版本 v572→v573。
v57209/28v572 三买卖递归中枢同源守卫(601601 判例):三买/三卖输出前用递归口径(次级别走势类型重叠)时间最近中枢校验——回试低点落入图上中枢(ZD)则回试已回中枢,buy3/sell3全族静默;修云端判定层coreAnalyze粗粒度锚定[28.95~30.17]误判601601最强三买(图上中枢F 29.67~33.03内30.81实为中枢延伸)。600415/600613/600292判例全守住。版本 v571→v572。
v57109/27v571 成笔门槛修复:v539夹分型门槛加逼近度条件(距端点<15%笔幅才拦),修600415巨笔(30F 13.09→11.43吞9/4顶13.14、5F 12.06→10.68吞9/22全天震荡);递归笔尾部isSure继承(5F未定案线段在30F虚线口径一致);端点价标注贴边回退对侧(10.68标注恢复)。版本 v570→v571。
v57009/27撤回v553门槛中枢范围外红字警告(002518 5F判例:中间状态不暴露给用户,脱节等扫描刷新自然修正);金框+箭头保留。版本 v569→v570。
v56909/27撤回v565扩张双线框视觉(002518真机反馈:趋势股7中枢5个被判扩张,双线框泛滥看不出语义像画错);expanded数据字段保留供上卷判定。版本 v568→v569。
v56809/27方案Z·日线递归:30F线段=日线笔(补递归链最后一级),根治600292阴跌线段两年不拆;引擎recursiveDStructure+formatRecursiveD(复权对齐dFactor),app1/app2日线渲染接入。版本 v567→v568。
v56709/27扩张上卷:最近一对已完成中枢波动区间重叠=扩张(第20课定理二),本级别买卖点静默去上一级别找(用户拍板);002303 5F 静默验证通过。版本 v566→v567。
v56609/27扩张判定加「两中枢都完成」约束(第20课定理二原文:前后两个已完成中枢波动区间重叠才扩张);coreAnalyze zs 补 done 字段。版本 v565→v566。
v56509/27中枢扩张标记(方式②·A方案):相邻中枢波动区间GG/DD重叠=扩张(第20课定理二),zs加expanded字段;图上扩张中枢画外扩双线框+图例;002303验证通过。版本 v564→v565。
v56409/27术语统一:中枢「扩张」=升级(两种触发:延伸超5段/相邻中枢波动GG-DD重叠,第20课定理二+第33课);引擎头部定义注释纠正;v562「升级延伸」标签改「扩张」。版本 v563→v564。
v56309/27撤回v562前端旧快照失效禁用(用户纠偏:不要搞不清楚就禁用,要结构画准);保留引擎升级延伸/时效守卫。版本 v562→v563。
v56209/27三买/三卖回试段升级延伸守卫+锚定中枢时效守卫(600292判例);app2旧快照信号自动失效。版本 v561→v562。
v56109/26分层短差结构化四层:①结构段②三要素③顶底背驰结论④精确买卖点(待分型/激进X/一买已出等2买),弃txt长句。版本 v560→v561。
v56009/26分层短差删第61课长句(引擎两处txt拼接),说明移app5说明中心;tag状态后缀保留。版本 v559→v560。
v55909/26删除实操参考下持仓诊断功能(整体):tab/页面/JS/CSS全删,sellCardHTML等共用函数保留供历史详情。版本 v558→v559。
v55809/26持仓诊断只留输入代码:删成本/仓位/截图识别/买入持仓理由(含OCR JS),代码窗口可折叠同个股参考。版本 v557→v558。
v55709/26持仓诊断录入区折叠:①②收进可折叠体(同个股参考v548交互),列表常驻,序号③④改②③。版本 v556→v557。
v55609/26短差卡主体精简重合:1买依据改tag结论、删区间套/1F红绿柱行(与折叠区分层短差去重)。版本 v555→v556。
v55509/26撤销v554的!oneDiv:3买/3卖恢复判定(9.25=3买、8.52=3卖),1卖后盯2卖的方向纪律放塔尖peaked分支。版本 v554→v555。
v55409/26修9.60的1卖锚定缺陷:3买与1卖互斥(oneDiv时不判3买)+塔尖顶背驰迹象优先。版本 v553→v554。
v55309/26门槛中枢上图:信号级别图金色框+箭头标注参照中枢;范围外红字警告旧扫描快照(000657排查)。版本 v552→v553。
v55209/26短差卡金字塔原理重整:塔尖动作结论+1/2/3买卖点三框(恒在+命中高亮)+逐级下沉+参数折叠。版本 v551→v552。
v55109/26app3买点/四周期tab取消吸顶(v373同源):吸顶悬浮遮盖下方股票列表,改随页面滚动。版本 v550→v551。
v55009/26app2个股参考页三处静态说明移说明中心(缠论结构口径/观察卡片流程/市场参照)。版本 v549→v550。
v54909/26app2观察卡同步中枢级别图例;短差卡说明行移说明中心。版本 v548→v549。
v54809/26实操参考录入股票输入框默认折叠(点标题展开+状态记忆+自动填充时展开)。版本 v547→v548。
v54709/26中枢级别图例:回退每框写字,改在空白处画「颜色框+级别名」示意(如玫红框=1F中枢)。版本 v546→v547。
v54609/26K线观察卡中枢框加级别名文字标注:本级别『5F中枢·A』+次级别『1F中枢』(递归中枢口径)。版本 v545→v546。
v54509/26短差卡2卖/2买/3卖/3买加1F级别前缀,避免与5F操作图混淆。版本 v544→v545。
v54409/26恢复3买:三买/三卖对称判中枢回抽(rev低点>ZG/高点。版本 v543→v544。
v54309/261卖识别修复:oneDiv 接 fxAux.peaked(1F以下红绿柱背驰迹象),9.51 二卖从疑似升标准。版本 v542→v543。
v54209/26短差卡补充2卖/2买/3卖实操点(1卖是想2卖是做);企微推送叠加实操点。版本 v541→v542。
v54109/26历史中枢定案兜底:被后续中枢顶替的历史中枢(含中阴悬置)画实线,仅最后中枢保留延伸/中阴虚线语义。版本 v540→v541。
v54009/26带框价标放空白处+箭头指引线:近处避K线、全冲突时全图搜最近空白格并拉虚线箭头指端点。版本 v539→v540。
v53909/26精确化成笔门槛:夹分型→U>=3、无分型→biSpan>=3,修 9.60 高点被吞。版本 v538→v539。
v53809/26放宽satisfyBiSpan(去uintKlCnt>=3对齐62/77课余顶底间1-2根独立K线短笔)+回滚v535递归笔细分(细分成5F分型笔违反级别递归5F笔=1F线段),修600613 8.23→8.52三笔并一笔。版本 v537→v538。
v53709/261F图不画本级别未完成线段主线(5F笔叠加在位时),修玫红虚线9.51-8.21被看成一笔。版本 v536→v537。
v53609/261F图叠加5F笔画完整五笔(修v447只画未完成笔吞掉细分五笔)。版本 v535→v536。
v53509/26递归笔细分:次级别线段跨≥3根本级别分型笔时按分型笔展开不再吞并;修600613 5F图9.51→8.21五笔被并成一笔(紫线离开段直线压住笔结构);全市场26/51处细分0巨笔,M1零变化。版本 v534→v535。
v53409/25短差卡锚定修复:趋势延伸·新中枢构造中(zs_forming)——选中中枢离开段被新中枢消费时锚定移到最新中枢,离开段未走出不做陈年比较;600613 1F 连接段8.74-8.45/离开段8.46-8.21误报修复,改报新中枢8.21~8.27构造中+内部区间套背驰迹象。版本 v531→v534。
v53109/25笔构造修复:反复相邻无独立K线不算一笔(62课),等值极值不延伸;600613 1F 8.52→8.35 误拆三笔修复,全市场回归0巨笔。版本 v530→v531。
v53009/25引擎·中枢重叠升级(神奇制药1F纠错):相邻笔中枢[ZD,ZG]重叠=走势升级(20课)——连接段不成立,升级中枢由「下上下」三段重叠构成(区间=三段交集),背驰比较切升级视角(升级离开段vs升级进入段);修复trendCnt误标连接段(选中中枢不在趋势链尾仍按趋势比)。神奇制药判例:9.51→8.21拆9.51→8.22/8.22→8.52/8.52→8.21,升级中枢8.22~8.52。版本 v529→v530。
v52909/25修复「进入待操作」只跳转、股票未流转到实操参考:流转改走 postMessage 链路(app3 发 wb_pending_op_added → 外壳切 single 并转发 → app2 切个股参考页+刷新待操作标的),不再依赖跨 iframe storage 事件(后台 iframe 丢事件是根因);storage 保留兜底。版本 v528→v529。
v52809/25消息总览每条消息简介右下角新增「💡解释影响」按钮,点击展开该消息对各受影响行业的传导逻辑(后端DeepSeek生成why字段,客观事实链条、不预测涨跌);行业变化归档同步支持。版本 v527→v528。
v52709/25实操参考·个股参考页「录入股票」简化:移除上传截图识别与手动粘贴K线数据两个入口,只保留手动输入代码(输入框常驻不折叠),清理相关死代码与文案。版本 v526→v527。
v52609/25涨停回测双功能重定位:①首板归因——每只首板按日线/30F/5F分级别列出涨停前买卖点,点开单只看完整结构画像(中枢ZG/ZD/GG/DD·背驰对比·形态标签);②连板历史经验统计——矩阵措辞改「历史经验概率(非预测)」并补次日上涨率列。后端补存 tags/zs/div/raw_signal_price 结构字段。版本 v525→v526。
v52509/25综合窗口六tab标签固定上两字/下两字2×2折行(数据
管理等6处),消除手机端3+1尴尬断行。版本 v524→v525。
v52409/25市场扫描「进入待操作」点击后自动跳转到「实操参考·个股参考」页(app3 写 wb_pending_jump 标记+postMessage 切 single 模块;app2 storage 事件消费 PENDING_JUMP_KEY 切 pg-analyze/tab-ana)。版本 v523→v524。
v52309/25涨停回测迁入综合窗口第六tab(与买点自查同层级)、hub撤第六入口删app6.html;级别独立回看窗口(日线前10日/30F前5日/5F前3日)、矩阵按级别×买卖点×状态分组排序(买点1/2/3在前、卖点1/2/3在后、已形成在前)。版本 v522→v523。
v52209/25涨停回测模块补云端任务控制面板手动触发按钮(triggerTask('limitup')+TRIGGER_NAME映射),与买点/共振/板块/消息面同层级;inspect check_v521+回归 checkV521 同增按钮守护。版本 v521→v522。
v52109/25新增「涨停回测」第六模块:后端 limit_up_backtest.py 每日拉东财涨停池筛首板、回看前1~3日缠论买卖点、次日回填连板/涨幅,累积涨停预测历史库 limit_up_report.json;前端 app6.html + hub 第六入口 + 概率矩阵(级别×类型×状态×窗口 vs 首板基准)。版本 v520→v521。
v52009/24K线观察卡图例金字塔化:总纲一句+5个分组(信号标记/级别颜色/段标注/中枢与走势结构/笔与线段),每组独占一行带组头,条目不删不改。版本 v519→v520。
v51909/24观察卡片「交易价值」低/中/高标签补括号说明(低=只跟踪不操作,避免「最强三买却价值低」误解)。版本 v518→v519。
v51809/24K线完整/细节切换失效根治(KZ_WIN孤儿清理改setTimeout延后到渲染插入DOM后,不再误删尚未插入DOM的活跃窗口)。版本 v517→v518。
v51709/24K线完整/细节切换失效根治(KZ_WIN孤儿key清理取代FIFO硬上限,彻底消除切换点不动)。版本 v516→v517。
v51609/24综合窗口 tab 按钮去图标,文字对齐。版本 v515→v516。
v51509/24综合窗口新增「买点自查」:理论买点vs实际买点对照(底/顶分型+反向笔确认)+分级别(日线/30F/5F×1/2/3买卖)经验库。版本 v514→v515。
v51409/24三买/三卖预形成分支补涨跌幅超限静默门槛(603920「已形成却标预形成」矛盾修复)。版本 v513→v514。
v51309/24v513 趋势形成中文案大白话化(去b/c字母记号,方向感知)。版本 v512→v513。
v51209/24v512 K线卡按钮行下方进入段/离开段文字标注(各级别通用)。版本 v511→v512。
v51109/24v511 趋势形成中保留被突破中枢盘整背驰C vs A(进入段9.60-9.25画出)。版本 v510→v511。
v51009/23K线完整/细节切换偶发失效修复(KZ_WIN FIFO上限30→200,8+张卡时误删活跃窗口)。版本 v509→v510。
v50909/23背驰段判断口径修正(1中枢+未完成离开段先假设进入背驰段·第61课)+各级别30F/5F/1F背驰段图上加粗标记+默认视图改完整。版本 v507→v509。
v50709/23消息总览概览按钮区由 4 列改为 5 列,「新闻联播」与四板块并列放一行(此前被挤到第二行);标签字号微调适配 5 列。版本 v506→v507。
v50609/23消息总览新增「新闻联播」板块:每晚 20:30 抓央视网当日《新闻联播》内容提要、DeepSeek 客观提炼对 A 股有实质影响的精华要闻(带行业标签可跳市场扫描),存放 1 周后自动清理,当天内容标「新」。版本 v505→v506。
v50509/23短差「进入段/连接段/离开段」图上标记改版:半透明色带改为加粗线(颜色不变),每段起止价位标注并加白底框、智能避让不压线段/笔。版本 v504→v505。
v50409/23tail 残段呈现定版:不足 3 笔的 tail 残段(如日线 12.77→7.92 仅 1 笔)不画线段,改由笔折线呈现(笔按级别着色,日线笔=橙)。版本 v503→v504。
v50309/23tail 残段强制虚线补齐:日线 12.77→7.92 这类「1 笔 tail 残段」此前仍被 b-a<3 拦截只剩实线笔,现 1 笔残段也画虚线段 + 跳过其实线笔,与 30F 呈现一致。版本 v502→v503。
v50209/23tail 残段强制虚线绘制:日线 12.77→7.92 这类收尾残段不再整条跳过,按「未完成」画虚线,与 30F 呈现一致(此前只剩实线笔被误读为已完成)。版本 v501→v502。
v50109/22短差背驰趋势形成中用词修正:趋势形成中突破段是「进入段」非「连接段」(第37课 b 只在 A、B 两中枢都形成后才叫连接段)。版本 v500→v501。
v50009/22趋势形成中补B内部盘整背驰(B内部段盘整背驰+tail残段方向修复)。版本 v499→v500。
v49909/22短差背驰趋势/盘整区分:趋势=连接段vs离开段、盘整=进入段vs离开段、趋势形成中=待c走出比较b vs c(600613判例纠正进入段/离开段概念)。版本 v498→v499。
v49809/22短差背驰进入段/离开段可视化:引擎 zsEnterLeaveDiv 返回段起止价+bar、txt带价格区间,短差卡 segHl 关键词着色,K线图高亮进入段(蓝)/离开段(紫)+顶部价格标签。版本 v497→v498。
v49709/22细节视图落地:完整/细节分按钮真正生效——细节=本级别所有未完成线段放大(最后一条非tail线段起点,日线4.33/30F12.77/5F7.92/1F9.25),理论买点锚定降为兜底。版本 v496→v497。
v49609/22交易卡三问题修复:tail残段标记(7.92→9.60未完成线段恢复虚线)、30F递归中枢右侧延伸到现价、K线按钮重构两行(-+完整细节/中枢线段笔价位隐藏标注)。版本 v495→v496。
v49509/22回退v481方案2升级标注:删除全部「有中枢升级,推荐同级别分解操作」标注(引擎upgraded tag+app2观察卡+app3市场扫描+app4大盘结论+pipeline落库),买卖点照常判定不静默不标注。版本 v494→v495。
v49409/2230F级别递归(5F线段=30F笔,线段破坏=次级别走势反向完成)+观察卡完整/细节视图切换+回退v493中枢升级明细标注。版本 v493→v494。
v49309/21中枢升级明细标注(第20课扩张升级+第33课延伸升级,观察卡指认哪个中枢升级到哪级)。版本 v492→v493。
v49209/21短差卡多级分层(操作级别以下各级别做短差+1F以下红绿柱)。版本 v491→v492。
v49109/21涨停三态检测+1F中枢上移+涨停封板降级(第25课)。版本 v490→v491。
v49009/21说明中心文案同步:背驰面积口径改逐根累加+凹形急促前提(第24/25课)。版本 v489→v490。
v48909/21引擎买卖点背驰统一:面积弃最长柱×2/前半段×2改逐根累加,detectConcaveSeg补rapid急促凹形(第24/25课)。版本 v488→v489。
v48809/21背驰判据统一:凹形补急促+非急促黄白线门槛,面积弃最长柱×2改逐根累加(第24/25课)。版本 v487→v488。
v48709/21v487 跨级别未完成段虚线终点修复:进行中一笔方向vs线段方向——同向跟极值、反向停真实终点(旧v450仅判反破起点才停,漏反向未反破场景)。修复002206日线下跌段7.57→4.91被向上反弹5.02错误拉走虚线终点(应停在4.91)。版本 v486→v487。
v48609/21v486 短差判据三处重构:①MACD面积改段内同向柱子加总(第24课原文,旧最长柱x2低估5倍) ②精确层重构为区间套(次级别中枢进入段vs离开段面积对比,第24/43课),单柱判据降级为冲顶赶底辅助 ③中枢锚定当前线段+enterBi跨范围兜底+同向校正,杜绝退回老中枢判背驰(600613假推送根因) ④segEndP笔索引错位修复。版本 v485→v486。
v48509/21v485 K线观察卡恢复横向滚动条可见(电脑端可拖动查看完整图,覆盖全局scrollbar隐藏规则)。版本 v484→v485。
v48409/21v484 同级别分解边界三处修复:①中枢边界终结不补并离开段(gg不吸33.28) ②边界匹配bd>sd(起点在边界日的中枢不受切) ③中枢形成段边界检查(横跨高级别线段端点的三段不成中枢)——修复特变电工30F中枢F gg吸入33.28+中枢K/L被腰斩。版本 v483→v484。
v48309/21短差分级口径:短差级别比次级别中枢进入段vs离开段三要素(面积=最长柱×2+黄白线+柱子)+精确层柱子不再伸长。版本 v482→v483。
v48209/21线段终结终点延伸制:v478①修复改为撤销前线段+endFloor下限重划,特变电工30F 28.54下跌段延伸至26.14,反向段从26.14起步。版本 v481→v482。
v48109/20同级别分解:回退v480回抽破前低判据,日线线段边界约束30F/5F中枢延伸,取消升级静默改为标注「有中枢升级,推荐同级别分解操作」。版本 v480→v481。
v48009/20中枢延伸加趋势反转截断:回抽破前低/反抽破前高=中枢结束(级别递归锚点,30F中枢=日线笔中枢)。修复特变电工30F中枢F右边界29.66→33.28。版本 v479→v480。
v47909/20中枢框右边界修正:rightBi只覆盖形成段第三段(pendingSeg),不再含本体后离开段;修复9段升级中枢框画到离开段终点(特变电工30F中枢F 22.3→29.66)。版本 v478→v479。
v47809/20线段终结修复v478:笔破坏改挂起制(65课警戒+67课分型前提),破坏后修复(创新高/新低)解除、坐实才终结;修复特变电工26.81→29.66顶被埋。版本 v477→v478。
v47709/20画笔口径 bi_fx_check strict→half:有效分型全部成笔,修复32.99→26.35过度合并。版本 v476→v477。
v47609/20次峰擦除精准守卫:反向笔终点分型相距≥4根原始K线则不擦除(修复特变电工26.14误删三笔,保留神奇制药7.92真实低点)。版本 v475→v476。
v47509/20持仓自动扫描过滤已归档:buildWatchlistPayload 跳过 r.archived 与 isArchived 标的,上报清单与总览显示口径一致(归档标的不扫描)。版本 v474→v475。
v47409/20持仓自动扫描补手动触发:总览页新增「上报清单」按钮,点击立即推云端并toast反馈数量(配合v473自动同步)。版本 v473→v474。
v47309/19持仓自动扫描+企微提醒:app1计划跟踪持仓/观察标的自动同步云端,按操作级别差异化节流扫描,做T固定5分钟,结论变化去重推送。版本 v472→v473。
v47209/19次级别中枢(笔中枢biZs)完成态补全:引擎biZsList输出补done/zhongyin字段,前端app1/app2渲染加bzDone实线判断——日线图上的30F中枢、30F图上的5F中枢等各级别次级别中枢,完成(leaveDir=2三买三卖确认)也画实线。版本 v471→v472。
v47109/19研报个股点击改跳实操参考·个股参考(研报个股不一定在市场扫描信号池),并自动加入识别列表做缠论分析。版本 v470→v471。
v47009/19消息总览新增研报功能(东财个股+行业研报/机构密集关注/评级动作)可关联市场扫描;市场扫描概念chip可点击填入搜索框+个股定位跳转。版本 v469→v470。
v46909/19中枢完成态可视化:完成中枢(leaveDir=2已定案)实线框,未完成虚线,中阴灰色虚线。版本 v468→v469。
v46809/19价位标签智能避让:_segs线段库+_boxHit碰撞检测+_pTxtSmart候选选位(默认位→另一侧→更远→对侧),端点价保持v466原位/内部转折点保持v467右start,仅碰撞时自动换位,任何票几何形态自动适配。版本 v467→v468。
v46709/19内部转折点价位文字右移(anchor=start+x+4)不再居中压笔(10.33遮线段)。版本 v466→v467。
v46609/19价位标签定版:取消左边界车道(仅买卖价/理论买点留左端),端点+内部转折点价回笔端原位(顶上/底下偏移+字号10/9+白晕圈),_ptL按pts索引去重消灭相邻段共享点上下双标(1F/5F的9.02/7.92两个)。版本 v465→v466。
v46509/19价位标签防遮挡:买卖价/理论买点标签挪水平虚线左端,D/M30未完成线段端点+内部转折点价位放左边界车道,_pTxt网格去重消灭同价双标。版本 v464→v465。
v46409/19长针反向包含翻转替换方案B并集:修复日线4.33→12.77上下上三笔被并成单笔,仍保30F 9.02顶/8.12底。版本 v463→v464。
v46309/19方案B反向包含单侧长针并集合并(保住9.02顶/8.12底/7.92底)+未完成线段内部笔转折点价位标记(日线/30F,归价位按钮)+价位数字白色晕圈防遮挡。版本 v462→v463。
v46209/19实操记录卡底色改白色(原淡绿F0FDF4)。版本 v461→v462。
v46109/19修复重新分析后折叠卡被展开(折叠态渲染回填)+组头交易卡标签改楷体黑色带框右对齐字号与股名一致。版本 v460→v461。
v46009/19卡片改名(待交易→辅助买卖点卡/实操→实操记录卡)+编辑归档删除按钮挪到顶背驰卖出标签行右侧+各卡标题左对齐+字号统一13px+待触发卖点右侧加交易卡字样+辅助判断卡内顶部加重新分析按钮。版本 v459→v460。
v45909/19考虑卖出/考虑背驰统一黄色过渡色 + 交易卡片组各卡(待交易/实操/K线观察/短差指导/复盘)标题可折叠展开。版本 v458→v459。
v45809/19辅助判断卡字体颜色按多空逻辑统一:大结论反转(持有=红/卖出=绿/做T=黄)+动能延续/盘整背驰按方向标色。版本 v457→v458。
v45709/19辅助判断卡大结论下方的日线/30F/5F/1F多级别辅助判断默认折叠、点击展开。版本 v456→v457。
v45609/18重新分析按钮从短差指导卡中间挪到最下面(⑤精确买点/卖点之后)。版本 v455→v456。
v45509/18辅助判断卡可折叠展开;重新分析按钮挪到短差指导卡中间。版本 v454→v455。
v45409/18短差指导卡:机动资金做短差,与操作级别大结论解耦(91课笔定理+24课面积背驰+27课区间套)。版本 v453→v454。
v45309/18递归笔完成判定修复:已完成的递归笔(1F线段)由虚线变实线。版本 v452→v453。
v45209/181F图5F未完成线段虚线起点在1F窗口外时从左边界引出并标起点价(600613 7.92)。版本 v451→v452。
v45109/17A方案落地:观察卡5F图改用1F线段递归构5F笔(8.04→9.02合为单笔,近期窗口递归+老历史5F分型笔兜底);复核69课确认8.49顶分型在5F独立口径下成立、递归口径下非5F笔端点。版本 v450→v451。
v45009/17跨级别虚线反破修复:进行中一笔反向突破线段起点时,虚线终点停在真实线段终点,不连新极值(600613 8.48→8.15 不跳 9.02)。版本 v449→v450。
v44909/17各级别(日线/30F/5F/1F)统一实操理论买点优先锚定:记录有实操理论买点(背了又背)时各图窗口从实操买点开始画,否则仍从理论买点(3买回试低点)开始画。版本 v448→v449。
v44809/17修复chan.py移植bug:canUpdatePeak丢"!"致sub-peak(次峰/次谷)禁用→5F尖针低点被吞(600613 7.92未重锚);1F数据源解决——腾讯m1提至800根+min_history.py每日增量累积(1F只采扫描池优先股+指数+手动股、轮转跳过防爆盘、裁剪2400根),1F图覆盖实操理论买点。版本 v447→v448。
v44709/171F图叠加5F笔只画未完成(!isSure)那一笔不画已完成+颜色改玫红(_LV_COL[_SUB[M5]]=5F笔色)+虚线7 5与5F图未完成笔一致(区间套聚焦理论买点之后)。版本 v446→v447。
v44609/17K线观察图6项:恒4级(1F有数据即画)+1F以下中枢蓝色虚线(_SUB M1→M0)+5F图窗口锚定理论买点与1F统一+biZs按线段边界隔离不跨线段延伸。版本 v445→v446。
v44509/16修复次级别中枢色误用操作级别subLv:SUB_K[M5]=null吞掉5F图1F中枢,改用当前级别次级别_biZsSub=_SUB[lv](D→M30橙/M30→M5绿/M5→M1玫红)覆盖所有股票所有级别。版本 v444→v445。
v44409/16修复v443 biZs漏挂:analyzeLevel解构漏biZs字段致1F中枢(次级别中枢)不显示,引擎已返回但前端R未带出+图例同步中枢级别色(中枢框=级别色虚线/次级别中枢=3笔重叠)。版本 v443→v444。
v44309/16次级别中枢(3笔重叠)可视化:5F图=1F中枢递归+中枢级别色(本级别lv色/次级别subLv色)+leftBi/rightBi精确边界。版本 v442→v443。
v44209/16app1 首页副标题「结构止损」→「止损参考」口径同步(v435 更名覆盖到全平台)。版本 v441→v442。
v44109/16说明中心文案同步:巡检项数143→196、止损口径对齐v434/v435(止损参考三行+实操理论买点)、最优分口径→70/20/10。版本 v440→v441。
v44009/16图例传递链修正(线段=次级别走势类型·笔=次次级别走势类型)+1F线段/5F笔由黄改玫红#ec4899(黄橙太近)。版本 v439→v440。
v43909/16笔颜色按级别着色(日线笔橙/30F笔绿/5F笔黄/1F笔蓝)+升级笔线宽区分+中阴不变。版本 v438→v439。
v43809/16分钟线缓存拆两层:历史库24h+最新mkline60s,实时分析不再滞后一整天。版本 v437→v438。
v43709/16app3板块筛选:概念板块(5G概念/华为概念等)按concept_boards成分股code反查匹配,修TOP1概念板块筛选0只。版本 v436→v437。
v43609/16app3卡片统一时间+实盘检测按钮(腾讯实时价/分时/1F按需拉取)。版本 v435→v436。
v43509/16待交易卡去持仓汇总/止损块;实操卡「结构止损」→「止损参考」三行(理论买点止损位/实操理论买点止损位/中枢ZG止损位);止损提示基数修正为实操理论买点。版本 v434→v435。
v43409/16实操理论买点(背了又背):录入/编辑可输入,止损位基数按是否录入实操买点在实操×0.99与理论×0.99间切换;止损卡改三行(理论买点位/止损位/中枢ZG参考止损位);待交易卡理论买点下加实操理论买点行。版本 v433→v434。
v43309/161F图窗口起点锚定收紧(v433):pending三买不再用当前价冒充理论买点(改警示段最低点),已形成三买strict匹配+全1F容差扫描;理论买点在1F数据外时画横向价位线兜底并纳入纵轴。版本 v432→v433。
v43209/161F图叠加的5F笔:数据末尾最后一根强制虚线(未完成),修复一次性加载下末尾笔isSure误判true画成实线。版本 v431→v432。
v43109/161F图窗口起点修正(30F锚点搜索窗口8根扩到45根,理论买点不再被裁)+1F图标记不复权理论买点。版本 v430→v431。
v43009/16待交易卡片标题行操作按钮(编辑/归档/删除)由垂直堆叠改横向一行,消除标题行与买点行之间的大空隙。版本 v429→v430。
v42909/16观察卡启动正式交易自动归档;1F线段改黄色;交易卡片结构化(买/卖区间、理论买卖点、持仓汇总、理论买点止损位0.99、前中枢ZG三买专用)。版本 v428→v429。
v42809/16三买/三卖已形成必须次级别中枢+背驰(最强理论=盘整背驰/最强实操=趋势背驰);无次级别数据降级预形成;日线30F中枢数用次级别线段中枢、5F维持3笔重叠。版本 v427→v428。
v42709/15HOLD_BLBL 补 pending_buy3s/pending_sell3s 映射 + 预形成文案去重(修英文 key 泄漏与重复)。版本 v426→v427。
v42609/151F图门槛补全三买系 buy23/pending_buy3/pending_buy3s。版本 v425→v426。
v42509/151F区间套图增强:叠加5F笔(绿,实线=已完成/虚线=未完成)呈现5F未完成笔内部结构轮廓;1F线段专属青#0d9488与5F/30F/日线区分;更新图例。版本 v424→v425。
v42409/15回退v423:1F区间套窗口起点恢复理论买点优先(v417原设计正确,理论买点之前的1F全部不画避免误解);用户确认之前理解记错,撤销v423的5F未完成笔开端起点改动。版本 v423→v424。
v42309/151F区间套窗口起点改为5F未完成笔开端(最后一个已确认线段起点,与30F/5F图高级别未完成笔开端记号同源传递):完整呈现5F未完成笔的1F内部结构,开端记号+虚线形态传递到1F图;旧v417取理论买点偏晚裁掉了5F未完成笔前半段。版本 v422→v423。
v42209/15修复 v369 中枢一致性否决误伤一买/二买:3买式中枢位置否决只适用 3买/3卖系信号(002624 一买5F 被误判「中枢不一致·不构成3买」禁用启动);一买=底背驰现价在中枢下方是常态,二买回调常在中枢内,各类型门槛由扫描引擎分别判定。版本 v421→v422。
v42109/15三买涨幅上限数据校准:日线/30F 3%→2%、5F 2%→1%(买卖镜像)。截断重放 280 股 82 事件测算:溢价 0~1% 唯一稳定正期望(日线H=10 +2.47%/胜47%),1~2% 稳定负(-2.79%/胜27%),旧 v325 拍脑值 3%/2% 无数据支撑;同步修正说明中心「日线5%」自 v325 起的文案漂移。版本 v417→v421。
v41709/15辅助判断卡背驰判断三级固定(日线/30F/5F) + K线观察卡仅3买票加1F图(区间套)。版本 v414→v417。
v41409/15中枢升级关闭记账修复:有离开暂存时中枢体止于离开段前(600613 30F中枢框越过离开段修复)。版本 v413→v414。
v41309/15跨级别虚线终点修复:后续段已现用上一段真实端点(600613 4.33到12.77)。版本 v412→v413。
v41209/15交易卡片编辑归档删除由右滑改为待交易卡片标题右侧固定按钮列(上中下排布)。版本 v411→v412。
v41109/15板块选股迁入app3+v327排序口径移植+app2三tab重组+手动录入票启动交易修复。版本 v410→v411。
v41009/15线段收尾65课被笔破坏扫描:collect_left_1 不再无脑结束于倒数第二笔,002475 30F 尾段修正 51.88→57.80+57.80→52.60;回滚 treatSecondEle 提前结束(违背67课)。版本 v409→v410。
v40909/15修复中枢延伸升级segCnt虚高:tryExtendLast延伸升级判定segCnt只统计真实延伸段(有pendingSeg时用endBi停在离开段前,离开/回抽段不计入),修复002475 30F中枢D 7段真延伸+xd#18离开+xd#19回抽被误算seg=9升级、抢在三卖前静默本级别三卖。版本 v408→v409。
v40809/15消息总览行业标签↔市场扫描概念选股打通:app4可点标签跳转(localStorage中转+postMessage切scan),app3收词自动切概念视图查询;新增INDUSTRY_CONCEPT行业→概念映射桥113词(先查映射再模糊匹配),覆盖率75.9%。版本 v407→v408。
v40709/14成交价精确落位(完成v402遗留):K线观察卡买卖标记从水平线升级为date→bar定位——窗口内该日收盘价最贴近成交价的bar上画▲买(红)/▼卖(绿)尖角正指成交价坐标,随隐藏标注图层;水平线保留作价位参考;日期在窗口外(分钟图5个月前)只画水平线。版本 v406→v407。
v40609/14渲染器「线段端点漂走」彻底修复(app1观察卡+app2共用):①价格区间窗口化-窗外历史极值不再撑大纵轴压扁K线②上一级别未完成段虚线终点改用prov真实极值+真实时间位,窗外不画③新增Liang-Barsky绘图区裁剪-线段/笔/次级别段跨窗只画可见部分。版本 v405→v406。
v40509/14实操卡「成本-2%硬止损」退役:改为结构止损(理论买点×0.99,来自持仓诊断落库stopPrice)或旧记录「买入成本」参考,彻底移除买入价-2%先验止损。版本 v404→v405。
v40409/14交易卡四段式重组(待交易/实操/辅助判断/K线观察/复盘)+移植app2完整渲染器作K线观察卡;待交易卡「理论买点:」去「第三类买点」冗余;持仓诊断止损锚定理论买点×0.99(表头止损价+小字基于理论买点+前中枢ZG参考),移除成本-2%兜底。版本 v403→v404。
v40309/14止损文案对齐v400口径:录入/编辑页label改「止损位置(结构止损)」+placeholder理论买点×0.99;app2观察卡兜底/风险提示/卖出优先级;app5帮助页三买止损=理论买点×0.99;成本-2%降格为兜底。版本 v402→v403。
v40209/14模式一/二大结论纯缠论化(4结论)+三级K线结构图+买卖价标记。版本 v401→v402。
v40109/14到了卖点全部卖出(不分批),对齐缠师全卖纪律。版本 v400→v401。
v40009/14三买机械止损锚定理论买点×0.99,取代成本-2%先验止损。版本 v399→v400。
v39909/14观察卡片「信号价」改为「理论买点」,消除与现价歧义。版本 v398→v399。
v39809/1430F图日线中枢离开段(紫色实线)+回试段(紫色虚线)三买结构可视化;修复日线→分钟isDay定位时间归一化bug。版本 v397→v398。
v39709/145F图上一级别未完成线段整体橙色虚线(28.13→20.33区间套可视化)。版本 v396→v397。
v39609/14回退v395移动窗口:日线/30F恢复v394中枢数触发窗口化,5F图默认定位上一级别未完成段起点全量画到最新,去掉频繁翻页按钮。版本 v395→v396。
v39509/14窗口化兜底+移动窗口:K线过多也窗口化,次级别图默认定位上一级别未完成线段起点。版本 v394→v395。
v39409/14跨级别起点对齐(区间套可视化):次级别图(5F/30F)标出上一级别(30F/日线)未完成线段起点◆,按时间粗定位+价位精确锚定,让高级别一段起点在次级别图上定位、看清内部走势类型。版本 v393→v394。
v39309/14未完成线段内部H/L极值标注(区间套可视化):30F等高级别图未完成线段内部被包含处理吞掉的极值点(如000935 30F未完成段内部冲高23.94)用▲▼标出,让次级别段线起点在高级别图上一眼可见。版本 v392→v393。
v39209/14概念选股卡片补「进入待操作/撤销待操作」按钮并注册 concept-list 事件委托,与买点/共振一致投递到实操参考生成观察卡片。版本 v391→v392。
v39109/1467课第二种情况修复:findRevertFx 对齐 chan.py COMMON_COMBINE=True 分支,缺口顶分型反向序列创新极值→作废、线段继续(000935 日线 18.32→34.13 正确分段)。版本 v390→v391。
v39009/13①消息总览'工作台'改名'总览台'+'新'标签24h窗口修复 ②市场扫描新增'概念'选股tab(输入概念→日线/30F/5F各3只缠论买点最优股)。版本 v389→v390。
v38909/13线段划分修复:特征序列元素高点突破线段起点顶→判定线段被笔破坏结束于前一笔,根治特征序列包含关系吞掉破坏性高点(000935漏26.41→34.13向上线段)。版本 v388→v389。
v38809/13说明中心文案同步:更新时间(买点14:10+21:00/四周期14:40)、巡检143项、数据源(东财已下线→腾讯主源+新浪5000根)。版本 v387→v388。
v38709/13结构感知窗口化补5F:win锚点加subSub(次次级别),5F数据仅5个月覆盖不到长回试段起点则回退固定N个。版本 v386→v387。
v38609/13渲染层结构感知窗口化:三买/三卖信号输出win锚点,次级别图按回试段起点画窗口保证回试段B内部中枢完整(002402 F/G/H/I)。版本 v385→v386。
v38509/13中枢划分修复:形成段第三段突破ZG/ZD→标记离开走成对判定,根治延伸升级误吞独立中枢(603667 F漏G)。版本 v384→v385。
v38409/13窗口化修复:扩张升级中枢重叠时 ws 取 min 不切中枢。版本 v383→v384。
v38309/13窗口化收尾:中枢/进出段字母 26+ 兜底(AA/AB) + KZ_WIN 翻页状态 FIFO 上限。版本 v382→v383。
v38209/13渲染层窗口化:算全量画窗口,日线3个/30F+5F各5个中枢,带翻页。版本 v376→v382。
v37609/12全面体检修复:①app5.html 补漏 sw.js 注册(v367 要求 app[1-5] 全注册,此前漏 app5,单 app 打开 5G 抖动直接 ERR)②inspect_daily.py 巡检规则 4 项过时同步(check_v345 入口401 / check_v347 纯return / check_v350 的401throw / check_v357 注释,未随 v350/v357/v364/v367 重构同步致凌晨巡检误报)③check_v367 ok4 补 app5 守护。版本 v375→v376。
v37509/12趋势依次同向判据修正:v374用波动区间GG/DD不重叠判趋势踩坑(3笔重叠笔中枢相邻共享2笔、波动必重叠→trend恒1→buy3s/buy3p全灭);v375改中枢区间ZG/ZD依次同向(后ZD>前ZG=上涨/后ZG<前ZD=下跌)+离开段起点zl3.end改突破ZG线段起点(hLeaveStart/lLeaveStart)。600613恢复buy3s、002674回试段方向反正确降buy3s。版本 v374→v375。
v37409/12趋势中枢数校验依次同向:新增countTrendBiZs(第17课依次同向+第20课中心定理二GG/DD不重叠),替换buy3s/buy3p/sell3s/sell3p的leaveZs3Bi/zsCount3Bi;002674回试段波动重叠2中枢误判趋势回试已降级普通三买。版本 v373→v374。
v37309/12买点tab吸顶紧贴app-header:buy-tabs/.tabs#tabs top:0→var(--header-h,58px) + 阴影,避免被header遮住;market扫描滚动时tab始终可见可切。版本 v372→v373。
v37209/12新增实操最强三买/三卖(buy3p/sell3p):趋势离开+趋势回试≥2中枢+背驰,与理论最强三买(buy3s=趋势+盘整)并列;前端买点tab分两行、最优榜buy3p排buy3s前、三买tab按包含口径显示母集(buy3+buy3s+buy3p)。版本 v371→v372。
v37109/12根治v370买点大幅减少:hasExpandUpgrade遍历全部历史中枢导致95%股票被误静默(600613历史早期#0→#1扩张升级被算入)。改为hasRecentExpandUpgrade只查最近一对相邻中枢(第20课定理二'连续两个同级别中枢'当下判定)。600613恢复最强三买,000802仍正确静默。版本 v370→v371。
v37009/12根治000802扩张升级三买误判:①回试低点/回抽高点取价格极值②延伸升级seg≥9不被抢断③扩张升级/延伸升级→上卷日线重算④中阴阶段接入信号判定;另min_history扫描池优先增量。版本 v369→v370。
v36909/12三级结构参考中枢与门槛强制同源;中枢不一致或现价在中枢内直接否决3买/预3买(只比信号级别中枢,不误伤正常三买)。版本 v368→v369。
v36809/11feat: 全平台体检加固——前端所有联网fetch统一加超时15s(防慢速挂起无限卡死) + 删除误上传脏文件cloud_app1_app1.html。版本 v367→v368。
v36709/11fix: 网络抖动sw navigation cache miss时ERR_CONNECTION_RESET彻底根除(三重兜底+install重试+app2/3/4单独打开注册sw)。版本 v366→v367。
v36609/11fix: SW update() Promise reject 冒泡 unhandledrejection 弹toast(3处加.catch)。版本 v365→v366。
v36509/11perf: app1实时分析同步v362提速(历史库24h缓存+rawP去重+退避120s)。版本 v364→v365。
v36409/11fix: v357残留saveTrade throw(v364)—closeTradeModal后toast读tradeTarget.key=null冒泡onerror。版本 v363→v364。
v36309/11feat: 实操管理录入生成交易卡片后自动跳转总览页。版本 v362→v363。
v36209/11perf: 观察卡片生成提速(日线rawP去重+历史库24h缓存+批量3并发+限流退避120s)。版本 v361→v362。
v36109/11fix: 最强买点/三买/三卖 standard 语义污染(硬编码true冒充黄白线背离) + 文案黄白线不创新→不创新低。版本 v360→v361。
v36009/11feat: 实操管理-交易纪律下新增交易流程模块(几点选股/买卖,步骤流+闭环,增删改+连续录入)。版本 v359→v360。
v35909/11feat: APP2手动录入观察卡(cardHTML)也内嵌大盘参考,与扫描来源卡一致。版本 v358→v359。
v35809/11feat: APP2观察卡内嵌大盘参考(上证指数日线+30F中枢/背驰/多空结论),置于缠论判定sect之上。版本 v357→v358。
v35709/11fix: 输入买入/卖出时页面出现异常 (rc→holdCardHtml throw 隔离 + saveTrade/saveTS 防御 + holdCardHtml auxBody 降级)。版本 v356→v357。
v35609/11修复已形成二买/二卖恒为0根因:回调/反弹段本质是单条线段,构不出线段级中枢→downLegDone/upLegDone的done恒false→buy2/sell2永不成形。修法①新增biZsLast笔重叠中枢②二买/二卖恒用biZsMode=true(笔中枢),三买/三卖保持线段级分叉③修复跨级别锚点映射塌缩(cross时biZs2改用subA.biList)④修复hAfter/lAfter残留次级别索引错乱。版本 v355→v356。
v35509/11修复市场扫描「当日热点板块」v354 引入的兜底 bug:hot_sectors 为空时统计 signals 频次,前端把 count(信号数)塞进 strength 字段再用 +X.XX% 涨跌幅格式渲染,导致截图里出现「机械行业 +76.00%」等异常数据(实际是 76 个买点信号)。修法:count 字段独立存,渲染分两路——涨跌幅口径(hot_sectors 有数据时)走 +X.XX% 红绿显示;频次口径(hot_sectors 空)走 N 只信号中性灰显示,标题改为「热点板块(信号频次)」明示口径,绝不再与涨跌幅混用。。版本 v354→v355。
v35409/11观察卡片归档/删除改走卡片上方明文按钮,去掉右滑唤出:观察卡片此前同时存在「右滑唤出的归档/删除」和「卡片上方两个明文按钮」两套入口,右滑操作影响体验。本次移除观察卡片的右滑结构(sw-wrap2/sw-acts2/sw-cont2 及 barch/bdel 按钮),归档、删除统一用卡片上方「归档」「删除」两个明文按钮(归档后按钮文字变「已归档」)。卖出建议卡片、历史列表的右滑交互保留不变。版本 v353→v354。
v35309/11根治「门槛中枢与三级结构参考中枢不一致」:①根因——门槛确认读云端扫描信号 sg.zs(5000 根新浪历史库口径),三级结构参考本地重算 lastZS,历史库读取失败时回退腾讯 mkline 仅 800 根(短窗口),中枢划分对窗口边界敏感(v328 已验证)→ 同一只票同一级别中枢对不上(600546:mkline 11.70~14.54 vs 历史库 10.92~12.89,现价 13.67 在中枢内却判三买);②修复——三级结构参考的信号级别行「中枢」强制显示 sg.zs(扫描引擎权威中枢),与门槛「现价>ZG」严格同源;③根修——fetchEmMinuteBars 短窗口回退结果用独立缓存 key(em_mk_*),不再污染 5000 根长窗口 key,历史库一旦可读即稳定恢复 5000 根。版本 v352→v353。
v35209/10归档功能彻底修复:①app2 右滑手势失效根因——sw2Start 等函数定义在 IIFE 内,inline ontouchstart 全局找不到致 ReferenceError,归档/删除按钮永远唤不出,已显式挂 window;②app2 loadLearnReport 误放在 PWA 安装 IIFE 内致 ReferenceError,已移回主 IIFE;③localStorage 满导致「假归档」(视觉消失但刷新又回来)——app1 flushSave / app2 store·tradeStore set 加 try/catch 返回 boolean + 满时自动清理 wb_klc_ K线临时缓存重试;④归档/复原/删除失败时回滚内存并明确提示,不再假成功。版本 v350→v352(v351 为后端买点扫描熔断修复)。
v35009/10首次访问ERR_CONNECTION_RESET根除:nginx给/+index.html免密(沿用v345形式屏障决定+入口必须能cache)+sw.js navigation改cache-first(cache命中立即返回+后台异步更新+401 throw走浏览器原生basic auth)。版本 v349→v350。
v34909/10最优榜底部加可靠性标签说明:信号类型/预警等级/可靠性/综合分四套独立维度解释+预形成统一打低的原因+可靠性低与综合分高不矛盾的原理。版本 v348→v349。
v34809/10根治ERR_CONNECTION_RESET:sw.js第3步静态资源改stale-while-revalidate(cache命中立即返回+后台异步revalidate,PWA模式下网络抖动直接走cache)+install阶段预缓存核心数据JSON(PWA启动即用不等网络)。版本 v347→v348。
v34709/10根治ERR_FAILED:sw.js第0步放行mode=navigate请求(不进sw,走浏览器默认流程弹basic auth+原生处理),index.html controllerchange后location.reload让新sw立即接管。版本 v346→v347。
v34609/10修复app3数据路径双前缀/错目录404:buy_points/pools/sector改data/x、learn/news改../data/x、schedules改绝对路径/data/x(消除error log噪声)。版本 v345→v346。
v34509/10nginx PWA静态资源auth_basic off修复iframe空白(APP2/3/5全空白根因:sw fetch不带浏览器凭据→nginx 401) + inspect_daily.py新增check_v345两项P0/P1守护。版本 v344→v345。
v34409/10PWA sw注册修复覆盖app1:app1.html(workbuddy.link备份站独立PWA)加updateViaCache:none + inspect_daily.py新增check_v343三项P0检查。版本 v343→v344。
v34309/10PWA sw注册修复:sw.js设updateViaCache:none强制不被HTTP缓存+install阶段单URL失败不阻塞整体(解决日志没更新/ServiceWorker更新失败问题)。版本 v342→v343。
v34209/10彻底清查:①回测卡死 bt1Fetch 挂15s超时兜底 ②引擎 priceFresh 剥离 pending_ 前缀(预形成信号不再绕过价格新鲜度) ③清除 mode1Signals 死代码(含三买「回抽」/三卖「反弹」错文案) ④清除图上背驰/警示段不可达死代码 ⑤修正预判说明「三买=回试/三卖=回抽」口径。版本 v341→v342。
v34109/09「数据加载异常」toast 携带具体 reason:unhandledrejection 兜底改为显示错误原因(之前只说「请稍后重试」误导);下次复现直接把 toast 内容发我即可定位哪个 fetch 漏 catch。。版本 v340→v341。
v34009/09liveAnalyze 卡死退不出去修复:_analyzing 状态被 save() 持久化、刷新后 AbortController 丢失导致死锁。修复:①migrateRecords 加载时清扫过期 _analyzing(>25s 或无时间戳脏数据);②holdCardHtml 卡住时给取消分析按钮 + 新增 cancelLiveAnalyze。。版本 v339→v340。
v33909/09liveAnalyze 卡死修复:fetchHoldData/fetchKlineDaily/fetchQuote/fetchEmMinuteBars/fetchMinHistoryBars/getJSON 全部接受 signal 透传;liveAnalyze 加 25s AbortController 全局超时;>20s 自动判断为卡死并重置;toast 区分超时/失败。。版本 v338→v339。
v33809/09辅助观察卡divTextOf按方向染色(顶背驰绿/底背驰红)+ deploy.py默认跳过数据文件(云端cron实时数据保护)。版本 v337→v338。
v33709/09全站买卖点定义按108课20/21课原文纠正(回试vs回抽/次级别回调低点/二买/三买/三卖定义) + v336 BUG-023回归检查同步v336。版本 v336→v337。
v33609/09图上买卖点标记改为引擎formed信号(前后端同源,弃bsPointMarks启发式) + 图形符合度改引擎自动三态判定。版本 v335→v336。
v33509/09PDF低预警标准图形补30F上升笔示意图 + 市场扫描恢复全量买卖点(删pipeline过滤) + 最优榜加30F/5F硬过滤。版本 v334→v335。
v33409/09说明中心/全站市场扫描时间文案同步(买点 14:20→14:10、四周期共振与市场总览 16:00→16:10、买点扫描耗时约12分→约23分)。版本 v333→v334。
v33309/09三买三卖低预警统一PDF三态+起点收紧(第一笔下完成才判低预警)+删构造中tag+高预警=shrink。版本 v332→v333。
v33209/09三买三卖门槛确认清单(结构化checks)+图形符合度人工勾选+止损位复权修复+sell3退化zs_count修复。版本 v331→v332。
v33109/09三买三卖三态位置区间守卫+锚定最近中枢。版本 v327→v331。
v32709/09最优买点榜排序口径(预形成在前+30F速率/5F缩短+趋势盘整优先+距理论买点) + 去日线按钮。版本 v326→v327。
v32609/09止损位结构化输出(stop_loss字段) + 市场扫描最优榜聚焦30F/5F的3类买卖点。版本 v325→v326。
v32509/09PDF库lib_3buy_signal.md:三买/三卖三态细分(已形成+高预警+低预警)+涨幅上限门槛(30F=3%/5F=2%)+市场扫描去日线3买/3卖。版本 v324→v325。
v32409/09清理笔中枢死代码(buildSubLevelZs/trendBiList删除,makeTrendSeg保留给countBiZs)+术语统一递归中枢改笔中枢。版本 v323→v324。
v32409/09清理笔中枢死代码 + 术语统一(递归中枢→笔中枢):①删除 buildSubLevelZs/trendBiList 两个笔中枢死函数(v322/v323 已禁用、无生产调用);②makeTrendSeg 保留(v316 countBiZs 数「3笔重叠」中枢复用,最强三买/三卖用);③coreAnalyze/renderStructure 的 subResult 递归分支删除,trendBis 恒空 [];④统一术语:递归中枢(旧称)→ 笔中枢。版本 v323→v324。
v32309/09app2图上中枢也统一线段级(禁用v272笔中枢残留,与app1/信号detect一致,补全v322)。版本 v322→v323。
v32209/09禁用v272笔中枢,买卖点中枢锚定统一线段级中枢(与图上analyze一致,002312 30F递归[8.12,8.19]现价在上方误报预三买、图上[8.18,10.84]在内部)。版本 v321→v322。
v32109/09延伸中枢(seg>3)离开判据改用延伸峰值gg/dd,现价仍在中枢震荡箱体内不判3买/3卖预形成(002312日线)。版本 v320→v321。
v32009/08v320: 静默假三买/假三卖(跌破ZG/升破ZD=跌回/弹回中枢,根本不是三买/三卖,用户铁律 2026-09-08),删除 buy3/sell3 假预警输出。版本 v319→v320。
v31909/08v319: 1和3类买卖点中枢锚定严格=最近中枢(lastZs),删除 buy3/sell3 块 v309 _foundZ3 往前找更远中枢逻辑(用户铁律 2026-09-08)。版本 v318→v319。
v31809/08v318: 修复 v311 裸 return 丢信号 bug(buy3/sell3 守卫 zl3=null 替代 return,恢复 1买/1卖信号+消除云端 engine-skip out 错误)。版本 v317→v318。
v31709/08v317:二买/二卖/三买/三卖『已形成』从 done||zsCount===0 改为 done&&countBiZs>=1(回调=1F走势类型必含1F中枢=3笔重叠,下-上-下三笔必然重叠);修复 v316 线段级 zsCount 恒 0 导致 done||zsCount===0 恒 true 的隐藏 bug(已形成从不要求背驰完成)。。版本 v316→v317。
v31609/08v316:回退三买二买回调段『必须含中枢』三层收紧(v297/v307/v309),回调/回试段=次级别走势类型(线段即可),已形成=done||zsCount===0;最强三买/三卖趋势+盘整改用3笔重叠中枢countBiZs(leaveZs3Bi>=2&&zsCount3Bi===1);级别递归口径最终确认(5F笔=1F线段、3笔重叠=1F中枢、5F线段=1F走势类型)。。版本 v315→v316。
v31509/08修复信号价红圈不显示:signalPrice 未传入 plan.signal。版本 v314→v315。
v31409/08信号价在各级别图上红色圈标记。版本 v313→v314。
v31309/08一买/一卖位置闸门(cLow.pricezl.zg)过滤价格落在中枢内部的假一买,统一上/内/下第一层过滤。版本 v312→v313。
v31209/08彻底云端化同步:CLOUD_BASE相对化(./同源,chenpanchan.top实时直读数据)+云端mark()写data/schedules.json。版本 v311→v312。
v31109/08三买/三卖加ZD/ZG守卫(跌穿/涨破中枢静默,600410假预三买修复) + app3最优榜默认只推荐30F/5F三买(去掉日线) + schedules.json云端→PWA同源(避开v305沙箱拦截,实时显示服务器定时更新)。版本 v310→v311。
v31009/08三买/三卖离开段空指针守卫(hLeave/lLeave可能null致整股丢信号) + structures/目录同步修复(001208两个中枢不一样根因)。版本 v309→v310。
v30909/08v309: 离开段收紧(buy3 hLeave + sell3 lLeave must upLegDone/downLegDone done && zsCount>=1, 对齐 v297/v307/v308) + 001208 中枢错位修复(buy3/sell3 zl3 zg/zd 贴现价<0.5% && <0.3 时往前找 A.zs)。版本 v308→v309。
v30809/08二买/二卖反弹段(hAfter/回落段)也收紧:向上/向下走势类型必须走完,未走完静默。版本 v307→v308。
v30709/08二买/二卖/三卖收紧:去掉无中枢兜底,对齐原文第101课「二买=次级别走势类型结束点」。版本 v306→v307。
v3069/8稳定性加固:根治 502 + 版本号/部署工程化:①【根治502】PWA 平台代理层对 >3MB 大文件稳定返回 502(buy_points.json 13MB 全在 structures 字段),拆为 signals(1.07MB)+按需 structures/{code}.json,5/5 采样全 200;后端 run.py/report.py 默认不再生成 structures;②【版本号统一】修复 app1 APP_VER 停在 v304 的漏改,七处版本号(version.json/sw.js/index.html/app1×3/app5)统一 v306;③【dist 净化】删除 27 个调试文件(_probe_*/diag_*/repro*/.bak)+ 12.7MB learn_report_by_code.json + 0字节空文件 + 重复 buy_points_lite.json,杜绝打包进 PWA;④【工程化】新增 bump_version.py(一处输入七处同步+校验)+ deploy.py(白名单+体积门禁,防漏传/防大文件);⑤【守护】回归加版本一致性+dist 净化校验。版本 v305→v306。
v3059/8独立 APP 模式沙箱绕过(CLOUD_BASE 改 PWA 同源 + 数据快照同步):①【根因】用户用桌面桌面上的独立 APP(workbuddy_sites_deploy 部署的 PWA)打开缠论工作台时,PWA 内 fetch chenpanchan.top 被 WorkBuddy 主框架沙箱拦截,统一返回 {"code":502,"msg":"bad gateway","requestId":"uuid"} 并在 PWA 上覆盖调试 UI 挡住内容(用户截图三张都显示同一个 JSON)。nginx access log 11:20+ 完全没有用户手机 IP 36.21.165.225 的请求,证明请求未到 nginx;②【修复】app2.html / app3/app.js / app4.html / app5.html 的 CLOUD_BASE 全部从 https://chenpanchan.top/ 改为 https://879848f3e9614143abaeae5404b9f381.app.workbuddy.link/(PWA 同源,不触发沙箱),PWA 内 fetch 走 dist 快照;③【数据快照同步】SFTP 拉云端 Sep 8 11:37 buy_points.json (13MB) / pools.json / sector_strength.json / ths_boards.json / learn_report.json / news.json / market.json / signal_track_report.json + version.json(含今天 schedules 实时字段)到本地 dist,部署 PWA 时一起上去;④【代价】数据时效降为「部署时最新」(延迟几十分钟~几小时),跨域 chenpanchan.top 实时数据流被舍弃(沙箱拦截,无法绕过);⑤【后续优化方向】数据时效问题可用「云端 cron 跑完后自动 sync 到本地 dist + workbuddy_sites_deploy 重新部署」自动化解决(待做)。版本 v304→v305(七处同步)。
v3049/8分钟线历史库根治(突破5000根上限):①【根因】前端分钟线一直只有腾讯 mkline 的≈482根(30F≈3个月/5F≈2周),进入段 a 被截短、趋势结构看不出;云端 min_history.py 已每日凌晨抓新浪5000根、攒了5809文件/2.5G历史库,但没打通到前端;②【云端】cache/min_history 软链进 chanlun/data/min_history,走现有 Nginx /data/ 免密+跨域出口直读(chenpanchan.top/data/min_history/),零 Nginx 改动;③【前端】app1/app2 fetchMinHistoryBars 改云端绝对路径(本地回退)、MIN_HISTORY_ENABLED 打开,历史库(新浪5000根+)与 mkline(腾讯最新)按时间戳去重合并,拼出 30F≈2.5年/5F≈5个月+ 长窗口,未覆盖股票自动回退 mkline 渐进增强;④【正确性】histBarsToTencent time 统一 slice(0,12) 12位(新浪14位含秒 vs 腾讯12位,否则 mergeMinByTs 去重失效+K线重复);⑤【守护】BUG-033(MIN_HISTORY_ENABLED=true+云端直读+12位时间戳),回归 255/255 全绿。版本 v303→v304(七处同步)。
v3039/8前端弃用新浪分钟线直连(反爬修复):①【根因】app1/app2 的 fetchEmMinuteBars 每次拉分钟线都先 fetch 新浪 money.finance.sina.com.cn(CN_MarketData),但该接口无 CORS 头,浏览器必拦截、前端注定拿不到数据,请求却白打到新浪服务器,批量生成观察卡片=N股×2级别=2N次无用请求,高频触发新浪反爬(501/403);②【修复】前端分钟线统一走腾讯 mkline(ACAO:*,前端唯一可用源,个股≈482根),删除新浪直连与 parse;历史库分支补最新也改用 mklineOnly;③【守护】test_regression.js 新增 BUG-032(app1/app2 不得再含 money.finance.sina.com.cn 直连),回归 254/254 全绿。版本 v302→v303(七处同步)。
v3029/8中阴状态中枢灰色显示(第88课中阴阶段落地):①【概念】第88课「中阴阶段」——走势类型背驰(一买/一卖)后、新走势类型尚未确立(第三类买卖点未确认)前,前走势最后一个中枢处于「身份未定」的中阴状态,须借前走势中枢做震荡分析,延伸还是新生靠第三类买卖点定案;②【引擎】chan-engine.js 中枢输出新增 zhongyin 字段——leaveDir=1/-1(已离开中枢、三买卖点未确认)=中阴,leaveDir=0(仍延伸)/2(已定案)均非中阴;难点三(双重读法悬置)暂不做;③【渲染】app2/app4 中阴状态中枢改灰色虚线框(#9ca3af)区别于确定中枢棕虚线框(#b8860b),label 文字同步灰色;④【验证】回归 253/253 全绿。版本 v301→v302(七处同步)。
v3019/8app5 综合窗口「最优买点榜评分说明」整块文档同步 70/20/10:v300 改 app3 本榜分数文案后,app5 说明中心还有一整块「最优买点榜·缠师三程序评分」文档仍写旧口径(第9课 40/40/20 表格:技术=胜率22+共振9+背驰质量9|比价=板块强度14+热点10+消息催化16|基本面=市值12+龙头8,还含「消息面归入比价」「回测胜率定权」等旧描述)。现整块重写为 70/20/10(技术70=中枢构成20+背驰段15+标准形态15+可靠性10+新鲜度5+精确形态5|比价20=涨跌幅10+成交10|基本面10=热点5+龙头5),删除「消息面归位」段(新口径比价已无消息催化)。版本 v300→v301(七处同步)。
v3009/8app3「本榜分数」+「最优买点榜」说明文案同步 70/20/10:v299 把 app3 bestScore 函数从 40/40/20 改为 70/20/10 后漏改了 UI 文字——app3/index.html 第 79 行「本榜分数 = 缠师第9课·三程序综合分(技术40·比价40·基本面20 = 100)」和第 77 行 best-desc「多级别共振+背驰质量」仍写旧口径,与实际评分脱节。现统一为「缠师三程序 70/20/10 口径:技术70·比价20·基本面10=100」,best-desc 同步为「次级别中枢构成(硬门槛)+ 背驰段(最好)+ 标准形态 + 可靠性 + 热点/龙头」。test_regression.js 新增 BUG-031 守护防再漏改。版本 v299→v300(七处同步)。
v2999/8app3 最优买点榜评分统一 70/20/10:app3「最优买点榜」此前用独立旧口径(第9课三程序 40/40/20:技术面=回测胜率22+多级别共振9+背驰质量9|比价=板块强度14+热点10+消息催化16|基本面=市值12+龙头8),与 app2 最优参考(v297 已改 70/20/10)不一致。现统一为缠师三程序 70/20/10(技术面70=次级别中枢构成20+背驰段15+标准形态15+可靠性10+新鲜度5+精确形态5;比价20=涨跌幅10+成交10;基本面10=热点5+龙头5),app2/app3 全平台唯一评分口径。版本 v298→v299(七处同步)。
v2989/8最优说明文案同步 70/20/10:app2「最优说明」里的「最优分构成」文字仍写旧口径(标准形态30+可靠性25+新鲜度18+热点8+龙头8+精确形态4+涨跌幅8+成交5),同步为 v297 的缠师三程序权重(技术面70=中枢构成20+背驰段15+标准形态15+可靠性10+新鲜度5+精确形态5;比价20=涨跌幅10+成交10;基本面10=热点5+龙头5)。版本 v297→v298(七处同步)。
v2979/8三买判定收紧 + 最优评分权重 70/20/10:①【三买收紧】chan-engine.js 2512 行 buy3 判定从「回试不破ZG + 背驰完成或简单回试无中枢」收紧为「回试不破ZG + 回试段含次级别中枢(≥1) + 背驰完成」——回试段 zsCount=0(无次级别中枢=非次级别走势类型,只是次级别线段/次次级别走势)不再判三买,降级为 pending_buy3 预形成(第18课定理三:回试必须是次级别走势类型);②【评分重构】app2 sigScore 按「缠师三程序」权重重构——技术面70%(次级别中枢构成20 + 背驰段15 + 标准形态15 + 可靠性10 + 新鲜度5 + 精确形态5)+ 比价关系20%(涨跌幅10 + 成交活跃10)+ 基本面10%(热点5 + 龙头5),满分100;③【依据】用户「主要看技术形态」「评价最优最起码有次级别中枢构成,最好进入背驰段」。版本 v296→v297(七处同步)。
v2969/8升级笔线宽调细(2.0→1.6):升级笔(=次级别线段)线宽从 2.0 调到 1.6,介于次级别以下笔(1.4)与本级别线段(2.2)之间、更偏「笔」,进一步与线段拉开粗细、避免混淆;颜色不变(日线→橙、30F→绿)。版本 v295→v296(七处同步)。
v2959/7升级笔颜色回退(纠正 v293 误判):①【根因】v293 曾把升级笔误判为「5F 走势类型」改成橙色(_LV_COL[lv]),导致升级笔与 30F 线段(橙)撞色;②【纠正】升级笔 = 本级别一笔在次级别展开 ≥3 笔 = 次级别线段 = 次次级别走势类型,30F 图升级笔 = 5F 线段 = 1F 走势类型 = 绿 #16a34a,回退用 _LV_COL[subLv];③【层级】升级笔(绿=1F走势) 与 30F线段(橙=5F走势) 差一级,不撞色;本级别线段仍 _LV_COL[lv](橙);④【防护】BUG-028 守护改为三校验(升级笔=subLv、线段=lv、叠加线=subLv),回归 246/246 全绿。版本 v294→v295(七处同步)。
v2949/7笔实/虚线语义统一(实线=已完成、虚线=未完成):①【根因】原「次级别以下笔」用蓝虚线 6 4(实为「级别不够」弱化显示),与用户已建立的「虚线=未完成、实线=完成」认知冲突——已完成但级别低的笔被误看成「未完成」;②【修复】次级别以下笔改蓝实线,仅「未完成笔(最后一笔 isSure=false)」用虚线 7 5(无论级别);升级笔仍橙/紫实线、未完成时虚线;进行中一笔(prov)仍蓝虚线 7 5;③【防护】test_regression.js 新增 BUG-029 源码守护——次级别以下笔不得再带 dash='6 4'、未完成笔必须统一 if(!bi.isSure) dash='7 5'(回归 245/245 全绿)。版本 v293→v294(七处同步)。
v2939/7升级笔颜色映射 off-by-one 修复:①【根因】升级笔=本级别一笔在次级别展开成「次级别走势类型」,其颜色应为 _LV_COL[lv](本级别线段色=次级别走势类型色),旧代码误用 _LV_COL[subLv](次级别线段色=次次级别走势类型色),整体错一级——30F 图升级笔被染绿(#16a34a=1F走势)而非橙(#f97316=5F走势),日线图升级笔被染橙而非紫;②【修复】升级笔改 _LV_COL[lv](30F图→橙、日线图→紫),次级别叠加线保持 _LV_COL[subLv];③【防护】test_regression.js 新增 BUG-028 源码守护——升级笔必须 _LV_COL[lv]、次级别叠加线必须 _LV_COL[subLv],两者级别差一级不可颠倒,防再犯(回归 243/243 全绿)。版本 v292→v293(七处同步)。
v2929/7线段虚线误伤修复(起始段误判虚线):①【根因】v291 用引擎 xd.isSure 做线段实/虚线区分,但引擎在一次性全量加载(trigger_step=False)下起始段(xd#0/xd#1)的 isSure 也是 false,导致宁波银行 002142 日线 25.51→29.62、29.62→18.80 两条已完成的起始段被误画成虚线;②【修复】弃用 isSure,改按「序列最后一条可见线段(笔数≥3)」判定未完成——只有真正尚未被后续线段破坏的最后一条画虚线,其余(含起始段)画实线;③【原文】第65课「线段结束的充要条件是被另一线段破坏」,最后一条尚未被破坏、仍在延续的段才是未完成。版本 v291→v292(七处同步)。
v2919/7线段实/虚线区分(未完成线段画虚线):①【渲染】app2 本级别线段(xd)补上 isSure 判定——未完成线段(!isSure,尚未被后续线段破坏)画虚线 7 5、已完成线段画实线,与「笔」的实虚线规则对齐;②【原文】第65课:线段结束的充要条件是被另一线段破坏,最后一条延续中的线段 isSure=false → 虚线;③【数据】引擎线段 xd 已自带 isSure 字段(segList isSure + 尾部伪段 isSure:false),此前仅渲染层未接,本次接上。版本 v290→v291(七处同步)。
v2909/7中枢构件端点口径修复 + 三段重叠判定修正(全局引擎):①【CSeg 端点口径】中枢构件线段 _high()/_low() 由「遍历内部笔取极值」改为「端点口径」(对齐 CBi),避免把线段内部的次级别折返混入中枢区间;②【processThree 三段重叠】删除旧 v196「第三段低点<L / 高点>H 即离开段」误判,三段是否重叠只判 minHigh>maxLow——修复宁波银行 002142 日线中枢从 1 个修正为 2 个(区间 [18.8,23.57] 和 [25.91,29.63]),洁美科技 002859 30F 中枢区间同步修正;③【回归快照】002371 5F 第二中枢从旧口径穿越缝假中枢 [584.19,585] 修正为真实上涨中枢 [502.2,537.25],test_regression.js 快照同步更新(241/241 全绿);④【模式2确认】同级别分解模式下操作级别不画中枢、只画次级别完整结构,前端 renderLevelSVG 已有 !m2 保护无需改代码。版本 v289→v290(七处同步)。
v2899/7市场扫描定时时间调整(上午只看不买 · 尾盘下单 · 收盘定盘):①【买点扫描】10:00 / 11:30 / 14:00 / 15:30 → 11:30 / 14:20 / 15:30——砍掉 10:00 早盘防上午冲动买入;14:20 启动实测约 8~10 分钟扫完(14:28~14:30),正好尾盘 14:30~15:00 下单;15:30 收盘后定盘作次日计划;②【四周期共振】12:00 / 14:20 → 12:00 / 14:40 / 16:00——14:40 避开买点 14:20 扫描尾段;新增 16:00 收盘后定盘共振(与 15:30 买点错峰,收盘后日线/30F 定型共振信号最可靠);③【板块强弱】11:30 / 15:05 不变;④【文案同步】app2×2 / app3×1 / app5×2 硬编码时间文案 + version.json schedules buy/four 的 rule/times 全部同步。版本 v288→v289(七处同步)。
v2869/7「服务器定时更新」面板数据陈旧检测 + 云端不通明示 + 30s 自动重试:①【根因】用户反馈「买点和四周期还是昨天时间」—— 排查发现 app3 loadSched fetch /trigger/schedules 在手机端偶发失败(catch 静默忽略后回退到本地 version.json 静态值),而部署包里的 version.json schedules 是 9/5 的旧值;②【修 app3】loadSched 加 15s AbortController 超时 + 1次自动重试 + schedCloudErr 失败标记;renderSched 检测 last_run 距今 >24h 时把状态从绿色改为红色"⚠ 数据陈旧";schedCloudErr=true 时面板顶部加黄底警告横幅"云端调度接口不可达,以下是 PWA 本地缓存";boot 里每 30s 检查一次,schedCloudErr=true 才重试;③【顺手】version.json schedules 加 sector key 并把所有 last_run 更新到 9/7 实时值(云端 mtime 推算:buy=16:08/four=14:21/sector=15:05/market=16:00/news=09:22/learn=06:13/inspect=02:00/origin=05:00);④【彻底解决】用户不再被"默默显示旧值"误导,云端一通自动刷新。版本 v285→v286(六处同步)。
v2889/7全面审查 + 修复两处基础设施隐患(nginx 配置坏 + sw 缓存路径):①【P0 nginx 配置坏】排查发现 nginx 处于坏状态——v285 修 SSL 时把备份文件 chanlun.bak_20260907_ssl 误放 sites-enabled 目录(会被当配置加载),与主配置冲突致 duplicate default server、nginx -t 失败,master 进程靠内存旧配置硬撑(reload/重启即全站 502)。修复:.bak 文件移到 /etc/nginx/backup/,nginx -t 通过 + reload 成功;②【P1 sw 缓存路径】sw.js DYN 白名单硬编码 /data/buy_points.json 等 4 个错误路径(实际在 /app3/data/ 软链),同域兜底漏走 no-store 可能被 HTTP 缓存卡旧。修复:改为「目录包含 + .json 后缀」通用匹配,一次性覆盖 /data/ 与 /app3/data/ 所有动态 JSON;③【自动检测】inspect_daily.py 新增 check_infra 5 项(nginx -t 语法 / sites-enabled 无 .bak / chanlun-trigger systemd active / sw 通用匹配 / 触发接口回环 200),凌晨 2:00 自动巡检;④【BUG 库】归档 BUG-025(nginx 配置坏)+ BUG-026(sw 缓存路径),巡检清单加勾选项。版本 v287→v288(六处同步)。
v2879/7修复 v286 黄底「云端调度接口不可达」横幅误报:v286 加黄底横幅条件是「schedCloudErr===true」就显示,但 app3 启动时手机 fetch /trigger/schedules 偶尔一次 SSL/网络瞬态失败也会被误标,导致「手动更新已成功 + 数据是新鲜的」时也被错误提示「不可达」,让用户误以为数据未同步到手机(实际手动更新走的是另一条链路:直读云端 data JSON)。修正判断为三态:①云端通 → 不显示;②云端不可达 + 手动更新距今 <2h → 不显示(数据已是新鲜的);③云端不可达 + 手动更新失败或陈旧(>2h)→ 才显示黄底警告。版本 v286→v287。
v2859/7修复「云端任务控制手动触发报网络错误」+ 触发加超时自检:①【根因】云端后端/nginx/SSL/跨域头本机全链路实测全通,问题在手机 PWA 的 Service Worker——sw.js 把跨域到 chenpanchan.top 的 trigger 请求也走「网络优先 + caches.put(跨域Request)」,caches.put 对 opaque/异常响应抛错、.catch 回退 caches.match(跨域URL) 返回 undefined → respondWith(undefined) 让页面 fetch 变「网络错误」;②【根治】sw.js 新增「跨域请求纯透传」分支(url.origin !== 本域 → 直接 fetch 不缓存不干预),彻底消除 SW 对云端 trigger/data 调用的干扰(gtimg.cn 行情代理与同域 data 缓存仍保留);③【前端】app5 triggerTask 加 20 秒 AbortController 超时 + 错误分类(超时/网络),网络错误时提示手机自检方法(浏览器直开 /trigger/status 判断是云端通还是手机网络不通)。版本 v284→v285(六处同步)。
v2849/7彻底修复「服务器定时更新」时间退回旧值(实时 mtime 兜底):①【根因】v283 的 schedules 是「写入式快照」——cron 跑完手动写 version.json,但 run.py 内嵌 update_sched_status 用了 json.load 却没 import json(报 name 'json' is not defined 被吞掉),且部署脚本把本地旧 version.json 覆盖云端(schedules 回退 9/5)——两层都断导致 buy/four 永远显示旧时间;②【根治】run.py 删内嵌函数、统一改走 sched_util.mark()(单一写入路径);trigger_server.py 新增 /trigger/schedules 接口实时读数据产物文件 mtime(buy_points/pools/sector_strength/market/news/learn_report/inspect_report/origin_report)推算 last_run,前端 loadSched 优先读该接口覆盖静态值——文件写了时间就是对的,彻底摆脱「忘了写/被覆盖」;③【部署脚本】上传列表移除 version.json(云端 version 字段单独读改写、不再整文件覆盖 schedules)。版本 v283→v284(六处同步)。
v2839/7最优买点榜「每级别 TOP 2」优中选优 + 云端扫描状态条自动更新:①【最优榜收敛】默认「全部」视图从「全级别混排几十只」改为按级别分三组(日线/30F/5F),每组只显示综合分最高的 2 只、共 6 只,消除「眼花缭乱」,点单级别筛选仍可看该级别全量;②【分组依据】按个股「最强买点类型」所在级别(main.level)归组,多级别共振个股归入最强买点级别、不重复计数;③【顺带收尾后端】云端 run.py + sched_util.py 已让 buy/four/sector/news/market/learn/inspect/origin 八类 cron 跑完自动写 version.json schedules 状态(此前「服务器定时更新」永远显示旧时间)。版本 v282→v283(六处同步)。
v2829/7动态数据「云端直读 + 快照兜底」:扫描完第一时间同步到手机:①【根因】此前 B 方案靠定时同步(09:00/16:45/21:00 三档 automation 拉云端→重部署),云端买点扫描 10:00 扫完却要等 16:45 才进 PWA,上午结果延迟约 6 小时——定时同步本质做不到「扫描完第一时间」;②【方案】改为 PWA 前端直接跨域读云端实时 JSON(云端 cron 写完文件、手机刷新即最新),失败自动回退本地部署包快照(不白屏);③【云端 nginx】给 /data/ 与 /app3/data/ 开 auth_basic off + ACAO 跨域 + gzip(json),reload 生效;④【前端】app2/app3/app4/app5 共 13 处动态数据 fetch(buy_points/pools/sector_strength/ths_boards/news/market/learn_report/signal_track_report)统一改 fetchCloudFirst(云端优先+本地兜底,带超时);⑤【顺手修】trigger_server.py 补 CORS 头(此前手动触发报 Failed to fetch)。版本 v281→v282(六处同步)。
v2819/6修复「笔中枢受次级别数据窗口限制,本级别前段中枢丢失」(002602 30F 实例):①【根因】笔中枢(本级别中枢=次级别走势类型重叠)依赖次级别数据判定,但同 datalen 下粒度越细时间跨度越短(30F 5000根≈2.5年 / 5F 5000根≈5个月),5F 数据起点晚于 30F 起点 → 2026-04 之前的 30F 笔判不出次级别走势类型 → 笔中枢只剩最近 5 个月 3 个,前 2 年线段级本可识别出的中枢全部消失(图表主体空白,即「30F 中枢没画」);②【修复】buildSubLevelZs 加「次级别数据窗口覆盖检查」——次级别数据起点晚于本级别起点(覆盖不全)时退回线段级中枢兜底(与 v274「趋势笔<3」同口径,v274 只覆盖了 trend<3、没覆盖「trend≥3 但时间窗口不对称只覆盖一小段」的分支);③【验证】002602 30F 中枢 3→5 个、覆盖 2024-06~2026-08 全窗口;回归 195/195 通过。版本 v280→v281(六处同步)。
v2809/6回测瘦身 + 单股按需回测上线(聚焦3买/3卖):①【方向定调】回测不验证缠论(缠论本身完美)、只度量「引擎实现正确度」;按用户实操聚焦,回测类型收窄到 3买+3卖(buy3/sell3),其余 1买/2买/1卖/2卖 全砍;②【单股按需回测】点「生成观察卡片」→ 后台对该股回测(日线800+30F/5F各5000根,约1分钟),卡片「🔎 本股 3买/3卖 历史回测」折叠显示各级别信号明细 + 最优持有周期(5/10/20根里期望值最高);③【架构】云端新增 backtest_one.js(Node 单股回测)+ trigger 服务加 /trigger/backtest_one 触发、/trigger/backtest_result 查询(按股锁+当日缓存不重跑),前端跨域触发 + 3秒轮询;④【实测】单股完整回测≈70秒(瓶颈=分钟线滚动截面 O(N²),非拉数据1.4s、非日线1.3s);⑤【sw】白名单补 /data/learn_report_by_code.json。版本 v279→v280(六处同步)。
v2799/6观察卡片加「🔎 本股历史同型信号」(角度一·个股时序回测):①【定位】回测不验证缠论(缠论本身是完美的),而是度量「引擎实现正确度」——中枢/买卖点/背驰判得对不对;故补「角度一·个股时序」,把全市场统计下沉到个股粒度,提供每只股票历史上引擎判过的同类信号明细,供逐条 spot-check 实现是否正确(对齐「晚上看原文」逼近原文的同一主线);②【后端】backtest_400.js 回测滚动截面收集 per-code 明细(code/level/kind/type/信号时点/信号价/持有5·10·20根收益,无未来函数),输出 learn_report_by_code.json(by_code 结构);样本池改「观察池 buy_points 信号股优先 + 全市场抽样补足 600」,保证用户观察的股票必有明细;③【前端】观察卡片(扫描来源+手动录入·模式一/模式二)「回测参考」行下新增「🔎 本股历史同型信号」折叠明细——汇总(N次·胜率·期望)+ 每次信号的时点/信号价/持5/10/20收益(红涨绿跌),类型/级别自动归一,未覆盖时提示「样本池未覆盖该股」。版本 v278→v279(六处同步)。
v2789/6观察卡片加「📊 回测参考」小字(回测数据作参考点):①【需求】辅助观察卡片的大结论旁挂回测数据作参考点(任务⑥),把「胜率+期望值+样本」作为历史统计小字,帮助校准对该信号类型历史表现的预期;②【数据源】读每日 06:00 云端全市场随机600只滚动回测 learn_report.json 的 win_rate.table(type×level×持有根数),类型归一(pending_剥离 / buy3s→buy3 / buy23→buy3 回退 / 短类型 b1→buy1 等)、级别归一(M30→30 / M5→5);③【挂载点】扫描来源卡片(口径统一)与手动录入卡片(模式一/模式二)的「操作结论」下方均加一行「📊 回测参考:类型·级别 历史胜率X%(持N根)|期望±Y%|样本Z(全市场随机600只滚动回测,历史统计参考,非个股预测)」;④【健壮性】报告未加载时占位、加载后异步填充,无样本显示「暂无历史回测样本」;⑤【sw】sw.js 动态数据白名单补 /data/signal_track_report.json(任务④前向跟踪报告),网络优先+no-store。版本 v277→v278(六处同步)。
v2779/6回测体系四重升级 + 前向实战跟踪上线:①【盈亏比/期望值】回测从「只看胜率」升级为「胜率+期望值+盈亏比+最大回撤」——每笔收益早已存下但只算胜率,现补算 avg_ret(期望值)/avg_win/avg_loss/wl_ratio(盈亏比)/max_loss;「最优买/卖点」评选改为「样本≥20 且期望值>0 取最高」(原仅胜率最高会选到期望为负的陷阱);②【全市场抽样】样本池从「涨跌榜前200+后200(异动股偏差)」改为「全市场随机抽样600只(固定seed可复现)」,东财 clist 对云端 IP 反爬故改用新浪 Market_Center(与买点扫描 get_universe 同源);③【卖点回测】补 sell1/2/3/23 卖点回测(卖出后继续跌为赢,做空收益),买卖点双向闭环;④【前向实战跟踪】新增 signal_track.py——买点扫描「已形成」信号落库 signal_track.json(code@type@level@信号价去重),每日 16:30 回看未来实际涨跌(不复权日线持有5/10/20根),前端「原文学习」新增「测试3·前向实战跟踪」展示;⑤【口径】回测日线改不复权(day 优先,对齐 v275 结构分析口径)。版本 v276→v277(六处同步)。
v2769/6修复中枢区间被「起始伪段」污染(第17/20课原文口径):①【查证原文】第17课「中枢=至少三个连续次级别走势类型重叠」、第20课「中枢区间=[max(三个次级别走势类型低点), min(高点)]」——中枢构件必须是「次级别走势类型」,1笔的起始/末尾伪段不是走势类型、不该参与;②【根因】calZsFromSegs 不按笔数过滤,把 collect_left 补的起始伪段(1笔、sure=false)当作中枢第一段参与重叠,污染区间(603565 日线:伪段 xd#0 1笔把 ZD 从 6.82 抬到 9.95,区间仅 0.18 元悬在高位);③【修复】中枢构件过滤「非 _isTrendSeg 且 笔数<3」的段后再找连续三段重叠,603565 日线区间修正为 [6.82,10.13];④【验证】回归 195/195 通过。版本 v275→v276(六处同步)。
v2759/6日线结构分析改为「不复权」(第28课原文口径落地):①【查证原文】缠师第28课「你的图形是复权的?不要复权。对超长线,更没必要复权」、第10课「不复权,复权的可参看历史阻力、支持位」、第53课「除权前后大缺口短时间内可复权,但时间长/大级别都不用管」、第27课「按不复权的看」——结构分析(笔/线段/中枢/背驰)用不复权,复权仅用于参看历史阻力支撑位;②【根因】前复权抹平历史高低点、破坏背驰「创新低/新高」判定前提(第27课读者点破、缠师认可);③【实测】腾讯 kline/kline 的 type=qfq 参数已失效(返回 day 不复权),真正仍在前复权的是东财 fqt=1(共振扫描主源)与前端 fallback fqkline/get;④【改动】后端 em_data.py 东财 fqt=1→fqt=0、腾讯主源显式不带 type、raw 列=主源(复权因子=1);前端 app1/app2/app4 主源去 type=qfq、fallback 改 kline/kline 不复权端点、解析顺序 day 优先;⑤【验证】回归 202/202 通过;实测有除权股结构差异——茅台日线中枢 前复权1个→不复权2个、中谷物流线段 前复权11→不复权9(前复权抹平除权缺口、多构出错构)。版本 v274→v275(六处同步)。
v2749/6修复「中枢0」清空 bug + 结构分析口径纠正为「不复权」+ 分钟线数据完整:①【修复中枢清空】笔中枢在「次级别走势类型笔」不足3个时,旧代码返回空列表把本已存在的线段级中枢一并清空,出现「图上画了线段能看到重叠、却写『中枢0』」(603565 日线/30F 实例)——改为失败时退回线段级中枢兜底、不再清空;②【查证原文·复权口径纠正】缠师第28课「不要复权」、第10课「不复权,复权的可参看历史阻力支持位」、第53课「除权前后大缺口短时间内可复权,但时间长/大级别都不用管」、第27课「按不复权的看」——结构分析用「不复权」(前复权会抹平历史高低点、破坏背驰「创新低/新高」判定前提),纠正此前「结构分析用前复权」的错误口径;③【分钟线数据完整】扫描端分钟线主源由「东财前复权(仅248根)/腾讯mkline(800根)」改为「新浪不复权 5000 根」,30F≈2.5年、5F≈5个月,笔中枢的「次级别走势类型笔」得以正确判出(603565 从 800 根的笔中枢0个 → 5000 根的 30F 2个/日线3个)。回归 202/202 通过。版本 v273→v274(六处同步)。
v2739/6三买三卖离开段/回试段升级为「次级别走势类型」:①【查证原文】第20课正文「一个次级别走势类型向上离开中枢,然后以一个次级别走势类型回试,其低点不跌破ZG,则构成第三类买点」+ 禅师回复「对日线中枢来说,次级别是30分钟,而次级别的完成,需要再次级别,也就是5分钟图上呈现3段走势类型」——故离开段/回试段在本级别图上可能是一笔(单边、内部含次级别中枢)也可能是线段(多笔);②【引擎层】离开段/回试段由「线段(segs,≥3笔)」升级为「线段 ∪ 单笔次级别走势类型(trendBis,本级别一笔在次级别展开≥3笔)」并集——trendBis 只保留终点(向上笔终点=离开高点、向下笔终点=回试低点),避免起点干扰定位;③【顶点选取】离开顶点由「最早 anchor」改为「价格最高/最低」(离开中枢会创新高/低,避免误选中枢延伸中的上冲,如 002128 27.77 与 30.61 之争);④【验证】回归 202/202 通过,002128 30F 最优3买 29.02 保留、参考中枢 ZG 27.34、依据升级为「回抽形成1个中枢后盘整背驰完成」;抽查 8 股买卖点变化与 v272 一致(双向:新出现/消失)。版本 v272→v273(六处同步)。
v2729/6级别笔中枢重构(第17课原文口径)+ 买卖点联动:①【中枢重构】中枢构造由「本级别线段≈次级别走势类型」改为「真正的次级别走势类型笔」重叠(第17课:中枢=至少3个连续次级别走势类型重叠)——本级别一笔在次级别图上展开≥3个次级别笔才算次级别走势类型,否则是次级别以下(占位符),不参与构中枢;5F最低级别(无次级别数据)退回线段级中枢兜底;②【买卖点联动】一买/二买/三买、一卖/二卖/三卖锚点同步改用笔中枢、随中枢重构而变(实证 002128 30F:中枢 5→3,消除两个 seg≥9 升级中枢,最优3买 29.02 保留、参考中枢 ZG 27.89→27.34 收紧;抽查8股中6股信号发生变化);③【三级递归】app2 结构分析改为顺序递归:先 5F(线段兜底)→30F(次级别=5F)→日线(次级别=30F)。版本 v271→v272(六处同步)。
v2719/6笔级别递归可视化 + 笔划分对齐原文:①【笔划分对齐原文】引擎笔划分口径 is_strict 改 false,对齐第62课「顶和底之间至少有一 K 线」——原 strict 要求顶底分型间至少 3 根合并K线(比原文严两档),漏掉跨日跳空短笔(如 002128 的 29.25→29.84,7笔被误判成5笔);②【笔级别浮动可视化】本级别每笔在次级别图上展开的笔数决定其级别——≥3个次级别笔(=次级别走势类型)用绿色实线加粗,否则用蓝色虚线(次级别以下),呼应「本级别一笔可能是也可能不是次级别走势类型」;③【颜色梯度】蓝=笔(次级别以下) < 绿=1F走势类型 < 橙=5F走势类型 < 紫=30F走势类型;5F线段=1F走势(绿)、30F线段=5F走势(橙)、日线线段=30F走势(紫);④【虚实语义】完成=实线、未完成=虚线;⑤【图例】图例新增级别颜色梯度与实虚线说明。版本 v269→v271(六处同步)。
v2699/5 09:20线段级别递归可视化(次级别线段叠加):①【视觉区分】操作级别 K 线结构图上,用青色虚线叠加「次级别线段」(=次次级别走势类型),与橙色「本级别线段」形成级别递归的可视化区分——本级别线段=次级别走势类型、次级别线段=次次级别走势类型;②【跨级别对齐】次级别线段端点按 K 线时间戳对齐到操作级别图(跨级别 K 线根数不同,不能按 bar 索引对齐),只画 ≥3 笔的次级别走势类型(1-2 笔连接段/跳空缺口不画);③【范围】仅模式一操作级别图叠加(模式二已有独立「次级别完整结构」区块);④【图例】图例新增「次级别线段(青虚线)」。版本 v268→v269(六处同步)。
v2689/5 15:20买点扫描提速落地 + 四周期共振提速 + 排期错峰:①【买点扫描文案】云端任务控制「买点扫描」耗时标注「约40分」改「约12分」(实测 38.5分→11.9分,向量化+Node多进程连接池,信号1679零丢失);②【四周期共振提速】阶段0.5 板块映射从 ~5分钟 降到 ~1秒——同花顺板块成分改「跨日缓存合并」(合并最近3天成分、只补抓缺失板块)+ 跳过无用的领涨股刷新(leader 字段已被 pipeline 丢弃,板块龙头改用当日涨幅 pct 判定),四周期总耗时 451~579s→108s(约2分钟,提速4.2倍,覆盖稳定2502/2855);③【四周期文案】按钮「约8分」改「约2分」;④【排期错峰】四周期共振 14:10→14:20(避开买点 14:00 扫描尾段,独立锁+独立数据源不互相阻塞);⑤【触发服务】云端触发 desc 同步(买点约12分钟、四周期约2分钟)。版本 v267→v268(六处同步)。
v2679/5 11:20云端任务控制面板精简 + 消息面改每天执行:①【删分钟线历史库按钮】「🎛️ 云端任务控制」卡片移除「分钟线历史库」手动按钮——它是每天 2:30 的纯后台自动任务(累积突破新浪 5000 根上限的长历史),手动触发无意义,保留其余 4 个盘中按需任务(买点/共振/板块/消息面);②【文案修正】买点扫描耗时标注「约50分」改「约40分」(实测 2383s≈40 分钟);③【消息面每天跑】云端 news cron 从「工作日 1-5」改「每天 * * *」(8:30/20:30 两条),周末也自动更新消息面,市场总览保持工作日不变。版本 v266→v267(六处同步)。
v2669/5 10:50综合窗口「数据管理」新增云端任务控制面板:app5「🗄️ 数据管理」页新增「🎛️ 云端任务控制」卡片——5 个按钮(买点扫描/四周期共振/板块强弱/消息面生成/分钟线历史库),点按钮即触发云端对应任务(带二次确认),手机上无需记 URL 即可随时手动执行,任务在服务器后台跑、完成后数据自动刷新各模块。另同步 four 四周期共振 last_run 到 9-5 10:48(周六手动触发)。版本 v265→v266(六处同步)。
v2659/5 10:25最优买点榜新增「级别筛选」按钮:市场扫描(app3)「🏆最优买点榜」头部新增「级别筛选」栏(全部/日线/30F/5F 四按钮),与既有「可靠性筛选」叠加生效——选中某级别后只显示「在该级别出现已形成买点信号」的标的,多级别共振评分保持不变。版本 v264→v265(六处同步)。
v2649/5 01:30处理「最佳买点」与「最优买点」重合 + 云端随时触发接口 + 扫描提速:①【重合合并】市场参考(app2)顶部的「🏆最佳买点」卡片(历史回测推测 buy1/5分钟/持有10根)与市场扫描(app3)的「🏆最优买点榜」重合——删掉 app2「最佳买点」卡片(HTML/CSS/JS 四块全部移除),把「历史回测最优组合」信息融入 app3 最优买点榜头部新增提示条「📊 历史回测最优组合:5分钟·一买·持有10根·胜率60.2% — 技术面因子已按回测胜率定权」,作为最优买点榜技术面40分定权依据,两榜口径归一;②【云端随时触发接口】上线手动触发服务(systemd 常驻 127.0.0.1:9000 + Nginx /trigger/ 反代 + token 认证 + 每任务锁防并发),手机可随时触发 buy/four/sector/news/min_history 五类任务,不再依赖电脑开机;③【云端路径自适应】修复迁移遗留路径 bug——sector_strength.py 的 DIST_DATA、sector_strength_calc.js 与 scan_server.js 的 require 路径原先写死本地 Windows 结构,服务器上算成 /home/2026-08-24...(不存在)致板块数据从未自动生成、node 脚本 MODULE_NOT_FOUND,统一改「云端路径存在则优先、本地回退」;④【扫描提速】cron 各任务 --workers 10→16。版本 v263→v264(六处同步)。
v2639/5 00:15最优买点榜四项增强 + 版本号同步修复:①【评分口径说明】最优买点榜头部加蓝色说明栏,明确本榜「三程序综合分」(技术40·比价40·基本面20=100)与观察卡片「缠论信号最优分」(满100)是不同维度、不可直接比大小,消除用户对顺丰53.4分 vs 观察卡片79分的误会;②【可靠性筛选】头部加「全部/高/中/低」4按钮筛选,与观察卡片同读 buy_points.json 的 reliability 字段、天然一致;③【PWA图标】补 PNG 多尺寸(192/152/167/512 + apple-touch-icon 180),修复 iOS Safari 装桌面图标不显示,manifest 改 PNG 优先、SVG 兜底;④【行业映射 SECTOR_ALIAS】新增约150条概念词→标准行业名映射表,sectorHit 先查映射再模糊匹配,命中率 53→182(+243%),97个原0命中概念词恢复命中(券商→证券、黄金→贵金属、算力→IT服务、数字经济→软件开发等),最优买点榜消息催化因子识别度显著提升;⑤【版本号同步·补修】v262→v263 六处同步(sw.js CACHE / version.json / index.html hub-ver / app1×3 / app5 badge+日志),修复上轮改前端未同步版本号导致 PWA service worker 缓存未失效、手机看不到新内容。回归 182 项全绿。
v2629/4 20:30消息面数据盘后更新(9/4 20:30):新增9条:搜索9月4日盘后到20:30的重要财经新闻,整理成 news.json 全字段入库(id+board+title+type+brief+inds,BUG-016 6字段铁律强化——所有新条目均含 inds 行业影响矩阵防 renderHome TypeError):①social×1:A股9月4日放量收跌沪指-0.30%报3930.12点、成交2.03万亿放量2718亿,猪肉/白酒/种植业/农林牧渔逆势领涨(罗牛山等多只猪肉股涨停),半导体/存储芯片/CPO/电子化学品领跌,本周沪指-0.56%、深成指-3.13%、创业板指-4.03%、科创50跌5.1%(猪肉/农业【强】+白酒/消费/半导体【中】);②policy×4:证监会发布私募募集新规征求意见稿七章四十五条(卖者尽责买者自负、严禁保本保收益、禁止拆分份额、穿透监管,私募基金/金融监管【强】+券商【中】)、央行公告9月7日开展5000亿元3个月期买断式逆回购9月到期等量续作(银行/流动性【强】+债券【中】)、工信部印发《人工智能中小企业创业支持计划(2026—2028年)》三年新培育创新型中小企业1万家以上专精特新小巨人2000家(人工智能/专精特新【强】+算力/数字经济【中】)、七部门印发《数字化绿色化协同转型发展方案(2026—2030)》探索800V高压直流供电算力架构超百千瓦单机柜部署(算力/数据中心【强】+电力设备/数字经济【中】);③industry×4:OpenAI发布GPT-6 Astra端到端智能体A股AI应用走强硬件重挫浪潮信息跌停蒸发127亿(人工智能/AI应用【强】+算力/半导体【中】)、美光拟年底前新增6万片/月HBM产能HBM4扩产加码(HBM/存储芯片/半导体【强】)、深交所近2月发布7条创系列指数16只创系列ETF申报获批首募上限200-500亿(创业板【强】+芯片/人工智能【中】)、中国船舶签10艘8200车LNG双燃料汽车运输船订单逾10亿美元盘中涨停(船舶制造【强】+军工/航运【中】)。滚动10天窗口清理0条(最旧2026-08-25仍在窗内)。版本 v261→v262(六处同步),已部署。
v2619/4 13:00修复「日线自适应兜底单股 hang 死 buy 扫描+锁未清理」根因 + 手动补跑消息面/买点扫描:①【根因】09-03 15:30 buy 卡在「日线自适应兜底」单股 K 线拉取(socket hang 不响应),进程 hang 19 小时被 OS 杀掉时 finally 未执行、锁未释放,阻塞后续 09-04 12:00 前所有 buy;调度器层也受波及漏跑 09-03 20:30 news + 09-04 凌晨~11:30 全部 buy。②【修复·彻底】pipeline.py 单股补拉 1500 根加 30s 硬超时(ThreadPoolExecutor.submit + future.result(timeout=30),超时即跳过该股)+ run.py atexit + SIGBREAK handler 注册解锁(任何方式退出都释放 + 关 Node 常驻进程,taskkill /F 仍靠 TTL 75 分钟兜底)。③【补跑】news.json 新增 12 条(intl×2 美股 9/3 涨/油价金价同步上涨 + industry×3 央行 9/4 逆回购零操作/创业板芯片指数 970096 发布/长江存储 IPO 进入问询 + policy×5 工信部等 10 部门中小企业十五五规划/金融监管总局保险公司资产负债管理办法/商务部商品消费扩容升级 20 条/医保局 DRG/DIP 3.0 机器人手术单独分组/市场监管总局电子坐便器 CCC 认证 10/1 强制执行 + social×2 A 股 9/4 午盘沪指+0.35%/9/3 收盘沪指+0.02% 报 3942 点)+ 滚 10 天窗口清理 messages 7 条+policies 3 条。版本 v260→v261(六处同步),待部署。
v2609/3 15:35说明中心补「模式一/模式二」辅助观察卡 + 引擎「破坏」措辞对齐原文:①【说明中心 app5】「MACD 辅助判断」卡片补充辅助判断卡三种形态分流(四周期共振→两行共振卡 / 模式一→五行卡锚定 B段回拉0轴 / 模式二→五行卡锚定同级别分解),并新增「模式一/模式二 五行卡」专节——5 行(①面积 ②黄白线 ③柱子最高高度 ④背驰 ⑤盘整背驰)× 操作级别+次级别两级,严格对齐第24/25课背驰三判据(满足其一即成立、两个以上更确定);②【引擎 chan-engine.js + 说明中心】「破坏」定义措辞由「离开段突破边界」改为「次级别走势类型离开中枢 + 次级别走势类型回抽不回中枢」(对齐第18课定理三「中枢破坏=一个次级别走势离开中枢后,其后的次级别回抽走势不重新回到中枢内」+ 第20课26段)。回归 183 项全绿。
v2599/3 13:02修复「现价在中枢内却误标三买/三卖」(老问题根治):002517 30F 现价17.00 已处中枢#3(14.90~17.48)内部却仍标「三买」——根因是 app2 旧引擎三类买卖点判定与统一引擎 detectAll 口径分叉:①zsExitIdx 离开笔搜索起始索引 z.biEnd off-by-one,会把中枢构成末笔误当离开笔(002517 中枢#4 biEnd=159 被误判 ei=159,应为 biEnd+1→161);②bsPointMarks 遍历全部中枢,把早已离开的老中枢的历史三买/三卖永久标在图上(中枢#1 历史三买标记价10.85 被当成当前信号);③闭边界不统一(回试低点用 >ZG、反弹高点用 <ZD,漏掉 =ZG/=ZD 边界)。修复:bsPointMarks 三类买卖点只对「最近一个中枢」判定(与统一引擎 lastZs 同口径)+ 现价离开校验(三买现价>ZG、三卖现价<ZD)+ 闭边界 ≥/≤;zsExitIdx biEnd→biEnd+1;mode1Signals 三买三卖同补闭边界+现价校验。回归 177 项全绿。
v2589/3 11:35模式1/模式2 辅助判断卡(5行×操作级别+次级别两级,严格对齐108课背驰三判据):①【引擎】buy1/sell1 的 div 补 peak_b/peak_c(第25课「伸长的高度不能突破前高/前低」判据③)+ zs_count 中枢数(区分标准背驰≥2中枢 / 盘整背驰1中枢,第24课356行/第27课);②【前端 app1】新增 beiChi5CardHtml 五行辅助卡——第1行面积(第24课 C段面积<A段)、第2行黄白线(第25课 DIF不创新高/低=背离 + 第24课 B段黄白线回拉0轴前提)、第3行柱子最高高度(第25课判据③)、第4行背驰(趋势≥2中枢=标准背驰)、第5行盘整背驰(1中枢),按「操作级别+次级别」两级展示(次级别用于小级别做短差);③【分流】holdCardHtml 按 cardType 分流——srcType=four→共振版(保留原 macdAuxHtml)、mode1→模式一(锚定中枢回拉0轴)、mode2→模式二(锚定同级别分解),顶部 meta 加卡片类型标签(四周期共振版/模式一·中枢买卖点/模式二·同级别分解);④背驰成立关键词按买卖方向配色(顶背驰=绿、底背驰=红,A股习惯);⑤test_regression.js 加 BUG-022 守护(peak_b/peak_c + zs_count + 五行卡 + 分流)。回归 177 项全绿。
v2579/3 10:45跳空缺口默认为1笔 + 最强三买/三卖(趋势+盘整最用力破坏):①【跳空缺口】segs 端点加 level 三值字段('seg'/'bi'/'gap'),跳空缺口按「默认为1笔」(bi=1) 处理、level='gap' 供前端渲染蓝色虚线(与普通1笔蓝实线区分);②【最强三买 buy3s】三买判定加「离开段中枢数」分析,离开段=次级别趋势(≥2中枢)+回试段=次级别盘整(1中枢)=趋势+盘整最用力破坏(第18课定理三),已形成输出 buy3s、预三买高预警输出 pending_buy3s;③【最强三卖 sell3s】三卖对称实现;④【前端】app2 筛选加「最强三买」按钮(与最强买点并列)、app3 已形成/预形成 tab 加最强三买、pipeline _TYPE_ORDER/_TYPE_NAME 加 buy3s/sell3s;⑤ORIGIN_MAP.md 补第18课定理三最强破坏+缺口默认为1笔,test_regression.js 加 BUG-021 守护。回归 170 项全绿。
v2569/3 10:25三买三卖离开段/回试段级别校验(次级别走势类型=线段≥3笔):①查证原文——第18课定理三「中枢破坏=一个次级别走势离开中枢后,其后的次级别回抽走势不重新回到中枢内」+第20课26段「次级别走势类型离开+次级别走势类型回试」,并确认第18课「趋势+盘整、趋势+反趋势、盘整+反趋势」三组合中趋势+盘整是最用力破坏(回试是「次级别走势类型」、非「次级别以下」);②【引擎层】coreAnalyze 给 segs 端点加 bi 笔数字段;三买 leaveCands/pullbacks、三卖 leaveCands/rebounds 四处均加 bi≥3 过滤——1笔突破ZG / 1笔回试 是「次级别以下」非「次级别走势类型」,不再构成三买三卖;③三买标记位置对齐为「回试段(完整线段)最低点」而非「回试那一笔最低点」;④ORIGIN_MAP.md 补第18课定理三+趋势+盘整口径,test_regression.js 加 BUG-020 源码守护。回归 168 项全绿。
v2559/3 10:00连接段 a/b 三态渲染 + 辅助判断卡按钮位置调整:①【引擎层】renderStructure 的 enter/leave 加 level 三值字段——'seg'(次级别,≥3笔线段)/ 'bi'(次级别以下,一笔/两笔)/ 'gap'(跳空缺口,相邻两根K线跳空);②【渲染层】app2 观察卡片 + app4 大盘按 level 三态渲染:seg→橙色线段、bi→蓝色(笔)、gap→蓝色虚线,LEGEND 加「蓝色虚线=跳空缺口」;③【插队任务】app1 辅助判断卡「重新分析」按钮从卡片底部移到标题行居中(与「辅助判断卡」同一行);④level 为纯展示字段、不影响买卖点判定(回归 166 项全绿)。⑤探测 16 只股票日线:连接段 seg 29 / bi 7 / gap 0(跳空缺口日线少见,多现于一字板/分钟线)。
v2549/3 09:30中枢升级口径确认 + hasSub 试做后回滚:①用户确认「中枢升级」(延伸≥9段 / 前后中枢区间重叠升级为更大级别)买卖点按「同级别操作」维持现状(照常给,不「舍弃」),引擎零改动。②hasSub(标记「中枢构成段含次级别以下段」)试做后经用户纠正回滚——用户点明:讨论主题是「连接两个中枢的连接段 b 的级别」(第18课:连接段可以是次级别以下、一笔甚至缺口),与中枢构造无关;且「前3段笔数<3 本就不是次级别走势类型、不能构成中枢」,故标记中枢构成段这个动作方向错误、已撤销。③连接段级别区分仍由 v252 的 sub 字段 + 字母′标记承载(完整线段画橙色、次级别以下不画线段由蓝色笔覆盖、字母加′)。
v2539/3 08:37消息面数据盘前更新(9/3 8:30):新增9条:搜索隔夜到今晨的9条重要消息,整理成 news.json 格式全字段入库(id+board+title+type+brief+inds,BUG-016 6字段铁律强化——所有新条目均含 inds 行业影响矩阵防 renderHome TypeError):①policy×2:央行行长潘功胜G20发声「持续推进货币政策框架转型,继续实施适度宽松货币政策」(银行/金融监管/人民币【强】+全球宏观/债券【中】)、三部委联合启动智能应用服务商培育行动2027年底不少于3000家工信部牵头(AI应用【强】+算力【中】);②intl×3:隔夜美股三大指数集体收涨戴尔涨15.81%英伟达涨3.21%纽约联储主席威廉姆斯暗示9月无需加息(美股/AI算力【强】+全球宏观【中】)、油价3连涨WTI收+0.88%报91.01美元/布油+1.04%报95.63美元布油创7月24日以来新高(原油【强】+油气/化工【中】)、黄金纽约尾盘反弹现货黄金+1.39%报4389美元/盎司白银+1.97%ADP小非农仅增3.8万打压加息预期(黄金【强】+白银/美元【中】);③industry×3:美国考虑对进口半导体加征新一轮关税卢特尼克称在美国本土建厂无需缴纳关税(半导体【强】+自主可控/出口【中】)、燧原科技启动回拨机制网上中签率0.02455%初步有效申购倍数超100倍(AI算力/IPO【强】)、三安光电控股股东债权人撤回破产重整申请破产风险暂时解除(LED/化合物半导体【强】+破产重整【中】);④social×1:9月2日A股缩量普跌沪指-0.97%报3941.39点/创业板-2.39%成交降至1.82万亿近3900只个股收跌(A股大盘【强】+成交量【中】)。滚动10天窗口清理0条(最旧2026-08-24仍在窗内)。版本 v252→v253(六处同步),已部署。
v2529/3 01:30线段级别修正:次级别以下(一笔/两笔)不再画成线段:用户指出「b 段可能就是一笔,跳空缺口是极端情况」,按原文第18课连接段可以是次级别以下(一笔甚至缺口),不能统一当次级别走势类型(线段)。探测发现引擎 segList 里本就存在「1 笔」的伪线段(如上证日线 xd#0/xd#8 笔数=1、isSure=false),但渲染时被统一画成橙色线段。修复:①【引擎层】chan-engine.js renderStructure 给 enter/leave 加 sub 字段(笔数<3=次级别以下,按第18课连接段可为次级别以下);②【渲染层】renderLevelSVG 画线段 xd 时跳过笔数<3 的段(次级别以下),由蓝色「笔」折线覆盖;③enter/leave 字母标记加 ′(如 a′=一笔进入段),LEGEND 加「字母′=次级别以下」说明。颜色方案(自定,最合理):线段=橙色 #f97316(次级别走势类型主线)、笔=蓝色 #1a56db(底层)、中枢框=金橙 #c98b00(虚线)、进入段字母 a=灰、离开段字母 b/c/d=紫。验证:上证日线 9 线段→跳过 2 根 1 笔伪线段→7 根完整线段+14 价位标注,正确。回归 166 项全绿。版本 v251→v252(六处同步),已部署。
v2519/3 01:15去掉中枢进入段/离开段重复加粗线 + 字母配色统一:用户指出「灰色进入段线下面还压着一根橙色线,灰色线本质就是线段、应该是橙色」。根因:进入段/离开段(z.enter/z.leave)和线段 xd 用同一套笔索引,本身就是线段,但渲染时又用灰/紫加粗线覆盖画了一遍,造成双层+颜色冲突。修复:①删除进入段灰线(stroke=#64748b)、离开段紫线(stroke=#9333ea),线段统一橙色 R.xd;②只保留 a/b/c/d 字母做 a+A+b 形态标记(进入段灰 #64748b、离开段紫 #9333ea,与 LEGEND 图例一致)。③顺带查证原文「b 段甚至可以是缺口」——第33课/29课/18课/37课/56课均有原文(缺口=最低级别走势类型,b 级别≤c),已记录为引擎已知边界(当前按线段近似,缺口极端场景暂不特殊化,待实际案例再定)。版本 v250→v251(六处同步),已部署。
v2509/3 01:05修复中枢「进入段/离开段」line+字母不可被图层按钮隐藏:用户反馈点图例「线段/笔」按钮时,中枢的紫色离开段 b 字母 + 灰色进入段线都无法隐藏(其他图也有同样问题)。根因:renderLevelSVG 渲染中枢进入段/离开段时,line 标签没加 class(只有 stroke),字母只有 class="annot"(只受「隐藏标注」控制、不受「线段/笔」控制)。修复:①进入段灰色 line 加 class="bi"(受「笔」按钮控制);②离开段紫色 line 加 class="xd"(受「线段」按钮控制);③进入段字母 a 加 class="bi annot"(同时受「笔」和「隐藏标注」控制);④离开段字母 b/c/d 加 class="xd annot"。app2 观察卡片 + app4 大盘技术走势同步改。纯 UI class 加固,不影响判定。运行时验证 class 正确加上。版本 v249→v250(六处同步),已部署。
v2499/3 00:50K线结构图中枢标注缩小+区间信息挪到右上角(不遮盖K线):用户反馈图上中枢文字(原「字母+ZD~ZG区间」font-size 20 大字体)太大会遮盖 K 线。改法:①图上中枢框位置只标简短字母 A/B/C(保留 a+A+b 形态标记),字号 20→12、去掉区间数字;②完整区间信息「中枢A:ZD~ZG / 中枢B:ZD~ZG」挪到右上角空白(font-size 11 右对齐,每中枢一行);③LEGEND 图例保持 A/B/C=中枢。app2 观察卡片 + app4 大盘技术走势两处同步改(同一套 renderLevelSVG)。运行时验证:上证 800 根日线产出中枢 A/B,图上框标 A/B、右上角信息区「中枢A:3168.57~3174.27 / 中枢B:3794.68~3995.18」,旧大字号已消除。版本 v248→v249(六处同步),已部署。
v2489/3 00:30修复大盘技术走势「数据获取失败」+ 平台稳定性保障 + 全局错误兜底:①【修 bug(v246 引入)】大盘分钟线 v246 误改成新浪 CN_MarketData.getKLineData 直连(HTTP 200 但无 Access-Control-Allow-Origin 头,浏览器前端 fetch 被 CORS 拦截 → Promise.all 整体 reject → 显示「数据获取失败」)。回退到 fetchIndexBars(东财→腾讯 mkline 回退链,320 根),删除死函数 fetchIndexMinBars。前端可用指数分钟线只有腾讯 mkline(ACAO:*,320 根);更多历史根数靠 min_history.py 后端累积。②【全局错误兜底】5 个 APP(app1/app2/app3/app4/app5)统一加 window.onerror + unhandledrejection 捕获,防「一处崩溃→整页白屏无提示」。③【凌晨巡检增强】补 4 处盲点:CORS 铁律(数据源必须测 ACAO 头,不只 HTTP 200)、取数窗口修正(30F/5F 前端 320 非 5000)、数据文件新鲜度自动重建、全局兜底检查。回归 165 项全绿。版本 v247→v248(六处同步),已部署。
v2479/3 00:104 APP 深挖扫描:修复 11 处高危崩溃 + 12 处显示异常:①app1:load 里 records/reviews/targets 加 Array.isArray 校验+过滤 null(防 localStorage 非数组/含 null 启动即崩)、renderList/renderHistory 的 stockName.toLowerCase 加 String()||'' 兜底、planTexts/pendingPlanItems/planDetailHtml 对 null 元素兜底、fmt 加 isFinite 兜底(undefined/NaN 显示 — 而非 NaN)。②app2:renderCzscSectors 的 class_avg/delta_5 加 isFinite 兜底(缺字段崩)、scanCardHTML 的 typeName 加 ||'' 兜底、renderMarketRefBox 的 signal_price/price 改 fmt。③app3:drawStructureChart 的 structures[code][lv] 加 null 兜底、getPendingOps 加 Array.isArray 校验、buyCard type.replace 加 String()、stockIndex pools 加 ||[]。④app5:paintLearn 的 tbl[lv]/row 加 null 兜底(Object.keys(null) 崩)、best.rate/hold、st.tested 加兜底(显示 NaN/undefined)。回归 163 项全绿。版本 v246→v247(六处同步),已部署。
v2469/2 23:55大盘技术走势对齐观察卡片 + 指数分钟线5000根 + 指数历史库:①【对齐】app4 大盘技术走势原来用旧引擎接口 analyze()+自写蜡烛图/文案(趋势/均线/量能),与观察卡片(renderStructure 完整契约)不一致。现将 app2 观察卡片的整套结构渲染系统(renderLevelSVG/analyzeLevel/levelConclusion/chanStructure/calcMACD/provisionalMove/biBeiEvents/zsBeiEvents/zsExitIdx/strictTrendOK/bsPointMarks + LEGEND + kzoom CSS + 缩放图层事件)迁移到 app4,大盘技术走势三级 K 线结构图(中枢/线段/笔/买卖点/MACD)和三级结构结论(笔/线段、中枢、背驰、支撑压力)与观察卡片完全同源同口径;删除旧死代码 techKlineSVG+techAnalyze。②【拉取量】大盘分钟线 30F/5F 从 320 根 → 5000 根(新浪硬上限,新增 fetchIndexMinBars 走新浪指数源),日线保持 800+1500 兜底。③【历史库】min_history.py 新增 INDEX_SYMBOLS(上证/深成/创业板/科创50/北证50)+ 指数优先抓取逻辑,每日 2:30 全量增量抓指数分钟线,与个股同库累积。版本 v245→v246(六处同步),已部署。
v2459/2 23:40app4 深挖扫描:3 处健壮性加固:①renderMarket 开头检查加 `!MARKET.dates||!MARKET.dates.length`(防 localStorage 旧结构缺 dates 时 .slice 崩);②renderMarket 的 t 字段兜底——topBoards/downBoards/moneyTop/movers/lhb/drivers 逐个 `if(!Array.isArray(t[k])) t[k]=[]`(防旧 MARKET.today 缺数组字段时 .map 崩整页);③大盘归档 detail 字段加 esc(防 HTML 特殊字符注入/显示异常)。均为边界情况防御性修复,当前数据下不影响,防 localStorage 旧数据/字段缺失时崩溃。版本 v244→v245(六处同步),已部署。
v2449/2 23:28修复板块内容不显示 + 简化状态栏为数据版本时间:①根因(板块内容空白):昨晚盘后补漏的 4 条消息(inc_20260902_2230_1~4)只有 id/board/title/type/brief、缺 inds 字段,而 renderHome 第 702 行 `m.inds.map(...)` 未兜底,抛 TypeError 导致整个 boardList 渲染中断、四板块点开全空白。修复:给 4 条消息补 inds 字段(银行/流动性/债券/金融监管/券商 按强度标注)+ renderHome 改 `(m.inds||[]).map` 兜底(防未来再有缺字段消息崩整页)。②简化状态栏(用户要求"直接写数据版本更新时间,别写正在获取定时计划"):消息总览 ubTitle「服务器定时更新」→「数据版本」、ubSub 只显示 STORE.updatedAt(失败时加「⚠ 最近一次定时更新失败」);市场总览 mkTitle→「行情更新」、mkSub 显示 MARKET.updatedAt(快照兜底显示 market.json updatedAt);删除 SCHED_FETCHED 三态过渡文案 + calcNextTime 死代码。版本 v243→v244(六处同步),已部署。
v2439/2 23:18修正情况2大结论文案"接近0轴"夸大描述:原文案"操作级别红柱持续缩短到接近0轴 + 黄白线走平/拐头/交叉,动能衰竭确认,马上离场"——其中"接近0轴"代码里未量化(opMomWarn 只判"缩短"、opFlat 只判"红柱时黄白线走平/拐头",未做 hist 绝对值阈值判断)。改为"操作级别红柱持续缩短 + 黄白线走平/拐头(红转空),动能衰竭确认,马上离场"——文案与代码实际判定完全一致。仅文案变更,行为不变。版本 v242→v243(六处同步),已部署。
v2429/2 23:05修复 app4 消息总览「暂无定时计划」误导文案:①root cause:refreshUpdateBar 在 VERSION.schedules.news 取不到时直接显示「暂无定时计划」,但首屏 800ms 内 fetch 还没回、fetch 失败时数据版本号还能从 STORE 拿到——文案「暂无」会让人误以为定时任务没了。②改 display 文案:分三态——s 拿到→「✓上次执行·下次...」/首屏尚未拿到→「⏳ 正在获取定时计划…·数据版本...」/fetch 已完成但仍拿不到→「⏳ 定时计划获取失败(数据已更新)·数据版本...」;③新增 SCHED_FETCHED 全局变量,checkUpdate 的 .then 取到 schedules 时置 true、.catch 也置 true(避免永久卡在「正在获取」)。仅文案变更、行为不变。版本 v241→v242(六处同步),已部署。
v2419/2 22:54删除消息总览摆设「手动更新」按钮:①消息总览的「手动更新」按钮(checkUpdate(true))不能触发后端生成新数据、只能拉取已生成的 news.json,与每 30 分钟自动 checkUpdate 做的事完全一样,纯摆设且误导——删除按钮 + ubManual 文案 + refreshUpdateBar 的 MANUAL_TS 分支;②市场总览的「手动更新」按钮(refreshMarket,实时拉东财,盘中有实际价值)保留;③checkUpdate 函数清理 manual 死代码(按钮删后 manual 恒 false),改为纯自动检查(checkUpdate() 无参,页面加载 + 每 30 分钟自动跑);④市场总览 mkManual 文案「随工作台「手动更新」同步刷新」→「点「手动更新」立即拉取最新行情」。版本 v240→v241(六处同步),已部署。
v2409/2 22:44app4 两个手动按钮统一命名「手动更新」:①消息总览按钮「刷新数据」+ 市场总览按钮「手动刷新」统一改名为「手动更新」(两处在不同 tab 不冲突);②相关文案统一「我的手动更新」「正在手动更新…」「手动更新成功/失败」(去掉 v239 改的「刷新」语义,但保留删除误导句「定时版将同步本次结果」);③说明两个按钮逻辑差异——市场总览「手动更新」=前端直接实时拉东财第三方(真实时拿到最新行情),消息总览「手动更新」=拉取服务器 news.json(AI 定时生成,只能拿已生成的最新)。版本 v239→v240(六处同步),已部署。
v2399/2 22:38app4 消息总览「手动更新」按钮文案改准确(刷新语义):①根因——「手动更新」按钮真实行为只是 fetch 服务器现有 news.json 全量覆盖本地显示,并不能触发后端生成新数据(那是盘前/盘后定时任务做的),原命名「手动更新」+ 文案「定时版将同步本次结果」误导用户以为点一下会生成新数据;②修复——按钮「手动更新」→「刷新数据」,状态栏/「我的手动更新」→「我的刷新」,去掉「定时版将同步本次结果」误导句,toast「手动更新成功/失败」→「刷新成功/失败」;③变量名 MANUAL_TS/MKEY_MANUAL 保留(避免 localStorage 键变更破坏已有数据)。仅文案改动,行为不变。版本 v238→v239(六处同步),已部署。
v2389/2 22:30消息面 20:30 漏跑排查 + 拆分调度任务 + 手动补漏:①根因排查——消息面定时任务原 rrule 用 BYHOUR=8,20 多值(唯一用此写法的任务),调度器 20:30 这次完全未触发(last_run 仍是 8:56,next_run 跳到 20:30 后未执行直接跳到次日 8:30);②一次性解决——把原任务拆分成两个独立 automation:盘前「消息面数据盘前更新(8:30)」BYHOUR=8 + 盘后「消息面数据盘后更新(20:30)」BYHOUR=20(多值改单值绕开调度器潜在 bug);③今晚 20:30 手动补漏——WebSearch 真实抓到 9/2 央行 8 月流动性投放情况/9/2 净回笼 5985 亿/资金面 DR001+0.2BP/一级市场招标 4 条盘后消息,news.json 滚动清理 8 条 8/22-8/23 过期;④prompt 加强失败必写 last_status=fail(哪怕搜索没结果),方便用户通过 last_run 时间戳看到漏跑。版本 v237→v238(六处同步),已部署。
v2379/2 22:13清理辅助卡死代码(macdMomentum/divTextOf/momTextOf):①删除 macdMomentum 死变量(dif/dea/curD/curE/bothAbove/bothBelow/pos/cntG/cntR 计数循环)——v229 重构后这些变量不再被任何 return 分支使用;②删除颜色翻转分支 cntG>=2/cntG>=3、cntR>=2/cntR>=3 死分支(触发条件 cur<0&&prev>0 限定"翻转第一根",cnt 恒=1,多根档永不触发);③删除 divTextOf 的 upperA 死参数、momTextOf 的 level 死参数(函数体内零引用)。行为完全不变(单元测试 6 场景输出一致)。回归测试 159 项全绿。
v2369/2 22:03继续扫描修复预一买/预一卖 maxIdx1 漏过滤同号柱:①完整扫描第二处发现——chan-engine.js 预一买/预一卖的 maxIdx1 循环用 Math.abs(macd.hist[mi1]) 不分红绿取绝对值最大,而同文件 segStatsDown/Up 正确带 if(h<0)/if(h>0) 只数同号柱,两处口径不一致;②后果:离开段内有反弹异色柱(且绝对值更大)时,maxIdx1 定位到异色柱→peaked1 误判「见顶」+ halfArea1 面积漏算→预一买/卖可能误触发背驰;③修复:maxIdx1 循环加同号柱过滤(预一买只数绿柱/预一卖只数红柱),与 segStats 同源;④test_regression.js 新增 BUG-014 源码守护 + BUG_LOG 入库。回归测试 158 项全绿。
v2359/2 21:46完整扫描修复「动能延续」方向颠倒 bug(judgeSupDir 误判):①按用户要求对今晚三行重构+背驰+凹字形全套改动做完整扫描,挖出严重 bug——macdMomentum 的 `_dir=(_sgn>0)?'warn':'ok'` 静态按柱子颜色给 state,导致「动能延续」(红柱仍在增长/绿柱仍在伸长/尚未见顶见底/凹字形二次冲高中)被误带买卖方向,judgeSupDir 靠 mom.state 判方向时把「红柱增长(多头延续)」误判成 bear 转空、「绿柱伸长(空头延续)」误判成 bull 转多,大结论买卖方向颠倒;②修复:三处「动能延续」返回 state 改 undefined(凹字形增速未放缓/高级别未peaked/低级别尚未见顶),让 judgeSupDir 落到 cur.color 延续分支;「动能衰竭/反转」state 保留;③顺带修绿转红计数循环 `i2++`→`i2--` 笔误(此前因 prev 异色截断 cntR 恒=1 无功能影响,属隐患);④test_regression.js 新增 BUG-013 源码守护 + BUG_LOG 入库。回归测试 158 项全绿。
v2349/2 21:40情况2「马上离场」大结论强化 + 修正 opDivWarn 过宽:①用户确认「红柱持续缩短到接近0轴 + 黄白线走平/拐头/交叉 → 马上离场」要加(此前只判「考虑卖出」);②实现:大结论新增 opMomWarn&&opFlat(红柱缩短 + 黄白线走平/拐头向下)→ 马上卖出,优先级置于 bearWeak/bull 之前(本级别强反转信号不因高级别弱转空而降级为「考虑卖出」);③顺带修正 opDivWarn 潜在 bug——原 `opDiv2.state==='warn'` 会把 level:'consider'(考虑背驰,黄白线同向的弱信号)也算成顶背驰,改为 `level==='bei'&&state==='warn'`(只命中背驰确认)。回归测试 157 项全绿。
v2339/2 21:15凹字形检测加凹槽深度门槛(过滤微小波动误判):①凹字形检测此前用严格局部峰谷(无门槛),柱子微小回撤又涨(回撤2%~4%)也会被判成凹字形、误走「伸长高度比较」判据;②修复:detectConcave(辅助卡)/ detectConcaveSeg(引擎)加凹槽深度门槛——凹槽底须比第一峰回撤>15%(|valley|<firstPeak×0.85)才算真凹字形,否则走常规面积×2逻辑;③验证:回撤20%判凹字形、回撤2%/4%微波动被过滤、边界15%严格判断;回归测试 157 项全绿。
v2329/2 21:06补全凹字形检测到「进行中笔」面积估算(引擎最后一处×2):①v230 凹字形修复覆盖了预一买/预一卖,但 renderStructure 里「进行中笔」的 area=halfBi×2(供笔背驰提前预警)还有一处没加凹字形检测;②修复:该处×2 前加 detectConcaveSeg 检测,凹字形时跳过×2、改用真实累计面积(保守低估整段),避免误报笔背驰;③至此引擎内全部「最长柱×2」位置(segStatsDown/Up、进行中笔、预一买、预一卖)均已覆盖凹字形处理。回归测试 157 项全绿。
v2319/2 20:55修复 v229 遗留 bug:macdDivergence 丢失 state 字段致「顶背驰」信号在大结论失效 + 情况2离场强化:①根因——v229 三行重构时 macdDivergence 返回值从 {state:'warn'/'ok'} 改成了 {level:'bei'/'consider'},但大结论的 opDivWarn(opDiv2.state==='warn') 和买入提醒 okLv(a.div.state==='ok') 判断没同步更新,导致「顶背驰/底背驰」信号在实时分析大结论里彻底失效、只剩「红柱缩短」在驱动卖出;②修复:macdDivergence 所有 level:'bei'/'consider' 返回值补 state 字段(红柱=顶背驰=warn卖出、绿柱=底背驰=ok买入),level:'hold' 保持无 state;③情况2强化(用户「持续缩短到0轴+黄白线走平/拐头/交叉→马上离场」):大结论新增 opDivWarn&&opMomWarn(顶背驰确认+红柱持续缩短)→ 马上卖出(此前只判「考虑卖出」);④验证:红柱背驰 state=warn/绿柱背驰 state=ok/未背驰无state,回归测试 156 项全绿。
v2309/2 20:40MACD凹字形盲点修复:改用禅师「伸长高度不能突破前高」判据:①用户发现——柱子「先增长→缩短→再增长」的凹字形会让「最长柱×2」面积估算失效(凹槽破坏对称假设、取全局最大峰会误判二次发力为见顶);②新增凹字形检测 detectConcave(辅助卡)/ detectConcaveSeg(引擎),识别「第一峰→凹槽→二次增长」结构;③凹字形时改判:增速放缓(最长柱已出现)后——二次冲高/下探未过第一峰→二次衰竭离场;过第一峰但未过前一同色块最高柱→背驰离场;过前高→未背驰持有观察(新增 .hc-kw-hold 灰字);④辅助卡 macdMomentum/macdDivergence + 引擎 segStatsDown/Up 增 peak 字段、预一买/预一卖(pending_buy1/sell1)对称加凹字形分支,红柱=冲高/前峰/前高、绿柱=下探/前谷/前低;⑤黄白线0轴上下切换暂不纳入(用户确认太复杂先不加)。回归测试 156 项全绿。
v2299/2 19:15辅助观察卡改三行:面积动能 + 黄白线 + 背驰(面积+黄白线两因素综合):①用户纠正——背驰/盘整背驰应「面积+黄白线」两因素共同决定,此前 v228 把黄白线去掉了是错的;②改三行:第一行「单块MACD面积」输出柱子动能(红柱增速已变慢/绿柱已缩短/红柱已见顶/绿柱已见底→动能衰竭;仍在增长/伸长/尚未见顶/见底→动能延续);第二行「黄白线」输出方向(红柱:拐头向下→趋势反转/走平→趋势走平/向上→趋势延续;绿柱对称:向上→反转/走平→走平/向下→延续);第三行「背驰/盘整背驰」综合面积+黄白线——动能衰竭+面积缩小+黄白线走平/拐头→背驰/盘整背驰(红字 .hc-kw),动能衰竭+面积缩小+黄白线同向→考虑背驰(黄字 .hc-kw-consider),否则无背驰;③新增 trendTextOf(黄白线方向)+ 新增 .hc-kw-consider 黄字 CSS;macdDivergence 返回 level:'bei'/'consider';④divTextOf 简化兜底为「无背驰/盘整背驰」,颜色翻转多级别共振判定移到第一行 momTextOf 已处理。不涉及 chan-engine.js,回归测试 156 项仍全绿。
v2289/2 18:50背驰/盘整背驰 与 单块MACD 口径统一:①用户反馈 v227 调换两行顺序后,两行判定仍打架——龙旗科技截图:30F 单块MACD「增速已变慢——背驰」但背驰/盘整背驰「未触发」(黄白线没背离→pullOk=false→返回null);5F 单块MACD「尚未见底——动能延续」但背驰/盘整背驰「出现盘整背驰」(实际累计面积已小);②根因:macdDivergence 要求 areaOk AND pullOk(黄白线背离)双条件,单块MACD 只看面积;3)修复:app1 macdDivergence 去掉 pullOk 要求(与单块MACD 统一只看面积),同时加「当前柱就是最长柱(peakIdx===last.end)时不报」的判断(与单块MACD「尚未见顶/见底——动能延续」口径一致);输出文案去掉「黄白线背离(DIF未创新低/高)」部分(与单块MACD 的「面积%」口径一致);4)结果:30F 两行同报背驰/未背驰、5F 两行同报尚未见底、1F 两行同报已见底——不再打架。不涉及 chan-engine.js,回归测试 156 项仍全绿。
v2279/2 18:45辅助观察卡两行顺序调整:单块MACD 置顶、背驰/盘整背驰 第二行:①用户要求把「单块MACD」行放第一行、「背驰/盘整背驰」行放第二行(原顺序相反);②实现:app1 辅助观察卡渲染循环里,把 hc-lv-row 两行的拼接顺序对调——第一行改 momTextOf(单块MACD)、第二行改 divTextOf(背驰/盘整背驰);③仅展示顺序变化,判定逻辑/染色/文案均未动。不涉及 chan-engine.js,回归测试 156 项仍全绿。
v2269/2 18:25单块MACD:高级别(增速变慢)也判背驰 + 红绿对应见顶/见底:①用户纠正 v225 的两个漏判:(a) 高级别增速变慢只给「注意见顶/见底」纯提示而没判背驰——按逻辑既然"柱子增速已变慢"就应该和低级别见顶一样判背驰(面积比较),给明确结论;(b) 红柱子应统一为「尚未见顶」、绿柱子为「尚未见底」——代码里 `_sgn>0?见顶:见底` 已对但用户要确认对应;②修复:高级别分支(_peaked=true)txt 改为 `(_bei?'背驰':'未背驰')+_note`(与低级别同口径,面积变小=背驰、变大=未背驰);_note 变量定义上移外层(_dir 后),避免块作用域被高级别分支用到 undefined;3)5F 显示「尚未见底」逻辑正确(当前柱就是最长柱、下一根未确认无法判见顶,自然不判背驰);4)红绿见顶见底对应保留:红柱=_peakWord「见顶」(上涨动能到顶)、绿柱=_peakWord「见底」(下跌动能到底)。不涉及 chan-engine.js,回归测试 156 项仍全绿。
v2259/2 18:20单块MACD 行改输出「状态+结论」(去掉口径解释):①用户纠正 v223 的口径——之前写的是「(高级别·强度变慢即报)/(低级别·见顶确认才报)」这种解释,用户要的是能辅助判断的结论;②修复:app1 macdMomentum 重写同色柱分支——高级别(D/30F)最长柱已出现输出「MACD柱子增速已变慢——注意见顶/见底」,未出现输出「MACD柱子仍在增长」;低级别(5F/1)最长柱出现+下一根缩短确认输出「MACD柱子已见顶/见底——背驰/未背驰(本段面积约前段N%)」,面积变小=背驰、面积变大=未背驰(复用 macdDivergence 同款切段+前半段×2面积估算口径),未见顶输出「MACD柱子尚未见顶/见底」;颜色翻转分支(红转绿/绿转红)保留;momTextOf 去掉 basisHint 相关逻辑;③方向染色不变(红柱=卖出绿字、绿柱=买入红字)。不涉及 chan-engine.js,回归测试 156 项仍全绿。
v2249/2 18:05市场总览页加手动刷新按钮 + 龙虎榜实时标签修正:①用户反馈市场总览页「update-bar 不刷新、实时标签错乱」:根因——市场总览 update-bar(app4 view-market)没有手动刷新按钮(消息面工作台有),用户无法主动触发 refreshMarket,只能刷新消息面时顺带;龙虎榜 dateBadge 永远传 false(黄色快照)但其实是实时拉到的当天数据(lp.lhb 非空),标签错标;②修复:市场总览 update-bar 加「手动刷新」按钮(onclick="refreshMarket(true,true);toast('…正在实时拉取…')");龙虎榜 dateBadge 第一参改 `!!lp.lhb`——实时拉到时显示蓝色「实时当天」标签、未拉到时仍黄色「快照」;③影响:仅 app4 UI 改动,不涉及 chan-engine.js/数据结构/判定逻辑。回归测试 156 项仍全绿。
v2239/2 17:50辅助观察卡「单块MACD」按 v203 口径分级别标注(强度变慢/见顶确认):①用户要求把昨天提的「MACD柱子增加速度变慢」问题按级别两套逻辑体现到辅助观察卡「单块MACD」行,并说明口径;②根因:app1 macdAuxAdvice 调用 macdMomentum(macd) 时漏传 level,导致 4 级别共用一套判定,违反 v203「高级别用强度变慢(最长柱出现即报,灵敏提前)、低级别用见顶(最长柱+下一根缩短才报,避免假背驰)」分档口径;③修复:macdAuxAdvice 改 `mom: macdMomentum(macd, level)` 传 level;macdMomentum 加 level 参数——高级别(D/30F)保持原灵敏度(前后两根缩短即报)、低级别(5F/1)新增 `prev<=prev2` 约束(要求连续两根缩短才报,即「见顶确认」),返回对象增 basis/basisHint;momTextOf 加 level 参数,「单块MACD」触发判定时文案末尾追加「(高级别·强度变慢即报)」/「(低级别·见顶确认才报)」短注,让人一眼看出当前用的是哪套口径;④判定逻辑未变(仍基于前后两根柱子缩短),仅按级别收紧低级别的灵敏度+文案透明化。不涉及 chan-engine.js,回归测试 155 项仍全绿。
v2229/2 17:35K线结构图线段端点加价位标注(可显示/隐藏):①用户要求在线段起点/终点加价位、可显隐;②实现:app2 renderLevelSVG 线段绘制循环里给每个线段起点(端点下方 y+14)与终点(端点上上方 y-6)各加一个价位文字(class="xd-price",字号11、颜色随线段——模式一橙#f97316/模式二青#0d9488,用 fmt 保留2位小数);③图层开关:K线图顶部工具条新增「价位」按钮(data-layer="price"),复用既有 .kzoom.hide-xxx 图层机制——点击切换隐藏/显示(CSS 新增 .kzoom.hide-price .xd-price{display:none}),与中枢/线段/笔开关并列;④不涉及 chan-engine.js 判定逻辑,仅 app2 渲染层改动。回归测试 155 项仍全绿。
v2219/2 16:55市场扫描(app3)修复「预形成」混入卖点 + 预买点按钮改「低预警/高预警」:①根因:isSellType 用 type.indexOf("sell")===0 只匹配以 sell 开头的 type,漏判 pending_sellX(type 以 pending_ 开头)——547 个预形成卖点(一卖29/二卖3/三卖515)混入买点列表,致「预形成」tab 显示 1159(实为买点612+卖点547),用户疑问「你算的612但APP显示1159」;②修复:isSellType 改 type.replace(/^pending_/,"").indexOf("sell")===0,修复后「预形成」正确显示 612(一买17/二买16/三买579)、「已形成」227;③预形成视图下第三行两按钮「背驰/背驰+黄白线」切换为「低预警/高预警」——低预警=构造中(结构到位、黄白线尚未拐头,再等等,579只)、高预警=进入背驰段+黄白线走平/拐头(下跌动能衰竭确认、马上买,33只),与引擎 tags「X买构造中/X买高预警」一一对应;已形成视图两按钮语义不变(背驰=任何背离超集227、背驰+黄白线=标准买点27)。不涉及 chan-engine.js,回归测试 153 项仍全绿。
v2209/2 14:05辅助判断卡关键词染色修正(未触发不标色 + 多转空绿/空转多红):①根因:app1 辅助判断卡 hlKey 函数当 dir 不存在时(未触发背驰/盘整背驰/动能耗尽)会回退到 .hc-kw 红,致「当前绿柱持续 6 根;未见同色柱面积缩小,未触发背驰/盘整背驰」中的「盘整背驰/背驰」也被错误染红——用户要求「未触发就不标色」;②修复:hlKey 加 dir 判空——dir 不存在时直接返回原文、不包裹 span;dir=sell 仍 .hc-kw-sell 绿(多转空=顶背驰/涨势动能耗尽=卖出)、dir=buy 仍 .hc-kw 红(空转多=底背驰/跌势动能耗尽=买入);③影响:仅颜色规则变化,divTextOf / momTextOf 的判定逻辑未动;单块 MACD 行中的「动能反转确认/局部翻转」等仍按方向染色;仅 5 处版本号同步(version.json / sw.js CACHE / index.html hub-ver / app1 三处),不涉及 chan-engine.js,回归测试 153 项仍全绿。
v2199/2 09:02凌晨巡检·K线端点全面恢复 + 文案修正 + 版本同步:①K线数据源健康检查(最高优先级):实测4端点全部恢复——主源 web.ifzq.gtimg.cn kline/kline 200+CORS:*、备源 ifzq.gtimg.cn fqkline/get 200+CORS:*(此前501反爬已恢复)、分钟线 mkline 200+CORS:*、实时 qt.gtimg.cn 200+CORS:*;前端 app1/app2/app4 的 fetchKlineDaily 多源回退链完好,无裸直连;app4 buildLiveMarket 快照兜底(klineOk=false 红标)正常;后端 em_data.py 多源回退链完整(tx→em→sina),更新模块头注释(移除「web.ifzq 已失效恒501」过时描述);②app5 综合窗口巡检文案修正:第⑥项取数窗口文案由「D160/30F320/5F320」更正为「日线800+自适应补拉1500 / 30F·5F各5000」(与实际代码一致);③清理残留:删除 merge/__pycache__、chan_resonance 过期 sector_run 日志、已执行完毕的一次性重扫自动化任务;④sw.js CACHE 升 v219,APP_VER/splash/footer/header-sub/badge 六处版本号同步。
v2189/2 00:25分钟线历史库消费端接口预留 + 后端导出器(默认关闭,未启用):①背景:自建分钟线历史库已落地(min_history.py 每日凌晨 2:30 增量抓新浪分钟线,逐步累积突破新浪 5000 根上限,根治 30F/5F「进入段 a 在窗口起点被截短」);②本次把「消费端读取」接口设计好、先不启用:前端 app1/app2 的 fetchEmMinuteBars 重构出 sinaOnly(纯新浪原逻辑,行为零变化),新增 MIN_HISTORY_ENABLED 总开关(默认 false)+ histBarsToTencent({t,o,h,l,c,v}→腾讯同构数组)/ mergeMinByTs(按时间戳去重合并)/ fetchMinHistoryBars(探测线上历史库文件)三个接口函数——把开关改 true 即可自动探测 data/min_history/{sym}_{period}.json 并拼接「历史库+新浪实时」,拼出超出新浪上限的更长窗口;③后端 min_history.py 新增 --export --symbols ... --out ... 导出器,把指定股票历史库 JSON 复制到 dist/data/min_history 随部署上线;④sw.js 新增 /data/min_history/*.json 网络优先+no-store 缓存规则、CACHE 升 v218;⑤启用前需让历史库先累积足够天数,届时导出自选股+改开关+上线即可,无需再改代码。回归测试 153 项全绿。
v2179/1 23:50日线全覆盖 + 自适应兜底(补齐 app4 指数 + 无中枢自动补拉 1500):①补齐遗漏:app4(大盘技术走势,上证/深成/创业板/北证50)日线 160→800(东财指数源 klt=101,失败回退腾讯),至此四个入口(app1 诊断 / app2 实操 / app3 扫描后端 pipeline / app4 大盘指数)日线全部统一 800 根;②自适应兜底:针对 601919 类超长周期股,日线拉满 800 根仍构不成「3线段重叠」中枢时,自动补拉 1500 根(约6年)重算——后端 pipeline.py 在阶段B+C 后对「拉满800且无中枢」的股票补拉(统计 daily_boosted),前端 app1/app2/app4 在单股/指数分析时同步兜底,只有极少数超长周期股触发、性能影响小;③分钟线(30F/5F)维持新浪 5000 根上限不变(数据源限制)。
v2159/1 23:45日线 K 线拉取量 300/160 → 800 根,修复大周期股日线构不成中枢:①601919 排查发现日线仅拉 300 根(约15个月),对大周期股(日线线段超长、每段上百根K线)只够画出 5 段线段,连一个「3线段重叠」的中枢都构不成,导致日线无中枢、无 a+A+b、买卖点检不出;②修复:app2 实操参考日线 300→800(约3.2年)、app1 诊断日线 160→800、扫描后端 pipeline.py 日线 LMT 300→800,前端与市场扫描口径统一;③分钟线(30F 2.5年 / 5F 5个月)已是新浪接口 datalen 上限(5000 根),东财 push2his 分钟线仍反爬,进入段 a 在数据窗口起点处会被截短,属数据源限制、非代码 bug;④回归测试 153 项全绿。
v2149/1 23:20「最佳买点」内嵌实操参考(app2)最优参考页:①用户要求把「最佳买点」逻辑做进 app2「最优参考」页,点「最优参考」顶部即显示根据历史回测数据库推荐的「级别×买点」组合;②实现:pg-trade 顶部新增「🏆 最佳买点」卡片,读取 data/learn_report.json 的 win_rate.best(最优级别+买点类型+持有根数+历史胜率+样本量),卡片含「🎯 一键按最佳买点选股」按钮——点击自动把级别/买点类型切到最优组合、板块重置为全市场、切到买入子页并触发筛选,直接列出该组合组内最优 3 只;③首次报告未生成时显示空态提示(每日凌晨 06:00 自动回测后生成);④CSS 新增 .best-* 系列(金色标题、红色胜率,符合 A 股涨=红)。
v2139/1 23:10综合窗口新增「原文学习」模块 + 400 只涨跌榜每日回测机制:①板块强度更新频率收敛为「上午定稿 11:30 + 收盘定稿 15:05」一天两次(下午盘中 13:05/14:05 停用);②综合窗口(app5)新增第 4 个「📚 原文学习」标签页,与「说明中心」并列,读取 data/learn_report.json 展示——测试1=中枢/买卖点/背驰结构正确性校验(seg≥3、seg≥9 升级标记、ZG≥ZD、GG≥ZG、DD≤ZD、字母连续),测试2=买点胜率回测(buy1/buy2/buy3/buy23 × 持有5/10/20根),并高亮「最佳买点」(样本≥20 且胜率最高);③新建 backtest_400.js 回测脚本:每日 06:00 自动拉沪深两市涨幅榜前200+跌幅榜前200(约400只,过滤北交所/新股),东财主源+新浪兜底,滚动截面回测产出 learn_report.json;④新增「缠论引擎·原文学习回测」每日 06:00 定时任务(凌晨5点原文对照校准引擎之后跑),凌晨2点巡检(含 BUG 修复/残留清理)与凌晨5点原文对照保持不动。
v2129/1 22:15中枢 a+A+b / a+A+b+B+c 字母标记 + 全局回归测试机制:①用户要求中枢画成 a+A+b 或 a+A+b+B+c 形态、字母标到图上以便一眼看出中枢对错;②引擎 renderStructure 为每个中枢加 label(A/B/C)、enterLabel(a/b/c)、leaveLabel(b/c/d);app2 渲染层中枢框标 A/B/C、进入段标 a、离开段标 b/c/d(相邻中枢共享的 b 段只标一次避免重复),图例新增「走势类型 a+A+b / a+A+b+B+c」;③全局覆盖验证:新建 test_regression.js 回归测试,16 只代表股 × 3 级别(日线/30F/5F)跑规则不变量校验(中枢≥3段、seg≥9升级标记、ZG≥ZD、GG≥ZG、DD≤ZD、字母连续)+ 已知案例快照(601919 首中枢 seg=3 无假延伸回归、002371 5F 第二中枢 584~585 正常)+ 买卖点合理性,153 项全部通过;④结论:买卖点无需额外调整——中枢已在 v211 修复(return true)、三买三卖闭边界已在 v210 对齐原文,买卖点自动跟随正确中枢。
v2119/1 21:50修复 002371 5F 中枢乱画(线段复用)+ 去掉图上背驰/盘整背驰标注:①用户反馈 002371 5F 第二个中枢进入段/离开段乱画(与 603198 同类问题,此前未做全局审查);②根因:tryExtendLast 在三买/三卖破坏、升级时 return false,导致 processThree 误把「离开段+回抽段」当作新中枢三段去构造,复用了旧中枢末线段(002371 的 xd#2);③修复:5 处破坏/升级分支 return false→return true(跳过当前 three 构造,避免复用离开段/回抽段),修复后 zs#1 由「复用 xd#2 的假中枢」纠正为 ZG=585/ZD=584.19 的正确 5 段中枢;④用户要求图上只标 1/2/3 类买卖点、不写背驰/盘整背驰:删除模式一 R.marks 背驰文字标注 + 过滤 sig.segs 里「背驰段/警示段」动力学标签 + 清理图例,保留结构段(进入段/离开段/回调段/回试段等)与买卖点标记。
v2109/1 20:50修复 601919 30F 中枢延伸过长 + 三买三卖边界 off-by-one:①用户反馈 601919 中远海控 30F 中枢(zs#0)画成横跨一年的超长假中枢(seg=8,覆盖 2024-03~2025-03,期间价格 10.07~17.58 大幅穿越 ZG/ZD);②根因:三买确认判定用「严格大于」`dn>ZG`,而第20课原文是「回试低点不跌破ZG」(应 `dn>=ZG`)——601919 的 xd#7 回试低点 13.50 恰好等于 ZG=13.50,被漏判,导致本应三买离开的中枢继续延伸;③修复:6 处 off-by-one 边界对齐第20课原文——tryExtendLast 四处三买三卖确认(dn>ZG→dn>=ZG 不跌破、gn=ZD→rb>ZD 才算升破);④修复后 601919 zs#0 由 seg=8 收敛为 seg=3(中枢区间 12.67~13.50,覆盖约4个月),离开段正确指向向上段 xd#6。
v2099/1 20:20修复离开段画错(假突破→反向真离开):①用户反馈 603198 迎驾贡酒 5F 图离开段画错;②根因:renderStructure 取离开段写死 endBi.next,未理会 v196「离开段+回抽段」成对判定的 pendingSeg,遇「向下假突破→向上真离开(三买)」时 leave 误指向假突破的向下段 xd#3(40.53→37.74);③修复:leaveSeg 优先取 zz.pendingSeg(真离开段),无 pendingSeg 时退回 endBi.next;④修复后 603198 5F 离开段正确指向 xd#4(向上 37.74→42.41,三买方向)。
v2089/1 17:25辅助判断卡关键词颜色改按「买卖方向」区分(纠正 v207):①用户澄清:动能衰竭/盘整背驰/背驰分两种方向——多转空(顶背驰/红柱衰竭)=卖出=绿色;空转多(底背驰/绿柱衰竭)=买入=红色,符合A股习惯(红=涨/买、绿=跌/卖);②v207 按"级别"分色理解错了,已纠正;③hlKey(text,dir):dir='sell'用 .hc-kw-sell 绿(#0a8a3c)、dir='buy'用 .hc-kw 红(#d4380d),dir 由 a.div.state / a.mom.state 判定(warn=卖、ok=买),colorFlipped 红→绿=sell、绿→红=buy;④divTextOf/momTextOf 函数签名去掉 isOp、改内部判 dir。
v2079/1 16:35辅助判断卡关键词字体颜色按级别区分:①用户指出日线/30F 都有"盘整背驰/动能衰竭"但语义不同——高级别是趋势背景、操作级别才是买卖信号,颜色应区分;②修复:hlKey(text,isOp) 函数加 isOp 参数,操作级别用 .hc-kw 红橙(#d4380d)、高级别用 .hc-kw-sup 蓝紫(#5b6bb8),divTextOf/momTextOf 函数签名加 isOp 并传递给内部所有 hlKey 调用;③css 加 .hc-kw-sup;④一眼可区分"高级别趋势背景"与"操作级别买卖信号"两层颜色。
v2069/1 16:15预二买/预三买/预二卖/预三卖补黄白线方向(口径统一):①此前预一买/预一卖已用黄白线方向(走平/拐头=马上、仍同向=再等等),但预二/预三买卖点只用「柱子缩短(shrink)」、漏了黄白线方向;②修复:downLegDone/upLegDone 新增 flatUp/flatDown 返回(近3根 DIF/DEA 差分 ±0.005,与 app1 同口径);③预二/预三买卖点高预警改为「有中枢 + 柱子缩短 + 黄白线走平/拐头(同向延伸=再等等)」三条件,柱子缩短但黄白仍同向 → 降级为「构造中/待确认」;④至此 36 类买卖点的「预·高预警 vs 预·构造中」全部由黄白线方向区分,与预一买/预一卖一致。
v2059/1 15:55黄白线口径修正:由「背离」改为「方向(走平/拐头)」:①用户澄清黄白线用法——柱子见顶/见底=股价快到高点/低点=考虑卖出/买入;配合黄白线方向:走平/拐头=必然马上卖/买,仍同向延伸=可能再走一段再回落(此逻辑前面已确立,见 app1 建议卖出价)。②v204 误用「黄白线背离(DIF 不创新低/高)」作为预一买/预一卖高预警条件,方向不对;③改为黄白线方向(近3根 DIF/DEA 差分 ±0.005 阈值,与 app1 macdCurrentState 同口径)——预一买高预警=最长柱见顶+面积×2缩小+黄白线走平/拐头向上(下跌动能衰竭确认,马上买);预一卖对称用走平/拐头向下;面积缩小但黄白线仍同向=构造中(再等等)。④新增 chan-engine difDeaTrend() helper,与 app1 口径统一。
v2049/1 15:35预一买/预一卖补上黄白线背离 + 级别两档:①用户提醒「黄白线的不要忘了」——排查发现预一买/预一卖(pending_buy1/pending_sell1)的高预警判定此前只看柱子面积(最长柱×2),完全漏了黄白线背离第二维;②修复:高预警 = 最长柱见顶 + 前半段面积×2<进入段 + 黄白线背离(买点 DIF 未创新低 / 卖点 DIF 未创新高)三条件;面积缩小但黄白线未背离 → 降级为「构造中/待确认」(不再误判高预警);③顺带把预一买/预一卖的 peaked1 判定也跟上 v203 的级别两档(高级别力度变慢=最长柱出现即估、低级别见顶=下一根缩短才估);④据此标准背驰 = 面积缩小 + 黄白线背离双维,与正式一买/一卖的 pullOk 口径一致。
v2039/1 15:05背驰面积估算「力度变慢/见顶」按级别分两档:①背景:用户指出「伸长力度变慢」与「见顶」是两种灵敏度,可分别适配不同级别——高级别柱子稀疏、反转慢、时间成本高,宜提前预警;低级别柱子密集、噪音大,宜确认过滤。②口径:高级别(D/30F)用「力度变慢」=最长柱出现即×2估整段;低级别(5F/1F)用「见顶」=最长柱出现+下一根缩短才×2估。③实现:chan-engine.js 的 segStatsDown/Up、downLegDone/upLegDone、renderStructure 的 bis.area 全部加 level 参数两档触发(默认无 level 走见顶,向后兼容);detectBuy/SellSignals 的一买卖/二三买卖按操作级别与次级别(SUB_LEVEL 下钻)传对应 level;app2 观察卡片 analyzeLevels 传 D/30/5;app1 辅助判断卡 macdDivergence 按 D/M30/M5/M1 传 level。④全链路统一:扫描→观察→辅助判断卡三处口径一致。
v2029/1 14:45说明中心新增「背驰面积提前估算(第24课伸长力度变慢)」说明:在「动力学与新鲜度」板块下新增第24课原文「柱子伸长力度变慢时,把已出现面积×2 当整段面积」的完整说明,明确三点——①「力度变慢」的引擎界定=背驰段最长柱已见顶(出现后下一根比它短);②面积估算=背驰段起点到最长柱(含)前半段面积×2 对比进入段;③预买卖 vs 正式买卖的分界=最长柱是否已走出来(走出来+面积缩小=正式买卖点,未走出来=预买卖),据此所有买卖点最终归到某级别一买。纯说明补充,不改任何判定逻辑。
v2019/1 14:15背驰/盘整背驰面积判定对齐第24课原文(去≥5根门槛 + ×2提前估):①根因:app1 辅助判断卡 macdDivergence 自造「两段同色柱都≥5根 + 当前柱回落峰值55%以下」硬门槛,而第24课原文无此要求(原文案例 A段2根红柱/C段3根红柱即判背驰),且原文明确「柱子伸长力度变慢时,把已出现面积×2 当整段面积」提前判;②修复:三处统一改为「最长柱见顶(下一根缩短=力度变慢)→ 前半段(到最长柱)面积×2 估整段 → 对比前段/进入段」——chan-engine segStatsDown/Up 的×2 触发从「最后一根柱仍在伸长」改为「最长柱见顶」,renderStructure 对进行中笔(最后一笔)的 bis.area 加同样的×2提前估,app1 macdDivergence 去掉≥5根与55%门槛改为见顶×2;③口径统一:预买卖与正式买卖的分界=背驰段最长柱是否已走出来(走出来+面积缩小=正式买卖点,未走出来=预买卖),与「所有买卖点最终归到一买」一致。
v2009/1 09:50辅助判断卡「高级别仍多头」括号内只输出当前实际状态(不再罗列所有多头情况):①原 divText「高级别日线仍多头(绿柱缩短/绿转红/红柱延续)」是把所有多头可能性并列,用户指出一眼看上去不知道当前是哪一种;②改为根据 supAux.cur.color/colorFlipped + supAux.mom.state 唯一判断——当前若是「绿转红」就只输出「绿转红」,若是「绿柱缩短」+黄白走平拐头就只输出「绿柱缩短(黄白走平/拐头)」,若是「红柱延续」+黄白方向就只输出「红柱延续(黄白仍向上/走平拐头)」;③与 supDir(judgeSupDir 返回 bullStrong/bullWeak)的黄白方向判定口径一致。
v1999/1 08:42修复动态数据被浏览器 HTTP 缓存卡旧(凌晨5点已重扫、前端却显示旧数据):①根因:sw.js 动态数据(version.json/buy_points.json 等)fetch 用默认 cache 模式,浏览器命中 disk cache 直接返回旧的 buy_points.json/version.json,导致「凌晨5点扫描已生成 847 条新信号、前端仍显示昨天 8/31 16:31 的旧数据(二买19/一买189/耗时49分钟)」;②修复:动态数据 fetch 加 {cache:"no-store"}(强制绕过 HTTP 缓存、每次都拿最新),静态文件加 {cache:"no-cache"}(每次与服务器 304 校验),sw 缓存仍保留作断网兜底;③CACHE 版本 v198→v199,部署后新 sw 接管并强制刷新缓存。
v1989/1 02:00凌晨巡检:引擎版本显示文案同步 v5.0:①v197 引擎升级 5.0 后遗漏两处显示同步——app2.html header `v3.0`(与引擎 VERSION=5.0 脱节)、app5.html 「缠论引擎说明」badge 「ChanEngine v4.0」(引擎已升 5.0);②同步到 v5.0;③K线端点实测:主源 web.ifzq kline/kline、备源 ifzq fqkline/get、分钟线 mkline、实时 qt.gtimg.cn 全部 200 + CORS:*(备源从 8/25 持续 501 WAF 反爬中恢复),主备双源健康,前端多源回退链(fetchKlineDaily 主源→备源→缓存)保持完整;④引擎统一性、止损规则双轨(结构止损+成本-2%硬取更紧者)、app3→app2 跨模块数据流(buy_points.json)、localStorage wb_ 前缀、版本号同步(5处全部 v2026.09.01.v198)均正常;⑤app5 更新日志从 v44 起累计 150 条覆盖至 v198(跳号 v45/v69/v71/v73/v75 与历史一致);⑥清理:chan_resonance/__pycache__(8个.pyc)、本次巡检检测探针残留(k_status.log/k_*.log/v_*.txt)。
v1979/1 00:35缠论引擎升级 5.0 · 统一中枢段数语义(修复龙旗科技误判「延伸超过6段」):①根因:app2「中枢延伸超过6段建议同级别分解」判定误用「笔数 biEnd-biStart+1」(线段级中枢里笔数远大于线段数,龙旗科技日线 5 线段=29 笔被误判升级,实际 seg=5<9 不该升级);②修复:renderStructure 中枢 zs 新增 seg(线段数)/extended/upgraded 字段,app2 改按 seg≥9 判定(第33课:中枢延伸不能超过5段,一旦出现第6段延伸=3形成+6延伸=9段即升级),与 coreAnalyze/买点过滤口径统一;③对照原文重写引擎文件头与 app5 中枢定义说明(新生/破坏/延伸/扩张 + 36 类买卖点);④清理:删除已废弃的笔级中枢死代码 calBiZs/addZsFromBiRange、app2 过时的 chan.py 内嵌移植注释;⑤引擎 VERSION 4.0→5.0。验证:龙旗科技日线 seg=5 upgraded=false(不再误判),三安光电 5F 5 中枢方向全部正确。
v1968/31 23:59修复 5F 中枢与进入段/离开段画错(三安光电):①根因:线段级中枢延伸用「整段区间 [dn,gn] 与 [ZD,ZG] 重叠」判定,一条向下段从 ZG 之上跌穿 ZD(如 18.69→10.84)时整段区间仍与中枢重叠,被误判为延伸——导致中枢错误覆盖后续大跌、离开段方向错乱(三安光电 5F 中枢 [16.41,18.69] 由「下-上-下」错构成,离开段错指向上回抽段);②修复:tryExtendLast 改为「离开段+回抽段」成对判定(第20课定理三+第三类买卖点),离开段突破边界暂存 pendingSeg 不并入 endBi,回抽确认真离开时 endBi 停在离开段前,使 renderStructure 的 leave=endBi.next 正确指向离开段;③补充:processThree 加第三段终点约束(第三段不离开前两段重叠区),反向视角允许新建反向中枢(修复下跌段「上-下-上」中枢被漏判)。验证:三安光电 5F 5个中枢方向全部正确(上涨中枢离开段向上、下跌中枢离开段向下),30F/日线正常。
v1958/31 23:50分钟线数据源换新浪(解决「孤零零一个中枢、趋势看不出」):①根因排查——东财 push2his 已反爬(返回空)、腾讯 mkline 分钟线最多约800根(5F仅16交易日、30F约5个月),数据窗口太短导致只能看到1个中枢、a+A+b+B+c 趋势结构看不出(非引擎 bug、非线段画中枢法问题);②修复:app1/app2 的 fetchEmMinuteBars 主源改新浪 CN_MarketData.getKLineData(datalen 可到5000,5F约5个月、30F约2.5年),腾讯 mkline 兜底;③数据量 320/800 → 5000。验证:三安光电 5F 2个中枢→5个中枢、30F 1个中枢→6个中枢,趋势结构完整可见。注意:新浪分钟线不复权(东财前复权已不可用),除权跳空影响待后续处理。
v1948/31 23:30观察卡片 K 线图标出中枢进入段/离开段(第20课 a+A+b 模型):①chan-engine renderStructure 的中枢 zs 新增 enter/leave 字段(进入段=中枢首线段 pre、离开段=中枢末线段 next,用笔索引 a/b 与 xd 同口径);②app2 renderLevelSVG 画出进入段(灰 #64748b 加粗 +「进入」标签)、离开段(紫 #9333ea 加粗 +「离开」标签),与图例颜色一致。数据起点无进入段、末端无离开段时省略。
v1938/31 23:15修复中枢无限延伸 + 方向混淆(忠于第20课定理一 + 第33课):①v192 让中枢延伸时区间不变,但暴露「中枢无限延伸」——奥飞娱乐日线一个中枢 seg=11(覆盖线段1~11 整整3年)。根因:延伸判定用「3段重叠区间」而非「单段Z段[dn,gn]」,且无延伸段数限制。修复:tryExtendLast 改用 Z 段(与中枢方向一致的段)单段区间 [dn,gn] 与 [ZD,ZG] 重叠判断延伸(第20课定理一),并加方向检查(「下-上-下」反向视角跳过、不与「上-下-上」中枢混淆)+ 段数限制(第33课:3形成+5延伸=8段封顶)。②验证:奥飞娱乐 1个中枢(11段)→2个中枢(7段+5段),三安光电5F 两个3段标准中枢(趋势),13只股票最大 seg=7≤8。③消除了「走势多义性乱画多个中枢」的问题——多义性不是糊涂性,同级别分解保证唯一。
v1928/31 21:45修复中枢延伸时区间被错误收窄(忠于第20课中心定理一):chan-engine 的 tryExtendLast(中枢延伸)旧逻辑 zs.low=max(...)/zs.high=min(...) 会把中枢区间错误收窄——三安光电 30F 中枢 [12.75,14.91] 被收窄成 [12.75,13.10],ZG 从 14.91 错算成 13.10。按第20课中心定理一"走势中枢的延伸等价于任意区间[dn,gn]与[ZD,ZG]有重叠",延伸时 [ZD,ZG] 应保持不变,只更新 GG/DD(peakHigh/peakLow)和中枢结束位置。修复后中枢 ZG/ZD 忠于原文,影响三买(离开中枢回试不破 ZG)等买卖点判定。12只日线股票验证中枢区间合理。
v1918/31 20:10启用 4.0 线段级中枢 + 统一引擎:①启用 chan-engine 的线段级中枢(calSegAndZs 由 calBiZs 改调 calZsFromSegs,VERSION 3.0→4.0)——中枢从"3笔重叠"升级为"3线段重叠",对齐第17课原文"中枢=至少3个连续次级别走势类型重叠"(线段≈次级别走势类型);②biStart/biEnd 保持笔索引语义(取线段起始笔/结束笔索引),seg 语义从"笔数"变"线段数";③统一引擎:删除 app2 内嵌的整套 chan.py 移植(runChan+CKLine/CBi/CSeg/CZS 类,约42KB),chanStructure 改为转发 ChanEngine.renderStructure(chan-engine 新增该函数输出 app2 渲染契约 m/pts/bis/zs/xd),观察卡片 K线结构图与买卖点统一用 chan-engine 4.0 口径。
v1908/31 19:50修复状态判断 + 线段绘制(笔线段重合):①修复 levelConclusion 里 zsDone/biDone 用了不存在的 end 字段(chanStructure 中枢/笔对象实际是 isSure 字段),导致"已构造完成/尚在构造中""已完成/尚在延续"恒显示"尚在"——改用 isSure(笔是否确认完成)判断;②修复 K线图线段绘制:旧代码用 R.pts.slice(xd.a,xd.b+1) 把线段范围内的所有笔端点连成折线,导致线段沿笔走、与笔完全重合——按第67课线段定义(特征序列分型决定端点),改为只画「起点+终点」两个端点成直线。验证:三安光电30F 线段跨22/337/159/74/5根bar(跨多笔),线段端点100%是笔端点但中间笔端点不再画入线段。
v1898/31 19:30观察卡片中枢升级说明:用户选择"说明提示"方案——中枢延伸超过6段(笔数 seg≥9)升级为更大级别中枢时,观察卡片中枢解释处(app2 levelConclusion 的 zsTxt)追加提示「该中枢延伸超过6段已升级,建议切换同级别分解操作」,保留股票可见性、引导用户换级别分解而非丢弃。实现:用 chanStructure 中枢的 biEnd-biStart+1 算笔数,≥9 时追加说明。
v1888/31 19:10二买/二卖级别归属修正(参考中枢=次级别回调中枢):用户指出"30F 二买 = 5F 一买",二买要降级别,参考中枢是回调次级别走势类型(5F)里的最近中枢,而非 30F 中枢——二买可出现在 30F 中枢任何位置,30F 中枢对二买定位无用。修复:①downLegDone/upLegDone 返回新增 zs 字段(回调/反弹段切片 coreAnalyze 里的最近中枢);②二买 buy2/预二买(pending_buy2 高预警+普通)的 zs 改为 pullSeg.zs(次级别回调中枢),卖点侧 sell2/pending_sell2 对称;③buy23/sell23(二三买重合)保持操作级别中枢(判断"回调低点不破 ZG / 反弹高点不收复 ZD"的那个中枢)。注:二买背驰判定 downLegDone 本就已用次级别回调段的中枢(segA.zs),本次只是把"信号展示的中枢"也对齐为次级别中枢。
v1878/31 18:55买卖点中枢锚点全面统一为「最近中枢」:用户指出一买/预一买/三买/预三买必须以"最近的前一个中枢"为参考点,隔得老远的中枢无意义。v186 只改了三买/三卖,本次把所有买卖点(一买/预一买/二买/二卖/一卖/预一卖 + 二买三买重合 + 三买/三卖)的中枢锚点统一改用「未过滤的 A.zs 最近中枢」(end_bar 最大),不再用"过滤升级(seg<9)后的 zsList 最后中枢"。核心:`lastZs = A.zs[A.zs.length-1]` 用于所有买卖点锚定;`zsList`(过滤升级后)仅保留给 classifyTrend 趋势/盘整计数(isTrendB1 等)。验证:三安光电 30F 假三买归零 ✓;下跌跌破最近中枢创新低后预一买仍正常识别 ✓。
v1868/31 18:40修复三买/三卖"现价在中枢下方仍报三买"致命 bug:三安光电 30F 现价 13.09 位于最近中枢3(ZG13.52/ZD13.41)下方,却报 pending_buy3。根因:三买判定锚定"过滤升级(seg<9)后的 zsList 最后中枢",而三安中枢3 因 seg=10 延伸升级被过滤,引擎退回到更早的中枢2(ZG12.56),误判"现价 13.09>12.56=离开中枢2"。修复:三买/三卖判定改用未过滤的 A.zs 最近中枢(end_bar 最大)——延伸升级的中枢仍是有效的最近结构,现价相对其位置决定三买能否成立。验证:三安 30F 假三买 1→0 条 ✓;招行/平安日线(最近中枢 seg=9 升级,现价在 ZG 上方)仍正确输出预三买,不误伤 ✓。一买/一卖/二买/二卖继续用过滤后 zsList(背驰/趋势判定排除升级中枢,不受影响)。
v1858/31 18:30app3 chip 数量双向交集逻辑修正:v184 调换 UI 顺序后暴露隐藏 bug——买点类型 chip 数量只看 status+tab 不看 level,导致选 30F 时"三买 44 只"是全市场数(与 30F 27 只脱钩)。本次:①countBuySignals 新增 levelOverride 参数(默认按当前 level,传 'all' 强制忽略);②买点类型 chip 用默认(按当前 level)——选 30F 时三买显示"30F 下三买数";③级别 chip 用 'all' 强制忽略 level——保证"全部级别/日线/30F/5F"四个 chip 都展示完整分布而非被当前选中级别筛空;④切 level 时同步刷新 buy-tabs(renderBuyTabs 调用),使 chip 数字立即联动更新。
v1848/31 18:20app3 买点筛选顺序调整:原顺序"买点类型(三买/二买/一买)→ 级别"调换为"级别 → 买点类型",先选级别再选买点类型,逻辑更清晰。HTML 结构(index.html 47-49 行)调整:level-chips 上移到 buy-tabs 上方;chip 数量算法已是双向交集(325-328 行),先选哪个顺序结果一致。
v1838/31 傍晚定时任务时间调整 + 全站文案同步:①消息面盘后 16:30→20:30;②四周期共振 11:30→12:00;③板块强弱盘中每30分钟→每小时(上午9:25/10:25/11:25、下午13:05/14:05)。automation 的 rrule/name/prompt 同步,version.json 的 schedules.news/four 的 rule/times/next_run 同步,前端 app5(415/416/491)、app4(665/1087)、app2(4272/4327)、app3(696) 定时文案同步。
v1828/31 午后归档卡片按盈亏上色:实操档案页(page-history)每条已复盘已归档的卡片标题行,按 review.pnl 盈亏上色——盈利浅红(rgba 217,48,37,0.07)、亏损浅绿(rgba 15,138,61,0.07),符合 A 股红涨绿跌习惯;未复盘卡片不上色。未复盘但有 ops 记录的盈亏计算可后续扩展。
v1818/31 午后补全扫描信号结构位字段链路:此前 pipeline.py 落盘丢弃了 chan-engine 输出的 zs(中枢上下沿)/div(高低点)/raw_signal_price(不复权信号价),导致观察卡片买/卖点区间只能退化为系数。本次补全:①pipeline.py _decorate 补存 raw_signal_price/zs/div/segs;②app3 buySigInfo、app2 tbStk scanSig 传递这些字段;③app2 scanCardHTML 区间用结构位锚定(一买低点~中枢上沿 raw_zg、三买回试低点~离开段高点等,信号价用不复权 rawSignalPrice),结构位缺失时才退化为系数。注:明天 10:00 扫描会用新 pipeline.py 产出带结构位的 buy_points.json;当前 2130 条数据仍为旧格式(无 zs/div),前端已向后兼容。
v1808/31 午后v177 引擎买点扫描完成(2130 条):修复预三买/预三卖泛滥后重扫,信号 1929→12929→2130 条恢复正常(预三买 5266→618、预三卖 5880→138),一买 189、二买 19、三买 44、一卖 505、二卖 48、三卖 70,深度解析 258 只,耗时 50 分钟。
v1798/31 午修复买/卖点区间 + 无明确买点清空:①app2 scanCardHTML/cardHTML 卖出区间从「目标价×0.97~1.02」改为「目标价~目标价×1.03」(原来下限 0.97×目标价会低于现价,不合理);②app2 scanCardHTML 的 buy1 止损从「中枢下沿 ZD」改为「信号价 sp(一买低点)」,跌破一买低点才说明一买失败;③app1 实操卡片(record 列表 + 详情页)当 bpType=无明确买点/spType=无明确卖点 时,显示「暂无明确买点/卖点」,不再显示历史 buyPoint/sellPoint 区间(方案 A)。
v1788/31 午修复卖出价格区间下限:holdCardHTML 的 sell1/sell2/sell3/sell23 之前用「中枢下沿 ZD/中枢最低点 DD/离开段低点」作为卖出区间下限(sLo),但 ZD/DD/leave_low 是「卖点失效位」(用于止损),不应用于卖出区间。改为卖出区间下限 = 当前价(在该价位附近分批卖出),sAnchor 同步改为「当前价~卖点价」语义。buyLo2 保护(深度亏损反弹到成本再卖)保留。
v1778/31 午修复预三买/预三卖泛滥(v166 副作用):v166 的「中枢构造中·三买/三卖暂缓」分支在震荡市里导致预三买(530→5266)、预三卖(263→5880)信号泛滥,占全市场信号的 86%。按缠论第20课,中枢未离开时三买/三卖根本无任何阶段,改为中枢未离开时静默(不判买点、也不出预买点),同时保留 v166 的「当前价>ZG/<ZD 才算离开」严格约束。修复后信号数量回落到正常水平。
v1768/31 午观察卡片 K 线结构图关键段标记:统一 chan-engine 的 12 类信号(买/卖 × 一/二/三 × 已形成/预形成)新增 segs 关键段数组(背驰段/进入段/回调段/反弹段/离开段/回试段/回抽段/警示段,用操作级别 K 线索引,跨级别定位锚点自动映射回操作级别);app2 K 线结构图新增半透明色带高亮 + 顶部段标签 + 信号锚点三角星标,图例补充段颜色说明。
v1758/31 午36类复查·跨级别锚点精度修复:mapAnchorToLevel 从旧 normDate(8位日精度)改为操作级别时间戳精度对齐(与 mapToSub 对称),修复 5F 操作级别下二买/二卖 bars_ago 的日级误差(同一交易日内次级别定位点无法区分)。至此 36 类复查全部完成(一买/一卖分级、二买/二卖盘整背驰、三买/三卖离开中枢回拉不破、预一二三三态、最弱二买剔除、跨级别定位精度)。
v1748/31 午36类复查·一买/一卖分级标注(第27课):按第27课第8/34段「标准一买=趋势背驰(≥2中枢);1中枢盘整背驰=类一买、小级别意义不大」,一买/一卖改为分级标注——趋势背驰 standard=pullOk、reliability=高/中;盘整背驰(1中枢)standard=false、reliability=低、tags 追加「类一买/类一卖」、reason 注明「第27课:盘整背驰买点,小级别意义不大」。两者仍都输出,由用户自行筛选。
v1738/31 午分钟线改东财前复权(规则1 收尾):①前端 app1/app2 新增 fetchEmMinuteBars(东财 push2his fqt=1 前复权主源 → 腾讯 mkline 回退,带5分钟缓存),m30/m5/m1 全部改东财前复权;②后端 em_data.py _fetch_minute 分钟线统一东财前复权主源(order=[em,tx,sina]),mkline 不复权降为回退。至此规则1 三条(日线/分钟线结构分析统一前复权)全部落地,数据源规则三条全部完成。
v1728/31 午后端扫描双源映射不复权(规则2 收尾):①em_data.py 的 _fetch_daily tx() 额外拉不复权日线(web.ifzq 不带 type),merge 为 ro/rh/rl/rc 四列;②chan_engine.py 的 _df_to_bars 把 raw 列写入 bars,内核 detectBuy/Sell 输出 raw_signal_price。至此前端(app1+app2)+ 后端扫描(buy_points.json)关键价位全部输出不复权真实价,规则2 三条全部落地。
v1718/31 午app2 观察卡 chanStructure 引擎 + 数据层双源映射不复权:①chanStructure 的分型/笔端点加 rawPrice、中枢加 rawZG/rawZD/rawGG/rawDD(复权因子换算,无 raw 时降级为前复权);②analyzeLevel 支撑/压力、levelConclusion 中枢展示改用 raw;③analyzeStockRes 信号价 sig.price 优先 raw_signal_price;④数据层 fetchStock 双源(前复权+不复权),tx2csvDay 追加 raw 列、parseCSV 兼容 5/6 列旧格式 + 9/10 列新格式。至此 app1+app2 前端关键价位全部输出不复权。
v1708/31 午div 字段(买卖点高低点)映射不复权:①新增 rawOf(bars,price,anchor) 复权因子换算函数;②二买/最强买/假三买/三买/三买退化、二卖/最强卖/假三卖/三卖/三卖退化 的 div 字段(buy1/l2/zg/pull_low/leave_high/sell1/t2/zd/rebound_high/leave_low)全部映射为不复权真实价;③一买/一卖 div 仅含面积/DIF/布尔字段(非价格),不涉及映射。至此 chan-engine 内核关键价位(signal_price + 中枢 zg/zd/gg/dd + div 高低点)全部输出不复权。
v1698/31 午中枢 ZG/ZD/GG/DD 映射不复权:①chan-engine coreAnalyze 中枢 zs 输出新增 raw_zg/raw_zd/raw_gg/raw_dd(用中枢末笔终点原始bar复权因子 rc/c 整体映射);②zsBrief 同步带 raw 四字段;③app1 交易卡片买入/卖出价格区间的 ZG/ZD/GG/DD(bHi/sLo 共6处)优先用 raw 版本。单元测试 ratio=1.100 精确。
v1688/31 午数据源规则:结构前复权 + 关键价位不复权(第一阶段):①规则1 结构分析统一用前复权——日线主源 web.ifzq type=qfq 已前复权(分钟线 mkline 暂不复权,记待办);②规则2 关键价位映射不复权——chan-engine detectBuy/Sell 输出新增 raw_signal_price(anchor 原始bars索引 × 复权因子 rc/c),app1 交易卡片 5 处信号价(建议卖出价/买入区间/卖点区间/买入参考/buyLo2)优先用 raw_signal_price;app1 fetchHoldData 数据层双源拉取(前复权日线 + 不复权日线,bars 每根带 ro/rh/rl/rc);③规则3 界面标注——app1 交易卡 meta、app2 观察卡两处加「前复权分析·不复权价格」标签。单元测试:raw ratio=1.100 精确。
v1678/31 午K线结构图新增线段/笔/中枢图层显隐:①工具栏新增「中枢 / 线段 / 笔」三个图层切换按钮,可分别隐藏对应图层,全关后看到纯K线;②线段(polyline.xd)、笔(polyline.bi)、中枢框(rect.zs)三类元素加 class 标识,中枢标注文字与中枢框同属 zs 图层;③图层按钮激活态用主色高亮(.off),与「隐藏标注」按钮并列,互不影响。
v1668/31 午三买/三卖严格化:当前价必须已离开中枢:①修复前 3 买判定只过滤「顶分型+价格>ZG+bar>end_bar」,会把「中枢还在延伸/构造中」时的内部顶误当离开线段,输出假 3 买(用户截图案例:中枢[77.88-80.98] 尚在构造、现价 78.56 在中枢内,但报 3 买);②修复后加「当前价 > ZG」前置约束——当前价 ≤ ZG 时输出「中枢构造中」提示(pending_buy3 + tags[中枢构造中, 三买暂缓]),不进入 3 买判定流程;③3 卖严格对称修复(当前价 < ZD 才判 3 卖);④对齐缠论第20课原文:三买=离开中枢后第一次回试不破ZG,中枢未离开时不能形成三买。
v1658/31 午定时文案全站同步(v157/v159 旧版文案清理):①消息总览时间 v157 已改为「8:30 盘前 + 16:30 盘后」,但 app5 卡片(415)/app4 headerDateText(665) 仍残留「12:30 午间」,已删;②市场扫描 v159 已分离买点+共振(买点 4 时段、共振 11:30 每天一次),但 app5 卡片(416)/app5 巡检段(491)/app2 空态提示(4161)/app2 板块说明(4214)/app3 共振空态(692) 仍写成单一「4 时段」,已改写为「买点 + 共振」双轨并加 v159 注解。
v1648/31 午持仓卡结论区格式重构 + 补「小结论」说明:①大结论/小结论统一为「结论 + 小字依据」格式——大结论加「大结论:」标签(依据走 hc-div 小字),三条小结论加「小结论:卖出/加仓/做T」标签(依据走 hc-note 灰色小字,卖出价加粗);②说明中心新增「📌 小结论如何给出(持仓卡三条子结论)」小节,逐条写清 卖出=1F区间套建议价、加仓=缠论已形成/预形成买点或绿柱背驰、做T=按操作级别做T方向,各自的结论与依据规则;③修复版本号残留(app1 启动页/页脚/APP_VER 三处 + app5 日志标题仍停在 v162)。
v1638/31 午高级别动能延续判定补全:①judgeSupDir 补「红柱延续→bullStrong/bullWeak、绿柱延续→bearStrong/bearWeak」两条,修复 30F 红柱刚出(动能延续、无缩短无翻转)被判成 neutral→「考虑卖出」的问题,现正确判定为「考虑本级别做T」;②大结论做T主文字从「做T」改为「考虑本级别做T」,并与「小级别做T」(SUB 级别降成本)明确区分。
v1628/31 午大结论升级为「高级别动能共振」:大结论从「只看操作级别四象限」升级为「高级别动能方向 × 操作级别信号」双维共振——新增高级别动能方向判定(强转空=红转绿/红柱缩+黄白走平拐头、弱转空=红柱缩+黄白仍向上、强/弱转多对称),5F 操作看 30F、30F 看日线、日线无更高级退化。卖出优先级:引擎 sell1→马上卖出;强转空+顶背驰→最强烈卖出;弱转空→考虑卖出(逢高);转多→做T(大级别多头回调);中性→考虑卖出。做T已作为大结论主文字(state=ts,蓝色),结论说明(divText)小字展示共振依据。
v1618/31 早修复 5F 次级别映射错误:做T/二买二卖跨级别定位的 SUB 映射漏配了 1F——原来 5F 的次级别错写成 5F 自身(SUB={M5:'M5'}),导致 5F 操作级别下做T提示错误显示「小级别(5分钟)做T」,且 5F 二买/二卖跨级别定位退化为本级别。现已修正为 SUB={M5:'M1'},LV 补 M1:'1分钟'、CE_LV 补 M1:'1',5F 的次级别正确指向 1F(做T提示显示「1分钟」、5F 二买/二卖用 1F 精确定位)。
v1608/31 早说明中心大结论/小结论补全买卖对称:①大结论四象限补全为「卖出方向(红柱区)× 买入方向(绿柱区)」各 4 种组合,明确「持仓卡只看卖出象限、关注卡只看买入象限」的实操分工;②小结论从「建议卖出价」改为「建议交易价」,对称列出 1F 绿柱缩短→肯定要买入(黄白线走平/拐头向上=当前价买入、仍向下延续=略低于当前价买入)两条规则,逻辑与卖出价完全对称。
v1598/31 早买点与共振彻底分离 + 扫描日志落盘:①买点扫描与四周期共振拆成独立定时任务、独立锁(.scan.lock.buy / .scan.lock.four)、独立数据源、独立部署,共振失败不再影响买点;②四周期共振改为每天 11:30 一次(原 4 时段减为 1 次);③run.py 新增 scan.log 扫描日志落盘,后台运行/进程被杀也能追溯卡在哪一步;④状态栏「四周期共振」调度说明同步更新为「11:30 每天一次」。
v1588/30 深夜扫描锁修复 + K线图标注显隐:①修复市场扫描反复「防重叠锁跳过」根因——run.py 锁由「仅按 TTL 90分钟」改为「PID 探活 + TTL 75分钟」双保险:持锁进程崩溃未释放锁时立即探活清理,无需再等 90 分钟;②观察卡片 K线结构图新增「隐藏标注」按钮,一键隐藏/显示中枢价格区间、1/2/3类买卖点、背驰/盘整背驰等文字标注(缩放栏内切换,方便看裸K线)。
v1578/30 傍晚K线图优化 + 按钮过滤修正 + 消息面时间:①K线结构图线变细(线段4→2.2、笔2.2→1.4、中枢框2→1.5),线段颜色紫→橙与蓝笔区分,新增「+/-/重置」缩放按钮(横向滚动查看);②市场扫描按钮数量改交集口径——选级别后背驰/背驰+黄白线按钮数量随级别过滤,多选时各按钮显示同一最终交集数(共振同步);③消息面更新时间 8:30/12:30/16:30 三次改为 8:30 盘前 + 16:30 盘后两次。
v1568/30一买/一卖 pullOk 收紧:黄白线背离判定去掉旧「zsMaxDif≥0 / zsMinDif≤0(曾回拉0轴)」宽松分支,只保留「回拉比例 ≥ 0.8」。注:实测标准率变化不大(一买92%/一卖97%),说明回拉比例≥0.8 本就与面积缩小高度相关,标准率高的真正根源在「盘整背驰(1中枢)短周期普遍、均计入一买一卖」的口径,待进一步决策。
v1558/29 深夜预一买/预一卖预警公式 + 说明中心折叠:①预一买/预一卖增加「预警阶段」动力学判定——离开段 MACD 最长柱见顶(下一根缩短)后,用「前半段面积×2」估算整段与进入段面积对比:小于=背驰成立(高预警)、大于=面积未缩小(排除预买点);最长柱未见顶=普通预买点(构造中)。②说明中心「缠论引擎说明」更新到 v4.0,4.0 与 3.0 内容分别做成折叠展开(3.0 笔级中枢历史口径保留不删除)。
v1548/29 晚36 个买卖点全对称补齐:①二卖对称二买三态(已形成/预·普通/预·高预警),预二卖起点从「一卖后第一次回落低点 lAfter」开始,不再要求反弹高点已现;②三卖对称三买三态(已形成/预·普通/预·高预警),预三卖从「离开段底背驰处 lLeave」开始;③二买/二卖跨级别定位由笔端点(pts)改线段端点(segs),与「次级别走势类型=线段」口径一致,去掉「下-上-下」三笔结构简化为「第一个线段端点」。至此 3 级别×6 类×2 状态=36 信号逻辑全部对齐。
v1538/29 晚预三买起点修正(顶背驰处,非突破ZG):离开中枢的次级别走势类型必须「走完到顶背驰处」才进入预三买阶段,而非「突破ZG就预形成」。修正三买/三卖「离开段」定位:由 bar≥end_bar 改为 bar>end_bar,排除中枢延伸期间内部线段顶/底突破ZG/ZD的假突破(如 600036 延伸线段顶突破ZG 被误判为离开)。预三买阶段 = 从离开段顶背驰处(hLeave)到回试终点,与预二买从1C高点开始同构。
v1528/29 傍晚预三买对称预二买(离开中枢即进入预阶段):三买形成逻辑与二买同构,唯一区别是「回试不破ZG(不进中枢)」。预三买=从离开中枢高点(hLeave突破ZG)到回试终点的全过程:①普通=尚未进入背驰段;②高预警=进入背驰段(有中枢+柱子缩短)。三买已形成=回试不破ZG+背驰完成(或简单回试无中枢);回试破ZG=假三买预警。修复 v148 起 pending_buy3 卡死「pb已现+有中枢+未背驰」窄窗口。
v1518/29 傍晚买点视图背驰标签合并:市场扫描买点视图下,把「盘整背驰」与「趋势背驰」合并,标签统一为「背驰」和「背驰+黄白线」(原「盘整背驰」/「盘整背驰+黄白线」)。加了黄白线的比没加的严格(面积缩小 vs 面积缩小+黄白线背离,前面已说明)。共振视图保留原「盘整背驰」标签(四周期为自创口径,不改)。前端 FILTERS 增 labelBuy 字段,按视图区分标签。
v1508/29 傍晚预二买重定义(结构学+动力学,对齐第21课14段):L二买=L一买后 L-1 向上走势(1A+中枢+1C)结束于 1C 高点,随后 L-1 向下走势类型(2A+中枢+2C)构造,2C 结束点=二买。预二买=从 1C 高点到 2C 终点的全过程:①普通=尚未进入背驰段(无中枢/离开段柱子还在增长/回调低点未确认);②高预警=进入 2C 背驰段(有中枢+背驰段柱子缩短)。二买已形成=2C 背驰完成 或 简单回调(无中枢,l2已现即完成,第101课「回调极短直接往上冲」)。修复 v145 起 pending_buy2 恒为 0(旧定义卡死「l2已现+有中枢+未背驰」窄窗口)。前端「高预警」标签橙色醒目。
v1498/29 晨18 个买卖点全量扫描补齐(引擎4.0):三级×三类买卖点=18 个信号全量接入扫描。补三处遗漏:①引擎一卖缺预形成分支,新增 pending_sell1(对称 pending_buy1);②chan_engine.py 只暴露 detect_buy_signals,新增 detect_sell_signals 桥接;③pipeline run_buy_scan 原来完全不扫卖点,现在日线/30F/5F 三级对称加入 detect_sell_signals,卖点信号进 records 与 CSV。补全 pending_sell1/pending_sell2 类型映射。前端 app3 列表仅展示买点(卖点已在 buy_points.json/CSV 完整记录,供复盘),新增 isSellType/buySignals 过滤。
v1488/29 晨三卖与三买对称(次级别回试验证):三卖原来用本级别 segStatsUp 判反弹段黄白线,未做次级别验证,且离开/反弹取「最晚」(与三买取「最早」不对称)。改为与三买完全对称:①离开/反弹改取「第一次」(最早,第20课);②切次级别(subBars)用 upLegDone 判反弹走势类型是否背驰完成,无次级别才退化为本级别近似,有次级别但覆盖不足→疑似;③新增预形成三卖 pending_sell3(反弹形成中枢但未背驰)。pipeline 补 pending_sell3 类型映射。
v1478/29 晨三买退化收紧(mapToSub 精确化):v146 三买 83 只偏松,根因是 mapToSub 用天级(YYYYMMDD)对齐,30F→5F 时同一天内的离开高点/回抽低点无法区分(sPb≤sH),三买退化为「pb不破ZG即真三买」宽松模式(退化52只/63%误标标准)。修复:①mapToSub 改按操作级别时间精度对齐(分钟线精确到分钟、日线到天);②三买退化逻辑收紧,区分「无次级别→退化标准」vs「有次级别但覆盖不足→疑似」,只有次级别回试确认(形成中枢+背驰)才算标准三买。
v1468/29 晨恢复三买/三卖 segs(修复 v145 回退):v145 重扫发现三买 26→104 暴涨,排查确认三买/三卖 leaveCands/pullbacks 被回退成笔端点(pts),注释写着「笔端点近似次级别走势类型(v3.0)」——v143 的 segs(线段级)改动被覆盖丢失。恢复三买/三卖 segs(线段≈次级别走势类型,第17课),三买回落到 83。
v1458/29 晨预买点=动力学(背驰段柱子增长减弱):预买点分「买点(结构学)+预(动力学)」两面。预的判定:回调构造走势类型进入背驰段后,背驰段柱子增长开始减弱(有背驰迹象)=买点即将到来;柱子仍强劲=构不成背驰。按此去掉 v144 的 L-2 区间套精确认(太苛刻),L-1 级别判断背驰迹象即可。downLegDone/upLegDone 增 shrink(背驰段最后两根柱缩短)判定,stage 重定义:done=面积缩小(已形成)、pending=柱子缩短(预买点)、early=无中枢或柱子强劲。l2 定位改「下-上-下」第二个向下线段终点(下跌走势类型终点),无则退化简单回调;二卖对称「上-下-上」。
v1448/29 凌晨二买/二卖区间套三层整改:L二买=L一买后 L-1 向上走势+L-1 向下走势的低点(第一次回调),切 L-2 确认背驰(=L-2 一买,第21课14段「任何级别二买=次级别相应走势的一买」)。二买/二卖定位从笔端点改为线段端点(segs);新增 confirmPullback2/confirmRebound2 做 L-2 精确认、upLegDone 卖点对称。修跨级别日期对齐 bug:日线 t="2026-08-24"(带横杠) vs 分钟线 t="202604081030"(无横杠) 导致 slice(0,10) 失效,新增 normDate() 归一化 YYYYMMDD。
v1438/28 深夜趋势 GG/DD 判据 + 三买线段级离开(对齐第20课):①趋势判定 classifyTrend 对齐中枢中心定理二——趋势中枢间波动区间绝对不重叠:后GG<前DD=下跌、后DD>前GG=上涨、波动重叠=更大级别中枢(盘整),修复「只看 zg/zd」把波动重叠的高级中枢误判为趋势;②三买/三卖「次级别走势类型离开中枢」从笔端点改为线段端点(segs),coreAnalyze 新增 segs 输出,级别上提一档。
v1428/28 晚缠论引擎 4.0:中枢「3笔重叠」→「3线段重叠」:对齐第17课「中枢=至少3个连续次级别走势类型重叠」,线段≈次级别走势类型。中枢级别上提一档,买卖点数量下降约 32%(级别更准)。K线长度同步放大:日线 160→300、30F/5F 320→800(线段至少3笔,需更长数据凑齐3线段)。
v1418/28 晚二买修正(0→68):二买成立门槛改为「回调低点 l2 不破一买」(第21课13段+第53课16段),不再强制「回调段先形成中枢+背驰」(这正是 v137~v140 二买连续 0 的根因)。最弱二买(跌破一买)按用户要求继续剔除。
v1408/28 傍晚5F K线图日期缺失 + 日期轴标签裁剪修复:structure_summary 默认 max_bars 90→1200(5F 覆盖约 6.7 个交易日,不再只显示到 8-2);SVG 日期轴首/末标签被边界裁掉("08-28"显示成"08-2"),改为首标签 start/中标签 middle/末标签 end。
v1398/28 傍晚中枢延伸超6笔(seg≥9)升级过滤:第33/32课——中枢延伸超过6笔即升级为更大级别中枢。模式1(中枢买卖点)里延伸超6笔的中枢不再作为本级别中枢参与判定:5F升级→30F、30F升级→日线、日线升级→周线(无周线直接忽略);模式2(同级别分解)无影响。
v1388/28 午后一买/一卖 pullOk 阈值收紧:对齐第24课「黄白线回拉 0 轴」——回拉比例 0.6→0.8、DIF 阈值 ±0.02→0(要求真正回拉到 0 轴)。收紧后疑似信号从 1428 降至 79,大量「未回拉 0 轴」的假背驰被正确剔除。
v1378/28引擎 pullOk 判定对齐原文「黄白线回拉 0 轴」(第24课):原 pullOk 只用「DIF 低点抬高(不创新低)」判背离,缺少原文「中枢(B段)把黄白线回拉到 0 轴附近」的结构条件。新增:标准背驰 = ①离开段 DIF 低点抬高 ②中枢构建期间黄白线曾回拉 0 轴(回拉比例≥60% 或 DIF 曾接近/穿过 0 轴)。买点/卖点对称修改。修复后「盘整背驰+黄白线」只保留真正黄白线回拉 0 轴的标准背驰,数量将大幅下降(更准)。
v1368/28市场扫描「盘整背驰」按钮改为超集逻辑:盘整背驰=standard∈{0,1}(任何背离,超集)、盘整背驰+黄白线=standard===1(子集标准买点),修复「条件更苛刻的反而更多」的反直觉现象(18 vs 187 实为互斥细分类别,改为包含关系后 205≥187)。
v1358/28市场扫描「盘整背驰」过滤 bug 修复:预形成信号 standard=false 误匹配 standard===0,导致预形成 tab 下点「盘整背驰」按钮过滤失效(17 只还是 17 只)。加 !isPending(s) 前置条件,只匹配已形成信号。
v1348/28预形成三买/二买判定收紧(删「未回抽即预形成」分支):三买预形成 1173 只爆炸的根因是「离开中枢(突破ZG)后 3 根内回落、尚未出现回抽低点」就报预形成,太松。按第20课三买须「次级别走势离开+次级别回试不破ZG」——回试还没出现低点就谈不上「三买临近」。删除 pending_buy3/pending_buy2 的「未回抽即预形成」分支,只保留「回抽/回调已形成次级别中枢但背驰未确认」的严格预形成(区间套 stage=pending)。同时修复 pending_buy2 跨级别 barsAgo 负数 bug。
v1338/28市场扫描「预形成 0 只」修复:app3 用 s.pending===true 区分预形成/已形成,但 pipeline.py 输出 signals 只用 type 前缀 pending_ 区分、无 pending 字段,导致预形成被过滤光。加 isPending(s) 兼容字段与 type 前缀,4 处替换。
v1328/28关键词标红补回「动能衰竭」:v131 误把「动能衰竭」从标红列表去掉,本版补回——「盘整背驰 / 背驰 / 动能衰竭」三个关键判定词均红色加粗(.hc-kw)。「未触发背驰/盘整背驰」否定句仍不标红。
v1318/28辅助判断卡大结论 + 建议卖出价对齐逻辑树 + 说明中心更新:①大结论改为操作级别四象限(背驰×单MACD柱缩短):背驰+柱缩=马上卖出 / 背驰+柱未缩=考虑卖出观察高级别 / 未背驰+柱缩=考虑卖出+小级别做T / 未背驰+柱未缩=继续持有;买与卖对称。②建议卖出价来源 1F:1F 红柱缩短→肯定卖出,黄白线走平/拐头=建议价=当前价,黄白线仍向上=建议价略高于当前价,两种情况最终都卖出。③说明中心「MACD 辅助判断」小节同步更新(四象限 + 建议卖出价 1F + 单块MACD前后两根柱子)。
v1308/28修bug:divText 中 HTML 标签残留(v129 部署未生效修复):v129 在 liveAnalyze 的 divText 里加了 <span class="hc-kw">动能衰竭</span> 想做关键词加粗,但 divText 是用 esc() 拼接进 .hc-div 的(textContent 等价),HTML 标签当字符串显示出来了。修正:去掉 divText 里的 span,纯文本输出;关键词加粗红字只在 macdAuxHtml 里生效(那里是 innerHTML 拼接)。
v1298/28辅助判断卡展示优化:级别描述统一 + 关键词红色加粗:①级别描述统一——MACD 动能衰竭提示中的「M5/M30」改为人类可读「5F/30F/日线/1F」;②关键词「盘整背驰」「背驰」「动能衰竭」三个关键判定词用红色加粗(.hc-kw 样式,color:#d4380d;font-weight:700),便于一眼定位哪些级别已触发背驰/动能衰竭。
v1288/28单块MACD改为「前后两根柱子长度」判据(对齐辅助判断口径):单块MACD不是标准缠论,只看【前后两根柱子长度】判断本级别动能——红柱缩短=上涨动能衰减、绿柱缩短=下跌动能衰减,配合黄白线分类(0轴对侧=趋势已反转最重 / DIF下穿上穿DEA=转折确认 / DIF拐头=转折初现 / 黄白线仍同向=仅动能减弱)。废弃 v127 的「本段峰值×0.8」误判。区间套思路:大级别看面积(背驰/盘整背驰),逐级下看单柱缩短,最终 1F 红柱缩短(配合黄白线)= 卖出时机。
v1278/28辅助判断卡动能衰竭判定彻底重写(覆盖红柱缩短+0轴对侧场景):此前判定只在「红柱缩短>45%」且「DIF/DEA 双拐头」才报动能衰竭,导致 5F 涨势红柱缩短但 DIF/DEA 已跌穿 0 轴时漏报(继续持有是错的)。本次修复:①柱缩短阈值 0.55→0.8(更灵敏,覆盖明显缩短但未达一半);②红柱在 0 轴下方 = 涨势已结束/被反转(反弹末段)直接报 warn;③回退文案修正:红柱在 0 轴下方/绿柱在 0 轴上方时不再笼统说"动能延续";④liveAnalyze 引入 MACD 衰竭信号作为「准备卖出」判定依据——缠论引擎未出顶背驰、但本级别 MACD 红柱缩短+0轴对侧时也判准备卖出。
v1268/28辅助判断卡现价改走实时行情(消除延迟):此前现价取自日线K线接口的 qt 快照,而日线数据被 5 分钟缓存,导致现价最长延迟 5 分钟。现新增 fetchQuote() 走 qt.gtimg.cn/q= 实时行情接口(不缓存,实时 tick),现价优先用实时值,失败才退化到日线快照。
v1258/28卖点改为「建议」表述 + 辅助判断卡大结论后给出当下卖出价:①待交易卡片卖出区间由「卖出区间」改为「卖出建议 …仅供参考」,强调卖点需判断顶背驰、走势当下完成,仅为建议;②辅助判断卡大结论(继续持有/准备卖出/马上卖出)后新增「卖出 · 当下建议卖出价」——有顶背驰时=顶背驰信号价,无顶背驰时=当前价。
v1248/28修bug:卖出区间最低价不低于买点最低价/当前价:用户发现卖一区间 [58.18, 61.18] 的最低价 58.18(中枢ZD)低于买点最低价 60.68,区间跨买卖点会自相矛盾(先低价卖出后高价买入永远亏)。在 app1 卖点区间计算后加保护:sLo = max(ZD, 当前价, 买点最低价),确保卖出区间不与买点区间冲突;并加 sLo>=sHi 异常保护。
v1238/28预买点判定升级为「区间套」定位(第27课):按「精确大转折点寻找程序定理」——大级别转折点通过不同级别背驰段的逐级收缩确定。downLegDone 增加 stage 三态(done=背驰完成 / pending=形成中枢但背驰未确认 / early=未形成中枢),pending_buy2/3 改为「次级别背驰段进行中(形成中枢但面积未缩小)」判定,即区间套下的预买点。第27课:二、三类买点都由盘整背驰构成。
v1228/28二买/三买判定对齐原文(次级别走势类型构造完成):按第20/21课原文重写——二买/三买都是回调/回抽形成的,判断标准是「次级别下降走势类型是否构造完成」:1中枢=盘整背驰,≥2中枢=趋势背驰;废弃自创的「回调力度衰竭/尾部绿柱缩短」判定。新增 downLegDone 函数对回调段做中枢结构+背驰判定;三买有次级别时按日期对齐定位回抽段,无次级别退化「回抽低点不破ZG即真三买」。回归 26 通过。
v1218/28凌晨巡检:版本号强制同步 + K线端点全面恢复:①修复 sw.js 缓存版本(v110)、version.json(v120)、app1 APP_VER('2026.08.27.v110') 三处版本号不一致,全部同步到 v2026.08.28.v121;②实测腾讯 K线主源(web.ifzq kline/kline)、备源(ifzq fqkline/get)、分钟线(mkline)、实时行情(qt.gtimg.cn) 全部 200 OK + CORS:*,此前 501 反爬的备源已恢复;③验证 app1/app2/app4 日线获取均走 fetchKlineDaily 多源回退链,无裸直连;④语法自检(chan-engine.js/scan_server.js/app内联脚本/Python)全部通过。
v1208/28辅助判断卡·颜色翻转多级别联动(修正方向):用户指出 v117 单看 1F 颜色翻转就报「弱转强/强转弱」是错的——单独翻转仅是局部翻转、方向意义不强。改为:多级别共振判定——本级别翻转 + 上级别动能衰竭配合时才是真正的反转确认。本级别红→绿(转弱)须配合上级别动能衰竭(红柱缩短/warn),本级别绿→红(转强)须配合上级别动能衰竭(绿柱缩短/ok);其他情况为「局部翻转」提示观察上级别是否衰竭。所有级别覆盖(日线/30F/5F/1F)。
v1198/28市场扫描·预形成/已形成分类 + 说明中心价格区间:①买点视图新增「预形成/已形成」两按钮切换(默认已形成),预形成下复用 1/2/3买、级别、龙头、盘整背驰等筛选;引擎新增 pending_buy1/2/3 预形成信号(结构到位、背驰未确认)。②说明中心「动力学与新鲜度」补充各级别已形成买点的价格浮动区间(日线0~+5%、30F 0~+3%、5F 0~+2%,从 0 起无负区间,正确买点后应上涨)。
v1188/28市场扫描·买点新鲜度过滤(时间+价格双维度):修复「形成很久、已无交易价值」的旧买点仍被报出的问题。①时间维度 FRESH_BARS 收紧——D:20→10、30F:60→30、5F:150→90(超过即不报);②空间维度 新增 PRICE_BAND 价格浮动区间——买点当前价须在信号价「-3%回踩容忍 ~ +5%(日线)/+3%(30F)/+2%(5F)上限」内,涨过头/跌过头即过滤。典型如新华保险日线一买@57.36(当前60.59偏离5.63%),按新口径正确过滤。
v1178/28辅助判断卡·MACD「颜色翻转」判定升级(覆盖日线/30F/5F/1F):原描述只覆盖「前后两块同色面积缩小(背驰)」与「同一块柱缩短」两类,现新增「颜色翻转(绿转红/红转绿)」为显式强信号——这是最直接的动能反转,1F 上尤其能看到细节。维度②动能按「翻转后同色柱长 × 黄白线0轴位置」分四层:①≥3根+黄白线在0轴异侧=反转确认(强信号) ②≥3根=反转初具 ③2根=反转启动 ④1根=初现待确认。回退文案也补「动能已翻转/刚翻转」提示,避免遗漏刚发生的转折。
v1168/28市场扫描数据全量重扫(新引擎 v115 口径):用对齐缠师原文的新引擎(中枢3笔重叠 / 趋势≥2中枢 / 一买盘整型+趋势型 / 二买三买「第一次」原则)全市场重扫,生成 945 条信号(一买484 二买181 三买280)+ 270 只深度解析结构,覆盖 buy_points.json。此前市场扫描数据为旧引擎误判(如新华保险旧版「最强买点」),现已全部以新口径重新判定。
v1158/28持仓持股卡改名辅助判断卡 + 新增1F级别:①「持仓/持股卡」改名「辅助判断卡」;②MACD 辅助判断新增 1F(m1)级别,与日线/30F/5F 同格式(背驰/盘整背驰 + 单块MACD 两行),操作级别高亮逻辑不变。
v1148/28观察卡片·三级结构参考内嵌结构图:三级结构参考每个级别(日线/30F/5F)下方新增可折叠「K线结构图」(renderLevelSVG,与下方三级别结构图同源,带笔/中枢/背驰/买卖点标记),默认折叠,点击展开对照;下方「三级别K线结构图」保持原样不动。
v1138/28二买/三买「第一次」口径全站统一核查:补全各模块文案——说明中心二买/三买定义补「第一次次级别回调 / 第一次回抽」;app4 的 SIG_NAME 买一/卖一标签由「底背驰/顶背驰」改为「背驰」(v111 遗漏);app2 二买 desc/预判说明、app3 最强买点说明补「第一次」;report.py note 文案补「第一次」。
v1128/27二买/三买「第一次」原则修复:按第21课原文修正三买判定——「回抽」=离开中枢后的「一次」反向走势,故 leaveCands 过滤由「中枢起始之后」收紧为「中枢形成结束之后(p.bar≥end_bar)」,且离开高点(hLeave)与回抽低点(pb)由「取最新」改为「取最早」,确保二买=一买后第一次次级别回调、三买=离开中枢后第一次回抽不触及中枢;引擎顶部注释补买卖点口径;回归 26 通过。
v1118/27缠论引擎口径对齐缠师原文(中枢/趋势/一买):①中枢——按第17课原文改为「下-上-下/上-下-上 3 笔重叠」(原 chan.py 的「2 反向笔」口径漏判回升型中枢,导致观察卡片「中枢:0」);②趋势——强调「≥2 个依次同向中枢」而非恰好 2 个(3 中枢也是趋势,classifyTrend 严格按相邻中枢方向一致判定);③一买/一卖——纠正解读版「≥2 中枢才有一买」错误,按第17/53课原文放宽为「盘整型1中枢+趋势型≥2中枢」双路径(盘整型盘整背驰也算一买);④说明中心「第一类买点」说明同步更新(盘整型/趋势型口径);⑤全链路口径同步(chan-engine.js 前端+后端共用内核 / app1/app2/chan_resonance/report.py / test_chan_engine.py 重写为可运行回归 26 通过);⑥缓存缠师新浪博客 108 课原文到本地 .workbuddy/chan_original/108/,「缠论引擎·原文对照进化」自动化任务改只读本地原文;⑦消息面手动补跑 12:30/16:30 漏触发任务(WorkBuddy 平台调度延迟未恢复)。
v1108/27历史模块合并 + 观察卡按钮修复 + 删概览:①历史模块合并——分析历史+买卖历史合并为一个「历史」模块,按 全部/按周/按月/按股票 分组,卡片可折叠展开;②修复观察卡片「归档」「删除」明文按钮(根因:按钮 inline onclick 引用 IIFE 内函数导致全局找不到,改为 addEventListener 绑定);③综合窗口删除「各模块数据概览」跳转网格,保留导出/导入/迁移/清空。
v1098/27持仓卡三处文案改造:①加仓/做T 拆两行;②MACD 买点提醒中的代号 M30/M5/D 翻译成「30F/5F/日线」可读;③MACD 两维度(背驰/动能)未触发时回退显示「当前MACD状态」(柱子根数/0轴位置/黄白线方向),不再显示「无」;④卡片每行加冒号、内容开头去掉重复「背驰/盘整背驰」,改为「出现盘整背驰」或「动能转折」等分类标签。
v1088/27观察卡片加归档/删除明文按钮:实操参考的批量观察卡片标题处加「归档」「删除」两个明文按钮(替代右滑手势——手机上右滑没生效),归档后归档到对应历史(分析页→分析历史/买卖参考页→买卖历史)。
v1078/27消息总览:下次时间动态计算 + 消息按更新时间倒序:①「下次更新」按 times 数组和当前时间动态计算(解决 version.json 陈旧导致仍显示已过期时间的问题,如 17:42 显示「明天 08:30」);②主消息列表按 id 时间戳倒序排列(最近的在最上面,原来是正序);同时排查发现 8/27 12:30/16:30 消息定时任务未执行(平台调度问题),建议用「手动更新」按钮拉取最新内容。
v1068/27工作台标题加日期小字:「缠论总工作台」标题旁新增当天日期小字(如 2026/8/27,动态生成)。
v1058/27持仓/持股卡格式重构:卡片分层为「顶部股票信息 → 结论区(大结论+依据+小结论做T/加仓)→ 分析区(日线/30F/5F 三级,每级分背驰/盘整背驰+单块MACD两行)」,操作级别对应的级别块底部高亮+「操作级别」标签;删除 emoji 图标和箭头;全卡颜色/字体统一(仅大结论三态色与操作级别高亮保留)。
v1048/27最强买点旧数据自动迁移:实操管理初始化时自动迁移最强买点旧数据——买入参考含「最强买点」的卡片「其他买点」改为「最强买点」,操作级别按信号级别取次级别(日线→30F、30F→5F、5F→5F),focusLevel 同步;幂等安全,不影响非最强买点卡片。
v1038/27说明中心固化最强买点操作级别口径:说明中心「最强买点」定义补充操作级别规则——日线最强买点→操作级别30F、30F最强买点→5F、5F最强买点→1F(未布置1F图模糊处理为5F),与 v102 引擎口径一致。
v1028/27最强买点操作级别统一取次级别:最强买点=二买+三买重合、定位在次级别,故操作级别统一取次级别(日线最强买点→操作级别30F、30F最强买点→操作级别5F、5F最强买点→操作级别1F缺失退化5F);修复市场扫描(app3)与实操参考(app2)对最强买点操作级别口径不一致的问题(v88 曾只改 app3 未改 app2)。
v1018/27最强买点级别归属 + 背驰文案精确化:市场扫描「最强买点(二三买重合)」在实操参考研判依据新增「级别归属」说明——同级别二买+三买重合、买卖点定位在次级别(如30F最强买点=30F二买+30F三买重合、5F回调定位);实操管理买点下拉「其他买点」改为「最强买点」;背驰文案「黄白线回拉0轴」精确化为「黄白线背离(DIF未创新低/新高)」,贴合原文第24课口径(面积缩小=核心判据、黄白线背离=辅助确认)。
v1008/27MACD辅助判断重构为「背驰」+「动能」两维度:明确区分缠论两大概念——①背驰/盘整背驰=前后两块同色柱面积对比+黄白线回抽0轴;②红转绿(强转弱)/绿转红(弱转强)=单一动能判断非背驰。持仓卡日线/30F/5F 各分两行展示;结论按操作级别给(操作级别背驰→卖出/清仓,无背驰但次级别有背驰或MACD缩短→做T短差提示);修复短插曲段误判背驰(两段须≥5根且已明显回落)。
v998/27MACD盘整背驰误判修复 + 更新日志补全:修复盘整背驰初判把「刚转红/转绿的一两根柱」误当一段走势去和前段比的 bug(要求当前段已见顶回落且柱数≥3 才参与对比),去掉「切次级别看单块柱」冗余文案只描述当前状态;补回丢失的 v94/v95/v96 更新日志;凌晨巡检新增第 12 项「更新日志完整性检查」防遗漏。
v988/27扫描时间文案同步:同步全站市场扫描更新时段文案到新时点(10:00 早盘 · 11:30 盘中 · 14:00 尾盘 · 15:30 收盘),覆盖 app2 空态提示/板块说明、app3 共振空态、app5 说明中心两处。
v978/27扫描提速 + 持仓卡买入提醒:市场扫描后端日线数据源从已 501 反爬的 fqkline 切换到 kline 端点(与前端同源,日线拉取从 6-7 秒降到约 200ms,全市场扫描预计从 72 分钟压缩到个位数分钟);持仓/持股卡新增「买入提醒」一行——结合区间套,缠论买点或 MACD 绿柱动能衰竭时给出绿色买入提示,与原有的卖出三态结论形成买卖双向提醒。
v968/27收盘定稿改 15:30 + 区间套说明独立小节:市场扫描收盘定稿从 15:00 改到 15:30(与 14:00 尾盘间隔 90 分钟,消除扫描重叠隐患);说明中心「MACD 辅助判断」卡片标题明确标注「区间套」,并把区间套(自相似递归)提为独立小节说明。
v958/27市场扫描4时点 + MACD区间套盘整背驰初判:MACD 辅助判断新增「盘整背驰初判」——比较前后两段同向柱峰值,后段不再升高即判盘整背驰;市场扫描定时更新从 3 时点调整为 4 时点(10:00/11:30/14:00/15:00),后端 run.py 加防重叠文件锁防并发封禁。
v948/27MACD辅助加黄白线分层 + 说明中心:MACD 辅助判断结合 DIF/DEA 黄白线方向分三档(红柱缩短但黄白线向上=温和 / dif拐头=中 / 双拐头=强警告),1F 尤其可靠;说明中心新增「MACD辅助判断·背驰与盘整背驰」说明卡。
v938/27MACD辅助覆盖各级别:持仓/持股卡的 MACD 辅助判断从仅 5F 扩展到日线/30F/5F 三个级别分别显示(模式2同级别分解下各级别盘整背驰都是做T关键)。
v928/27持仓卡 MACD 辅助判断:持仓/持股卡实时分析新增「MACD辅助」一行——5F 红柱较近期高点明显缩短提示上涨动能衰竭(警惕冲高回落,可减仓/倒T),绿柱缩短提示下跌动能衰竭(可持有),补充缠论背驰之外的动能观察。
v918/27凌晨巡检:清理 app4 死代码:删除 app4.html 中未被引用的 fetchKlineDailyUrl() 函数(v90 巡检已识别),保持代码库整洁;K线端点实测主源/分钟线/实时均 200 OK,备源持续 501 WAF反爬;所有 APP 引擎口径、止损规则、数据通道一致。
v908/27总览级别计数修复:实操管理总览「日线/30F/5F/1F」级别数量徽章补上手动归档过滤,避免已归档卡片仍计数导致「显示有数但无卡片」。
v898/27买点级别/筛选数量同步:市场扫描切换买点类型时同步刷新级别筛选与筛选器数量徽章,并重置残留筛选,修复「级别显示有数但列表无卡片」。
v888/27最强买点级别 + 待操作同步修复:最强买点(二三买重合)进入实操参考不再降级到次级别,保持信号级别;实操参考「清空待操作」后市场扫描端按钮同步撤销(变回进入待操作)。
v878/26市场总览加更新时间:市场温度/最强板块/资金/异动/龙虎榜/驱动因素/建议方向各卡片底部加「更新于 HH:mm」小字。
v868/26消息时间 + 观察卡归档/删除修复:消息总览每条消息/政策卡片底部加「更新于 XXXX-XX-XX HH:mm」小字;修复实操参考观察卡片右滑归档/删除唤不出按钮的层叠问题。
v858/26买卖点精简 + 红绿配色:待交易卡/归档卡的买点、卖点只显示买卖点区间(去掉背驰解释),买点红色、卖点绿色。
v848/26待交易卡止损简化:待交易卡/归档卡的止损只显示核心止损位,去掉括号里的解释文字(详情页保留完整说明)。
v838/26引擎文案统一 v3.0:buy_points.json 备注文案 v2→v3.0(源头 report.py 同步修正);记忆文件 MEMORY.md 整理去重并纳入凌晨巡检维护。
v828/26复盘卡同步个股+做T:个股复盘卡顶部自动同步个股名称/代码、净持仓、做T笔数与累计盈亏,与 5 个手动复盘模块分开。
v818/26实操卡持仓汇总:买入/卖出/做T后自动计算当前总持仓(净股数)与持仓金额(市值优先、无现价退成本口径),已清仓显示本笔盈亏。
v808/26成交额精度修复:指数三日对比成交额从长串小数改为「8572.23亿 / 1.81万亿」两位小数。
v798/26指数今日列修复:修复日期键格式不匹配导致「今日」列全 0.00%/undefin。
v788/26按钮露出修复:修复三卡折叠组底部编辑/归档/删除按钮露出的样式问题。
v778/26实时分析报错修复:修复持仓/持股卡实时分析因 fmtNow 函数未定义而报错。
v768/26做T依据自动填充:做T弹窗的「依据」字段改为缠论引擎自动填充(次级别买点→正T、卖点→倒T),无需再输代码。
v748/26个股复盘卡5项 + 盈亏定色:复盘内容增为5项(操作总结/失误点/经验收获/缠论判断对错反思/本次操作盈亏);盈利→浅红、亏损→浅绿。
v728/26实时分析 + 做T引擎判断:实操卡新增「实时分析」生成持仓/持股卡(缠论引擎按操作级别给出继续持有/准备卖出/马上卖出三态结论,三色区分);做T改为缠论引擎判断方向(次级别买点→正T、卖点→倒T),不再自由做。
v708/26实操卡新增做T记录:持仓期间按缠论次级别买卖点做T降成本——正T(先买后卖)/倒T(先卖后买),记盈亏并联动摊低持仓成本,硬止损线同步下移。
v688/26实操卡片微调:修复编辑/归档/删除按钮露出;实操卡底部加「成本-2% 硬止损」(基于买入加权均价 × 0.98);执行情况拆双——买入情况后一个执行按钮、卖出情况后一个执行按钮。
v678/26更新日志补全:v61~v66 全部补录。
v668/26实操管理大改造:档案改名「实操档案」;交易卡片三卡化(待交易卡 + 实操卡 + 个股复盘卡,折叠组、三卡异色、右滑绑定归档);实操卡买卖分批(+ 按钮)+ 完成本次交易生成复盘卡;复盘改日/周/月复盘(加号三选项 + 挂总览顶部)。
v658/26观察卡片排版改造:缠论判定 / 交易方案左对齐;三级结构参考四行化(笔/线段|中枢|背驰|支撑/压力,日线/30F/5F 全做);操作结论分行。
v648/26说明中心补买点/共振来源:市场扫描「买点模块(腾讯主源)/ 共振模块(东财主源)」数据来源与回退链。
v638/26说明中心补板块来源全景:最强/弱势板块、资金、异动、缠中说禅板块等 6 类功能的数据来源矩阵(同花顺/东财/腾讯 + 备选)。
v628/26选股口径 + 同花顺板块 + 更新时段:选股统一主板(60/00)+非ST(补板块龙头过滤);市场总览「最强板块」名称与同花顺一致;缠中说禅板块更新改为交易日 9:25~15:05 每 30 分钟。
v618/26二买操作级别降级 + 更新日志:选「日线二买」操作级别显示为 30F(次级别),30F二买→5F;修复板块卡片点击不展开 bug;综合窗新增「更新日志」。
v608/26板块→强势股→观察卡片:缠中说禅板块卡片点击展开该板块 3 只强势股(联动买点标签),勾选生成观察卡片;修复移动端点击丢失 bug。
v598/26剔除最弱二买 + 新增最强买点:最弱二买(回调跌破一买)执行时剔除;新增「最强买点」= 二买+三买重合(回调低点不破中枢上沿 ZG)。
v588/26二买/二卖级别错位修复:二买定位点改为次级别——「日线二买」= 日线一买后的 30F 回调买点(非日线自身分型回调),级别归属记操作级别、定位点在次级别。
v578/26缠论引擎按原文三处修复:二买 shrink 数据范围 bug、二买严格在一买之后、MACD 柱面积×2 提前判背驰(第24课原文)。
v568/26数据源隔离 + 引擎规则审查:后端买点/共振数据源隔离;大盘技术走势文案、底部遮挡、指数三日对比位置调整;缠论引擎买卖点规则交叉审查。
v558/26K 线 URL 格式修复:腾讯 K 线参数格式 2 逗号→3 逗号;日期显示一致性(实时数据用当天日期)。
v548/26指数数据源隔离:消息总览指数数据改用东财主源(与市场扫描腾讯主源分离);整体刷新仅刷版本号、5 APP 独立刷新。
v538/26市场总览日期徽章:各数据区块标题加日期徽章(蓝色=实时当天、黄色=盘后/快照日期)。
v528/26K 线反爬根治 + 市场总览实时化:K 线缓存+节流+退避;板块/资金/异动/龙虎榜全面实时拉取。
v518/26K 线多源回退:主源→备源自动回退 + 缓存节流退避(反爬防护)。
v508/25交易卡片结构价格区间:持仓诊断买卖点改为缠论结构价格区间(非系数)+ 背驰描述。
v498/25成本-2% 硬止损:双止损并行取更紧(结构止损 + 成本-2% 硬止损)+ K 线多源回退加固。
v488/25K 线链路全面修复:腾讯 fqkline 501 反爬 → web.ifzq kline(6 大问题根因消除)。
v478/25删除云端同步入口 + AI 识别录入修复。
v468/25数据管理汇总 + 残留清理 + 巡检升级 + 股票清单完整性修复。
v448/25三项迭代:数据管理 / 说明中心 / 每日巡检。
v1-v43早期工作台基础搭建:五大 APP 架构(实操管理 / 实操参考 / 市场扫描 / 消息总览 / 综合窗口)、统一缠论引擎(chan.py 全量移植)、localStorage 本地持久化、PWA 可安装、红黑名单 / 计划跟踪 / 归档。
注:v45、v69、v71、v73、v75 为迭代中的版本号跳号(v45 内容并入 v46;其余未独立发布),非日志遗漏。