一、 核心作战环境与底盘物理架构

  • 宿主环境: macOS + Parallels Desktop(融合模式)。在此模式下,Mac 原生截图与 Python 键盘模拟可无缝穿透并控制 Windows 版“指南针”软件。

  • 底层驱动(废弃旧版): 彻底废弃笨重且易产生“汉字幻觉”的 PaddleOCR 和 AppleScript。

  • 现役火力架构: Python + pyautogui(键盘接管) + subprocess(直调 macOS 底层 screencapture -x -R 极速切图) + pytesseract(Tesseract 轻量化纯数字光学识别) + pandas(数据清洗与矩阵生成)。

二、 光学瞄具与天眼识别铁律

  • 物理白名单防线: Tesseract 强制开启单行与纯数字模式,引擎配置锁死为:custom_config = r'--psm 7 -c tessedit_char_whitelist=0123456789.-%'

  • 准星定标纪律: 光学坐标框(记录于 tactical_coords.json)必须通过 Vim 版微调器(TargetAcquirer.py)进行手工像素级卡位,绝对禁止将任何汉字指标名称框入准星,只允许框取数字、百分号及正负号。

三、 集群扫荡与机械控制协议

  • 纵深扫描逻辑: 读取 battle_plan.json -> 模拟敲击股票代码 -> 回车锁定基准日 -> 截取半屏图 -> OCR 提取 -> 模拟按下向左方向键(pyautogui.press('left'))推移时间轴 -> 循环 N 天。

  • 准星归零机制: 纵深扫描结束后,必须模拟按下 N 次向右方向键,确保光标退回起始基准日,防止下一只股票的时间轴发生漂移。

  • 渲染冗余: 切换股票必须预留 2.5s 加载时间,单次向左推移必须预留 1.0s 数据重绘时间。

四、 情报清洗与物理定性法则

  • 化学提纯: OCR 提取的原始字符串,入库前必须强制经过正则表达式 re.sub(r'[^\d.-]', '', val) 过滤,将其榨取为纯浮点数。若解析完全失败,强制定为 NaN 并使用 ffill()/bfill() 修复,严禁将空字符或 NULL 传入 Matplotlib 绘图引擎。

  • 绝对控盘运算: 在生成最终 CSV 矩阵时,强制植入公式 。若 ,立即触发极度控盘警报