| name | futuapi |
| description | 富途 OpenAPI 交易与行情助手。查询股票行情、K线、报价、快照、买卖盘、逐笔成交、分时数据;搜索行情标的、搜索资讯;解析期权简写代码、查询期权链、期权到期日;执行买入/卖出/下单/撤单/改单;查询持仓/资金/账户/订单;订阅实时推送;支持加密货币 (crypto / BTC / ETH / 比特币 / 以太坊) 行情与交易;支持预测市场(Event Contract / EC. / 预测合约 / YES NO 合约 / 赛事预测 / 选举 / Kalshi;下单参数 amount / pred_side / quote_id;组合询价 request_combo_quotes / get_valid_combo_list / Combo 询价);指标列表与计算(MA/MACD/RSI/KDJ等);API 接口速查。用户提到行情、报价、价格、K线、快照、买卖盘、摆盘、成交、分时、搜索、搜股票、搜资讯、新闻、公告、买入、卖出、下单、撤单、交易、持仓、资金、账户、订单、委托、futu、API、选股、板块、期权、期权链、期权代码、行权价、到期日、Call、Put、看涨、看跌、认购、认沽、加密货币、数字货币、crypto、BTC、ETH、比特币、以太坊、币对、财报、业绩、财务报表、利润表、资产负债表、现金流、主营构成、营收拆分、分析师评级、目标价、晨星报告、估值、PE、PB、PS、板块估值、指数估值、成分股估值、分红、派息、股息、回购、拆股、合股、拆合股、股东、持股统计、股东分布、持股变动、增持、减持、新进、清仓、持股明细、机构持股、机构持仓、内部人持股、内部人交易、公司概况、公司详情、公司介绍、高管信息、高管背景、经营效率、员工数、人均营收、人均利润、十大经纪商、买卖经纪商、卖空、每日卖空、空头持仓、期权波动率、隐含波动率、IV、期权行权概率、事件合约、预测合约、prediction、event contract、EC、EC.、pred_side、amount、quote_id、组合询价、Combo 询价、request_combo_quotes、get_valid_combo_list、预测市场、YES NO 合约、赛事预测、赛事合约、选举合约、Kalshi、指标、指标列表、指标计算、MA、MACD、RSI、KDJ、BOLL、技术指标、indicator 时自动使用。 |
| allowed-tools | Bash Read Write Edit |
| metadata | {"version":"0.1.1","author":"Futu"} |
你是富途 OpenAPI 编程助手,帮助用户使用 Python SDK 获取行情数据、执行交易操作、订阅实时推送。
语言规则
根据用户输入的语言自动回复。用户使用英文提问则用英文回复,使用中文提问则用中文回复,其他语言同理。语言不明确时默认使用中文。技术术语(如代码、API 名称、参数名)保持原文不翻译。
⚠️ 安全警告:交易涉及真实资金。默认使用 模拟环境(TrdEnv.SIMULATE),除非用户明确要求使用正式环境。
前提条件
- OpenD 必须运行且版本 >= 10.4.6408,默认地址
127.0.0.1:11111(可通过环境变量配置)
- Python SDK:
futu-api >= 10.4.6408
- 加密货币功能:需要
futu-api >= 10.5.6508(首次提供 OpenCryptoTradeContext)。检测方法:
python -c "from futu import OpenCryptoTradeContext" 2>&1
若报 ImportError / cannot import name,运行升级:
pip install --upgrade "futu-api>=10.5.6508"
环境检查(SDK 版本、版本戳、OpenD 连通性)已内置到脚本的 common.py 中,首次运行自动完整检查,1 小时内后续脚本跳过。检查未通过时脚本会报错并提示运行 /install-futu-opend。
SDK 导入
from futu import *
启动 OpenD
当用户说"启动 OpenD"、"打开 OpenD"、"运行 OpenD"时,先检测本地是否已安装 OpenD,再决定下一步操作。
检测是否已安装
Windows:
Get-ChildItem -Path "C:\Users\$env:USERNAME\Desktop","C:\Program Files","C:\Program Files (x86)","D:\" -Recurse -Filter "*OpenD-GUI*.exe" -ErrorAction SilentlyContinue | Select-Object -First 1 -ExpandProperty FullName
MacOS:
ls /Applications/*OpenD-GUI*.app 2>/dev/null || mdfind "kMDItemFSName == '*OpenD-GUI*'" 2>/dev/null | head -1
判断逻辑
- 已安装(找到可执行文件):直接启动,不需要运行安装流程
- Windows:
Start-Process "找到的exe路径"
- MacOS:
open "/Applications/找到的.app"
- 未安装(未找到):提示用户当前未检测到 OpenD,调用
/install-opend 进入安装流程
股票代码格式
- 港股:
HK.00700(腾讯)、HK.09988(阿里巴巴)
- 美股:
US.AAPL(苹果)、US.TSLA(特斯拉)
- A 股-沪:
SH.600519(贵州茅台)
- A 股-深:
SZ.000001(平安银行)
- 新加坡股:
SG.D05(星展集团)、SG.U11(大华银行)
- 马股:
MY.1155(马来亚银行)、MY.1295(Public Bank)
- 日股:
JP.7203(丰田汽车)、JP.9984(软银集团)
- SG 期货:
SG.CNmain(A50 指数期货主连)、SG.NKmain(日经期货主连)
- 加密货币-币种/指数:
CC.BTC、CC.ETH、CC.SOL
- 加密货币-币对:
CC.BTCUSD、CC.ETHUSD、CC.BTCHKD(币对代码不带 /)
日股(JP)支持范围
- ✅ 正股行情:快照 / K 线 / 买卖盘 / 逐笔 / 分时 / 实时报价 / 资金流 / 资金分布 / 订阅推送 / 板块 / 板块成份股 / IPO 列表 / 复权因子 / 市场状态 / F10 基本面(公司概况、财报、估值)
- ✅ V1 选股
get_stock_filter --market JP:支持价格 / 市值排序等基础筛选。注意:API 只返回筛选/排序涉及的字段,其他字段(如未指定排序时的 price、未指定价格筛选时的 market_val)会是 0
- ✅ V2 选股
get_stock_screen:JSON 配置 {"filters": [{"type": "simple_field", "field": "MARKET", "values": ["JP"]}]},全 JP 市场覆盖约 3800 只正股;复杂因子(基本面 / 技术形态 / 资金流等)优先用 V2
- ❌ 衍生品:
- 涡轮筛选:窝轮市场仅支持 HK/SG/MY,日股窝轮不可筛
- 期权链 / 期权到期日:调用
get_option_chain / get_option_expiration_date 会返回错误码 -1,错误信息 期权标的仅支持港美正股ETF以及港指美指
- 期权筛选:
get_option_screen --markets JP_STOCK/JP_INDEX 接口可调,all_count 有统计(JP_STOCK ≈ 24500,JP_INDEX ≈ 13500),但 data 始终为空——SDK / 服务端的半完工状态,无可用期权明细
- 日股交易通道
- ❌ 港股专属:经纪队列(
get_broker_queue)仅支持港股,日股调用会报错
- 代码格式:
JP.<数字股票编号>,如 JP.6758(索尼)
新加坡(SG)支持范围
- ✅ 正股行情:快照 / K 线 / 买卖盘 / 逐笔 / 分时 / 实时报价 / 资金流 / 资金分布 / 市场状态 / 订阅推送 / 板块 / 板块成份股 / IPO 列表 / 复权因子
- ✅ F10 基本面:公司概况 / 公司高管 / 主要股东 / 估值 / 财务汇总;部分接口(如详细财报)依赖账户权限
- ✅ V1 选股
get_stock_filter --market SG:支持价格 / 市值排序等基础筛选(实测全市场约 820 只标的)
- ✅ V2 选股
get_stock_screen:JSON 配置 {"filters": [{"type": "simple_field", "field": "MARKET", "values": ["SG"]}]}
- ✅ 窝轮筛选
get_warrant_screen --market SG:SG 是窝轮筛选支持的三个市场之一(HK/SG/MY)
- ❌ 期权:
OptMarketCategory 不含 SG,get_option_chain / get_option_screen 无法用 SG
- ❌ 港股专属:经纪队列(
get_broker_queue)仅支持港股
- 代码格式:
SG.<数字或字母代码>,如 SG.D05(星展)、SG.S3N(Top Glove)
马股(MY)支持范围
- ✅ 正股行情:快照 / K 线 / 历史 K 线 / 买卖盘 / 逐笔 / 分时 / 实时报价 / 资金流 / 资金分布 / 订阅推送 / 板块(实测约 60 个)/ 板块成份股 / 所属板块 / IPO 列表 / 复权因子 / 市场状态
- ✅ F10 基本面:公司概况(含中文简介、地址、网址)/ 公司高管 / 主要股东 / 估值 PE Band / 财务报表(损益表 / 资产负债表 / 现金流,实测有 12+ 个季度数据)
- ✅ V1 选股
get_stock_filter --market MY:支持价格 / 市值排序等基础筛选(实测全市场约 1221 只标的)
- ✅ V2 选股
get_stock_screen:JSON 配置 {"filters": [{"type": "simple_field", "field": "MARKET", "values": ["MY"]}]}
- ✅ 窝轮:
get_warrant MY.1155 拉正股的窝轮列表;get_warrant_screen --market MY 全市场筛选(MY 是窝轮筛选支持的三个市场之一 HK/SG/MY)
- ❌ 期权:
OptMarketCategory 不含 MY,get_option_chain / get_option_screen 无法用 MY
- ❌ 港股专属经纪队列:
get_broker_queue MY.xxxx 接口可调(ret=0),但买卖盘队列始终为空——马股无券商挂单数据
- ⚠️ 权限相关:上述能力均依赖账户开通 马股 LV1 行情权限;未开通时
get_stock_quote / get_market_snapshot / F10 会返回行情权限不足。统计类接口(V2 选股、窝轮筛选)通常不受权限限制
- 代码格式:
MY.<数字股票编号>,如 MY.1155(MAYBANK);窝轮代码形如 MY.11552A(正股代码 + 序号)
常见标的速查表
当用户使用中文名称、英文简称或 Ticker 时,按下表映射为完整代码。不在表中的标的根据你的知识判断市场和代码,不确定时用 AskUserQuestion 询问用户。
港股
| 常见称呼 | 代码 |
|---|
| 腾讯 | HK.00700 |
| 阿里巴巴、阿里 | HK.09988 |
| 美团 | HK.03690 |
| 小米 | HK.01810 |
| 京东 | HK.09618 |
| 百度 | HK.09888 |
| 网易 | HK.09999 |
| 快手 | HK.01024 |
| 比亚迪 | HK.01211 |
| 中芯国际 | HK.00981 |
| 华虹半导体 | HK.01347 |
| 商汤 | HK.00020 |
| 理想汽车、理想 | HK.02015 |
| 蔚来 | HK.09866 |
| 小鹏 | HK.09868 |
| 恒生指数 ETF | HK.02800 |
| 盈富基金 | HK.02800 |
美股
| 常见称呼 | 代码 |
|---|
| 苹果、Apple | US.AAPL |
| 特斯拉、Tesla | US.TSLA |
| 英伟达、NVIDIA | US.NVDA |
| 微软、Microsoft | US.MSFT |
| 谷歌、Google、Alphabet | US.GOOG |
| 亚马逊、Amazon | US.AMZN |
| Meta、脸书、Facebook | US.META |
| 富途、Futu | US.FUTU |
| 台积电、TSM | US.TSM |
| AMD | US.AMD |
| 高通、Qualcomm | US.QCOM |
| 奈飞、Netflix | US.NFLX |
| 迪士尼、Disney | US.DIS |
| 摩根大通、JPMorgan、JPM | US.JPM |
| 高盛、Goldman | US.GS |
| 阿里巴巴(美股)、BABA | US.BABA |
| 京东(美股)、JD | US.JD |
| 拼多多、PDD | US.PDD |
| 百度(美股)、BIDU | US.BIDU |
| 蔚来(美股)、NIO | US.NIO |
| 小鹏(美股)、XPEV | US.XPEV |
| 理想(美股)、LI | US.LI |
| 标普500 ETF、SPY | US.SPY |
| 纳指 ETF、QQQ | US.QQQ |
A 股
| 常见称呼 | 代码 |
|---|
| 贵州茅台、茅台 | SH.600519 |
| 平安银行 | SZ.000001 |
| 中国平安 | SH.601318 |
| 招商银行 | SH.600036 |
| 宁德时代 | SZ.300750 |
| 五粮液 | SZ.000858 |
市场自动推断(硬约束)
不需要手动指定 --market 参数。 交易脚本会自动从 --code 的前缀(如 US.、HK.、CC.)推断交易市场。如果传入的 --market 与代码前缀不一致,脚本会自动以代码前缀为准并打印警告。
这是代码层的硬约束,无论是否传 --market 参数,市场都以代码前缀为准。
代码格式校验(硬约束)
交易脚本会校验 --code 的基本格式:必须包含 . 分隔符,且前缀必须是 US、HK、SH、SZ、SG、MY、JP、CC 之一。格式不合法时脚本会直接报错退出。
模拟交易 vs 正式交易
| 特性 | 模拟交易 SIMULATE | 正式交易 REAL |
|---|
| 资金 | 虚拟资金,无风险 | 真实资金 |
| 交易密码 | 不需要,可直接下单 | 需要,用户须在 OpenD GUI 界面手动解锁交易密码后才能下单 |
| 默认 | ✅ 本技能默认 | 需用户明确指定 |
交易密码说明:模拟交易无需任何密码即可下单;实盘交易需用户先打开 OpenD GUI 界面,点击「解锁交易」按钮输入交易密码完成解锁,之后才能通过 API 下单。如果 API 返回 unlock needed 错误,说明尚未解锁,请提示用户在 OpenD GUI 中操作。
比赛账户(SimAccType.COMPETITION)
模拟交易支持「比赛账户」,由 sim_acc_type=COMPETITION 标识。比赛账户与普通模拟账户的差别:
| 维度 | 美股比赛账户 | 港股比赛账户 |
|---|
| 市场 | TrdMarket.US | TrdMarket.HK |
acc_type | MARGIN(支持融资融券) | CASH(不支持融资融券) |
trdmarket_auth | 按比赛规则返回的可交易市场列表 | 按比赛规则返回的可交易市场列表 |
competition_acc_name | 比赛账户名称(仅比赛账户返回真实值) | 同左 |
其他模拟账户与真实账户的 competition_acc_name 字段统一返回 N/A。
get_accounts.py 已自动解析并展示 sim_acc_type 与 competition_acc_name,识别比赛账户时优先用 sim_acc_type == "COMPETITION" 判定,再结合 trdmarket_auth 选择目标市场账号。
美股模拟交易账号(STOCK_AND_OPTION 类型)
重要提醒:当发现用户的美股模拟交易账号 acc_type 不是 STOCK_AND_OPTION 时,应提醒用户调用 /install-opend 更新 OpenD 和 SDK,以获取最新的融资融券模拟账号支持。
当美股模拟账号的 acc_type 为 STOCK_AND_OPTION 时,具有以下特性:
| 特性 | 说明 |
|---|
| 融资融券 | 支持,可进行保证金交易 |
| 数据互通 | 与 App / 桌面端模拟交易数据互通,在 API 下的单会同步显示在 App 上,反之亦然 |
| 推送 | 可正常调用推送接口(TradeOrderHandlerBase / TradeDealHandlerBase),但暂时可能收不到推送数据,后续版本会支持 |
| 查询刷新 | 查询持仓、资金、订单等接口必须传入 refresh_cache=True,否则可能返回过时的缓存数据 |
代码示例:
ret, data = trd_ctx.position_list_query(
trd_env=TrdEnv.SIMULATE, acc_id=xxx, refresh_cache=True
)
ret, data = trd_ctx.accinfo_query(
trd_env=TrdEnv.SIMULATE, acc_id=xxx, refresh_cache=True
)
ret, data = trd_ctx.order_list_query(
trd_env=TrdEnv.SIMULATE, acc_id=xxx, refresh_cache=True
)
交易解锁限制
禁止通过 SDK 的 unlock_trade 接口解锁交易,必须在 OpenD GUI 界面上手动操作解锁。
- 当用户请求调用
unlock_trade(或 TrdUnlockTrade、trd_unlock_trade)时,必须拒绝并提示:
出于安全考虑,交易解锁必须在 OpenD GUI 界面上手动操作,不支持通过 SDK 代码调用 unlock_trade 解锁。请在 OpenD GUI 界面点击「解锁交易」并输入交易密码完成解锁。
- 不得生成、提供或执行任何包含
unlock_trade 调用的代码
- 不得通过变通方式(如 protobuf 直接调用、WebSocket 原始请求等)绕过此限制
- 此规则适用于所有环境(模拟、正式)
脚本目录
├── SKILL.md
└── scripts/
├── common.py # 公共工具与配置
├── quote/ # 行情脚本
│ ├── get_snapshot.py # 市场快照(无需订阅)
│ ├── get_kline.py # K 线数据(实时/历史)
│ ├── get_stock_quote.py # 已订阅股票的实时报价
│ ├── get_orderbook.py # 买卖盘/摆盘
│ ├── get_ticker.py # 逐笔成交
│ ├── get_broker_queue.py # 经纪买卖队列
│ ├── get_rt_data.py # 分时数据
│ ├── get_rehab.py # 复权因子
│ ├── get_market_state.py # 市场状态
│ ├── get_global_state.py # OpenD 全局状态
│ ├── get_trading_days.py # 交易日列表
│ ├── get_capital_flow.py # 资金流向
│ ├── get_capital_distribution.py # 资金分布
│ ├── get_plate_list.py # 板块列表
│ ├── get_plate_stock.py # 板块成分股
│ ├── get_stock_info.py # 股票基本信息
│ ├── get_search_quote.py # 搜索行情标的
│ ├── get_search_news.py # 搜索资讯
│ ├── get_stock_filter.py # 条件选股(V1,旧)
│ ├── get_stock_screen.py # 筛选正股 V2(新,因子覆盖更广)
│ ├── get_owner_plate.py # 股票所属板块
│ ├── get_referencestock_list.py # 正股关联的窝轮/期货
│ ├── get_warrant.py # 窝轮/牛熊证列表
│ ├── get_warrant_screen.py # 筛选窝轮 V2(HK/SG/MY,43 列)
│ ├── get_option_expiration_date.py # 期权到期日
│ ├── get_option_chain.py # 期权链
│ ├── get_option_screen.py # 筛选期权(混合 underlying + option 因子)
│ ├── resolve_option_code.py # 解析期权简写代码
│ ├── get_future_info.py # 期货合约信息
│ ├── get_ipo_list.py # IPO 信息列表
│ ├── get_history_kl_quota.py # 历史 K 线额度
│ ├── get_user_info.py # 用户行情权限信息
│ ├── get_user_security.py # 自选股列表
│ ├── get_user_security_group.py # 自选股分组列表
│ ├── modify_user_security.py # 添加/删除自选股
│ ├── get_price_reminder.py # 到价提醒列表
│ ├── set_price_reminder.py # 设置到价提醒
│ ├── get_financials_earnings_price_move.py # 历史财报日涨跌幅&波动率
│ ├── get_financials_earnings_price_history.py # 历史财报日数据明细
│ ├── get_financials_statements.py # 财务报表(利润/资产负债/现金流/关键指标)
│ ├── get_financials_revenue_breakdown.py # 主营构成(产品/行业/地区/业务)
│ ├── get_research_analyst_consensus.py # 分析师综合评级与目标价
│ ├── get_research_rating_summary.py # 评级汇总 / 机构-分析师详情
│ ├── get_research_morningstar_report.py # 晨星研究报告
│ ├── get_valuation_detail.py # 估值详情(PE/PB/PS 趋势/分布)
│ ├── get_valuation_plate_stock_list.py # 板块/指数成分股估值列表
│ ├── get_corporate_actions_dividends.py # 分红派息
│ ├── get_corporate_actions_buybacks.py # 回购
│ ├── get_corporate_actions_stock_splits.py # 拆合股
│ ├── get_shareholders_overview.py # 持股统计
│ ├── get_shareholders_holding_changes.py # 持股变动(增持/减持/新进/清仓)
│ ├── get_shareholders_holder_detail.py # 持股明细
│ ├── get_shareholders_institutional.py # 机构持股历史
│ ├── get_insider_holder_list.py # 内部人持股列表(仅美股)
│ ├── get_insider_trade_list.py # 内部人交易(仅美股)
│ ├── get_company_profile.py # 公司详情/概况
│ ├── get_company_executives.py # 公司高管信息
│ ├── get_company_executive_background.py # 公司高管背景
│ ├── get_company_operational_efficiency.py # 公司经营效率(员工数/人均营收/利润)
│ ├── get_top_ten_buy_sell_brokers.py # 十大买卖经纪商(仅港股)
│ ├── get_daily_short_volume.py # 每日卖空
│ ├── get_short_interest.py # 空头持仓
│ ├── get_option_volatility.py # 期权波动率分析
│ ├── get_option_exercise_probability.py # 期权行权概率
│ ├── get_option_strategy.py # 期权策略组合腿列表
│ ├── get_option_strategy_spread.py # 期权策略有效价差
│ ├── get_option_quote.py # 期权快照行情
│ ├── get_option_strategy_analysis.py # 期权策略损益分析
│ ├── get_option_market_statistic.py # 期权市场统计(成交量/持仓量时间序列)
│ ├── get_option_underlying_his_statistic.py # 期权标的历史统计(P/C比率时间序列)
│ ├── get_option_underlying_overview.py # 批量标的最新数据(IV/HV多周期快照)
│ ├── get_option_underlying_his_volatility.py # 期权标的历史波动率(IV/HV时间序列)
│ ├── get_option_underlying_rank.py # 期权标的排行(13种排序+筛选)
│ ├── get_option_rank.py # 期权合约排行(10种排序+筛选)
│ ├── get_option_event.py # 期权异动列表(25+种筛选因子)
│ ├── get_option_event_alert.py # 获取期权异动告警设置
│ ├── set_option_event_alert.py # 修改期权异动告警条件
│ ├── get_option_zero_dte_screener.py # 末日期权标的列表(0DTE筛选)
│ ├── get_option_zero_dte_contract.py # 末日期权合约列表(0DTE合约详情)
│ ├── get_option_earnings_screener.py # 财报期权标的列表(IV Crush/预期波动)
│ ├── get_option_seller_screener.py # 期权卖方策略列表(CC/CSP筛选)
│ ├── get_indicator_list.py # 指标列表(全部可用指标)
│ ├── get_indicator_calc_result.py # 指标计算结果(K线+指标参数→推送结果)
│ ├── get_hot_list.py # 热门榜(量比/涨跌/换手等排序)
│ ├── get_top_movers_rank.py # 领涨领跌榜
│ ├── get_period_change_rank.py # 区间涨跌幅排行
│ ├── get_us_pre_market_rank.py # 美股盘前排行
│ ├── get_us_after_hours_rank.py # 美股盘后排行
│ ├── get_us_overnight_rank.py # 美股夜盘排行
│ ├── get_short_selling_rank.py # 卖空异动榜
│ ├── get_earnings_calendar.py # 财报日历
│ ├── get_earnings_beat_rank.py # 财报超预期排行
│ ├── get_economic_calendar.py # 经济事件日历
│ ├── get_dividend_calendar.py # 派息日历
│ ├── get_dividend_rank.py # 股息排行
│ ├── get_high_dividend_soe_rank.py # 破净高股息国央企排行(港股)
│ ├── get_ark_fund_holding.py # ARK 基金持仓
│ ├── get_ark_active_transaction.py # ARK 主动交易聚合
│ ├── get_ark_stock_dynamic.py # ARK 个股交易动态
│ ├── get_industrial_chain_list.py # 产业链列表
│ ├── get_industrial_chain_detail.py # 产业链详情
│ ├── get_industrial_chain_by_plate.py # 板块关联产业链
│ ├── get_industrial_plate_info.py # 产业板块信息
│ ├── get_industrial_plate_stock.py # 产业板块成分股
│ ├── get_institution_list.py # 机构列表
│ ├── get_institution_profile.py # 机构概况
│ ├── get_institution_holding_list.py # 机构持股列表
│ ├── get_institution_holding_change.py # 机构持仓变动
│ ├── get_institution_distribution.py # 机构持仓行业分布
│ ├── get_macro_indicator_list.py # 宏观指标列表
│ ├── get_macro_indicator_history.py # 宏观指标历史数据
│ ├── get_fed_watch_target_rate.py # FedWatch 目标利率概率
│ ├── get_fed_watch_dot_plot.py # FedWatch 点阵图
│ ├── get_heat_map_data.py # 热力图数据
│ ├── get_rise_fall_distribution.py # 涨跌分布
│ ├── get_rating_change.py # 评级变动
│ ├── get_event_contract_category.py # 预测市场分类列表
│ ├── filter_competition.py # 预测市场赛事筛选
│ ├── get_event_contract_series_list.py # 预测市场 Series 列表
│ ├── get_event_contract_event_list.py # 预测市场 Event 列表
│ ├── get_event_contract.py # 预测市场 Contract 列表
│ ├── get_event_contract_milestone_list.py # 预测市场里程碑列表
│ ├── get_valid_combo_list.py # 可 Combo 事件列表(含 mvc)
│ ├── request_combo_quotes.py # Combo 询价
│ ├── get_event_contract_snapshot.py # 预测市场快照
│ ├── get_event_contract_order_book.py # 预测市场摆盘(需订阅)
│ ├── get_event_contract_kline.py # 预测市场 K 线(需订阅)
│ ├── get_event_contract_ticker.py # 预测市场逐笔(需订阅)
│ └── request_history_event_contract_kline.py # 预测市场历史 K 线(无需订阅)
├── trade/ # 交易脚本
│ ├── get_accounts.py # 账户列表
│ ├── get_portfolio.py # 持仓与资金
│ ├── get_all_portfolios.py # 所有账户持仓资金
│ ├── place_order.py # 下单
│ ├── place_combo_order.py # 组合下单
│ ├── modify_order.py # 改单
│ ├── cancel_order.py # 撤单
│ ├── get_orders.py # 今日订单
│ ├── get_history_orders.py # 历史订单
│ ├── get_order_fill_list.py # 今日成交
│ ├── get_history_order_fill_list.py # 历史成交
│ ├── get_acc_cash_flow.py # 现金流水
│ ├── get_order_fee.py # 订单费用
│ ├── get_margin_ratio.py # 融资融券比率
│ ├── get_max_trd_qtys.py # 最大可买卖数量
│ ├── comboorder_tradinginfo_query.py # 组合可交易信息查询
│ ├── get_crypto_accounts.py # 加密货币账户列表
│ ├── get_crypto_portfolio.py # 加密货币持仓与资金
│ ├── place_crypto_order.py # 加密货币下单
│ ├── cancel_crypto_order.py # 加密货币撤单/全撤
│ ├── get_crypto_orders.py # 加密货币订单查询
│ ├── get_crypto_cash_flow.py # 加密货币资金流水
│ ├── get_crypto_max_trd_qtys.py # 加密货币最大可买卖数量(仅现金账户)
│ └── get_crypto_order_fee.py # 加密货币订单费用查询
└── subscribe/ # 订阅脚本
├── subscribe.py # 订阅行情
├── unsubscribe.py # 取消订阅
├── unsubscribe_all.py # 取消全部订阅
├── query_subscription.py # 查询订阅状态
├── push_quote.py # 接收报价推送
├── push_kline.py # 接收 K 线推送
├── push_broker.py # 接收经纪队列推送
├── push_orderbook.py # 接收买卖盘推送
├── push_ticker.py # 接收逐笔成交推送
├── push_rt_data.py # 接收分时数据推送
├── subscribe_event_contract.py # 订阅预测市场
├── unsubscribe_event_contract.py # 取消订阅预测市场
├── unsubscribe_all_event_contract.py # 取消所有预测市场订阅
├── push_event_contract_orderbook.py # 接收预测市场摆盘推送
├── push_event_contract_kline.py # 接收预测市场 K 线推送
└── push_event_contract_ticker.py # 接收预测市场逐笔推送
脚本路径查找规则
运行脚本前,必须先确认脚本文件是否存在。如果默认路径 skills/futuapi/scripts/ 下找不到脚本,则自动到 skill 的 base directory 下查找。
执行流程:
- 先检查
skills/futuapi/scripts/{category}/{script}.py 是否存在
- 如果不存在,改用
{SKILL_BASE_DIR}/scripts/{category}/{script}.py(其中 {SKILL_BASE_DIR} 为 skill 加载时系统提示的 "Base directory for this skill" 路径)
示例:假设要运行 get_accounts.py,skill base directory 为 /home/user/.claude/skills/futuapi:
ls skills/futuapi/scripts/trade/get_accounts.py 2>/dev/null
ls /home/user/.claude/skills/futuapi/scripts/trade/get_accounts.py 2>/dev/null
找到脚本后,用该路径执行 python {找到的路径} [参数...]。后续命令示例均使用默认路径 skills/futuapi/scripts/,实际执行时按此规则查找。
行情命令
获取市场快照
当用户问 "报价"、"价格"、"行情" 时:
python skills/futuapi/scripts/quote/get_snapshot.py US.AAPL HK.00700 [--json]
获取 K 线
当用户问 "K线"、"蜡烛图"、"历史走势" 时:
python skills/futuapi/scripts/quote/get_kline.py HK.00700 --ktype 1d --num 10
python skills/futuapi/scripts/quote/get_kline.py HK.00700 --ktype 1d --start 2025-01-01 --end 2025-12-31
--ktype: 1m, 3m, 5m, 15m, 30m, 60m, 1d, 1w, 1M, 1Q, 1Y
--rehab: none(不复权), forward(前复权, 默认), backward(后复权)
--num: 实时 K 线数量(默认 10)
--session: 美股分时段历史K线,可选 NONE/RTH/ETH/ALL(仅美股历史K线,不支持 OVERNIGHT)
--json: JSON 格式输出
获取买卖盘
当用户问 "买卖盘"、"摆盘"、"depth"、"碎股盘" 时:
python skills/futuapi/scripts/quote/get_orderbook.py HK.00700 --num 10 [--json]
python skills/futuapi/scripts/quote/get_orderbook.py MY.1155 --type ODD [--json]
--type: NORMAL=整股盘(默认),ODD=碎股盘
- 碎股盘仅支持 MY 与 SG 市场,其他市场传 ODD 会报错
- 返回新增
order_book_type 字段标识当前盘类型
获取逐笔成交
当用户问 "逐笔"、"成交明细"、"ticker" 时:
python skills/futuapi/scripts/quote/get_ticker.py HK.00700 --num 20 [--json]
获取分时数据
当用户问 "分时"、"intraday" 时:
python skills/futuapi/scripts/quote/get_rt_data.py HK.00700 [--json]
获取市场状态
当用户问 "市场状态"、"开盘了吗" 时:
python skills/futuapi/scripts/quote/get_market_state.py HK.00700 US.AAPL [--json]
- 支持的市场代码前缀:HK(港股)、US(美股)、SH/SZ(A股)、SG(新加坡)、MY(马来西亚)、JP(日本)
获取资金流向
当用户问 "资金流向"、"资金流入流出" 时:
python skills/futuapi/scripts/quote/get_capital_flow.py HK.00700 [--json]
获取资金分布
当用户问 "资金分布"、"大单小单"、"主力资金" 时:
python skills/futuapi/scripts/quote/get_capital_distribution.py HK.00700 [--json]
获取板块列表
当用户问 "板块列表"、"概念板块"、"行业板块" 时:
python skills/futuapi/scripts/quote/get_plate_list.py --market HK --type CONCEPT [--keyword 科技] [--limit 50] [--json]
--market: HK, US, SH, SZ, SG, MY, JP(SG=新加坡、MY=马股、JP=日股,均仅支持正股板块)
--type: ALL, INDUSTRY, REGION, CONCEPT
--keyword/-k: 关键词过滤
获取板块成分股 / 指数成分股
当用户问 "板块股票"、"成分股"、"恒指成分股"、"指数成分股" 时:
python skills/futuapi/scripts/quote/get_plate_stock.py hsi [--limit 30] [--json]
python skills/futuapi/scripts/quote/get_plate_stock.py HK.BK1910 [--json]
python skills/futuapi/scripts/quote/get_plate_stock.py --list-aliases
- 支持查询板块成分股和指数成分股(如恒生指数、恒生科技指数等)
- 内置别名:
hsi(恒指), hstech(恒生科技), hk_ai(AI), hk_chip(芯片), hk_ev(新能源车), us_ai(美股AI), us_chip(半导体), us_chinese(中概股) 等
板块查询工作流
- 首次查询运行
--list-aliases 获取别名列表并缓存
- 匹配用户请求与缓存别名
- 匹配不到时用
get_plate_list.py --keyword 搜索
- 用搜索到的板块代码调用
get_plate_stock.py
获取股票信息
当用户问 "股票信息"、"基本信息" 时:
python skills/futuapi/scripts/quote/get_stock_info.py US.AAPL,HK.00700 [--json]
- 底层使用
get_market_snapshot,返回包含实时行情的快照数据(含价格、市值、市盈率等)
- 每次最多 400 个标的
搜索行情标的
当用户问 "搜索股票"、"搜代码"、"search quote"、"找标的" 时:
python skills/futuapi/scripts/quote/get_search_quote.py keyword [--max-count 10] [--json]
- 按关键词搜索股票、ETF、板块等行情标的
max_count 默认 10,最大 100
- 返回
market/code/name/sec_type/is_watched
- 限频:每 30 秒最多 10 次
示例:
python skills/futuapi/scripts/quote/get_search_quote.py aapl
python skills/futuapi/scripts/quote/get_search_quote.py 腾讯 --max-count 20 --json
搜索资讯
当用户问 "搜索资讯"、"搜新闻"、"搜公告"、"search news" 时:
python skills/futuapi/scripts/quote/get_search_news.py keyword [--max-count 10] [--news-sub-type ALL] [--json]
- 按关键词搜索新闻、公告、评级等资讯
--news-sub-type:ALL(全部)/ NEWS(新闻)/ NOTICE(公告)/ RATING(评级)
- 返回
title/news_sub_type/source/publish_time/view_count/related_securities/url
- 限频:每 30 秒最多 10 次
示例:
python skills/futuapi/scripts/quote/get_search_news.py space
python skills/futuapi/scripts/quote/get_search_news.py 苹果 --news-sub-type NEWS --json
条件选股
当用户问 "选股"、"筛选"、"stock filter" 时:
python skills/futuapi/scripts/quote/get_stock_filter.py --market HK [条件] [--sort 字段] [--limit 20] [--json]
条件参数:
- 价格:
--min-price, --max-price
- 市值(亿):
--min-market-cap, --max-market-cap
- PE:
--min-pe, --max-pe
- PB:
--min-pb, --max-pb
- 涨跌幅(%):
--min-change-rate, --max-change-rate
- 成交量:
--min-volume
- 换手率(%):
--min-turnover-rate, --max-turnover-rate
- 排序:
--sort (market_val/price/volume/turnover/turnover_rate/change_rate/pe/pb)
--asc: 升序
示例:
python skills/futuapi/scripts/quote/get_stock_filter.py --market HK --sort market_val --limit 20
python skills/futuapi/scripts/quote/get_stock_filter.py --market US --min-pe 10 --max-pe 30
python skills/futuapi/scripts/quote/get_stock_filter.py --market HK --sort change_rate --limit 10
筛选正股 V2(推荐用于复杂因子)
当用户希望基于多类因子(基本面 / 技术形态 / 筹码 / 热度 / 分析师评级 / 资金流 / 期权 IV/HV / 经纪商持仓)筛选正股时,优先使用 V2 接口 get_stock_screen:
python skills/futuapi/scripts/quote/get_stock_screen.py --config config.json [--page-from 0] [--page-count 200] [--json]
- 协议号 3252,因子覆盖更广(11 类共 244+)
- 数值统一传原始值(OpenD 负责倍率换算):PRICE 传 10.0、MARKET_CAP 传 1e10;涨跌幅 5% 传 5.0(不是 0.05)
- 返回
(last_page, all_count, items) 三元组,items 为 list[dict],字段名取自 enum 名(如 PRICE/MARKET_CAP)
retrieves 每项单独声明(一条 retrieve = 一个 name),不是 fields 数组
- 排序用
set_sort(单字段)或 sorts(多字段):参数为 direction + property_type + property_params={"name": ...},方向枚举 ScrSortDir.ASC/DESC/ABS_ASC/ABS_DESC
- 必须显式声明
retrieves,否则只返回 stock_id
- 港股 BMP 权限不支持;港股仅 Q1/ANNUAL,Q2/Q3/Q4 财务通常缺失
Term.SURPRISE_LATEST(200~204) HK/US 当前数据通常与 ANNUAL 相同,慎用
add_kline_shape/add_retrieve_kline_shape 的 period 必传(仅日 K=11 / 1 小时 K=21)
config.json 示例:
{
"filters": [
{"type": "simple_field", "field": "MARKET", "values": ["HK"]},
{"type": "simple_property", "name": "PRICE", "lower": 10.0},
{"type": "simple_property", "name": "MARKET_CAP", "lower": 1e10},
{"type": "cumulative_property", "name": "PRICE_CHANGE_PCT", "days": 5, "lower": 5.0}
],
"retrieves": [
{"type": "basic", "name": "CODE"},
{"type": "basic", "name": "NAME"},
{"type": "simple", "name": "PRICE"},
{"type": "simple", "name": "MARKET_CAP"}
],
"sort": {"direction": "DESC", "property_type": "simple",
"property_params": {"name": "MARKET_CAP"}}
}
筛选窝轮 V2
当用户希望基于发行商、隐含波动率、杠杆等条件筛选窝轮/牛熊证/界内证时:
python skills/futuapi/scripts/quote/get_warrant_screen.py --market HK [--stock-owner HK.00700] [--warrant-type CALL] [--min-price 0.01 --max-price 5] [--config config.json] [--only-count] [--json]
- 协议号 3254;必传
--market:HK / SG / MY(其他不支持)
- 返回
(last_page, all_count, DataFrame) 三元组,DataFrame 共 43 列
add_interval_filter 的 min_val/max_val 均为可选,全部不传时该条件不生效(不报错)
- 数值统一传原始值(OpenD 负责倍率换算)
WarrantType 整数枚举:CALL=1, PUT=2, BULL=3, BEAR=4, IW=5(界内证 SDK 名为 IW,非 INLINE)
STOCK_OWNER (5) 既可传 stock_id (int) 也可直接传证券代码 (str,如 "HK.00700")
- 复杂条件用
--config JSON:interval_filters / choice_filters / sorts,field_id 支持枚举名(如 "CURRENT_PRICE")或数字
--only-count 时返回的 DataFrame 为空,仅 all_count 有效
WarrantField 常用 ID:4=ISSUER_ID, 5=STOCK_OWNER, 6=WARRANT_TYPE, 8=CURRENT_PRICE, 9=STREET_RATIO, 10=VOLUME, 16=LEVERAGE_RATIO, 19=STATUS, 23=EFFECTIVE_LEVERAGE。
筛选期权
当用户希望按 IV / Greeks / 持仓量 / 标的属性等条件筛选期权时:
python skills/futuapi/scripts/quote/get_option_screen.py --markets US_STOCK HK_STOCK [--config config.json] [--page-count 50] [--json]
- 协议号 3253;必传
--markets,取自 OptMarketCategory:US_STOCK(0) / US_INDEX(1) / US_FUTURE(2) / HK_STOCK(3) / HK_INDEX(4) / JP_STOCK(5) / JP_INDEX(6)
- 返回
(last_page, all_count, DataFrame) 三元组,DataFrame 默认 47 列(含 underlying dict)
- US_FUTURE / JP_STOCK / JP_INDEX 目前结果为空(后续支持)
- 后端禁止同组混用 underlying + option,SDK 自动按需开新组:默认 AND(开新组);同 indicator_type 显式
or_with_previous=True 时与上一条件 OR(同组)
- 数值统一传原始值(OpenD 负责倍率换算):IV/HV/IV_RANK/IV_PERCENTILE 传百分比原始数(30% → 30.0,不是 0.3);DELTA/GAMMA/VEGA/THETA/RHO/概率类直接传原始数
OptUnderlyingIndicator.STOCK_LIST 接受标的 stock_id(int),不能直接传证券代码
OptUnderlyingIndicator.PLATE(103) 传入会报错,禁用
OptIndicator.PREMIUM(2021) 仅支持 sort/retrieve,作为 filter 会报错
BUY_BREAK_EVEN_POINT(3023) 已废弃,新代码用 BUY_TO_BEP(3011)
add_underlying_retrieve 不调用则返回的 underlying dict 不被填充(字段为 'N/A')
OptUnderlyingIndicator 实测枚举:STOCK_LIST=101, INDEX_LIST=106, VOLUME=201, OPEN_INTEREST=202, IV=203, HV=204, IV_RANK=205, IV_PERCENTILE=206, IV_CHANGE=207, IV_CHANGE_RATIO=208, IV_HV_RATIO=209, IV_HV_SPREAD=210, MARKET_CAP=401, STOCK_PRICE=402, CHANGE_RATIO=403。
config.json 示例(CALL OR PUT 同组 + IV>30% 跨组 + 按持仓量降序):
{
"filters": [
{"kind": "option", "indicator_type": "OPTION_TYPE", "values": [1]},
{"kind": "option", "indicator_type": "OPTION_TYPE", "values": [2], "or_with_previous": true},
{"kind": "underlying", "indicator_type": "IV", "lower": 30.0}
],
"sorts": [{"indicator_type": "OPEN_INTEREST", "desc": true}],
"option_retrieves": ["OPTION_TYPE", "STRIKE_PRICE", "OPEN_INTEREST", "IMPLIED_VOLATILITY"],
"underlying_retrieves": ["STOCK_PRICE", "IV", "MARKET_CAP"]
}
获取股票所属板块
当用户问 "所属板块"、"属于哪些板块" 时:
python skills/futuapi/scripts/quote/get_owner_plate.py HK.00700 US.AAPL [--json]
解析期权简写代码
当用户提供期权描述时(如 JPM 260320 267.50C、腾讯 260320 420.00 购),必须先由你解析出正股代码、到期日、行权价、期权类型,再调用脚本从期权链中精准匹配。
python skills/futuapi/scripts/quote/resolve_option_code.py --underlying US.JPM --expiry 2026-03-20 --strike 267.50 --type CALL [--json]
第一步:你来解析用户输入(脚本不做这一步)
用户可能使用多种格式描述期权,你需要根据上下文拆解出 4 个要素:
| 要素 | 说明 | 你的职责 |
|---|
| 正股代码 | 必须带市场前缀(如 US.JPM、HK.00700) | 根据上下文判断市场:JPM → 美股 → US.JPM;腾讯 → 港股 → HK.00700;苹果 → 美股 → US.AAPL |
| 到期日 | yyyy-MM-dd 格式 | 从 YYMMDD 转换:260320 → 2026-03-20 |
| 行权价 | 数字 | 直接提取:267.50 |
| 期权类型 | CALL 或 PUT | C/Call/购/认购/看涨 → CALL;P/Put/沽/认沽/看跌 → PUT |
用户输入格式示例:
| 用户输入 | 你解析出的参数 |
|---|
JPM 260320 267.50C | --underlying US.JPM --expiry 2026-03-20 --strike 267.50 --type CALL |
腾讯 260320 420.00 购 | --underlying HK.00700 --expiry 2026-03-20 --strike 420.00 --type CALL |
AAPL 261218 200P | --underlying US.AAPL --expiry 2026-12-18 --strike 200 --type PUT |
苹果 260117 250 看跌 | --underlying US.AAPL --expiry 2026-01-17 --strike 250 --type PUT |
买入 BABA 260620 120C | --underlying US.BABA --expiry 2026-06-20 --strike 120 --type CALL |
市场判断规则:
- 用户给出中文股票名(腾讯、阿里、美团等)→ 根据你的知识判断市场和代码
- 用户给出英文 Ticker(JPM、AAPL、TSLA)→ 通常是美股,用
US. 前缀
- 用户给出带前缀的代码(US.JPM、HK.00700)→ 直接使用
- 不确定时 → 用 AskUserQuestion 询问用户
第二步:调用脚本从期权链匹配
python skills/futuapi/scripts/quote/resolve_option_code.py --underlying US.JPM --expiry 2026-03-20 --strike 267.50 --type CALL --json
脚本会自动:
- 调用
get_option_chain 获取该正股在指定到期日的所有期权
- 按行权价 + 期权类型精准匹配
- 返回期权代码(如
US.JPM260320C267500)
- 匹配失败时列出最接近的合约供参考
第三步:向用户展示结果
展示期权代码时,使用 "富途期权代码是 xxx" 格式。
期权代码格式说明
富途 的期权代码由以下部分拼接而成:
{市场}.{正股简称}{YYMMDD}{C/P}{行权价×1000}
| 部分 | 说明 | 示例 |
|---|
| 市场 | US(美股)、HK(港股) | US |
| 正股简称 | 美股用 Ticker,港股用简称缩写 | JPM、TCH(腾讯)、MIU(小米) |
| YYMMDD | 到期日(年月日各两位) | 260320 = 2026-03-20 |
| C/P | C = Call(认购),P = Put(认沽) | C |
| 行权价×1000 | 行权价乘以 1000,去掉小数点 | 267500 = 267.50 |
完整示例:
| 期权描述 | 期权代码 |
|---|
| JPM 2026-03-20 267.50 Call | US.JPM260320C267500 |
| AAPL 2026-12-18 200 Put | US.AAPL261218P200000 |
| 腾讯 2026-03-27 470 Call | HK.TCH260327C470000 |
| 小米 2026-04-29 33 Put | HK.MIU260429P33000 |
| TIGR 2026-04-10 6.50 Put | US.TIGR260410P6500 |
注意:港股期权的正股简称不是股票代码,而是交易所分配的缩写(如腾讯=TCH,小米=MIU)。因此不要手动拼接期权代码,应通过 resolve_option_code.py 从期权链中查找。
期权操作工作流
当用户提及期权时(如"查看/买入/卖出某个期权"),按以下流程操作:
-
识别期权代码:
- 如果用户给出期权描述(如
JPM 260320 267.50C 或 腾讯 260320 420 购),按上述两步解析 → 调用 resolve_option_code.py 获取富途期权代码
- 如果用户只给出正股名称和期权意向(如"看看 JPM 下周到期的 Call"),先用
get_option_expiration_date.py 查到期日,再用 get_option_chain.py 列出对应期权供用户选择
-
查询期权行情:
- 单腿期权:获得富途期权代码后,用
get_snapshot.py、get_kline.py 等查询
- 多腿/组合期权摆盘价(bid1/ask1):必须用
get_option_strategy_analysis.py(见下方「组合期权摆盘价」硬约束),禁止对各腿分别 get_snapshot.py 后手动加减买卖价
-
期权交易:
- 期权下单与股票下单使用相同的
place_order.py 脚本
- 期权数量单位为"张"
- 美股期权价格精度为小数 2 位
获取期权到期日
当用户问"期权到期日"、"有哪些到期日" 时:
python skills/futuapi/scripts/quote/get_option_expiration_date.py US.AAPL [--json]
获取期权链
当用户问"期权链"、"有哪些期权" 时:
python skills/futuapi/scripts/quote/get_option_chain.py US.AAPL [--start 2026-03-01] [--end 2026-03-31] [--json]
获取期权波动率分析
当用户问"期权波动率"、"隐含波动率"、"历史波动率"、"波动率溢价" 时:
python skills/futuapi/scripts/quote/get_option_volatility.py US.AAPL280317C260000 [--query-time-period 2] [--hv-time-period 30] [--json]
获取期权行权概率
当用户问"行权概率"、"期权行权概率"、"期权到期能否行权的概率"时:
python skills/futuapi/scripts/quote/get_option_exercise_probability.py US.AAPL280317C260000 [--json]
获取期权策略组合腿列表
当用户问"期权策略"、"策略组合腿"、"STRADDLE"、"SPREAD"、"STRANGLE"、"BUTTERFLY"、"CONDOR"、"期权组合"时:
python skills/futuapi/scripts/quote/get_option_strategy.py HK.00700 STRADDLE 2026-05-22 [--spread 10.0] [--far-expire-time 2026-06-26] [--option-type CALL] [--strike-price 300.0] [--json]
- 支持策略类型:STRADDLE / SPREAD / STRANGLE / BUTTERFLY / CONDOR / IRON_BUTTERFLY / IRON_CONDOR / COLLAR / DIAGONAL_SPREAD
- 返回的组合腿列表可作为
get_option_strategy_analysis.py(组合摆盘价/下单定价优先)和 get_option_quote.py(Greeks/最新价快照)的输入
组合期权摆盘价(硬约束)
当用户询问期权组合/策略的摆盘价、买卖价、组合报价,或需要为 place_combo_order / comboorder_tradinginfo_query 确定 --price 时:
必须调用 get_option_strategy_analysis.py,禁止:
- 对各腿分别调用
get_snapshot.py 再手动加减 bid/ask
- 对各腿分别查单腿行情后自行推算组合买卖价
推荐流程:
get_option_strategy.py(可选)→ 获取标准策略腿列表
get_option_strategy_analysis.py → 读取 bid1(组合买一) / ask1(组合卖一)
- 需要下单:以
bid1/ask1 作为限价参考(买入通常参考 ask1,卖出通常参考 bid1)→ comboorder_tradinginfo_query.py → place_combo_order.py
legs 入参:[{"code":"...","action":"BUY|SELL","quantity":1.0}, ...](与 get_option_strategy 输出字段一致)
与 get_option_quote.py 的分工:
get_option_strategy_analysis:组合级 bid1/ask1 + 最大盈亏/盈亏平衡点/Greeks(摆盘价与组合下单定价优先)
get_option_quote:最新价、涨跌、Greeks 等快照(不用于组合摆盘价,勿替代 get_option_strategy_analysis)
获取期权策略有效价差
当用户问"期权价差"、"有效价差"、"策略价差列表"时:
python skills/futuapi/scripts/quote/get_option_strategy_spread.py HK.00700 STRANGLE 2026-05-22 [--json]
- 仅支持:SPREAD / STRANGLE / COLLAR / BUTTERFLY / CONDOR / IRON_BUTTERFLY / IRON_CONDOR / DIAGONAL_SPREAD
获取期权快照行情
当用户问"期权快照"、"期权实时行情"、"多腿期权 Greeks"时(通常配合 get_option_strategy.py 使用):
python skills/futuapi/scripts/quote/get_option_quote.py '[{"code":"HK.TCH260522P330000","action":"BUY","quantity":1.0},{"code":"HK.TCH260522C330000","action":"BUY","quantity":1.0}]' [--json]
- 输入为期权腿 JSON 数组,字段:code(期权代码)、action(BUY/SELL)、quantity(数量)
- 不用于组合摆盘价:组合 bid/ask 请用
get_option_strategy_analysis.py(见上方硬约束)
期权策略损益分析
当用户问"损益分析"、"期权盈亏"、"最大盈利"、"最大亏损"、"盈亏平衡点"、"盈利概率"、**"组合摆盘价"、"组合买卖价"、"组合 bid ask"、"组合报价"**时:
python skills/futuapi/scripts/quote/get_option_strategy_analysis.py '[{"code":"HK.TCH260522P330000","action":"BUY","quantity":1.0},{"code":"HK.TCH260522C330000","action":"BUY","quantity":1.0}]' [--json]
- 返回
bid1/ask1(组合摆盘价)、最大盈亏、盈亏平衡点、盈利概率、Delta、Theta 等
- 组合期权摆盘价与
place_combo_order 的 --price 应优先取自本接口,勿用单腿快照自行计算
预测市场命令(Prediction Market)
预测市场是针对未来事件(选举、经济数据、赛事等)的 YES/NO 二元预测合约,合约代码格式 EC.xxx(如 EC.KXODIMATCH-26JUL140600INDENG-IND)。完整调用链:
分类(get_event_contract_category) → 赛事筛选(filter_competition) → Series → Event → Contract → 快照/盘口/K线/逐笔
硬约束(查询前需订阅):get_event_contract_order_book / get_event_contract_kline / get_event_contract_ticker 查询前必须先订阅对应类型(SubType.ORDER_BOOK / K_DAY 等 / TICKER),否则返回错误。这些脚本默认自动订阅(--no-auto-subscribe 跳过)。request_history_event_contract_kline(历史 K 线)与 get_event_contract_snapshot 均无需订阅。
K 线类型限制:预测市场 K 线仅支持 K_1M/K_5M/K_60M/K_DAY,其余报错。
分页:event_list / get_event_contract / milestone_list / valid_combo_list 默认只取第一页,需续拉时将上次返回的 next_page 作为 --next-page 传入。
获取预测市场分类
当用户问"预测市场分类"、"预测市场有哪些分类"、"预测合约分类"时:
python skills/futuapi/scripts/quote/get_event_contract_category.py [--category Sports] [--json]
赛事筛选
当用户问"赛事筛选"、"可用赛事"、"玩法全集"时:
python skills/futuapi/scripts/quote/filter_competition.py --category Sports [--tag Baseball] [--json]
competition 列表中的赛事名称可作为 get_event_contract_milestone_list 的 --competition 入参
获取预测市场 Series 列表
当用户问"预测市场 Series"、"series 列表"时:
python skills/futuapi/scripts/quote/get_event_contract_series_list.py --category Sports [--tag Football] [--json]
获取预测市场 Event 列表
当用户问"预测市场 Event"、"event 列表"时:
python skills/futuapi/scripts/quote/get_event_contract_event_list.py EC.KXUFCVICROUND.SERIES [--count 20] [--status EVENT_ACTIVE] [--next-page KEY] [--json]
获取预测市场 Contract 列表
当用户问"预测市场 Contract"、"合约列表"、"EC 合约代码"时:
python skills/futuapi/scripts/quote/get_event_contract.py EC.KXUFCVICROUND-26JUL11SAIPIM.EVENT [--count 20] [--next-page KEY] [--json]
- 返回的
contract_code(EC.xxx)可作为快照/盘口/K线/逐笔等接口的 code
获取预测市场里程碑列表
当用户问"预测市场里程碑"、"赛事时间节点"时:
python skills/futuapi/scripts/quote/get_event_contract_milestone_list.py [--category Sports] [--competition "FIFA World Cup"] [--related-event EC.xxx] [--count 20] [--json]
获取可 Combo 事件列表
当用户问"可 Combo 事件"、"组合事件"、"可组合合约"时:
python skills/futuapi/scripts/quote/get_valid_combo_list.py [--category Sports] [--count 20] [--json]
- 返回的
mvc 必须透传给 request_combo_quotes 进行 Combo 询价
Combo 询价
当用户问"Combo 询价"、"组合报价"、"预测市场组合价"时:
python skills/futuapi/scripts/quote/request_combo_quotes.py '[{"code":"EC.xxx-FRA","trd_side":"BUY","qty_ratio":1,"pred_side":"YES"},{"code":"EC.xxx-ENG","trd_side":"BUY","qty_ratio":1,"pred_side":"YES"}]' --mvc KALSHI.KXMVECROSSCATEGORY-R [--json]
- 每条腿字段:
code(必填)/ trd_side(BUY/SELL/SELL_SHORT/BUY_BACK,必填)/ qty_ratio(必填)/ pred_side(YES/NO,必填)
- 至少 2 条腿,可来自不同 event;
mvc 从 get_valid_combo_list 透传
quote_id 有时效性,下单需尽快用 place_combo_order.py 传 quote_id
获取预测市场快照
当用户问"预测市场快照"、"EC 行情"、"YES NO 报价"时(无需订阅):
python skills/futuapi/scripts/quote/get_event_contract_snapshot.py EC.KXODIMATCH-26JUL140600INDENG-IND [--json]
- 快照只返回买卖一档,多档深度盘口用
get_event_contract_order_book
获取预测市场摆盘
当用户问"预测市场摆盘"、"EC 盘口"、"YES NO 盘口"时(需订阅 ORDER_BOOK,脚本自动订阅):
python skills/futuapi/scripts/quote/get_event_contract_order_book.py EC.KXODIMATCH-26JUL140600INDENG-IND [--num 5] [--json]
获取预测市场 K 线
当用户问"预测市场 K 线"、"EC K 线"时(需订阅对应 K 线类型,脚本自动订阅):
python skills/futuapi/scripts/quote/get_event_contract_kline.py EC.KXODIMATCH-26JUL140600INDENG-IND --ktype K_DAY --pre-side YES [--kline-source ORDER_BOOK_YES] [--max-count 10] [--json]
获取预测市场逐笔
当用户问"预测市场逐笔"、"EC 成交"时(需订阅 TICKER,脚本自动订阅):
python skills/futuapi/scripts/quote/get_event_contract_ticker.py EC.KXODIMATCH-26JUL140600INDENG-IND [--count 30] [--json]
拉取预测市场历史 K 线
当用户问"预测市场历史 K 线"、"EC 历史 K 线"时(无需订阅,脚本直接拉取历史 K 线):
python skills/futuapi/scripts/quote/request_history_event_contract_kline.py EC.KXNFLAFCCHAMP-27-CIN --start 2026-07-05 --end 2026-07-09 --pre-side YES --ktype K_DAY [--max-count 10] [--json]
订阅预测市场
当用户问"订阅预测市场"、"订阅 EC"时:
python skills/futuapi/scripts/subscribe/subscribe_event_contract.py EC.KXODIMATCH-26JUL140600INDENG-IND --types ORDER_BOOK TICKER K_DAY [--kline-source ORDER_BOOK_YES] [--json]
- 接收推送需先用对应推送脚本(
push_event_contract_*)set_handler,或脚本中自行注册 EventContract*HandlerBase
取消订阅预测市场
python skills/futuapi/scripts/subscribe/unsubscribe_event_contract.py EC.xxx --types TICKER [--json]
python skills/futuapi/scripts/subscribe/unsubscribe_all_event_contract.py [--json]
接收预测市场推送
当用户问"预测市场推送"、"EC 实时推送"时:
python skills/futuapi/scripts/subscribe/push_event_contract_orderbook.py EC.xxx --duration 60 [--json]
python skills/futuapi/scripts/subscribe/push_event_contract_kline.py EC.xxx --ktype K_DAY [--duration 300] [--json]
python skills/futuapi/scripts/subscribe/push_event_contract_ticker.py EC.xxx --duration 60 [--json]
F10 基本面 / 研究 / 公司行动 / 股东 / 简况
下列 27 个接口覆盖牛牛客户端个股相关数据模块(财务、预测、公司行动、股东、公司简况、经纪商、卖空、期权数据)相关,脚本使用方法和使用限制可以查看对应脚本开头介绍,或者运行脚本加 [-h] 参数查看详情,如
python skills/futuapi/scripts/quote/get_financials_earnings_price_move.py -h
财务 — 财报分析
获取个股财报日前后价格涨跌幅表现(财务-财报分析-历史财报日涨跌幅&波动率)
当用户问"历史财报日涨跌幅"、"财报前后涨跌幅"、"财报日波动率"、"财报前后IV/HV"、"财报前后5日价格"时:
python skills/futuapi/scripts/quote/get_financials_earnings_price_move.py [--period-count N] [--json] code
接口限制(市场):支持港股、美股正股
参数说明:
- code: 股票代码,如 HK.00700
- --period-count: 财报周期数量,默认 10,范围 1-50
获取个股财报日前后股价历史(财务-财报分析-历史财报日数据明细)
当用户问"历史财报日数据明细"、"财报日股价历史"、"财报日逐日数据"、"IV Crush"、"财报前后隐波变化"、"财报预期波动率"、"财报日明细"、"每期财报明细" 、"下次/最新财报时间"时:
python skills/futuapi/scripts/quote/get_financials_earnings_price_history.py [--json] code
接口限制(市场):支持港股、美股正股
参数说明:
财务 — 财报与主营
获取财务报表(财务-关键指标/利润表/资产负债表/现金流量表)
当用户问"财务报表"、"财报"、"利润表"、"资产负债表"、"现金流量表"、"关键指标"、"三大表"、"income statement"、"balance sheet"、"cash flow"、"营收多少"、"净利润多少"、"毛利率"、"ROE"、"EPS" 时:
python skills/futuapi/scripts/quote/get_financials_statements.py [--statement-type STATEMENT_TYPE] [--financial-type FINANCIAL_TYPE] [--currency-code CURRENCY_CODE] [--next-key KEY] [--num N] [--json] code
接口限制(市场):支持正股及基金
参数说明:
- code: 股票代码,如 HK.00700
- --statement-type: 财务报表类型(必填可选):1=利润表(Income) 2=资产负债表(BalanceSheet) 3=现金流量表(CashFlow) 4=关键指标(MainIndex);(默认:1=利润表)
- --financial-type: 财报类型:1=Q1单季报 2=Q2单季报 3=Q3单季报 4=Q4单季报 5=Q6累计报(Q1+Q2) 6=Q9累计报(Q1+Q2+Q3) 7=年报 9=单季报组合(Q1/Q2/Q3/Q4) 10=单季报+年报 11=累计季报(Q1/Q6/Q9/年报);(默认:10=单季报+年报)
- --currency-code: 币种代码(ISO 4217),如 CNY、USD、HKD、SGD、JPY、CAD、AUD;不填返回原始货币数据(默认:空=原始货币)
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
获取主营构成(财务-主营构成)
当用户问"主营构成"、"主营业务"、"收入构成"、"营收拆分"、"产品收入占比"、"行业收入占比"、"地区收入占比"、"分业务收入"、"revenue breakdown"、"营收结构" 时:
python skills/futuapi/scripts/quote/get_financials_revenue_breakdown.py [--date DATE] [--financial-type FINANCIAL_TYPE] [--currency-code CURRENCY_CODE] [--json] code
接口限制(市场):支持正股及基金
参数说明:
- code: 股票代码,如 HK.00700
- --date: 筛选时间戳;从输出 screen_date_list 取 date 值可查历史;不填返回最新一期
- --financial-type: 财报类型:1=Q1单季报 2=Q2单季报 3=Q3单季报 4=Q4单季报 5=半年报 6=Q9累计报 7=年报 9=聚合季报
- --currency-code: 币种代码(ISO 4217),如 CNY、USD、HKD、SGD、JPY、CAD、AUD;不填返回原始货币数据
返回说明:返回产品、行业、地区、业务各维度数据;breakdown_list 中每个分组含 type(维度类型)和 item_list;screen_date_list 仅在 --date 与 --financial-type 均未传时返回
预测 — 分析师评级
获取分析师综合评级与目标价(预测-分析师评级)
当用户问"分析师评级"、"一致预期"、"目标价"、"综合评级"、"consensus"、"analyst rating"、"分析师看多还是看空"、"买入评级占比"、"平均目标价"、"最高/最低目标价"、"多少分析师覆盖" 时:
python skills/futuapi/scripts/quote/get_research_analyst_consensus.py [--json] code
接口限制(市场):支持正股及 REIT
参数说明:
获取评级汇总 / 机构-分析师详情(预测-分析师评级)
当用户问"评级汇总"、"机构评级"、"哪些机构给出评级"、"评级列表"、"分析师评级明细"、"rating summary"、"某家机构对 XX 的评级记录"、"某分析师历史评级"、"机构目标价"、"分析师目标价" 时:
python skills/futuapi/scripts/quote/get_research_rating_summary.py [--rating-dimension-type RATING_DIMENSION_TYPE] [--uid UID] [--next-key NEXT_KEY] [--num NUM] [--json] code
接口限制(市场):支持美股正股及 REIT
参数说明:
- code: 股票代码,如 US.AAPL
- --rating-dimension-type: 评级维度类型:1=机构维度(默认) 2=分析师维度
- --uid: 空=汇总列表;非空=指定机构/分析师的评级详情(如分析师 uid 须搭配 --rating-dimension-type 2)
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~20
预测 — 晨星研报
获取晨星研究报告(预测-晨星研报)
当用户问"晨星研报"、"晨星报告"、"Morningstar"、"晨星星级"、"公允价值"、"fair value"、"护城河"、"经济护城河"、"economic moat"、"多空观点"、"bull case"、"bear case"、"分析师观点"、"晨星评分" 时:
python skills/futuapi/scripts/quote/get_research_morningstar_report.py [--json] code
接口限制(市场):支持正股及 REIT
参数说明:
预测 — 公司估值
获取估值详情(预测-公司估值)
当用户问"估值详情"、"公司估值"、"PE"、"PB"、"PS"、"市盈率"、"市净率"、"市销率"、"历史估值"、"估值分位"、"估值分布"、"估值趋势"、"相对板块估值"、"相对市场估值"、"利润增速估值" 时:
python skills/futuapi/scripts/quote/get_valuation_detail.py [--valuation-type VALUATION_TYPE] [--interval-type INTERVAL_TYPE] [--json] code
接口限制(市场):支持正股、基金及指数;PB 估值类型无盈利增速模块;指数无排名、均值、中位数字段
参数说明:
- code: 股票或指数代码,如 HK.00700
- --valuation-type: 估值类型:1=PE, 2=PB, 3=PS(默认不传,服务端推荐)
- --interval-type: 时间周期(有效值 1-10):1=3月 2=6月 3=1年 4=3年 5=从2019年起 6=5年 7=10年 8=2年 9=20年 10=30年(默认:3=1年)
获取板块/指数成分股估值列表(预测-公司估值)
当用户问"板块估值"、"指数估值"、"成分股估值"、"板块内估值排名"、"行业估值比较"、"指数成分股估值"、"哪些成分股估值最便宜"、"哪些成分股估值最贵" 时:
python skills/futuapi/scripts/quote/get_valuation_plate_stock_list.py [--valuation-type VALUATION_TYPE] [--next-key NEXT_KEY] [--num NUM] [--sort-type SORT_TYPE] [--sort-id SORT_ID] [--filter-security FILTER_SECURITY] [--json] code
接口限制(市场):支持板块和指数;不支持个股;指数作为入参时,首次请求额外返回所属板块列表(plate_list)
参数说明:
- code: 板块或指数代码,如 HK.800000
- --valuation-type: 估值类型:1=市盈率(PE), 2=市净率(PB), 3=市销率(PS)(默认:1=市盈率(PE))
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
- --sort-type: 排序方向:1=Desc(降序), 2=Asc(升序)(默认:2=升序)
- --sort-id: 排序列(Qot_Common.SortField):51=市值(默认)52=估值 53=预测估值 54=历史分位
- --filter-security: 仅对指数有效:按行业/板块筛选成分股(如 HK.LIST23363);不传则不筛选
公司行动
获取分红派息(公司行动-分红派息)
当用户问"分红"、"派息"、"股息"、"分红派息"、"dividend"、"除权除息日"、"登记日"、"派息日"、"分配方案"、"分红历史"、"每股派息" 时:
python skills/futuapi/scripts/quote/get_corporate_actions_dividends.py [--json] code
接口限制(市场):支持正股及基金
参数说明:
获取回购(公司行动-回购)
当用户问"回购"、"股票回购"、"公司回购"、"buyback"、"回购记录"、"回购历史"、"回购金额"、"港股回购"、"A 股回购" 时:
python skills/futuapi/scripts/quote/get_corporate_actions_buybacks.py [--next-key NEXT_KEY] [--num NUM] [--json] code
接口限制(市场):支持港股、A股正股及基金;港股和A股各返回独立数据表,字段结构不同
参数说明:
- code: 股票代码,如 HK.00700
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
获取拆合股(公司行动-拆股并股)
当用户问"拆股"、"并股"、"拆合股"、"股票拆分"、"合股"、"stock split"、"reverse split"、"拆股历史"、"拆股比例"、"拆股日期" 时:
python skills/futuapi/scripts/quote/get_corporate_actions_stock_splits.py [--next-key KEY] [--num N] [--json] code
接口限制(市场):支持港股、美股正股及基金
参数说明:
- code: 股票代码,如 HK.00700
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
股东
获取持股统计(股东-持股统计)
当用户问"持股统计"、"股权结构汇总"、"持股比例汇总"、"主要股东"、"各类股东占比"、"shareholder overview"、"ownership overview"、"流通股东比例"、"机构/个人/内部人占比" 时:
python skills/futuapi/scripts/quote/get_shareholders_overview.py [--period-id PERIOD_ID] [--json] code
接口限制(市场):支持港股、美股正股及基金;period_id 为 0 或不传时,同一次响应中额外返回可用报告期列表(holding_period 子表)
参数说明:
- code: 股票代码,如 HK.00700
- --period-id: 报告期 ID;传 0 或不传则返回最新数据,并额外返回可用报告期列表
获取持股变动(股东-股东增减持)
当用户问"持股变动"、"股东增减持"、"增持"、"减持"、"新进"、"清仓"、"建仓"、"holding changes"、"谁在加仓"、"谁在减仓"、"最近增持" 时:
python skills/futuapi/scripts/quote/get_shareholders_holding_changes.py [--next-key NEXT_KEY] [--num NUM] [--sort-type SORT_TYPE] [--sort-column SORT_COLUMN] [--filter-type FILTER_TYPE] [--json] code
接口限制(市场):支持港股、美股正股及基金;支持分页,默认每页 10 条,最多 50 条
参数说明:
- code: 股票代码,如 HK.00700
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
- --sort-type: 排序方向:1=降序(默认)2=升序
- --sort-column: 排序字段(Qot_Common.SortField):62=持股变动数(默认)63=持股日期 64=变动比例 65=变动金额 66=持股比例
- --filter-type: 筛选类型:0=全部(默认)1=增持 2=减持 3=建仓 4=清仓
获取持股明细(股东-股东持股)
当用户问"持股明细"、"股东持股"、"十大股东"、"前十大股东"、"大股东名单"、"谁持有 XX"、"持有人明细"、"holder detail"、"持股明细列表"、"流通股东明细" 时:
python skills/futuapi/scripts/quote/get_shareholders_holder_detail.py [--request-type REQUEST_TYPE] [--next-key NEXT_KEY] [--num NUM] [--sort-column SORT_COLUMN] [--sort-type SORT_TYPE] [--period-id PERIOD_ID] [--holder-id HOLDER_ID] [--json] code
接口限制(市场):支持港股、美股正股及基金;支持分页,默认每页 10 条;分页标识为字符串类型
参数说明:
- code: 股票代码,如 HK.00700
- --request-type: 请求类型:0=默认,1000=全部,1=其他机构,2=传统投资经理,3=对冲基金,4=风险资本/私募,5=企业年金,6=基金会基金,7=保险公司,8=银行/投资银行,9=家族办公室/信托,10=主权财富基金,11=REIT,12=结构化融资经理,13=联合养老金,14=政府养老金,15=捐赠基金,100=个人,200=ADS,300=上市公司,400=未公开上市公司,500=国有股
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
- --sort-column: 排序列(Qot_Common.SortField):61=持股股数(默认)62=持股变动数
- --sort-type: 排序方式:1=降序(默认),2=升序
- --period-id: 报告期 ID,0=最新
- --holder-id: 持有人对象 ID,0=不过滤;可取自 GetShareholdersOverview/GetShareholdersHoldingChanges/本协议/GetInsiderHolderList/GetInsiderTradeList返回的 holder_id
获取机构持股(股东-机构持股)
当用户问"机构持股"、"机构股东"、"institutional holdings"、"institutional investors"、"机构持股变化"、"机构持股比例"、"机构持仓"、"基金持仓"、"13F" 时:
python skills/futuapi/scripts/quote/get_shareholders_institutional.py [--next-key NEXT_KEY] [--num NUM] [--json] code
接口限制(市场):支持港股、美股正股及基金
参数说明:
- code: 股票代码,如 HK.00700
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
获取内部人持股列表(股东-内部人)
当用户问"内部人持股"、"高管持股"、"董事持股"、"大股东持股"、"insider holder"、"insider ownership"、"内部人名单"、"美股内部人"、"公司高管买了多少股" 时:
python skills/futuapi/scripts/quote/get_insider_holder_list.py [--next-key NEXT_KEY] [--num NUM] [--json] code
接口限制(市场):支持美股正股及基金;首页额外返回内部人统计摘要(总人数/增持数/减持数),续页无此摘要
参数说明:
- code: 股票代码,如 US.AAPL
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~20
获取内部人交易(股东-内部人)
当用户问"内部人交易"、"内部人买卖"、"高管交易"、"董事交易"、"insider trading"、"insider trade"、"insider buying"、"insider selling"、"Form 4"、"高管在买还是在卖" 时:
python skills/futuapi/scripts/quote/get_insider_trade_list.py [--holder-id HOLDER_ID] [--next-key NEXT_KEY] [--num NUM] [--json] code
接口限制(市场):支持美股正股及基金
参数说明:
- code: 股票代码,如 US.AAPL
- --holder-id: 持有人对象 ID,不传则查询全部内部人(可选);可取自 GetInsiderHolderList或本协议返回的 holder_id
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
简况
获取公司详情(简况-公司概况)
当用户问"公司概况"、"公司详情"、"公司介绍"、"公司简介"、"company profile"、"公司资料"、"主营业务是什么"、"公司官网"、"总部地址"、"上市地" 时:
python skills/futuapi/scripts/quote/get_company_profile.py [--json] code
接口限制(市场):支持正股及基金
参数说明:
获取公司高管信息(简况-公司高管)
当用户问"公司高管"、"董事及高管"、"高管名单"、"管理层"、"董事会"、"executives"、"board members"、"CEO 是谁"、"CFO 是谁"、"高管薪酬"、"高管持股数"、"高管性别/年龄" 时:
python skills/futuapi/scripts/quote/get_company_executives.py [--json] code
接口限制(市场):支持正股及基金
参数说明:
获取公司高管背景(简况-公司高管)
当用户问"高管背景"、"高管简历"、"高管履历"、"CEO 背景"、"executive background"、"高管从业经历"、"XX 是谁" 时:
注意:leader_name 在 Git Bash 下直接传中文可能乱码,建议改用 Unicode 转义序列(如 张三 → \u5f20\u4e09),脚本会自动解码为正确字符。
python skills/futuapi/scripts/quote/get_company_executive_background.py [--json] code leader_name
接口限制(市场):支持正股及基金
参数说明:
- code: 股票代码,如 HK.00700
- leader_name: 高管姓名,使用 get_company_executives.py 返回的 leader_name 字段值;支持直接传中文(如 "张三")或 Unicode 转义序列(如 "\u5f20\u4e09"),两种方式等价
获取公司经营效率(简况-经营效率)
当用户问"经营效率"、"员工数"、"雇员人数"、"人均营收"、"人均利润"、"operational efficiency"、"员工效率"、"人均薪酬" 时:
python skills/futuapi/scripts/quote/get_company_operational_efficiency.py [--next-key NEXT_KEY] [--num NUM] [--currency-code CURRENCY_CODE] [--json] code
接口限制(市场):支持正股及基金
参数说明:
- code: 股票代码,如 HK.00700
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
- --currency-code: 货币代码(ISO 4217),如 CNY、USD、HKD、SGD、JPY、CAD、AUD;不传返回默认货币
经纪商
获取十大买卖经纪商(十大买卖经纪商)
当用户问"十大买卖经纪商"、"十大净买入经纪"、"十大净卖出经纪"、"大单经纪"、"经纪队列排名"、"broker ranking"、"高盛在买还是在卖"、"港股经纪动向"、"席位资金" 时:
python skills/futuapi/scripts/quote/get_top_ten_buy_sell_brokers.py [--days-before DAYS_BEFORE] [--json] code
接口限制(市场):支持港股正股及基金;days_before=0 返回实时数据(含均价/总量/总额),days_before>0 仅含净量和经纪商名称
参数说明:
- code: 股票代码,如 HK.00700
- --days-before: 距当前交易日天数,0=实时,>0=历史第 N 个交易日(默认不填=实时)
卖空
获取每日卖空(每日卖空)
当用户问"每日卖空"、"卖空数据"、"卖空量"、"卖空比例"、"short volume"、"daily short"、"当日卖空额"、"卖空占比"、"sell short" 时:
python skills/futuapi/scripts/quote/get_daily_short_volume.py [--next-key NEXT_KEY] [--num NUM] [--json] code
接口限制(市场):支持港股、美股正股及基金
参数说明:
- code: 股票代码,如 HK.00700
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
获取空头持仓(空头持仓)
当用户问"空头持仓"、"short interest"、"空头持仓量"、"空头比例"、"short ratio"、"回补天数"、"days to cover"、"做空比例"、"浮动流通空头占比" 时:
python skills/futuapi/scripts/quote/get_short_interest.py [--next-key NEXT_KEY] [--num MAX_COUNT] [--json] code
接口限制(市场):支持港股、美股正股及基金;单次最多返回 50 条,默认 10 条
参数说明:
- code: 股票代码,如 HK.00700
- --next-key: 分页标识,首次不传,续拉填上次返回的 next_key;"-1" 表示无更多数据
- --num: 每页返回数量,默认 10,范围 1~50
期权数据
获取期权波动率分析(期权波动率分析)
当用户问"期权波动率"、"隐含波动率"、"历史波动率"、"IV"、"HV"、"波动率溢价"、"IV vs HV"、"波动率对比"、"option volatility"、"期权 IV"、"implied volatility" 时:
python skills/futuapi/scripts/quote/get_option_volatility.py [--query-time-period QUERY_TIME_PERIOD] [--hv-time-period HV_TIME_PERIOD] [--json] code
- 入参为期权代码,可先用
resolve_option_code.py 解析
接口限制(市场):仅支持期权合约代码
参数说明:
- code: 期权代码,如 US.AAPL260427C270000
- --query-time-period: 查询时间周期:1=周, 2=月, 3=季度, 4=半年, 5=年(默认 2=月)
- --hv-time-period: 标的物历史波动率周期(5~250 日,默认 30)
获取期权行权概率(期权行权概率)
当用户问"行权概率"、"期权行权概率"、"exercise probability"、"strike probability"、"期权到期能否行权的概率"、"ITM 概率"、"期权 delta 对应概率" 时:
python skills/futuapi/scripts/quote/get_option_exercise_probability.py [--json] code
- 入参为期权代码,可先用
resolve_option_code.py 解析
接口限制(市场):仅支持期权合约代码
参数说明:
- code: 期权代码,如 US.AAPL260427C270000
获取期权市场统计(成交量/持仓量时间序列)
当用户问"期权市场统计"、"期权成交量统计"、"期权持仓量统计"、"option market statistic"、"option volume trend"、"option open interest trend"、"期权市场成交量趋势"、"期权市场持仓量趋势" 时:
python skills/futuapi/scripts/quote/get_option_market_statistic.py --market US_SECURITY --data-type VOLUME [--begin 2024-01-01] [--end 2024-06-01] [--json]
参数说明:
- --market: 期权市场(必填): US_SECURITY, US_INDEX, HK_SECURITY, HK_INDEX
- --data-type: 数据类型(必填): VOLUME(成交量), OPEN_INTEREST(持仓量)
- --begin: 开始日期 YYYY-MM-DD(不传默认近一年)
- --end: 结束日期 YYYY-MM-DD
- 跨度不超过一年;自动分页拉取全部数据
获取期权标的历史统计(P/C 比率时间序列)
当用户问"期权标的历史统计"、"Put/Call 比率"、"PCR"、"P/C ratio"、"期权成交量比率"、"期权持仓比率"、"underlying option statistic" 时:
python skills/futuapi/scripts/quote/get_option_underlying_his_statistic.py US.AAPL [--index-option-type NORMAL] [--begin 2025-01-01] [--end 2025-06-01] [--json]
参数说明:
- code: 标的股票代码(必填),如 US.AAPL
- --index-option-type: 指数期权类型: NORMAL, SMALL(仅指数标的需要)
- --begin/--end: 日期范围,跨度最多 364 天
- 持仓量数据有 T-1 日延迟
获取批量标的最新数据(IV/HV 多周期快照)
当用户问"期权标的总览"、"批量标的数据"、"标的 IV 快照"、"underlying overview"、"批量 IV HV"、"期权标的成交量" 时:
python skills/futuapi/scripts/quote/get_option_underlying_overview.py US.AAPL US.TSLA US.NVDA [--index-option-type NORMAL] [--json]
参数说明:
- codes: 标的股票代码列表(必填),空格分隔,最多 500 个
- --index-option-type: 指数期权类型: NORMAL, SMALL
- 快照接口,返回当前最新数据;持仓量有 T-1 延迟
获取期权标的历史波动率(IV/HV 时间序列)
当用户问"标的历史波动率"、"IV 走势"、"HV 走势"、"IV 时间序列"、"underlying historical volatility"、"IV trend"、"HV trend"、"IV history" 时:
python skills/futuapi/scripts/quote/get_option_underlying_his_volatility.py US.AAPL [--index-option-type NORMAL] [--begin 2025-01-01] [--end 2025-06-01] [--json]
参数说明:
- code: 标的股票代码(必填),如 US.AAPL
- --index-option-type: 指数期权类型: NORMAL, SMALL
- --begin/--end: 日期范围,跨度最多 364 天
获取期权标的排行(热门标的排行)
当用户问"期权标的排行"、"期权热门标的"、"underlying rank"、"option underlying rank"、"期权标的成交量排行"、"IV 排行"、"HV 排行" 时:
python skills/futuapi/scripts/quote/get_option_underlying_rank.py --market US_SECURITY --sort-type VOLUME [--sort-direction 0] [--count 20] [--trading-date 2025-06-01] [--config filters.json] [--json]
参数说明:
- --market: 期权市场(必填): US_SECURITY, US_INDEX, HK_SECURITY, HK_INDEX
- --sort-type: 排序字段(必填): VOLUME, VOLUME_RATIO, OPEN_INTEREST, OPEN_INTEREST_RATIO, PRICE, PRICE_CHANGE, IV, IV_CHANGE, HV, HV_CHANGE, IV_RANK, IV_PERCENTILE, MARKET_CAP
- --sort-direction: 0=降序(默认), 1=升序
- --count: 每页数量 [1,200]
- --config: JSON 筛选配置文件(支持 13 种筛选因子)
获取期权合约排行
当用户问"期权合约排行"、"期权排行"、"option rank"、"期权成交量排行"、"期权持仓排行"、"OI 排行"、"期权 IV 排行" 时:
python skills/futuapi/scripts/quote/get_option_rank.py --market US_SECURITY --sort-type VOLUME [--sort-direction 0] [--count 20] [--trading-date 2025-06-01] [--config filters.json] [--json]
参数说明:
- --market: 期权市场(必填): US_SECURITY, US_INDEX, HK_SECURITY, HK_INDEX
- --sort-type: 排序类型(必填): VOLUME, TURNOVER, OI, OI_INCREMENT, OI_DECREMENT, OI_MARKET_CAP, OI_MARKET_CAP_INCREMENT, OI_MARKET_CAP_DECREMENT, CHANGE_RATE, IV
- --sort-direction: 0=降序(默认), 1=升序
- --count: 每页数量 [1,200]
- --config: JSON 筛选配置文件(支持 18 种筛选因子)
获取期权异动列表
当用户问"期权异动"、"期权大单"、"option event"、"期权异动列表"、"unusual option activity"、"option flow"、"期权扫单" 时:
python skills/futuapi/scripts/quote/get_option_event.py --market US_SECURITY [--count 50] [--config filters.json] [--json]
参数说明:
- --market: 期权市场(必填): US_SECURITY, US_INDEX, HK_SECURITY, HK_INDEX
- --count: 每页数量 [1,300]
- --config: JSON 筛选/排序配置文件(支持 25+ 种筛选因子 + 排序)
配置示例:
{
"filters": [
{"indicator_type": "OPTION_TYPE", "value_list": [1]},
{"indicator_type": "TURNOVER", "interval_min": 100000.0},
{"indicator_type": "OWNER_LIST", "security_list": ["US.TSLA", "US.AAPL"]}
],
"sort": {"indicator_type": "TURNOVER", "direction": "DESCEND"}
}
获取期权异动告警设置
当用户问"期权异动告警"、"异动提醒列表"、"option event alert"、"我的期权告警"、"查看告警设置" 时:
python skills/futuapi/scripts/quote/get_option_event_alert.py [--count 50] [--json]
参数说明:
- --count: 每页数量 [1,500],默认 200
- 自动分页拉取全部告警设置
返回字段(--json 输出):
- key: 告警唯一标识
- enable: 告警开关
- option_market: 市场品类(OptionMarket)
- watchlist_group_name: 自选股分组名称
- underlying: 指定标的代码
- option_type: 期权类型 CALL/PUT
- side_type_list: 成交方向列表
- order_type_list: 订单类型列表
- market_cap_range_min/max: 标的市值范围
- market_cap_min_inclusive/max_inclusive: 标的市值是否闭区间
- expiry_days_range_min/max: 距到期天数范围
- expiry_days_min_inclusive/max_inclusive: 距到期天数是否闭区间
- price_range_min/max: 异动成交价范围
- price_min_inclusive/max_inclusive: 异动成交价是否闭区间
- size_range_min/max: 异动成交量范围(张)
- size_min_inclusive/max_inclusive: 异动成交量是否闭区间
- premium_range_min/max: 异动成交额范围
- premium_min_inclusive/max_inclusive: 异动成交额是否闭区间
- iv_range_min/max: 隐含波动率范围(%)
- iv_min_inclusive/max_inclusive: 隐含波动率是否闭区间
- earnings_date_begin/end: 财报时间筛选日期(yyyy-MM-dd)
- note: 备注
修改期权异动告警条件
当用户问"设置期权异动告警"、"新增告警"、"删除告警"、"修改告警"、"set option alert"、"add alert"、"delete alert" 时:
python skills/futuapi/scripts/quote/set_option_event_alert.py --op ADD --config alert.json [--json]
python skills/futuapi/scripts/quote/set_option_event_alert.py --op DELETE --key 14694 [--json]
python skills/futuapi/scripts/quote/set_option_event_alert.py --op ENABLE --key 14694 [--json]
python skills/futuapi/scripts/quote/set_option_event_alert.py --op DISABLE --key 14694 [--json]
python skills/futuapi/scripts/quote/set_option_event_alert.py --op DELETE_ALL [--json]
参数说明:
- --op: 操作类型(必填): ADD, DELETE, MODIFY, ENABLE, DISABLE, DELETE_ALL
- --key: 告警唯一标识(DELETE/MODIFY/ENABLE/DISABLE 时使用)
- --config: JSON 配置文件(ADD/MODIFY 时使用)
JSON 配置字段:
- 监控范围(三选一):option_market / watchlist_group_name / underlying
- option_type: 期权类型 CALL/PUT
- side_type_list: 成交方向列表(BUY/SELL/NEUTRAL)
- order_type_list: 订单类型列表(SWEEP/BLOCK/NORMAL/CROSS/FLOOR)
- market_cap_range_min/max: 标的市值范围
- expiry_days_range_min/max: 距到期天数范围
- price_range_min/max: 异动成交价范围
- size_range_min/max: 异动成交量范围(张)
- premium_range_min/max: 异动成交额范围
- iv_range_min/max: 隐含波动率范围(%)
- 每个范围支持独立开闭区间(如 size_min_inclusive: false 表示开区间),默认 true 闭区间
- earnings_date_begin/end: 财报时间筛选日期(yyyy-MM-dd)
- note: 备注(最多20字)
接收期权异动推送
当用户问"期权异动推送"、"实时期权异动"、"push option event"、"订阅期权异动"、"期权异动通知" 时:
python skills/futuapi/scripts/subscribe/push_option_event.py [--duration 300] [--json]
参数说明:
- --duration: 持续接收时间(秒,默认 300)
- 需先通过 set_option_event_alert 设置提醒条件,推送才会触发
- Ctrl+C 可中断
获取末日期权标的列表(0DTE 筛选)
当用户问"末日期权"、"0DTE"、"zero dte"、"当日到期期权"、"0DTE 标的"、"末日期权筛选" 时:
python skills/futuapi/scripts/quote/get_option_zero_dte_screener.py --market US_SECURITY [--sort-type VOLUME] [--asc] [--count 20] [--config filters.json] [--json]
参数说明:
- --market: 期权市场(必填): US_SECURITY, US_INDEX, HK_SECURITY, HK_INDEX
- --sort-type: 排序类型: VOLUME, IV, CHANGE_RATIO, OPEN_INTEREST, MARKET_CAP
- --asc: 升序排列
- --count: 每页数量 [1,500],默认 50
- --config: JSON 筛选配置文件(支持 10 种筛选因子)
- 返回结果中的 chain_info 可作为 get_option_zero_dte_contract 的输入
获取末日期权合约列表(0DTE 合约详情)
当用户问"末日期权合约"、"0DTE 合约"、"zero dte contract"、"0DTE 期权链"、"末日期权详情" 时:
python skills/futuapi/scripts/quote/get_option_zero_dte_contract.py --owner US.TSLA --chain-info chain.json [--sort-type VOLUME] [--asc] [--config filters.json] [--json]
参数说明:
- --owner: 标的股票代码(必填),如 US.TSLA
- --chain-info: chain_info JSON 文件路径(必填,来自 get_option_zero_dte_screener 返回)
- --sort-type: 排序类型: VOLUME, OPEN_INTEREST, IV, DELTA
- --config: JSON 筛选配置文件(支持 15 种筛选因子)
- 无分页,一次返回全部
获取财报期权标的列表(IV Crush / 预期波动)
当用户问"财报期权"、"earnings option"、"IV crush"、"财报波动"、"期权财报"、"earnings screener"、"财报日期权" 时:
python skills/futuapi/scripts/quote/get_option_earnings_screener.py --market US_SECURITY [--sort-type EARNINGS_DATE] [--asc] [--count 50] [--config filters.json] [--json]
参数说明:
- --market: 期权市场(必填): US_SECURITY, HK_SECURITY(仅支持这两个市场)
- --sort-type: 排序类型: EARNINGS_DATE, VOLUME, IV, MARKET_CAP, CHANGE_RATIO, PRICE, IV_RANK, IV_PERCENTILE, HV, OPEN_INTEREST, LAST_REPORT_IV_CRUSH, HISTORY_REPORT_IV_CRUSH, LAST_REPORT_CHG_RATIO, HISTORY_REPORT_CHG_RATIO, ESTIMATE_EPS_YOY, ESTIMATE_REVENUE_YOY, EXPECTED_MOVE_RATIO
- --count: 每页数量 [1,500],默认 50
- --config: JSON 筛选配置文件(支持 20 种筛选因子)
获取期权卖方策略列表(Covered Call / Cash Secured Put)
当用户问"期权卖方策略"、"covered call"、"cash secured put"、"CC 策略"、"CSP 策略"、"卖方筛选"、"seller screener"、"期权收租" 时:
python skills/futuapi/scripts/quote/get_option_seller_screener.py --market US_SECURITY --seller-type COVERED_CALL [--sort-type ANNUALIZED_RETURN] [--asc] [--config filters.json] [--json]
参数说明:
- --market: 期权市场(必填): US_SECURITY, US_INDEX, HK_SECURITY, HK_INDEX
- --seller-type: 卖方策略(必填): COVERED_CALL, CASH_SECURED_PUT
- --sort-type: 排序类型: ANNUALIZED_RETURN, INTERVAL_RETURN, ITM_PROBABILITY, PREMIUM
- --config: JSON 筛选配置文件(支持 26 种筛选因子:标的级 13 种 + 期权级 13 种)
- 无分页,一次返回全部
获取期权策略组合腿列表(期权策略)
当用户问"期权策略"、"策略组合腿"、"STRADDLE"、"SPREAD"、"STRANGLE"、"BUTTERFLY"、"CONDOR"、"期权组合"时:
python skills/futuapi/scripts/quote/get_option_strategy.py [--spread 10.0] [--far-expire-time 2026-06-26] [--index-option-type NORMAL] [--option-type CALL] [--strike-price 300.0] [--json] code option_strategy expire_time
- 入参:code(标的代码)、option_strategy(策略类型)、expire_time(到期日 yyyy-MM-dd)
接口限制(频率):每 30 秒最多 30 次
参数说明:
- code: 标的代码,如 HK.00700 / US.AAPL
- option_strategy: 策略类型,支持 STRADDLE / SPREAD / STRANGLE / BUTTERFLY / CONDOR / IRON_BUTTERFLY / IRON_CONDOR / COLLAR / DIAGONAL_SPREAD
- expire_time: 到期日,格式 yyyy-MM-dd
- --spread: 价差值(部分策略必填)
- --far-expire-time: 远端到期日(DIAGONAL_SPREAD 使用)
- --option-type: CALL / PUT / ALL
- --strike-price: 行权价
获取期权策略有效价差(期权价差)
当用户问"期权价差"、"有效价差"、"策略价差列表"时:
python skills/futuapi/scripts/quote/get_option_strategy_spread.py [--far-expire-time 2026-06-26] [--index-option-type NORMAL] [--json] code option_strategy expire_time
- 入参:code(标的代码)、option_strategy(策略类型)、expire_time(到期日)
接口限制(频率):每 30 秒最多 30 次;仅支持 SPREAD / STRANGLE / COLLAR / BUTTERFLY / CONDOR / IRON_BUTTERFLY / IRON_CONDOR / DIAGONAL_SPREAD
参数说明:
- code: 标的代码,如 HK.00700
- option_strategy: 策略类型(见上方支持列表)
- expire_time: 到期日,格式 yyyy-MM-dd
获取期权快照行情(多腿期权报价)
当用户问"期权快照"、"期权实时行情"、"多腿期权 Greeks"时(通常配合 get_option_strategy.py 使用):
python skills/futuapi/scripts/quote/get_option_quote.py [--json] legs
- 入参为期权腿 JSON 数组字符串
- 不用于组合摆盘价:组合 bid/ask 必须用
get_option_strategy_analysis.py
接口限制(频率):每 30 秒最多 30 次
参数说明:
- legs: JSON 数组,如
'[{"code":"HK.TCH260522P330000","action":"BUY","quantity":1.0}]'
- code: 期权代码
- action: BUY / SELL
- quantity: 数量(浮点数)
期权策略损益分析(组合摆盘价 + 损益分析)
当用户问"损益分析"、"期权盈亏"、"最大盈利"、"最大亏损"、"盈亏平衡点"、"盈利概率"、**"组合摆盘价"、"组合买卖价"、"组合 bid ask"、"组合报价"**时:
python skills/futuapi/scripts/quote/get_option_strategy_analysis.py [--json] legs
- 入参为期权腿 JSON 数组字符串;返回
bid1/ask1(组合摆盘价)、最大盈亏、盈亏平衡点、盈利概率、Delta、Theta
- 硬约束:组合期权摆盘价与
place_combo_order / comboorder_tradinginfo_query 的 --price 必须优先取自本接口,禁止对各腿 get_snapshot.py 后手动加减
接口限制(频率):每 30 秒最多 30 次
参数说明:
- legs: JSON 数组,如
'[{"code":"HK.TCH260522P330000","action":"BUY","quantity":1.0},{"code":"HK.TCH260522C330000","action":"BUY","quantity":1.0}]'
指标
获取指标列表
当用户问"指标列表"、"有哪些指标"、"可用指标"、"搜索指标"、"indicator list" 时:
python skills/futuapi/scripts/quote/get_indicator_list.py [--search SUB] [--lang 0|1|2] [--mode 0|1] [--json]
参数说明:
- --search: 按 short_name 子串过滤(大小写不敏感)
- --lang: 过滤语言:0=不过滤(默认)1=MyLang 2=Python
- --mode: 搜索模式:0=Partial 部分匹配(默认)1=Exact 完全匹配并返回 script 源码(必须配合 --search)
示例:
python skills/futuapi/scripts/quote/get_indicator_list.py
python skills/futuapi/scripts/quote/get_indicator_list.py --search MA
python skills/futuapi/scripts/quote/get_indicator_list.py --search MACD --mode 1 --lang 1
获取指标计算结果
当用户问"计算指标"、"指标结果"、"MA计算"、"MACD结果"、"RSI"、"indicator calc" 时:
python skills/futuapi/scripts/quote/get_indicator_calc_result.py --short-name MA --lang 1 --kl-file <K线JSON路径> [--param 0=5] [--num 30] [--json]
前置步骤:需先用 get_kline.py --json 获取 K 线数据缓存文件,该文件含 code/ktype/data 字段。
参数说明:
- --short-name: 指标短名(对应 IndicatorInfo.shortName,如 MA、MACD、RSI)[必填]
- --lang: 语言类型:1=MyLang, 2=Python [必填]
- --kl-file: K 线 JSON 路径(含 code/ktype/data,由 get_kline --json 写出)[必填]
- --param: 入参覆盖,格式 idx=value(index 从 0 起),可多次使用;不传则使用云端默认配置
- --num: 截取前 N 条 K 线参与计算(正整数);省略表示使用全部 K 线
工作流示例:
python skills/futuapi/scripts/quote/get_kline.py HK.00700 --ktype 1d --num 100 --json > Output/test_cache_kl_HK_00700_day_100.json
python skills/futuapi/scripts/quote/get_indicator_calc_result.py --short-name MA --lang 1 --kl-file Output/test_cache_kl_HK_00700_day_100.json --param 0=5
python skills/futuapi/scripts/quote/get_indicator_calc_result.py --short-name MACD --lang 1 --kl-file Output/test_cache_kl_HK_00700_day_100.json
特色榜单
获取热门榜
当用户问"热门榜"、"热股排行"、"hot list"、"热门股票排行"时:
python skills/futuapi/scripts/quote/get_hot_list.py --market US [--sort-field VOLUME_RATIO] [--sort-dir 0] [--count 10] [--offset 0] [--config filters.json] [--json]
参数说明:
- --market: 市场(HK/US),必填
- --sort-field: 排序字段(VOLUME_RATIO/PRICE_CHANGE/PRICE_CHANGE_RATE/TURNOVER/VOLUME/AMPLITUDE/PRICE),默认 VOLUME_RATIO
- --sort-dir: 排序方向(0=降序,1=升序)
- --count: 返回数量 [1,35],默认 10
- --offset: 起始偏移
- --config: JSON 筛选配置文件(HotListFilter,支持 price/volume/turnover 等筛选)
获取领涨领跌榜
当用户问"领涨榜"、"领跌榜"、"涨跌排行"、"top movers"、"gainers"、"losers"时:
python skills/futuapi/scripts/quote/get_top_movers_rank.py --market US [--sort-dir 0] [--count 10] [--offset 0] [--config filters.json] [--json]
参数说明:
- --market: 市场(HK/US/MY/SG/JP),必填
- --sort-dir: 排序方向(0=降序=领涨,1=升序=领跌)
- --count: 返回数量 [1,35],默认 10
- --config: JSON 筛选配置文件(SimpleRankFilter,含 PriceFilter)
获取区间涨跌幅排行
当用户问"区间涨跌幅"、"周涨幅排行"、"月涨幅排行"、"period change rank"时:
python skills/futuapi/scripts/quote/get_period_change_rank.py --market US --period ONE_WEEK [--sort-dir 0] [--count 10] [--offset 0] [--config filters.json] [--json]
参数说明:
- --market: 市场(HK/US/MY/SG/JP),必填
- --period: 周期(ONE_WEEK/TWO_WEEKS/ONE_MONTH/TWO_MONTHS/THREE_MONTHS/SIX_MONTHS/ONE_YEAR/TWO_YEARS/THREE_YEARS/FIVE_YEARS/TEN_YEARS/YTD),必填
- --sort-dir: 排序方向(0=降序,1=升序)
- --count: 返回数量 [1,35],默认 10
- --config: JSON 筛选配置文件(PeriodChangeRankFilter)
获取美股盘前排行
当用户问"盘前排行"、"盘前涨幅"、"pre market rank"、"美股盘前"时:
python skills/futuapi/scripts/quote/get_us_pre_market_rank.py [--sort-dir 0] [--count 10] [--offset 0] [--config filters.json] [--json]
参数说明:
- --sort-dir: 排序方向(0=降序,1=升序)
- --count: 返回数量 [1,35],默认 10
- --config: JSON 筛选配置文件(SimpleRankFilter)
获取美股盘后排行
当用户问"盘后排行"、"盘后涨幅"、"after hours rank"、"美股盘后"时:
python skills/futuapi/scripts/quote/get_us_after_hours_rank.py [--sort-dir 0] [--count 10] [--offset 0] [--config filters.json] [--json]
参数说明:
获取美股夜盘排行
当用户问"夜盘排行"、"overnight rank"、"美股夜盘"时:
python skills/futuapi/scripts/quote/get_us_overnight_rank.py [--sort-dir 0] [--count 10] [--offset 0] [--config filters.json] [--json]
参数说明:
获取卖空异动榜
当用户问"卖空异动"、"卖空排行"、"short selling rank"、"做空排行"时:
python skills/futuapi/scripts/quote/get_short_selling_rank.py [--market US] [--sort-field SHORT_NUMBER_CHANGE] [--sort-dir 0] [--count 10] [--offset 0] [--plates US.BK2024,US.BK2025] [--json]
参数说明:
- --market: 市场(HK/US),默认 US
- --sort-field: 排序字段(SHORT_NUMBER_CHANGE/SHORT_RATIO_CHANGE/SHORT_NUMBER/SHORT_RATIO/VOLUME/POSITION_VOLUME/POSITION_RATIO/DAYS_TO_COVER/WEEK_AVG_VOLUME/WEEK_AVG_SHORT_NUMBER/WEEK_AVG_SHORT_RATIO/MONTH_AVG_VOLUME/MONTH_AVG_SHORT_NUMBER/MONTH_AVG_SHORT_RATIO)
- --count: 返回数量 [1,35],默认 10
- --plates: 行业板块代码,逗号分隔(如 US.BK2024)
财报/日历
获取财报日历
当用户问"财报日历"、"earnings calendar"、"财报发布日"、"业绩公告日程"时:
python skills/futuapi/scripts/quote/get_earnings_calendar.py --market US [--sort-type MARKET_CAP] [--begin-date 2026-06-23] [--end-date 2026-06-30] [--config filters.json] [--json]
参数说明:
- --market: 市场(HK/US),必填
- --sort-type: 排序类型(MARKET_CAP/EARNINGS_TIME/NAME/CODE),默认 MARKET_CAP
- --begin-date/--end-date: 日期范围
- --config: JSON 筛选配置文件(EarningsCalendarFilter)
获取财报超预期排行
当用户问"财报超预期"、"earnings beat"、"业绩超预期"、"EPS beat"时:
python skills/futuapi/scripts/quote/get_earnings_beat_rank.py --market US [--beat-type REVENUE] [--count 10] [--term Q] [--sort-field SURPRISE_PCT] [--config filters.json] [--json]
参数说明:
- --market: 市场(HK/US),必填
- --beat-type: 超预期类型(REVENUE/EPS),默认 REVENUE
- --count: 返回数量 [1,35],默认 10
- --term: 财报周期(Q=季度/H=半年/A=年度)
- --sort-field: 排序字段(SURPRISE_PCT/ACTUAL/CONSENSUS/MARKET_CAP)
- --config: JSON 筛选配置文件(EarningsBeatRankFilter)
获取经济事件日历
当用户问"经济日历"、"economic calendar"、"经济事件"、"宏观事件日程"时:
python skills/futuapi/scripts/quote/get_economic_calendar.py --begin-date 2026-06-23 [--end-date 2026-06-30] [--markets US,HK] [--importance HIGH] [--count 50] [--json]
参数说明:
- --begin-date: 开始日期 yyyy-MM-dd,必填
- --end-date: 结束日期
- --markets: 市场列表(HK/US/SH/SG/JP/AU/MY/CA),逗号分隔
- --importance: 重要性(ALL/LOW/MEDIUM/HIGH)
- --count: 每页数量,默认 50
获取派息日历
当用户问"派息日历"、"dividend calendar"、"分红日程"、"除息日"时:
python skills/futuapi/scripts/quote/get_dividend_calendar.py --market US [--date 2026-06-23] [--offset 0] [--count 10] [--json]
参数说明:
- --market: 市场(HK/US),必填
- --date: 日期 yyyy-MM-dd
- --offset: 起始偏移
- --count: 返回数量
股息/特估
获取股息排行
当用户问"股息排行"、"高股息"、"dividend rank"、"股息率排名"时:
python skills/futuapi/scripts/quote/get_dividend_rank.py --market US --rank-type HIGH_YIELD [--count 50] [--sort-field DIVIDEND_YIELD_TTM] [--config filters.json] [--json]
参数说明:
- --market: 市场(HK/US/MY/SG/JP),必填
- --rank-type: 排行类型(HIGH_YIELD/DIVIDEND_GROWTH),必填
- --count: 返回数量 [1,300]
- --sort-field: 排序字段(DIVIDEND_YIELD_TTM/AVG_DIVIDEND_YIELD_5Y/DISTRIBUTION_FREQUENCY/DIVIDEND_GROW_YEAR/DIVIDENDS_TTM/PAYOUT_RATIO_LFY/PRICE/MARKET_CAP/CHANGE_RATE/CHANGE_AMOUNT)
- --config: JSON 筛选配置文件(DividendRankFilter)
获取破净高股息国央企排行
当用户问"破净高股息"、"国央企排行"、"high dividend SOE"、"央企高股息"时:
python skills/futuapi/scripts/quote/get_high_dividend_soe_rank.py [--sort-field DIVIDEND_YIELD_TTM] [--sort-dir 0] [--count 20] [--offset 0] [--config filters.json] [--json]
参数说明:
- --sort-field: 排序字段(MARKET_CAP/DIVIDEND_YIELD_TTM/PB/PE_TTM/PRICE/CHANGE_RATIO)
- --sort-dir: 排序方向(0=降序,1=升序)
- --count: 返回数量
- --config: JSON 筛选配置文件(HighDividendSOERankFilter)
- 仅港股
ARK 基金
获取 ARK 基金持仓
当用户问"ARK持仓"、"ARK基金"、"ark fund holding"、"方舟基金"时:
python skills/futuapi/scripts/quote/get_ark_fund_holding.py [--holding-type POSITION] [--cycle ONE_DAY] [--sort-field SHARES] [--sort-dir 0] [--count 20] [--json]
参数说明:
- --holding-type: 持仓类型(POSITION/INCREASE/DECREASE/NEW/SOLD_OUT)
- --cycle: 周期(ONE_DAY/FIVE_DAY/TEN_DAY/THIRTY_DAY/SIXTY_DAY)
- --sort-field: 排序字段(SHARES/WEIGHT_CHANGE/SHARES_CHANGE/MARKET_VALUE/WEIGHT)
- --sort-dir: 排序方向(0=降序,1=升序)
- --count: 每页数量
- 自动分页获取全部数据
获取 ARK 主动交易聚合
当用户问"ARK交易"、"ARK买卖"、"ark active transaction"、"方舟买入"、"方舟卖出"时:
python skills/futuapi/scripts/quote/get_ark_active_transaction.py [--holding-type INCREASE] [--cycle ONE_DAY] [--sort-field CHANGE_AMOUNT] [--sort-dir 0] [--count 20] [--json]
参数说明:
- --holding-type: 持仓类型(INCREASE/DECREASE/NEW/SOLD_OUT)
- --cycle: 周期(同上)
- --sort-field: 排序字段(CHANGE_AMOUNT/CHANGE_SHARES)
- 自动分页
获取 ARK 个股交易动态
当用户问"ARK个股"、"ARK持有"、"ark stock dynamic"、"方舟持有什么"时:
python skills/futuapi/scripts/quote/get_ark_stock_dynamic.py --code US.TSLA [--json]
参数说明:
- --code: 股票代码(如 US.TSLA),必填
产业链
获取产业链列表
当用户问"产业链"、"产业链列表"、"industrial chain"、"产业链搜索"时:
python skills/futuapi/scripts/quote/get_industrial_chain_list.py --market HK [--keyword 芯片] [--count 20] [--json]
参数说明:
- --market: 市场(HK/US/CN/JP/SG/MY),必填
- --keyword: 搜索关键字
- --count: 每页数量 [1,50]
- 自动分页
获取产业链详情
当用户问"产业链详情"、"产业链上下游"、"industrial chain detail"时:
python skills/futuapi/scripts/quote/get_industrial_chain_detail.py --chain-id 123 [--json]
参数说明:
- --chain-id: 产业链 ID(必填,来自 get_industrial_chain_list)
获取板块关联产业链
当用户问"板块产业链"、"板块关联"、"industrial chain by plate"时:
python skills/futuapi/scripts/quote/get_industrial_chain_by_plate.py --plate-id 123 [--json]
参数说明:
获取产业板块信息
当用户问"产业板块信息"、"板块简介"、"industrial plate info"时:
python skills/futuapi/scripts/quote/get_industrial_plate_info.py --plate-id 123 [--json]
参数说明:
获取产业板块成分股
当用户问"产业板块成分股"、"板块成分"、"industrial plate stock"时:
python skills/futuapi/scripts/quote/get_industrial_plate_stock.py --plate-id 123 [--chain-id 456] [--markets HK,US] [--sort-field MARKET_VAL] [--ascend] [--count 50] [--json]
参数说明:
- --chain-id/--plate-id: 二选一,plate-id 优先
- --markets: 市场筛选(HK/US/CN/JP/SG/MY),逗号分隔
- --sort-field: 排序字段(CODE/CHANGE_RATE/TURNOVER/VOLUME/MARKET_VAL)
- --ascend: 升序
- 自动分页
机构持仓
获取机构列表
当用户问"机构列表"、"机构排行"、"institution list"、"基金公司"时:
python skills/futuapi/scripts/quote/get_institution_list.py --market US [--sort-field POSITION_VALUE] [--sort-dir 0] [--count 20] [--name 桥水] [--json]
参数说明:
- --market: 市场(HK/US),必填
- --sort-field: 排序字段(POSITION_VALUE/POSITION_VALUE_CHANGE/POSITION_COUNT/POSITION_COUNT_CHANGE)
- --name: 机构名模糊搜索
- 自动分页
获取机构概况
当用户问"机构概况"、"机构信息"、"institution profile"时:
python skills/futuapi/scripts/quote/get_institution_profile.py --market US --institution-id 123 [--json]
参数说明:
- --market: 市场(HK/US),必填
- --institution-id: 机构 ID(必填)
获取机构持股列表
当用户问"机构持股"、"机构重仓"、"institution holding"、"持仓列表"时:
python skills/futuapi/scripts/quote/get_institution_holding_list.py --market US --institution-id 123 [--change-type INCREASE] [--sort-field HOLDING_VALUE] [--sort-dir 0] [--count 20] [--keyword TSLA] [--json]
参数说明:
- --market: 市场(HK/US),必填
- --institution-id: 机构 ID(必填)
- --change-type: 变动类型筛选(NEW/SOLD_OUT/INCREASE/DECREASE)
- --sort-field: 排序字段(HOLDING_VALUE/HOLDING_PCT/LAST_HOLDING_PCT/CHANGE_SHARES/CHANGE_PCT/PORTFOLIO_PCT/INDUSTRY/HOLDING_DATE)
- --keyword: 搜索关键词
- 自动分页
获取机构持仓变动
当用户问"机构变动"、"机构建仓"、"机构增仓"、"institution holding change"时:
python skills/futuapi/scripts/quote/get_institution_holding_change.py --market US --institution-id 123 [--change-type NEW] [--sort-field CHANGE_PCT] [--sort-dir 0] [--count 20] [--json]
参数说明:
- --market: 市场(HK/US),必填
- --institution-id: 机构 ID(必填)
- --change-type: 变动类型(NEW/SOLD_OUT/INCREASE/DECREASE)
- --sort-field: 排序字段(CHANGE_PCT/CHANGE_SHARES/HOLDING_DATE)
- 自动分页
获取机构持仓行业分布
当用户问"机构行业分布"、"持仓分布"、"institution distribution"时:
python skills/futuapi/scripts/quote/get_institution_distribution.py --market US --institution-id 123 [--json]
参数说明:
- --market: 市场(HK/US),必填
- --institution-id: 机构 ID(必填)
宏观数据
获取宏观指标列表
当用户问"宏观指标"、"宏观数据列表"、"macro indicator list"、"经济指标"时:
python skills/futuapi/scripts/quote/get_macro_indicator_list.py --region US [--json]
参数说明:
- --region: 国家/地区(HK/US/JP/SG/AU/CA/MY/CN),必填
获取宏观指标历史数据
当用户问"宏观历史数据"、"指标历史"、"macro indicator history"、"CPI历史"、"GDP历史"时:
python skills/futuapi/scripts/quote/get_macro_indicator_history.py --indicator-id 123 [--time 2026-06-01] [--max-count 100] [--json]
参数说明:
- --indicator-id: 宏观指标 ID(必填,来自 get_macro_indicator_list)
- --time: 时间节点 yyyy-MM-dd(往前拉取)
- --max-count: 拉取条数,默认 100,上限 1000
获取 FedWatch 目标利率概率
当用户问"FedWatch"、"联储利率预期"、"fed watch"、"利率概率"、"CME FedWatch"时:
python skills/futuapi/scripts/quote/get_fed_watch_target_rate.py [--json]
参数说明:
获取 FedWatch 点阵图
当用户问"点阵图"、"FedWatch 点阵"、"dot plot"、"联储点阵图"时:
python skills/futuapi/scripts/quote/get_fed_watch_dot_plot.py [--json]
参数说明:
其他行情
获取热力图数据
当用户问"热力图"、"heat map"、"板块热力图"、"行业热力图"时:
python skills/futuapi/scripts/quote/get_heat_map_data.py --market US [--sort-field CHANGE_RATE] [--ascend] [--count 30] [--plate-type INDUSTRY] [--json]
参数说明:
- --market: 市场(HK/US/CN),必填
- --sort-field: 排序字段(CHANGE_RATE/MARKET_VAL/TURNOVER/HOT)
- --plate-type: 板块类型(INDUSTRY/CONCEPT/THEME)
- 自动分页
获取涨跌分布
当用户问"涨跌分布"、"rise fall distribution"、"涨跌家数"时:
python skills/futuapi/scripts/quote/get_rise_fall_distribution.py [--security HK.BK1001] [--market HK] [--json]
参数说明:
- --security: 板块代码(优先)
- --market: 市场(HK/US/CN),security 未传时使用
- 二选一
获取评级变动
当用户问"评级变动"、"分析师评级变动"、"rating change"、"评级上调"、"评级下调"时:
python skills/futuapi/scripts/quote/get_rating_change.py --market US [--change-type UPGRADE] [--count 10] [--json]
参数说明:
- --market: 市场(仅 US),必填
- --change-type: 评级变动类型(UPGRADE/DOWNGRADE/NEW_RATING)
- --count: 每页数量 [1,20]
- 自动分页
交易命令
获取账户列表
当用户问 "我的账户"、"账户列表" 时:
python skills/futuapi/scripts/trade/get_accounts.py [--json]
脚本会遍历各 SecurityFirm,分别通过 证券(OpenSecTradeContext)与 期货(OpenFutureTradeContext)拉账户,按 acc_id 去重合并。返回字段 ctx_type 为 SEC 或 FUTURE。
提示:实盘账户的 uni_card_num 后四位等于 app/桌面端上显示的账号数字。展示实盘账户信息时应优先显示 uni_card_num(而非 acc_id),因为用户在 app/桌面端看到的就是这个编号,更容易关联识别。模拟账户无需关注此字段。
账号拉取问题:create_trade_context() 默认使用 filter_trdmarket=TrdMarket.NONE(不过滤市场),但如果手动创建 OpenSecTradeContext 时传了具体市场(如 TrdMarket.US、TrdMarket.HK),可能导致部分账号被过滤。将 filter_trdmarket 改为 TrdMarket.NONE 重新拉取即可。
JSON 输出包含 trdmarket_auth 字段,表示该账户拥有交易权限的市场列表(如 ["HK", "US", "HKCC", "SG", "MY", "JP"],期货/预测市场还可能含 FUTURES、PREDICTION 等);acc_role 字段表示账户角色(如 MASTER 为主账户)。下单时应选择 trdmarket_auth 包含目标市场且 acc_role 不是 MASTER 的账户;预测市场选 ctx_type=FUTURE 且 trdmarket_auth 含 PREDICTION 的实盘账户。
新加坡 / 马来西亚 / 日本市场交易(SG / MY / JP)
| 市场 | 代码前缀 | 对应券商 | 示例代码 |
|---|
| 新加坡 | SG. | FUTUSG | SG.D05(星展集团) |
| 马来西亚 | MY. | FUTUMY | MY.1155(马来亚银行) |
| 日本 | JP. | FUTUJP | JP.7203(丰田汽车) |
使用要点:
- 交易脚本会从
--code 前缀自动推断 SG / MY / JP 市场,通常无需手动传 --market
- 下单前用
get_accounts.py --json 确认账户 trdmarket_auth 包含目标市场,并匹配正确的 --security-firm
- 涉及
--market 参数的交易脚本现已支持 SG / MY / JP(如 get_portfolio.py、get_orders.py、get_max_trd_qtys.py 等)
- 日本账户使用
FUTUJP 券商标识;若账户存在多个 JP 子账户,下单前请结合 get_accounts.py 返回的 jp_acc_type 选择正确账户
获取持仓与资金
当用户问 "持仓"、"资金"、"我的股票" 时:
python skills/futuapi/scripts/trade/get_portfolio.py [--market HK] [--trd-env SIMULATE] [--acc-id 12345] [--ctx-type SEC|FUTURE] [--security-firm FUTUSECURITIES] [--json]
--market: US, HK, HKCC, CN, SG, MY, JP
--trd-env: REAL, SIMULATE(默认 SIMULATE)
--ctx-type: SEC(证券,默认)或 FUTURE(期货/预测市场账户,与 get_accounts 的 ctx_type 一致)
--show-option-strategy-view: 按期权策略视角查询持仓(透传 position_list_query(show_option_strategy_view=True))