Install
openclaw skills install stock-ocrClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.
从通达信金融终端窗口截取股票日K图,并使用OCR识别MA均线数值。当用户需要获取股票MA均线数值、分析均线支撑压力位、或需要对交易软件截图进行文字识别时使用此skill。触发词:MA、均线数值、截图识别、股票技术指标、通达信金融终端。
openclaw skills install stock-ocr这个skill帮助你从「通达信金融终端」窗口截取股票日K图,并自动识别提取MA5-MA60均线数值。
完整工作流程:
# 使用默认OCR引擎
python scripts/capture_ma20_v2.py 000001
# 使用百度高精度OCR (推荐)
python scripts/capture_ma20_v2.py 000001 --engine baidu
# 对比所有OCR引擎效果
python scripts/capture_ma20_v2.py 000001 --compare-ocr
# 查看可用OCR引擎
python scripts/capture_ma20_v2.py --list-engines
输出示例:
正在查找窗口:通达信金融终端
✅ 找到窗口: 通达信金融终端- [分析图表-平安银行]
步骤1: 输入股票代码 000001
✅ 已输入股票代码
步骤2: 按96切换到日K线
✅ 已切换到日K线
步骤3: 截图均线区域
区域: (0, 0) 450x100
✅ 截图成功: ma_region_20260329_120000.bmp (132.5KB)
步骤4: OCR识别MA20数值
识别结果:
MA5 12.35
MA10 12.20
MA20 11.98
MA60 11.50
📊 找到的均线数值:
MA5: 12.35
MA10: 12.20
MA20: 11.98
MA60: 11.50
✅ MA20 = 11.98
| 参数 | 说明 | 示例 |
|---|---|---|
-s, --stock-code | 必填 股票代码 | 000001, 600000, 07226 |
-w, --window-title | 窗口标题关键词(默认:金长江) | 金长江网上交易财智版 |
-o, --output | 截图保存路径 | screenshot.bmp |
--keep-screenshot | 保留截图文件 | - |
--no-ocr | 仅截图,不进行OCR识别 | - |
--delay | 输入后等待时间(秒),默认1.0 | 1.5 |
支持以下格式:
| 类型 | 格式 | 示例 |
|---|---|---|
| A股 | 6位数字 | 000001, 600000, 300750 |
| 港股 | 1-5位数字 | 00700, 07226 |
| 美股 | 1-5位字母 | AAPL, TSLA |
根据窗口标题模糊匹配「通达信金融终端」窗口。
┌─────────────────────────────────────┐
│ 通达信金融终端 │
│ ┌─────────────────────────────────┐│
│ │ [股票代码输入框] ││
│ │ 输入: 000001 ││
│ │ 按回车确认 ││
│ └─────────────────────────────────┘│
└─────────────────────────────────────┘
快捷键:96 + 回车
96 然后按回车截图窗口左上角区域(450x100像素),该区域包含均线数值:
┌─────────────────────────────────────┐
│ 日线 前复权 MA5 12.35 MA10 12.20...│ ← 截图区域
│ ┌─────────────────────────────────┐│
│ │ ││
│ │ K线图主体区域 ││
│ │ ││
│ └─────────────────────────────────┘│
└─────────────────────────────────────┘
支持多种OCR引擎,推荐使用 百度OCR高精度版 获得最佳数字识别效果。
| 引擎 | 准确率 | 成本 | 推荐度 |
|---|---|---|---|
| 百度OCR高精度 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | |
| RapidOCR | ⭐⭐⭐⭐ | 完全免费 | ⭐⭐⭐⭐ |
| Windows内置OCR | ⭐⭐⭐ | 完全免费 | ⭐⭐⭐ |
| Tesseract | ⭐⭐⭐ | 完全免费 | ⭐⭐ |
详细配置步骤请参考: OCR配置指南
百度OCR配置 (推荐):
# 方法1: 使用配置脚本 (推荐)
powershell -ExecutionPolicy Bypass -File scripts/configure_baidu_ocr.ps1 -ApiKey "your_api_key" -SecretKey "your_secret_key"
# 方法2: 手动设置环境变量
setx BAIDU_API_KEY "your_api_key"
setx BAIDU_SECRET_KEY "your_secret_key"
# 或者直接设置Access Token
setx BAIDU_ACCESS_TOKEN "your_access_token"
当前配置状态: ✅ 已配置
dNJctHLwok76vebSk8EP8aPGRapidOCR配置:
pip install rapidocr-onnxruntime
安装依赖:
# 基础依赖
pip install Pillow
# RapidOCR (可选)
pip install rapidocr-onnxruntime
症状: 提示"未找到包含 '通达信金融终端' 的窗口"
解决方法:
# 列出所有窗口
python -c "import ctypes; ..."
可能原因:
--delay 参数解决方法:
# 增加等待时间
python scripts/capture_ma20.py -s 000001 --delay 2.0
可能原因:
解决方法: 手动切换到日K线后运行:
python scripts/capture_ma20.py -s 000001 --keep-screenshot
解决方法:
python scripts/capture_ma20_v2.py 000001 --engine baidu
python scripts/capture_ma20_v2.py 000001 --compare-ocr
--keep-screenshot 保留截图检查质量查看OCR识别的原始文本,确认MA20格式。如需调整匹配模式,可修改 extract_ma20 函数。
stock-ma20-ocr/
├── SKILL.md # 本文档
├── docs/
│ └── OCR配置指南.md # OCR引擎详细配置指南
├── scripts/
│ ├── capture_ma20_v2.py # 核心脚本v2 (多OCR引擎支持)
│ ├── capture_ma20.py # 原版脚本 (OCR.space)
│ ├── ocr_engines.py # OCR引擎集成模块
│ ├── win_ocr_v2.py # Windows OCR优化版
│ ├── capture_ma20_ctypes.py # ctypes版本
│ ├── ocr_with_api.py # 在线OCR API封装
│ ├── list_windows_file.py # 列出所有窗口
│ └── test_ocr.py # OCR测试脚本
└── references/
└── ocr_config_guide.md # OCR配置参考
# 基础依赖(必需)
pip install Pillow
# 可选:更好的图片处理
pip install pywin32
可轻松扩展识别其他指标:
def extract_all_ma(text):
"""提取所有均线数值"""
import re
result = {}
patterns = {
'MA5': r'MA5[:\s]*(\d+\.?\d*)',
'MA10': r'MA10[:\s]*(\d+\.?\d*)',
'MA20': r'MA20[:\s]*(\d+\.?\d*)',
'MA60': r'MA60[:\s]*(\d+\.?\d*)',
}
for name, pattern in patterns.items():
match = re.search(pattern, text, re.IGNORECASE)
if match:
result[name] = match.group(1)
return result