核心用法
futu-trading 是基于富途牛牛 OpenAPI 的 Python 交易机器人技能,封装了完整的账户管理、行情报价和交易执行功能。用户可通过自然语言或脚本命令,实现港股市场的实时数据获取与自动化交易操作。
主要功能模块
| 模块 | 核心能力 |
|------|---------|
| **Account** | 账户信息查询、交易解锁/锁定(支持密码/md5两种认证方式) |
| **Quote** | 股票基础信息、市场状态、K线数据(实时/历史)、逐笔成交、订阅回调推送 |
| **Trade** | 下单(普通/市价)、改单、撤单、全撤,支持模拟盘(SIMULATE)与实盘(REAL)环境 |
典型工作流
1. 查询账户信息并选择目标账户
2. 获取目标标的行情快照(默认港股代码格式:HK.00700)
3. 实盘交易前调用 unlock_trade() 解锁
4. 执行订单操作,显式指定 acc_id 与 trd_env
5. 操作完成后调用 lock_trade() 锁定账户
显著优点
- 开箱即用:完整封装富途API,屏蔽底层协议细节,一行命令即可下单
- 双环境支持:内置模拟盘与实盘切换,策略验证零风险
- 实时推送:支持行情订阅回调(Quote/Orderbook),满足低延迟策略需求
- 灵活配置:密码/md5双认证、JSON配置热加载、虚拟环境隔离
潜在缺点与局限性
- 硬地域限制:当前仅支持港股(HK),A股/美股需额外适配
- 外部依赖重:必须前置运行富途OpenD守护进程,且需有效行情权限
- 无回测框架:仅提供交易执行能力,策略回测需自建或对接第三方
- 密码安全隐患:配置文件中明文存储密码/md5,存在泄露风险
- 单账户设计:多账户并发管理需自行扩展封装
适合人群
| 用户类型 | 使用场景 |
|---------|---------|
| 量化开发者 | 快速对接实盘,验证策略逻辑 |
| 个人投资者 | 自动化打新、条件单、网格交易 |
| 技术型交易员 | 自然语言生成交易指令,降低操作门槛 |
| 教育/研究 | 港股API教学、金融市场数据分析 |
常规风险
- 资金风险:实盘交易直接操作真实资金,策略bug可能导致实际亏损
- 连接稳定性:OpenD断连会导致行情中断或订单异常,需设计重连机制
- 权限过期:行情权限/交易账户状态变化需人工检查,无自动告警
- 合规风险:程序化交易需遵守香港证监会及交易所相关规定
- 密钥泄露:
json/config.json需严格管控权限,建议纳入.gitignore并加密存储
技术备注
- 运行环境:Python 3 + 虚拟环境推荐
- 安装方式:
pip install -e .可编辑模式 - 开源协议:MIT License,允许商业使用但需保留版权声明