关于 python-workspace
面向处理 MetaTrader 5 和 MQL5 指标的开发者,提供市场数据导出及 MQL5 到 Python 的翻译验证工作流。指南说明自动化能力、准确性校验和接口限制。
主要功能
- 01无界面导出市场数据
- 02获取 OHLCV、RSI 和 SMA 数据
- 03验证 Python 指标计算结果
- 04根据验证结果迭代翻译
- 05说明工作流限制与故障排查
适用场景
- 01无需 GUI 导出 MetaTrader 5 行情数据
- 02将 MQL5 指标实现翻译为 Python
- 03对照 MQL5 参考结果检查 Python 指标
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ terrylica/ cc-skills --skill python-workspace安装后在 Claude Code 中输入/python-workspace确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/capabilities-detailed.mdevolution-log.mdtroubleshooting-errors.mdvalidation-metrics.mdworkflows-complete.md详细介绍
MQL5-Python 翻译工作区技能
通过自主验证和自我纠正,实现无缝的 MQL5 指标到 Python 的转换。
自我进化技能:此技能会在使用过程中不断改进。如果指令有误、参数发生偏移,或需要使用变通方法,请立即修复此文件,不要拖延。仅针对真实且可复现的问题进行更新。
何时使用此技能
当用户想要执行以下操作时,请使用此技能:
- 从 MetaTrader 5 导出市场数据或指标值
- 将 MQL5 指标转换为 Python 实现
- 根据 MQL5 参考实现验证 Python 指标的准确性
- 了解 MQL5-Python 工作流的功能和限制
- 排查常见的转换问题
激活短语:“MQL5”、“MetaTrader”、“指标转换”、“Python 验证”、“导出数据”、“mql5-crossover workspace”
核心使命
主要目标:通过以下方式,让 MQL5-Python 转换尽可能无缝:
- 自主工作流(无界面导出、CLI 编译、自动验证)
- 验证驱动的迭代(所有工作均须通过相关性 >=0.999 的门槛)
- 自我纠正(记录失败经验,避免今后重蹈覆辙)
- 明确边界(说明哪些可行、哪些不可行,并提供替代方案)
项目根目录:~/Library/Application Support/CrossOver/Bottles/MetaTrader 5/drive_c
工作区功能矩阵
此工作区可以做什么
1. 自动无界面导出市场数据(v3.0.0)
状态:生产就绪(相关性验证值为 0.999920)
功能:
- 从任意交易品种/时间周期获取 OHLCV 数据及内置指标(RSI、SMA)
- 通过 Wine Python + MetaTrader5 API 实现真正的无界面运行
- 无需初始化 GUI(支持冷启动)
- 执行时间:导出 5000 根 K 线需 6–8 秒
命令示例:
CX_BOTTLE="MetaTrader 5" \
WINEPREFIX="$HOME/Library/Application Support/CrossOver/Bottles/MetaTrader 5" \
wine "C:\\Program Files\\Python312\\python.exe" \
"C:\\users\\crossover\\export_aligned.py" \
--symbol EURUSD --period M1 --bars 5000
适用场景:用户需要在不与 GUI 交互的情况下自动导出市场数据
限制:无法访问自定义指标缓冲区(API 限制)
参考:/docs/guides/WINE_PYTHON_EXECUTION.md
参考文档
详情请参阅:
故障排除
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 未找到 Wine Python | 未安装 CrossOver/Wine | 安装 CrossOver,并验证 bottle 路径 |
| MT5 API 连接失败 | MetaTrader 未运行 | 运行导出前启动 MetaTrader 5 |
| 相关性低于 0.999 | 指标不匹配 | 验证预热周期,并检查计算是否对齐 |
| 自定义指标无法运行 | API 限制 | 使用 MT5 导出 CSV,而非 Python API |
| UnicodeDecodeError | Windows 路径编码 | 在 Wine 中为 Windows 路径使用原始字符串 |
| 未找到交易品种 | 交易品种格式错误 | 使用准确的 MT5 交易品种名称(例如 EURUSD,而非 EUR/USD) |
| 导出超时 | 请求的 K 线数量过多 | 减少 K 线数量;默认值 5000 是安全的 |
| 权限被拒绝 | Wine 前缀不正确 | 将 WINEPREFIX 设为正确的 CrossOver bottle 路径 |
执行后反思
此技能执行完毕后,关闭前请检查:
- 命令是否成功? — 如果没有,修复导致失败的指令或错误表。
- 参数或输出是否发生变化? — 如果底层工具的接口发生偏移,请更新 Usage 示例和 Parameters 表以保持一致。
- 是否需要变通方案? — 如果你不得不临时调整(更换标志、增加步骤),请更新此 SKILL.md,以便下次调用时无需采用相同的变通方案。
只有问题确实存在且可复现时才进行更新,不要基于猜测更新。
评论
支持 Markdown