# Orange HiTick
> 面向行情研究、期权分析与 Agent 应用的数据和分析平台。提供市场数据、期权工具、MCP 与 HTTP API。
## 平台入口
- [Orange HiTick 首页](https://open.hitick.top/)
- [会员套餐](https://open.hitick.top/plans)
- [文档中心](https://open.hitick.top/doc/)
- [HTTP API OpenAPI 定义](https://open.hitick.top/openapi.json)
- [公共文档全文](https://open.hitick.top/llms-full.txt)
## Agent 接入与鉴权
- MCP 服务:https://api.hitick.top/mcp(Streamable HTTP)。
- 支持 OAuth 的 MCP 客户端可按服务端发现信息登录授权;也可使用 X-API-Token 请求头。
- [OAuth 授权服务器元数据](https://open.hitick.top/.well-known/oauth-authorization-server)
- [MCP 受保护资源元数据](https://api.hitick.top/.well-known/oauth-protected-resource/mcp)
- HTTP 业务 API 基础地址:https://api.hitick.top;鉴权请求头为 X-API-Token。
- ApiToken 由用户登录[个人中心](https://open.hitick.top/account/tokens)后创建,并通过客户端安全配置提供。
- 行情与分析调用可能消耗账户额度;以各能力文档的计费、参数和时间范围说明为准。
## API 能力
- [Orange Hitick 基础数据 Skill 文档](https://open.hitick.top/doc/raw/api/basic-data-skill.md)
- [Orange Hitick Polymarket Up/Down API / Skill 文档](https://open.hitick.top/doc/raw/api/polymarket-up-down-skill.md)
- [Orange Hitick 席位四榜 API / Skill 文档](https://open.hitick.top/doc/raw/api/seat-analysis-skill.md)
- [Orange Hitick 主观信号 Skill](https://open.hitick.top/doc/raw/api/subjective-signal-skill.md)
- [Orange Hitick Trump Statements API 文档](https://open.hitick.top/doc/raw/api/trump-statements-skill.md)
- [Orange Hitick 波动率数据 Skill 文档](https://open.hitick.top/doc/raw/api/vol-data-skill.md)
## 使用与产品文档
- [HiTick 开放平台](https://open.hitick.top/doc/raw/index.md)
- [视频教程](https://open.hitick.top/doc/raw/video-tutorials.md)
- [如何接入](https://open.hitick.top/doc/raw/%E5%A6%82%E4%BD%95%E6%8E%A5%E5%85%A5.md)
- [Agent 1.2 升级说明](https://open.hitick.top/doc/raw/agent/agent-1-2-upgrade.md)
- [Codex + CC Switch 自定义模型配置教程](https://open.hitick.top/doc/raw/agent/codex-cc-switch-custom-model.md)
- [为什么每次和 Agent 对话消耗的 Token 会波动](https://open.hitick.top/doc/raw/agent/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%AF%8F%E6%AC%A1%E5%AF%B9%E8%AF%9D%E6%B6%88%E8%80%97%E7%9A%84-token-%E4%BC%9A%E6%B3%A2%E5%8A%A8.md)
- [HitickCubie 配网与绑定指南](https://open.hitick.top/doc/raw/hitickcubie/provisioning.md)
- [绑定飞书失败了怎么办](https://open.hitick.top/doc/raw/troubleshooting/feishu-binding-failed.md)
# 公共文档全文
---
## 来源:HiTick 开放平台
原文:https://open.hitick.top/doc/raw/index.md
网页:https://open.hitick.top/doc/
# HiTick 开放平台
HiTick 开放平台面向行情研究、期权分析和 Agent 应用,提供可直接调用的期权基础数据、波动率数据、席位四榜、主观信号、Polymarket Up/Down 和 Trump Statements 数据能力。
平台同时支持 `MCP`、`Skill` 和直接 HTTP API 接入,适合开发者手动编排,也适合让 Agent 直接读取文档后自动完成封装与调用。
## 给 AI Agent 的读取入口
- [AI 阅读导航 llms.txt](https://open.hitick.top/llms.txt):平台能力、接入方式与 Markdown 文档目录。
- [公开文档全文 llms-full.txt](https://open.hitick.top/llms-full.txt):随文档发布更新的完整文本。
- [OpenAPI 接口描述](https://open.hitick.top/openapi.json):公开数据 API 的路径、参数、鉴权与返回结构。
每篇文档均提供原始 Markdown 版本。读取说明无需登录;调用业务数据接口需要用户授权和相应额度。
## Agent 1.2 升级完成通知
**Agent 1.2 已升级完成,现已向所有用户开放。** 新版本更新了文本与 Agent 能力,并新增图片理解,采用峰谷计价。登录后选择 **Orange Agent 1.2** 即可开始使用。
[查看升级说明、能力对比与价格表](https://open.hitick.top/doc/raw/agent/agent-1-2-upgrade.md)
## 平台提供什么
Orange Hitick 当前主要提供六类核心能力:
- 期权基础数据:查询标的目录、到期日、合约列表、实时报价、盘口和成交量等信息
- 波动率数据:查询 ATM 隐波、期权链、Greeks、历史小时快照、隐波时序走势、Gamma Exposure、GEX 小时快照,以及可直接展示的 GEX 图片 URL
- 席位四榜:按交易日和期货合约查询净买、净卖、买方持仓、卖方持仓四组榜单
- 主观信号:直接获取可用于分析、筛选和策略研究的主观因子结果
- Polymarket Up/Down:查询预测市场相对开盘基准价的 Up/Down 合约定价倾向
- Trump Statements:查询特朗普 Truth Social 内容和白宫正式内容
## 为什么适合 AI / Agent
- 接口结构稳定,适合工具化封装
- 参数语义清晰,适合大模型理解与自动调用
- 返回结构统一,方便 Agent 继续整理、推理和总结
- 同时提供 MCP、Skill 和 HTTP API 三种接入方式
## 为什么推荐直接接入 Agent
- Agent 可以直接读取文档并生成调用逻辑,减少手动写胶水代码
- MCP 接入更适合长期使用,后续新增能力通常更容易自动同步
- Skill 接入适合让 Agent 按文档自动生成封装逻辑
- 对“先找数据,再分析,再筛信号”的探索式工作流更友好
## 当前接口总览
| 能力模块 | 主要用途 | 典型接口 / 能力 | 推荐方式 |
| --- | --- | --- | --- |
| 基础数据 | 获取标的目录、到期日、合约和实时基础报价 | REST 支持 `basic-data/catalog`;MCP 使用 `orange_resolve_subject` 后调用 `by_underlying`、`by_expire`、`by_symbol` | Agent 不请求全量目录 |
| 波动率数据 | 获取 ATM 隐波、PCR、期权链、Greeks、时序走势、GEX、GEX 小时快照和 GEX 图片 | REST 支持 `vol-data/groups`;MCP 使用 `orange_resolve_subject` 后调用 `by_*`、`snapshot_*`、`ts_*`、`gex_*` | 适合让 Agent 按查询链路自动调用 |
| 席位四榜 | 查询期货席位净买、净卖、买方持仓、卖方持仓 | `GET /api/v1/seat-analysis/query` | 适合按日期和合约让 Agent 直接查询并总结 |
| 主观信号 | 直接获取可用于筛选和研判的信号结果 | `subjective-signal/factors`、`evaluate` | 适合由 Agent 直接执行并总结结果 |
| Polymarket Up/Down | 查询相对开盘基准价的预测市场涨跌定价倾向 | `GET /api/v1/polymarket/up-down` | 适合查询单个 symbol 或比较全部最新快照 |
| Trump Statements | 查询特朗普公开言论和白宫正式内容 | `GET /api/v1/trump/statements`;MCP 使用 `orange_trump_statements` | 适合按时间范围检索并让 Agent 总结来源明确的内容 |
## 推荐使用顺序
1. 从 [如何接入](https://open.hitick.top/doc/raw/%E5%A6%82%E4%BD%95%E6%8E%A5%E5%85%A5.md) 开始,优先使用 MCP 接入
2. 如果你希望 Agent 按文档自动生成封装,使用 Skill 接入
3. 如果你需要完全自定义调用逻辑,再直接调用 HTTP API
## 文档入口
- [如何接入](https://open.hitick.top/doc/raw/%E5%A6%82%E4%BD%95%E6%8E%A5%E5%85%A5.md)
- [视频教程:Agent 连接与使用、价波矩阵、卖权机会、波动率期限结构、瞄期打权](https://open.hitick.top/doc/raw/video-tutorials.md)
- [绑定飞书失败了怎么办](https://open.hitick.top/doc/raw/troubleshooting/feishu-binding-failed.md)
- [基础数据 API / Skill 文档](https://open.hitick.top/doc/raw/api/basic-data-skill.md)
- [波动率数据 API / Skill 文档](https://open.hitick.top/doc/raw/api/vol-data-skill.md)
- [席位四榜 API / Skill 文档](https://open.hitick.top/doc/raw/api/seat-analysis-skill.md)
- [主观信号 API / Skill 文档](https://open.hitick.top/doc/raw/api/subjective-signal-skill.md)
- [Polymarket Up/Down API / Skill 文档](https://open.hitick.top/doc/raw/api/polymarket-up-down-skill.md)
- [Trump Statements API / Skill 文档](https://open.hitick.top/doc/raw/api/trump-statements-skill.md)
## 建议
如果你是第一次接入,建议先让 Agent 直接接入 Orange Hitick,再逐步扩展自己的调用链路。
---
## 来源:视频教程
原文:https://open.hitick.top/doc/raw/video-tutorials.md
网页:https://open.hitick.top/doc/video-tutorials/
# 视频教程
以下视频可直接在本页播放,点击播放器开始观看,也可全屏观看。若播放器无法加载,可使用各视频下方的链接前往哔哩哔哩观看。
## Agent 连接与使用
接入配置可参考 [如何接入](https://open.hitick.top/doc/raw/%E5%A6%82%E4%BD%95%E6%8E%A5%E5%85%A5.md)。
### 如何连接腾讯 WorkBuddy
[在哔哩哔哩观看:如何连接腾讯 WorkBuddy](https://b23.tv/4nkGZQd)
### 如何连接豆包工作台
[在哔哩哔哩观看:如何连接豆包工作台](https://b23.tv/QCe5G3y)
### Agent 连接使用
[在哔哩哔哩观看:Agent 连接使用](https://b23.tv/05tWu69)
## 功能演示
### 价波矩阵
[在哔哩哔哩观看:价波矩阵](https://b23.tv/y1X9MIP)
### 卖权机会
[在哔哩哔哩观看:卖权机会](https://b23.tv/20zT1os)
### 波动率期限结构
[在哔哩哔哩观看:波动率期限结构](https://b23.tv/Wi05rjm)
### 瞄期打权
[在哔哩哔哩观看:瞄期打权](https://b23.tv/zf4fPZL)
---
## 来源:如何接入
原文:https://open.hitick.top/doc/raw/%E5%A6%82%E4%BD%95%E6%8E%A5%E5%85%A5.md
网页:https://open.hitick.top/doc/%E5%A6%82%E4%BD%95%E6%8E%A5%E5%85%A5/
# 如何接入
视频教程:[WorkBuddy、豆包工作台与 Agent 连接使用](https://open.hitick.top/doc/raw/video-tutorials.md),支持在文档页内播放。
Orange Hitick 当前提供 3 种接入方式:
1. MCP 接入
2. Skill 接入
3. 手动接入
无论使用哪种方式,调用本站接口都必须提供 `ApiToken`。
## 1. 获取 ApiToken
`ApiToken` 获取方式:
1. 访问 [https://open.hitick.top](https://open.hitick.top)
2. 注册账号并登录
3. 打开 **令牌管理** 页面,查看你的 `ApiToken`
`ApiToken` 是一个以 `sk-` 开头的字符串,例如 `sk-xxxxxxxx`。
后续所有业务接口调用都需要提供 `ApiToken`。
## 2. 方式一:MCP 接入
如果你的 Agent 或客户端支持 MCP,可以直接添加 Orange Hitick 的 MCP 服务。
MCP 接入的优势:
- 当 Orange Hitick 新增能力、扩展工具或更新服务端实现时,Agent 侧通常可以自动感知最新 MCP 能力
- 一般不需要你手动同步本地接入文档
- 适合希望长期保持能力自动更新的场景
把下面这段提示词复制给你的 Agent,并将 `` 替换为你自己的 `ApiToken`:
```text
请帮我在当前 Agent 或客户端中配置并启用下面的 MCP 服务。请自行识别当前客户端的 MCP 配置方式并完成配置,配置完成后验证是否能正常发现和调用工具;如果需要重启或重新连接,请明确告诉我。
MCP URL:https://api.hitick.top/mcp
HTTP Header:X-API-Token:
```
接入后,Agent 就可以通过 MCP 方式调用 Orange Hitick 提供的数据能力。
测试方法:
接入完成后,向 Agent 发送下面这句话:
```text
使用hitick mcp获取黄金的最新信息
```
如果 Agent 能通过 Hitick MCP 返回黄金的最新信息,说明 MCP 已接入成功。
## 3. 方式二:Skill 接入
如果你使用的是支持 Skill 的 Agent,可以直接把对应的 Skill 文档 URL 发给 Agent,Agent 会按文档说明自动完成接入。
Skill 接入的特点:
- Skill 文档接入后,Agent 依据你提供的文档 URL 和文档内容完成封装
- 如果 Orange Hitick 后续新增能力、调整参数或更新接入方式,已经复制给 Agent 的旧 Skill 文档不会自动更新
- 当 Skill 文档有更新时,你需要将最新版本的文档 URL 或文档内容重新提供给 Agent,手动完成同步
当前可用 Skill 文档:
- [基础数据 Skill](https://open.hitick.top/doc/raw/api/basic-data-skill.md)
- [波动率数据 Skill](https://open.hitick.top/doc/raw/api/vol-data-skill.md)
- [席位四榜 Skill](https://open.hitick.top/doc/raw/api/seat-analysis-skill.md)
- [主观信号 Skill](https://open.hitick.top/doc/raw/api/subjective-signal-skill.md)
- [Polymarket Up/Down Skill](https://open.hitick.top/doc/raw/api/polymarket-up-down-skill.md)
- [Trump Statements Skill](https://open.hitick.top/doc/raw/api/trump-statements-skill.md)
推荐做法:
1. 选择你要接入的能力对应的 Skill 文档
2. 将 Skill 文档 URL 发给 Agent
3. 明确告诉 Agent 你的 `ApiToken`
4. 由 Agent 按文档中的接口定义、参数结构和调用规范完成接入
推荐提示词:
```text
下面是 Orange Hitick 的 Skill 文档 URL,请你先阅读文档,再按文档要求完成接入,并在后续调用中使用我提供的 ApiToken。
要求:
1. 先访问并阅读这份 Skill 文档
2. 按文档里的接口定义、参数结构和调用规范完成封装
3. 如果需要发起调用,使用我提供的 ApiToken
4. 优先先帮我完成一个最小可用示例,确认已经接通
我的 ApiToken:
Skill 文档 URL(按需选择其一):
- 基础数据:https://open.hitick.top/doc/raw/api/basic-data-skill.md
- 波动率数据:https://open.hitick.top/doc/raw/api/vol-data-skill.md
- 席位四榜:https://open.hitick.top/doc/raw/api/seat-analysis-skill.md
- 主观信号:https://open.hitick.top/doc/raw/api/subjective-signal-skill.md
- Polymarket Up/Down:https://open.hitick.top/doc/raw/api/polymarket-up-down-skill.md
- Trump Statements:https://open.hitick.top/doc/raw/api/trump-statements-skill.md
```
说明:
- Skill 方式适合让 Agent 自动生成工具封装、调用代码或接入配置
- Skill 文档不会像 MCP 一样自动跟随后端能力更新
- 调用本站接口时仍必须提供 `ApiToken`
- 建议只把 `ApiToken` 通过安全配置方式提供给 Agent,并在调用时注入参数
## 4. 方式三:手动接入
如果你希望自己写代码调用 API,可以直接按照本文档和各能力文档完成接入。平台目前覆盖基础数据、波动率数据、席位四榜、主观信号、Polymarket Up/Down 和 Trump Statements 数据。
### 4.1 基本调用规则
- 基础域名:`https://api.hitick.top`
- 鉴权请求头:`X-API-Token`
- 返回结构:统一为 `ApiResponse`
统一返回示例:
```json
{
"code": 0,
"message": "success",
"data": {}
}
```
说明:
- `code = 0` 表示请求成功
- 具体业务结果在 `data` 字段中
### 4.2 手动接入流程
1. 从 [https://open.hitick.top](https://open.hitick.top) 获取 `ApiToken`
2. 选择你要调用的服务能力
3. 按对应 API 文档构造 HTTP 请求
4. 在请求头中带上 `X-API-Token`
5. 解析返回的 `code`、`message` 和 `data`
### 4.3 API 文档入口
- [基础数据 API / Skill 文档](https://open.hitick.top/doc/raw/api/basic-data-skill.md)
- [波动率数据 API / Skill 文档](https://open.hitick.top/doc/raw/api/vol-data-skill.md)
- [席位四榜 API / Skill 文档](https://open.hitick.top/doc/raw/api/seat-analysis-skill.md)
- [主观信号 API / Skill 文档](https://open.hitick.top/doc/raw/api/subjective-signal-skill.md)
- [Polymarket Up/Down API / Skill 文档](https://open.hitick.top/doc/raw/api/polymarket-up-down-skill.md)
- [Trump Statements API / Skill 文档](https://open.hitick.top/doc/raw/api/trump-statements-skill.md)
### 4.4 调用示例
以基础数据目录接口为例:
```bash
curl -sS 'https://api.hitick.top/api/v1/basic-data/catalog' \
-H 'X-API-Token: your_token_value'
```
## 5. 选择建议
- 想快速让 Agent 直接可用:优先用 MCP 接入
- 想在后续新增能力时尽量自动更新:优先用 MCP 接入
- 想让 Agent 按文档自动生成接入逻辑:用 Skill 接入
- 如果使用 Skill 接入,要接受后续需要手动同步新版 Skill 文档
- 想自己控制调用逻辑和代码实现:用手动接入
## 6. 安全建议
- 不要把 `ApiToken` 提交到 Git 仓库
- 不要把 `ApiToken` 直接写死在前端代码中
- 优先让 Agent 将 `ApiToken` 保存到客户端的安全配置中
---
## 来源:Agent 1.2 升级说明
原文:https://open.hitick.top/doc/raw/agent/agent-1-2-upgrade.md
网页:https://open.hitick.top/doc/agent/agent-1-2-upgrade/
# Agent 1.2 升级说明
**Agent 1.2 已升级完成,现已向所有用户开放。** 本次升级更新了底层模型,让 Agent 在文字分析之外,也能理解你提供的图片,更适合结合行情截图、图表与数据开展研究。
> **全面开放说明:** Agent 1.2 已结束内测,所有用户均可登录 [Orange Hitick Agent](https://open.hitick.top/chat),选择 **Orange Agent 1.2** 并新建对话开始使用。
## 1. 为什么升级
随着底层模型迭代,本站已完成 Agent 1.2 的升级,后续请使用 Agent 1.2 继续开展分析与研究。
Agent 1.2 的文本能力升级至正式版水平,同时加入新一代视觉理解能力。你可以继续用文字提问,也可以把需要分析的图表或截图与问题一起提交,减少手工描述和转录信息的步骤。
## 2. Agent 1.2 带来了什么
本次升级的重点是 **更强的 Agent 任务能力,以及新增的图文联合理解能力**。
| 对比维度 | Agent 1.1 | Agent 1.2 | 对使用体验的帮助 |
| --- | --- | --- | --- |
| 文本与推理 | 基于旧版预览模型进行文字问答和分析 | 文本能力达到新一代正式版水平 | 延续文字研究能力,采用更新后的模型能力 |
| Agent 任务执行 | 支持工具查询与多步分析 | 使用经过进一步 Agent 任务优化的模型 | 更适合需要分步处理、结合工具结果完成的研究任务 |
| 图片与图表理解 | 需先将图片内容转成文字 | 支持图文联合输入与分析 | 直接围绕行情图表或截图提问,减少手动转录 |
以上依据公开能力说明整理;实际分析时仍需核对关键数字和数据时间。
## 3. 价格与峰谷计费
以下价格核对于 **2026 年 9 月 10 日**,来自 [Orange Hitick 模型广场](https://open.hitick.top/pricing) 默认分组的🍊额度显示,单位为 **每 100 万(1M)Token**。🍊表示平台额度,不直接等同于人民币充值金额;后续调整以模型广场及账户实际计费为准。
| Agent | 计费时段 | 输入价格 / 1M Token | 输出价格 / 1M Token |
| --- | --- | ---: | ---: |
| Agent 1.1(旧版) | 原有价格 | 🍊5.00 | 🍊10.00 |
| Agent 1.2 | 空闲时段 | 🍊5.00 | 🍊20.00 |
| Agent 1.2 | 高峰时段 | 🍊10.00 | 🍊40.00 |
由于底层模型价格大幅上涨,Agent 1.2 的服务价格也相应调整。Agent 1.2 的闲时输入、输出单价均为高峰的 **50%**。相比 Agent 1.1,1.2 闲时输入单价不变、输出单价上涨 100%;高峰输入单价上涨 100%、输出单价上涨 300%。升级后的单次消耗还取决于实际输入、输出量。
### 高峰和空闲时段如何划分
本次升级采用以下峰谷规则,所有时间均为 **北京时间(UTC+8)**:
| 时段 | 时间范围 |
| --- | --- |
| 高峰时段 | 周一至周五 09:00–12:00、14:00–18:00 |
| 空闲时段 | 周一至周五 00:00–09:00、12:00–14:00、18:00–24:00,以及周六、周日全天 |
开始时间计入、结束时间不计入:09:00、14:00 进入高峰;12:00、18:00 进入空闲。规则按星期划分,不额外按交易日或节假日调整。
### 一次对话如何计算
**对话模型消耗 = 输入 Token ÷ 1,000,000 × 输入单价 + 输出 Token ÷ 1,000,000 × 输出单价。**
例如,实际用量为 10,000 输入 Token、2,000 输出 Token 时:
| Agent / 时段 | 输入消耗 | 输出消耗 | 合计 |
| --- | ---: | ---: | ---: |
| Agent 1.1 | 🍊0.05 | 🍊0.02 | 🍊0.07 |
| Agent 1.2 空闲时段 | 🍊0.05 | 🍊0.04 | 🍊0.09 |
| Agent 1.2 高峰时段 | 🍊0.10 | 🍊0.08 | 🍊0.18 |
输入量还可能包含历史对话、工具返回的数据和图片,并不只是你手工输入的字数。上表只演示对话模型费用;其他数据服务如有独立计费,按对应项目结算。关于用量变化,参阅 [为什么每次对话消耗的 Token 会波动](https://open.hitick.top/doc/raw/agent/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%AF%8F%E6%AC%A1%E5%AF%B9%E8%AF%9D%E6%B6%88%E8%80%97%E7%9A%84-token-%E4%BC%9A%E6%B3%A2%E5%8A%A8.md)。
不需要实时结果的长篇整理、资料汇总等任务,可以安排在空闲时段;需要最新盘中数据的任务,仍应以时效性为先。
## 4. 如何切换到 Agent 1.2
打开 [Orange Hitick Agent](https://open.hitick.top/chat) 并登录,按以下步骤操作。
**① 展开菜单 → ② 选择版本**:点击聊天页顶部的 Agent 名称,选择 **Orange Agent 1.2**。
1
2
① 点击顶部名称展开菜单;② 选择 Orange Agent 1.2。
**③ 确认切换成功**:顶部名称变为 **Orange Agent 1.2** 后,点击 **新建对话** 开始使用。
3
③ 名称显示 Orange Agent 1.2,即表示切换成功。
**使用了定时任务的用户**:请逐项检查任务的 Agent 选择,并将需要继续运行的任务改为 1.2。
不同 Agent 的会话相互隔离,切换版本不会自动把旧对话变成新版本对话。需要延续讨论时,请把旧对话的重要背景整理后带入新对话;切换聊天页的 Agent 也不会自动修改已有定时任务。
---
## 来源:Codex + CC Switch 自定义模型配置教程
原文:https://open.hitick.top/doc/raw/agent/codex-cc-switch-custom-model.md
网页:https://open.hitick.top/doc/agent/codex-cc-switch-custom-model/
# Codex + CC Switch 自定义模型配置教程
这篇教程说明如何安装 OpenAI Codex 桌面端与 CC Switch,并通过 CC Switch 给 Codex 配置第三方或自定义模型。
适用场景:
- 你希望使用 Codex 桌面端体验
- 你有一个 OpenAI 兼容、Responses 兼容或 Chat Completions 兼容的模型服务
- 你希望在 Codex 中使用 DeepSeek、Kimi、Qwen、豆包、MiniMax、OpenRouter、自建网关等非默认模型
## 1. 先理解两者关系
Codex 是本地运行的 AI 编程 Agent。桌面端与本地 Codex 配置共享同一套用户配置,会读取 `~/.codex/config.toml`、`~/.codex/auth.json`、模型目录等本地文件。
CC Switch 是一个桌面管理工具,用来统一管理 Claude Code、Codex、Gemini CLI、OpenCode 等 AI 编程工具的 Provider。配置 Codex 时,它会帮你写入或更新 Codex 需要的本地配置。
简单说:
```text
你在 CC Switch 里添加 Provider
↓
CC Switch 写入 Codex 配置和模型目录
↓
重新打开 Codex 桌面端
↓
Codex 使用新的 API 地址、Key 和模型
```
## 2. 安装 Codex 桌面端
- 下载:[https://developers.openai.com/codex/app](https://developers.openai.com/codex/app)
- 备用地址:
- Mac(Apple Silicon): [https://image.hitick.top/download/Codex_apple.dmg](https://image.hitick.top/download/Codex_apple.dmg)
- Mac(Intel): [https://image.hitick.top/download/Codex_intel.dmg](https://image.hitick.top/download/Codex_intel.dmg)
- Windows: [https://image.hitick.top/download/Codex_Installer.exe](https://image.hitick.top/download/Codex_Installer.exe)
- 下载与你系统匹配的安装包后安装。
- 完成后**不需要**立即启动
## 3. 安装 CC Switch
- 官网:[https://ccswitch.io](https://ccswitch.io)
- GitHub 仓库:[farion1231/cc-switch](https://github.com/farion1231/cc-switch)
- 最新 Release:[GitHub Releases](https://github.com/farion1231/cc-switch/releases/latest)
- 备用地址:
- Mac: [https://image.hitick.top/download/CC-Switch-v3.16.5-macOS.dmg](https://image.hitick.top/download/CC-Switch-v3.16.5-macOS.dmg)
- Windows: [https://image.hitick.top/download/CC-Switch-v3.16.5-Windows.msi](https://image.hitick.top/download/CC-Switch-v3.16.5-Windows.msi)
下载与你系统匹配的安装包后启动 CC Switch。
## 4. 在 CC Switch 中添加 Codex Provider
1. 打开 CC Switch
2. 
3. 
4. 点击返回
5. 切换到 `Codex` 面板
6. 点击添加 Provider
7. 
8. 选择自定义配置
9. 
10. 
11. 
12. 点击添加
13. 回到 Provider 列表,点击启用
14. 完全退出 Codex 桌面端,再重新打开 Codex
## 5. 验证是否成功接入大模型
重新打开 Codex 桌面端,在模型选择器中查看是否能看到刚才配置的模型名称。选择模型后,发一个最小测试:
```text
请用一句话回复:当前模型已经接通。
```
## 6.接入MCP
1. 
2. 
3. 
4. 将自己的 `ApiToken` 粘贴到下面语句中,再发给 Agent。
```text
我的 Hitick Api Token 是:。请保存它,并查询黄金的最新报价。
```
5. 开始使用
---
## 来源:为什么每次和 Agent 对话消耗的 Token 会波动
原文:https://open.hitick.top/doc/raw/agent/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%AF%8F%E6%AC%A1%E5%AF%B9%E8%AF%9D%E6%B6%88%E8%80%97%E7%9A%84-token-%E4%BC%9A%E6%B3%A2%E5%8A%A8.md
网页:https://open.hitick.top/doc/agent/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%AF%8F%E6%AC%A1%E5%AF%B9%E8%AF%9D%E6%B6%88%E8%80%97%E7%9A%84-token-%E4%BC%9A%E6%B3%A2%E5%8A%A8/
# 为什么每次和 Agent 对话消耗的 Token 会波动
很多用户会发现:明明问的问题差不多,有时一次对话消耗的 Token 很少,有时又明显变多。这是正常现象。
简单说,Token 消耗不只取决于你输入的那一句话,也取决于 Agent 为了回答这句话,需要一起带给模型看的上下文、查询结果和最终回复长度。
可以把它理解成让分析师写一份盘面简报:
- 你的提问,是这份简报的主题
- 前面的聊天记录,是分析师需要参考的背景
- 行情数据、指标结果、期权链和图表信息,是写简报前要看的材料
- Agent 最后回复的长短,是这份简报本身的篇幅
所以每次看起来像是“问一句话”,实际需要看的材料和写出的内容可能并不一样。
## Token 是什么
Token 可以粗略理解成模型阅读和生成文字时使用的“计数字段”。
中文、英文、数字、标点、合约代码、价格、表格都会被拆成 Token。它不是严格按“字数”计算,也不是严格按“字符数”计算。
例如:
- 一句很短的中文,可能只有几十个 Token
- 一组期货行情或期权链数据,可能有几百到几千个 Token
- 一大段盘口、K 线、波动率或表格,Token 会增长得很快
## 为什么同样一句话,消耗可能不一样
### 1. Agent 会带上对话历史
Agent 不是只看你刚刚发的这一句,它通常还会参考前面的对话。
如果你前面已经聊了很多内容,下一次提问时,模型可能需要读取更多上下文。即使你只输入“继续”两个字,实际参与计算的内容也可能包括之前的大量讨论。
所以对话越长,单次消耗通常越容易变高。
### 2. Agent 可能会读取行情、指标或查询结果
当你让 Agent 查行情、分析期货走势、比较期权结构或计算指标时,它往往需要先调用工具。
查询到的内容也会进入上下文,例如:
- 最新价格、涨跌幅和成交量
- 买卖盘口和挂单量
- K 线或分时数据
- 期权链、行权价和到期日
- Greeks、隐含波动率和 PCR
- 主观信号或策略筛选结果
这些内容越长,Token 消耗越高。
有时你问的是同一句“帮我分析一下黄金”,但一次只看最新价,另一次同时看期权链、波动率、成交量和盘口,消耗自然会不同。
### 3. Agent 的回复长短不同
Token 消耗通常包括输入和输出两部分。
如果 Agent 只回答一句话,输出 Token 少;如果它需要整理表格、解释价格变化、比较多个合约、给出风险提示,输出 Token 就会增加。
例如:
- “黄金最新价格是多少?”通常较短
- “帮我分析黄金期权波动率结构,并给出表格总结”通常较长
### 4. 同一个问题,Agent 可能选择不同的处理路径
Agent 会根据当前上下文判断是否需要查最新行情、补充期权数据或做更多验证。
有时它已经有足够信息,可以直接回复;有时它需要重新查询最新数据;有时它发现信息不完整,还会多查一次到期日、盘口或波动率。
这些路径不同,Token 消耗也会波动。
### 5. 查询结果本身长度不固定
很多查询结果的数据量不是固定的。
比如查询期权链:
- 一个标的只有少量合约,返回内容较短
- 另一个标的有很多到期日和行权价,返回内容会长很多
再比如查询行情、信号、波动率数据,返回内容都会随着市场状态、查询参数和时间变化。
### 6. 盘口、期权链、表格会特别“占 Token”
人看一张表可能觉得只是几行数据,但模型需要把合约代码、价格、成交量、行权价、到期日、希腊字母指标等都拆开处理。
所以这类内容通常比普通自然语言更容易消耗 Token:
- 完整期权链
- 多个到期日的合约列表
- 多档盘口
- 分时和 K 线数据
- Greeks 和隐含波动率表格
- 多标的对比结果
这类查询涉及的合约和指标越多,模型需要阅读和整理的内容也越多。
### 7. 多轮任务会有额外上下文
有些任务不是一问一答,而是 Agent 需要连续完成多个步骤:
1. 读取需求
2. 查询数据
3. 分析结果
4. 再查一次补充信息
5. 总结给用户
每一步都可能产生新的上下文。任务越复杂,波动越明显。
## 一个直观例子
你问:
```text
帮我查一下黄金的期权数据。
```
第一次 Agent 可能只查最新报价,返回很短。
第二次 Agent 可能判断你想看完整期权链,于是查询了到期日、合约列表、盘口、Greeks 和波动率,返回内容更多。
第三次你前面已经聊了很多策略分析,Agent 还需要带上前文一起判断你的意图。
这三次用户输入看起来差不多,但实际参与计算的内容完全不同,所以 Token 消耗会不同。
## 怎么让 Token 消耗更可预期
如果你希望消耗更稳定,可以这样做:
- 明确说明只要简短回答
- 一个会话尽量只解决一个问题
- 不要一次分析太多标的,优先指定最关心的品种
- 明确分析目标,例如“只看趋势”“只看波动率”“只看盘口”
- 指定时间范围,例如“只看今天”“只看最近一小时”
- 长对话中开启新会话,减少历史上下文
- 让 Agent 只列结论和关键依据
尤其建议把不同主题分开问。比如“黄金短线走势”“铜的期权波动率”“某个策略的回测思路”最好分别开会话。一个会话里连续塞很多问题,后面每次分析都可能带着前面的背景一起计算,Token 消耗会更高,也更容易让 Agent 混淆你的当前目标。
例如可以这样问:
```text
只帮我看黄金当前盘面,控制在 5 行以内,重点看价格变化和成交量。
```
或者:
```text
查询黄金最新报价,重点关注价格、涨跌幅和时间。
```
## 总结
每次和 Agent 对话的 Token 消耗有波动,是因为模型实际处理的内容不只是你的当前问题,还包括历史上下文、行情数据、期权链、指标结果、图表信息和最终回复。
问题越复杂、上下文越长、查询结果越多、回复越详细,消耗通常越高。
如果希望消耗更可预期,最有效的方法是:一个会话只解决一个问题,缩小问题范围,明确分析目标,减少不必要的多标的和长周期对比。
---
## 来源:Orange Hitick 基础数据 Skill 文档
原文:https://open.hitick.top/doc/raw/api/basic-data-skill.md
网页:https://open.hitick.top/doc/api/basic-data-skill/
# Orange Hitick 基础数据 Skill 文档
这份文档用于开发者手动接入,或让 Agent 按统一规则接入 Orange Hitick 的基础数据服务。
## 1. 服务信息
- 平台接口前缀:`/api/v1/basic-data`
- 鉴权方式:请求头 `X-API-Token`
- 返回包装:Orange Hitick 统一 `ApiResponse`
- 当前服务编码:`basic_data`
- 当前服务名称:`基础数据`
- 计费说明:`/catalog` 不计费;`/query/by-underlying`、`/query/by-expire`、`/query/by-symbol` 成功返回后计费,扣费失败则接口直接返回错误
平台统一返回结构:
```json
{
"code": 0,
"message": "success",
"data": {}
}
```
说明:
- `code = 0` 表示平台调用成功
- 真正的基础数据结果放在 `data` 中
- `data` 是上游接口返回结果的透传 JSON
## 2. 鉴权
所有请求都必须带:
```http
X-API-Token: your_token_value
```
## 3. 接口列表
### 3.1 获取目录
```http
GET /api/v1/basic-data/catalog
```
用途:
- 返回可查询的标的目录
- 不扣费
示例:
```bash
curl -sS 'https://api.hitick.top/api/v1/basic-data/catalog' \
-H 'X-API-Token: your_token_value'
```
`data` 的核心结构:
```json
{
"catalog": {
"cu2607": {
"expiries": [
{
"expire_date": "20260624",
"multipliers": [5]
}
]
}
},
"server_time_ms": 1780000000000
}
```
### 3.2 按标的查询
```http
GET /api/v1/basic-data/query/by-underlying?underlying=cu2607
```
必填参数:
- `underlying`:标的代码,例如 `cu2607`
示例:
```bash
curl -sS 'https://api.hitick.top/api/v1/basic-data/query/by-underlying?underlying=cu2607' \
-H 'X-API-Token: your_token_value'
```
语义:
- `rows` 第 1 行为标的行
- 后续行为该标的下全部到期日、全部合约乘数的期权行
### 3.3 按到期日查询
```http
GET /api/v1/basic-data/query/by-expire?underlying=cu2607&expire=20260624
```
必填参数:
- `underlying`:标的代码,例如 `cu2607`
- `expire`:到期日,格式 `yyyyMMdd`,例如 `20260624`
示例:
```bash
curl -sS 'https://api.hitick.top/api/v1/basic-data/query/by-expire?underlying=cu2607&expire=20260624' \
-H 'X-API-Token: your_token_value'
```
语义:
- `rows` 第 1 行为标的行
- 后续行为该标的该到期日下全部合约乘数的期权行
### 3.4 按合约代码查询
```http
GET /api/v1/basic-data/query/by-symbol?symbol=cu2607C78000
```
必填参数:
- `symbol`:合约代码或标的代码
示例:
```bash
curl -sS 'https://api.hitick.top/api/v1/basic-data/query/by-symbol?symbol=cu2607C78000' \
-H 'X-API-Token: your_token_value'
```
语义:
- 如果查的是期权,只返回 1 行期权行
- 如果查的是标的,只返回 1 行标的行
## 4. 查询返回结构
三个查询接口的 `data` 顶层结构一致:
```json
{
"found": true,
"query_type": "by_symbol",
"contract_count": 1,
"rows": [
{
"instrument_kind": "option",
"symbol": "cu2607C78000",
"instrument_name": "沪铜C78000",
"underlying_symbol": "cu2607",
"exchange": "SHFE",
"product_id": "cu",
"expire_date": "20260624",
"multiplier": 5,
"option_type": "C",
"strike_price": 78000.0,
"strike_price_scaled": 780000000,
"bid_price": 1260.0,
"ask_price": 1280.0,
"last_price": 1270.0,
"open_price": 1240.0,
"highest_price": 1295.0,
"lowest_price": 1235.0,
"bid_volume1": 12,
"ask_volume1": 8,
"volume": 1024,
"open_interest": 55321,
"pre_settlement_price": 1250.0,
"update_time": "2026-06-03 09:31:15.500",
"timestamp_ms": 1780000000000,
"trading_day": "20260603",
"action_day": "20260603"
}
],
"server_time_ms": 1780000000000
}
```
关键字段:
- `found`:是否命中
- `query_type`:查询类型,取值为 `by_underlying`、`by_expire`、`by_symbol`
- `contract_count`:本次返回结果中的合约数量字段,仅用于业务结果展示,不参与平台计费
- `rows`:结果行数组
- `server_time_ms`:服务端返回时间
标的行还会返回当前交易日的 `open_price`、`highest_price`、`lowest_price`;三者来自行情源原始快照,不是服务端按查询窗口计算。尚未形成有效价格时可能为空。
## 5. Agent 接入规范
如果给 Agent 使用,建议按下面的最小规则封装。
### 5.1 工具名建议
```text
orange_resolve_subject
orange_basic_data
```
`orange_resolve_subject` 用于把中文品种名、代码前缀或完整合约解析为标准查询三元组。输入 `query`,可选 `limit` 默认 5、最大 5;输出 `selected` 和紧凑候选,不返回完整目录或行情。
### 5.2 输入结构建议
```json
{
"action": "by_underlying | by_expire | by_symbol",
"params": {
"underlying": "cu2607",
"expire": "20260624",
"symbol": "cu2607C78000"
}
}
```
参数要求:
- `action = by_underlying`:必须传 `underlying`
- `action = by_expire`:必须传 `underlying` 和 `expire`
- `action = by_symbol`:必须传 `symbol`
### 5.3 路由映射
- `by_underlying` -> `GET /api/v1/basic-data/query/by-underlying`
- `by_expire` -> `GET /api/v1/basic-data/query/by-expire`
- `by_symbol` -> `GET /api/v1/basic-data/query/by-symbol`
### 5.4 Agent 调用流程建议
1. 从安全存储读取 `X-API-Token`
2. 用户只给出中文品种名、代码前缀或不完整合约时,先调用 `orange_resolve_subject`
3. `found=true` 且 `ambiguous=false` 时使用 `selected` 中的标准字段;否则向用户澄清
4. 根据查询目标调用 `orange_basic_data`
5. 检查平台响应 `code`
6. 如果需要汇总分析,再基于 `rows` 做二次处理
Raw MCP 不公开完整目录 action;REST 的 `/catalog` 接口保持不变,供原有 HTTP 客户端继续使用。
### 5.5 Agent 错误处理建议
- 平台 `code != 0`:直接抛出平台错误
- `401/403`:扣费侧使用 `Authorization: Bearer ` 调用计费接口时鉴权失败
- `扣费失败`:直接透传平台错误,提示用户检查 token 或计费服务状态
- `404` 且 `found = false`:按“未命中”处理,不要当系统故障
- 上游超时或异常:建议重试,并保留原始错误信息
## 6. 计费与明细说明
- 平台在业务数据成功返回后,使用 OpenAI 兼容 `POST /chat/completions` 发起同步扣费
- `catalog` 不触发扣费
- `query/by-underlying`、`query/by-expire`、`query/by-symbol` 成功返回后触发扣费
- 对外业务接口协议保持不变,仍然由调用方传 `X-API-Token`
- `model` 固定为 `BasicData`,用于标识业务类型
- `messages` 保持最简,只携带本次请求路径和参数
- 扣费请求头格式固定为 `Authorization: Bearer `
- 外部计费接口返回 HTTP `200` 视为扣费成功
- 扣费失败时,业务响应直接返回错误,不再写本地 usage 明细或异步扣费任务
## 7. 最小测试示例
查询单个期权:
```bash
curl -sS 'https://api.hitick.top/api/v1/basic-data/query/by-symbol?symbol=cu2607C78000' \
-H 'X-API-Token: your_token_value'
```
查询某个标的某个到期日:
```bash
curl -sS 'https://api.hitick.top/api/v1/basic-data/query/by-expire?underlying=cu2607&expire=20260624' \
-H 'X-API-Token: your_token_value'
```
## 8. 接入建议
- 手动接入适合后端服务、脚本、联调测试
- Agent 接入适合自动查询、批量整理、策略辅助
- 建议给不同用途创建不同 Token,方便审计和隔离
---
## 来源:Orange Hitick Polymarket Up/Down API / Skill 文档
原文:https://open.hitick.top/doc/raw/api/polymarket-up-down-skill.md
网页:https://open.hitick.top/doc/api/polymarket-up-down-skill/
# Orange Hitick Polymarket Up/Down API / Skill 文档
这份文档用于开发者手动接入,或让 Agent 按统一规则查询 Orange Hitick 提供的 Polymarket Up/Down 最新市场快照。
## 1. 服务信息
- HTTP 接口:`GET /api/v1/polymarket/up-down`
- 鉴权方式:请求头 `X-API-Token`
- 返回包装:Orange Hitick 统一 `ApiResponse`
- 服务编码:`polymarket_up_down`
- 模型标识:`PolymarketUpDown`
- 计费说明:每次成功查询后计费
- 数据说明:返回后端当前保存的每个 symbol 最新快照;服务重启后内存数据会清空
平台统一返回结构:
```json
{
"code": 0,
"message": "success",
"data": {}
}
```
## 2. 鉴权
所有请求都必须带:
```http
X-API-Token: your_token_value
```
## 3. 查询 API
```http
GET /api/v1/polymarket/up-down
```
查询参数:
- `symbol`:可选,Polymarket 标的代码,例如 `WTI`、`BTC`;大小写不敏感
- 传入 `symbol` 时返回该标的的最新快照
- 不传 `symbol` 时返回当前保存的全部标的,并按 `symbol` 排序
查询单个标的:
```bash
curl -sS 'https://api.hitick.top/api/v1/polymarket/up-down?symbol=WTI' \
-H 'X-API-Token: your_token_value'
```
查询全部标的:
```bash
curl -sS 'https://api.hitick.top/api/v1/polymarket/up-down' \
-H 'X-API-Token: your_token_value'
```
## 4. 返回结构
```json
{
"code": 0,
"message": "success",
"data": {
"count": 1,
"items": [
{
"queried_at": "2026-07-21T11:23:11.533922+08:00",
"symbol": "WTI",
"price": 82.43008,
"up_mid_price": 0.485,
"down_mid_price": 0.51
}
]
}
}
```
字段说明:
- `count`:本次返回的快照数量
- `items`:快照数组
- `queried_at`:快照采集时间,以 `Asia/Shanghai` 时区和带 `+08:00` 偏移量的 ISO-8601 格式返回
- `symbol`:Polymarket 标的代码
- `price`:该场 Up/Down 市场的 `price_to_beat` 开盘基准价,不是查询时的标的最新行情价
- `up_mid_price`:相对开盘基准价判断为 Up 的合约买卖中间价,计算方式为 `(best_bid + best_ask) / 2`
- `down_mid_price`:相对开盘基准价判断为 Down 的合约买卖中间价,计算方式为 `(best_bid + best_ask) / 2`
## 5. Agent 接入规范
如果给 Agent 使用,建议按下面的最小规则封装。
### 5.1 工具名建议
```text
orange_polymarket_up_down
```
### 5.2 输入结构建议
```json
{
"symbol": "WTI"
}
```
`symbol` 可选;不传时查询全部当前快照。
### 5.3 路由映射
- 传 `symbol`:`GET /api/v1/polymarket/up-down?symbol={symbol}`
- 不传 `symbol`:`GET /api/v1/polymarket/up-down`
### 5.4 Agent 调用建议
- 用户询问某个标的的 Polymarket 涨跌倾向时,传入对应 `symbol`
- 用户询问当前有哪些 Polymarket Up/Down 市场或希望整体比较时,不传 `symbol`
- 将 `up_mid_price`、`down_mid_price` 表述为“市场定价隐含约 X% 的 Up/Down 倾向”
- 概率换算属于市场定价近似值,需要说明会受到买卖价差、流动性和交易成本影响
- 查询标的自身最新行情时,另外调用行情数据接口,不要把 `price` 当作当前市价
- 涉及结算时刻或判定规则时,应另外获取对应市场规则后再解释
- 跨市场比较前,先确认标的映射、合约期限、观察时段和结算口径一致
## 6. 空结果与异常处理
- 未知 `symbol` 返回 `count = 0` 和空的 `items`,按“当前没有该标的快照”处理
- 不传 `symbol` 且当前没有任何快照时,同样返回空数组
- `code != 0` 时直接向上层透传平台错误
- 快照只保存在当前服务进程内,服务重启后可能暂时没有数据
## 7. 解读示例
当接口返回:
```json
{
"symbol": "WTI",
"price": 82.43008,
"up_mid_price": 0.88,
"down_mid_price": 0.115
}
```
建议表述为:
> 当前 Polymarket 合约定价隐含 WTI 相对本场开盘基准价向上的倾向约为 88%。这是受价差、流动性和交易成本影响的市场定价近似值;`82.43008` 是本场开盘基准价,不是当前实时行情价。
## 8. 使用限制
- Polymarket 合约中间价不等于严格的统计概率
- 单个市场快照不应单独作为交易依据
- 回答具体结算问题前,应核对对应市场的期限和结算规则
---
## 来源:Orange Hitick 席位四榜 API / Skill 文档
原文:https://open.hitick.top/doc/raw/api/seat-analysis-skill.md
网页:https://open.hitick.top/doc/api/seat-analysis-skill/
# Orange Hitick 席位四榜 API / Skill 文档
这份文档用于开发者手动接入,或让 Agent 按统一规则接入 Orange Hitick 的席位四榜查询能力。
## 1. 服务信息
- HTTP 接口:`GET /api/v1/seat-analysis/query`
- HTTP 鉴权方式:请求头 `X-API-Token`
- 返回包装:Orange Hitick 统一 `ApiResponse`
- 计费说明:成功查询后复用主观信号计费逻辑,模型名为 `SeatAnalysis`
- 数据说明:查询每日入库后的期货席位持仓事实表,不实时直连交易所
平台统一返回结构:
```json
{
"code": 0,
"message": "success",
"data": {}
}
```
## 2. HTTP API
```http
GET /api/v1/seat-analysis/query
```
请求头:
```http
X-API-Token: your_token_value
```
查询参数:
- `tradeDate`:必填,支持 `YYYY-MM-DD` 或 `YYYYMMDD`
- `symbol`:必填,期货合约代码,例如 `m2609`、`IM2607`
- `limit`:可选,默认 `20`,最大 `50`
示例:
```bash
curl -sS 'https://api.hitick.top/api/v1/seat-analysis/query?tradeDate=2026-07-07&symbol=m2609&limit=20' \
-H 'X-API-Token: your_token_value'
```
## 3. Agent 接入规范
如果给 Agent 使用,建议按下面的最小规则封装。
### 3.1 工具名建议
```text
orange_seat_analysis
```
### 3.2 输入结构建议
```json
{
"tradeDate": "2026-07-07",
"symbol": "m2609",
"limit": 20
}
```
### 3.3 路由映射
将输入字段映射为查询参数,并调用:
```http
GET /api/v1/seat-analysis/query?tradeDate={tradeDate}&symbol={symbol}&limit={limit}
```
### 3.4 调用规则
- 输入中不需要 `action`。
- 不需要传交易所,服务端会按 `tradeDate + symbol` 自动识别。
- 对外不暴露 `source` 或任何数据源字段。
- 调用成功后,结合四组榜单和 `diff` 字段总结席位方向与边际变化。
## 4. 返回结构
```json
{
"code": 0,
"message": "success",
"data": {
"tradeDate": "2026-07-07",
"symbol": "m2609",
"exchange": "DCE",
"notice": null,
"lists": {
"netBuy": [
{"rankNo": 1, "brokerName": "高盛期货(代客)", "value": 127469, "diff": -425}
],
"netSell": [
{"rankNo": 1, "brokerName": "中粮期货(代客)", "value": 267143, "diff": 288}
],
"longHolding": [
{"rankNo": 1, "brokerName": "国泰君安(代客)", "value": 168029, "diff": 108}
],
"shortHolding": [
{"rankNo": 1, "brokerName": "中粮期货(代客)", "value": 301364, "diff": -332}
]
}
}
}
```
字段说明:
- `exchange`:服务端自动识别出的交易所。
- `notice`:不为空时通常表示该日期和标的暂无入库数据。
- `lists.netBuy`:净买持仓榜。
- `lists.netSell`:净卖持仓榜。
- `lists.longHolding`:买方持仓榜。
- `lists.shortHolding`:卖方持仓榜。
- `value`:当前榜单数值。
- `diff`:相对前一交易日的变化;大于 0 表示增加,小于 0 表示减少。
排序规则:
- `netBuy`:按净买持仓从高到低。
- `netSell`:按净卖持仓从高到低。
- `longHolding`:按买方持仓从高到低。
- `shortHolding`:按卖方持仓从高到低。
## 5. 席位分析方法论
查询席位四榜后,可以把榜单中的机构按常见客户群体与交易行为进行辅助归类,再结合净买、净卖、买方持仓、卖方持仓及其 `diff` 判断方向变化。以下分类是经验口径,用于解释席位行为,不应当作绝对标签。
### 5.1 外资席位
- 代表席位:乾坤期货、摩根大通等。
- 典型特征:在以进口为主的交易品种上交易胜率较高,常年倾向保持正向收益。
- 客户结构:席位主要客户群体以海外机构为主。
- 解读方式:外资席位在相关进口品种上持续净买、买方持仓增加,通常可作为中期偏多参考;持续净卖或卖方持仓增加,则需要关注海外资金对供需、汇率、进口利润等变量的定价变化。
### 5.2 机构席位
- 代表席位:国泰君安期货、海通期货、东证期货、永安期货、中信期货、中财期货等。
- 典型特征:客户群体通常具备专业调研能力和较强的市场观察能力,常年倾向保持正向收益。
- 研究优势:相对专业的宏观分析能力、产业调研能力和市场观察能力,对市场中长期方向有较高借鉴意义。
- 解读方式:当多家机构席位在同一方向上同步增仓,且净买或净卖变化连续扩大时,说明专业资金方向较一致;如果机构席位多空分歧较大,应降低单一席位信号权重,结合价格趋势和基本面验证。
### 5.3 散户席位
- 代表席位:东方财富期货、徽商期货、平安期货等。
- 典型特征:客户群体常见行为包括抄底摸顶、逆周期操作、亏损加仓,长期收益倾向偏弱。
- 市场影响:期货市场价格波动往往由供需失衡和资金推动共同形成;散户群体逆周期操作和亏损加仓,容易在特定阶段形成市场合力,使行情加速波动。
- 解读方式:散户席位集中净买但价格仍弱,或集中净卖但价格仍强时,可能提示趋势延续或加速;若散户方向与机构、外资方向相反,应优先关注机构和外资的持续性变化。
## 6. 使用建议
- 先看 `netBuy` 和 `netSell` 判断披露口径下的净方向,再看 `longHolding` 与 `shortHolding` 确认多空持仓来源。
- 进行席位归类时,优先按期货公司全称或常见全称匹配;交易所原始名称可能带有 `(代客)` 后缀,也可能省略“期货”二字,例如 `国泰君安(代客)`、`东方财富(代客)`、`摩根大通(代客)`。
- 对同一席位同时观察 `value` 和 `diff`:大持仓代表存量影响,连续正向 `diff` 代表边际推动。
- 单日席位变化容易受移仓、换月、套保和日内价格波动影响,重要结论应尽量结合连续多日变化。
- 该工具返回的是每日入库后的席位事实表,不是实时成交或实时持仓;分析结论应与行情、成交量、持仓量和基本面背景一起使用。
## 7. 异常情况
- 如果某天某标的没有入库数据,`exchange` 为 `null`,四组榜单为空,`notice` 返回可展示提示。
- 如果同一日期同一 `symbol` 匹配到多个交易所,接口会返回参数错误,提示使用更明确的合约代码。
- v1 只查询期货席位排名,不查询期权席位排名。
---
## 来源:Orange Hitick 主观信号 Skill
原文:https://open.hitick.top/doc/raw/api/subjective-signal-skill.md
网页:https://open.hitick.top/doc/api/subjective-signal-skill/
# Orange Hitick 主观信号 Skill
## 1. 服务概览
- 当前服务编码:`subjective_signal`
- 当前模型标识:查询时按 `factorKey` 计费
- 当前对外暴露统一入口:`POST /api/v1/subjective-signal/evaluate`
- 补充元信息接口:`GET /api/v1/subjective-signal/factors`
说明:
- 当前支持的主观因子已经固定写在本文档里,调用方可以直接按因子调用
- `factors` 适合做控制台展示、参数元信息同步或调试
## 2. 当前支持的主观因子
当前线上已支持 7 个主观因子:
1. `AtmVolDivergence`
2. `SkewDivergence`
3. `OptionFlowAnomaly`
4. `ShortOption`
5. `SeatAnalysis`
6. `FuturesTermStructure`
7. `SqrtTimeRule`
### 2.1 `AtmVolDivergence`
- 中文名称:`ATM 波动率背离`
- 因子作用:识别价格与 ATM 隐波变化方向不一致,或价格变化较小但隐波显著变化的信号
- 数据来源:后台按分钟获取最新有效数据点,以该点为结束时间向前扫描 12 小时数据,并基于 30 分钟滚动窗口缓存结果
- 返回形式:返回最近一次命中的信号;可按标的列表过滤
适合场景:
- “最近哪些品种有波动率背离信号?”
- “这几个标的有没有偏看涨 / 偏看跌的背离?”
- “价格横盘但隐波上涨的品种有哪些?”
请求参数:
- `underlyings`:可选,标的代码数组,例如 `["au2607", "cu2607"]`
返回重点字段:
- `signal`:通常为 `BULLISH` 或 `BEARISH`
- `score`:信号强度分数
- `summary`:简要中文结论
- `generatedAt`:当前这条背离信号的生成时间,整理结果时必须明确提示,不能省略
- `details.underlying`:标的代码
- `details.instrument_name`:基础数据 catalog 返回的标的名称(已清理首尾空白)
- `details.expire`:到期日
- `details.multiplier`:合约乘数
- `details.windowMinutes`:窗口分钟数
- `details.priceChgPct30m`:30 分钟价格变化百分比
- `details.div30m`:30 分钟 ATM 隐波变化值
- `details.strength`:强 / 中 等标签
### 2.2 `SkewDivergence`
- 中文名称:`偏度背离`
- 因子作用:比较当日与上一收盘同一行权价上的 20D Call/Put 理论波动率变化,识别偏多或偏空的偏度结构背离
- 数据来源:优先实时 VolData,失败或无效时回退最新快照;上一收盘使用同标的、同到期日、同乘数的 15:00 快照
- 返回形式:仅返回方向、强度、定性变化标签、数据时点和插值质量,不返回具体价格/波动率变化值、行权价或阈值
请求参数:
- `underlyings`:可选,标的代码数组;为空表示不过滤
返回重点字段:
- `details.targetDelta`:固定为 `20D`
- `details.dominantWing`:`CALL` 或 `PUT`
- `details.currentDataMode`:`REALTIME` 或 `SNAPSHOT`
- `details.comparisonBasis`:固定为 `PREVIOUS_CLOSE_SAME_STRIKE`
- `details.currentDataTime` / `previousCloseTime`:两侧数据时点
- `details.interpolationQuality`:`EXACT`、`INTERPOLATED` 或 `EXTRAPOLATED`
### 2.3 `OptionFlowAnomaly`
- 中文名称:`期权持仓异动`
- 返回形式:每条结果对应一个品种,提供异动标签、分数、Call/Put 观测值、数量统计和最多 3 个代表合约,不推断多空方向
请求参数:
- `underlyings`:可选,品种或完整期货合约代码数组,例如 `["AU", "CU", "IM2608"]`;完整合约按品种前缀匹配
返回重点字段:
- `signal`:固定为 `ANOMALY`
- `score`:信号分数
- `details.productCode` / `productName`:品种代码及名称
- `details.callOiChangeValue` / `putOiChangeValue`:Call、Put 两侧持仓变化金额观测值
- `details.triggeredCount` / `sampledContractCount`:触发数量与参与结果生成的合约数量
- `details.topContracts`:最多 3 个代表合约及其期权类型、变化金额和变化方向
- `details.sourceFetchedAt`:结果采集时间,不代表交易所行情时间
- `details.sourceTimestampAvailable`:是否具有可用于解释的原始行情时间
该结果属于品种级证据,不代表某一个精确期货合约。
### 2.4 `ShortOption`
- 中文名称:`期权卖方`
- 因子作用:围绕目标胜率,筛选虚值 call / put 中卖方年化回报率较高的机会
- 数据来源:遍历可用分组,结合期权链、delta、卖方保证金、剩余天数等字段计算
- 返回形式:按年化回报率排序,默认返回前 20 条机会
适合场景:
- “找一些 70% 胜率附近的卖方机会”
- “哪些合约当前卖方静态回报率更高?”
- “给我一组虚值保护空间较好的卖方候选”
请求参数:
- `winRate`:可选,范围 `(0,1)`,默认 `0.7`
返回重点字段:
- `signal`:固定返回 `ShortOption`
- `score`:按年化回报率换算的评分
- `summary`:简要描述胜率和年化回报率
- `details.underlying`:标的代码
- `details.optionType`:`CALL` 或 `PUT`
- `details.symbol`:期权合约代码
- `details.expire`:到期日
- `details.multiplier`:合约乘数
- `details.strike`:行权价
- `details.underlyingPrice`:标的价格
- `details.bid` / `details.ask`:盘口价格
- `details.winRate`:参考胜率
- `details.otmPct`:虚值保护空间百分比
- `details.shortMargin`:参考保证金
- `details.remainingDays`:剩余自然日
- `details.returnRate`:静态回报率
- `details.annualizedReturnRate`:参考年化回报率
### 2.5 `SeatAnalysis`
- 中文名称:`席位分析`
- 因子作用:抓取最新席位分析图片并解析表格,返回当前缓存中的全部席位方向结果
- 数据来源:后台定时从上游接口拉取图片 URL,再通过视觉模型提取表格
- 返回形式:返回当前缓存中的全量结果,不支持过滤参数
适合场景:
- “最新席位分析怎么看?”
- “当前哪些品种席位偏多 / 偏空?”
- “把最新席位分析结果全拉出来”
基本原则:
- 一般以 `机构` 方向作为最终方向
- `家人` 指散户,经常逆市扛单,回本就跑,更适合作为反向参考
- `杭州帮` 指游资,期货大佬集中地,更适合作为短线资金风格参考
- `外资`、`杭州帮`、`家人` 都是辅助维度,最终结论优先看机构变化
请求参数:
- 无
返回重点字段:
- `signal`:`BULLISH` / `BEARISH` / `NEUTRAL`
- `score`:当前固定为 `70.0`
- `summary`:席位分析中文摘要
- `details.productName`:表格中的品种名称
- `details.matchedKey`:归一化匹配键
- `details.holdInstitutionChange`:机构持仓变化,解释方向时优先看这个字段
- `details.holdForeignChange`:外资变化
- `details.holdHangzhouChange`:杭州帮变化
- `details.holdFamilyChange`:家人变化
- `details.row`:原始表格行
- `details.parsedAt`:表格解析时间
### 2.6 `FuturesTermStructure`
- 中文名称:`期货期限结构`
- 因子作用:按品种判断当前期货期限结构
- 返回形式:每条结果对应一个品种,返回结构分类和品种名称
请求参数:
- `underlyings`:可选,品种或完整期货合约代码数组,例如 `["AU", "CU", "IM2608"]`;完整合约按品种前缀匹配
返回重点字段:
- `signal`:`backwardation`、`contango` 或 `unknow`
- 该因子不返回 `score`
- `details.productCode` / `productName`:品种代码及名称
- `details.subjectLevel`:固定为 `PRODUCT`
- `summary`:当前期限结构的简要中文结论
- `generatedAt`:结果生成时间
### 2.7 `SqrtTimeRule`
- 因子名称:`根号 T 原则`
- 对外结论:仅说明该因子是否命中
- 披露限制:不得公开计算方法、输入数据、阈值、比例、分数、明细字段或异常子类型
## 3. HTTP 接口
### 3.1 获取当前已注册因子元信息
```http
GET /api/v1/subjective-signal/factors
```
请求头:
- `X-API-Token: `
用途:
- 返回因子 descriptor 列表
- 适合做管理后台展示和自动化同步
- 也适合在需要参数元信息时辅助调用
### 3.2 执行主观信号计算
```http
POST /api/v1/subjective-signal/evaluate
```
请求头:
- `X-API-Token: `
请求体通用结构:
```json
{
"factorKey": "AtmVolDivergence | SkewDivergence | FuturesTermStructure | SqrtTimeRule | OptionFlowAnomaly | ShortOption | SeatAnalysis",
"params": {}
}
```
## 4. 直接调用示例
### 4.1 `AtmVolDivergence` 请求示例
```json
{
"factorKey": "AtmVolDivergence",
"params": {
"underlyings": ["au2607", "cu2607"]
}
}
```
### 4.2 `SkewDivergence` 请求示例
```json
{
"factorKey": "SkewDivergence",
"params": {
"underlyings": ["au2607", "cu2607"]
}
}
```
### 4.3 `OptionFlowAnomaly` 请求示例
```json
{
"factorKey": "OptionFlowAnomaly",
"params": {
"underlyings": ["AU", "CU", "IM2608"]
}
}
```
### 4.4 `ShortOption` 请求示例
```json
{
"factorKey": "ShortOption",
"params": {
"winRate": 0.7
}
}
```
### 4.5 `SeatAnalysis` 请求示例
```json
{
"factorKey": "SeatAnalysis",
"params": {}
}
```
### 4.6 `FuturesTermStructure` 请求示例
```json
{
"factorKey": "FuturesTermStructure",
"params": {
"underlyings": ["AU", "CU", "IM2608"]
}
}
```
## 5. 返回示例
### 5.1 `AtmVolDivergence` 返回示例
```json
{
"code": 0,
"message": "ok",
"data": [
{
"factorKey": "AtmVolDivergence",
"signal": "BULLISH",
"score": 70.0,
"summary": "波动率背离看涨(中):价格横盘,隐波上涨",
"details": {
"underlying": "au2607",
"expire": "20260624",
"multiplier": "1000",
"windowMinutes": 30,
"priceChgPct30m": 0.02,
"div30m": 0.045,
"strength": "中"
},
"generatedAt": "2026-06-11T10:30:00+08:00"
}
]
}
```
### 5.2 `SkewDivergence` 返回示例
```json
{
"code": 0,
"message": "ok",
"data": [
{
"factorKey": "SkewDivergence",
"signal": "BULLISH",
"score": 85.0,
"summary": "偏度背离偏多(强):价格横盘,Call端升波显著强于Put端",
"details": {
"underlying": "au2608",
"instrument_name": "沪金",
"expire": "20260727",
"multiplier": "1000",
"factorName": "偏度背离",
"targetDelta": "20D",
"priceMoveTag": "横盘",
"callVolMoveTag": "上升",
"putVolMoveTag": "基本稳定",
"dominantWing": "CALL",
"strength": "强",
"comparisonBasis": "PREVIOUS_CLOSE_SAME_STRIKE",
"currentDataMode": "SNAPSHOT",
"currentDataTime": "2026-07-17T15:00:00+08:00",
"previousCloseTime": "2026-07-16T15:00:00+08:00",
"interpolationQuality": "INTERPOLATED"
},
"generatedAt": "2026-07-17T15:00:00+08:00"
}
]
}
```
### 5.3 `OptionFlowAnomaly` 返回示例
```json
{
"code": 0,
"message": "ok",
"data": [
{
"factorKey": "OptionFlowAnomaly",
"signal": "ANOMALY",
"score": 80.0,
"summary": "期权持仓异动:Call合计3500.00万,Put合计-1800.00万,触发3个大额持仓变化合约",
"details": {
"underlying": "AU",
"productCode": "AU",
"productName": "黄金",
"subjectLevel": "PRODUCT",
"callOiChangeValue": 35000000,
"putOiChangeValue": -18000000,
"triggeredCount": 3,
"sampledContractCount": 5,
"sourceFetchedAt": "2026-07-20T13:00:00+08:00",
"sourceTimestampAvailable": false,
"topContracts": [
{
"contractCode": "AU2608-C-800",
"optionType": "CALL",
"oiChangeVal": 21000000,
"changeDirection": "INCREASE"
}
]
},
"generatedAt": "2026-07-20T13:00:00+08:00"
}
]
}
```
### 5.4 `ShortOption` 返回示例
```json
{
"code": 0,
"message": "ok",
"data": [
{
"factorKey": "ShortOption",
"signal": "ShortOption",
"score": 51.1,
"summary": "au2607 PUT 胜率 0.720 年化回报率 51.10%",
"details": {
"underlying": "au2607",
"optionType": "PUT",
"symbol": "au2607P92",
"expire": "20260624",
"multiplier": "1000",
"winRate": 0.72,
"otmPct": 8.0,
"annualizedReturnRate": 0.511
},
"generatedAt": "2026-06-12T10:00:00+08:00"
}
]
}
```
### 5.5 `SeatAnalysis` 返回示例
```json
{
"code": 0,
"message": "ok",
"data": [
{
"factorKey": "SeatAnalysis",
"signal": "BULLISH",
"score": 70.0,
"summary": "席位分析看多:杭州帮减空,外资加多,机构加多,家人-",
"details": {
"productName": "沪金",
"matchedKey": "沪金",
"holdHangzhouChange": "减空",
"holdForeignChange": "加多",
"holdInstitutionChange": "加多",
"holdFamilyChange": "-",
"row": {
"品种": "沪金",
"持仓变化-机构": "加多"
},
"parsedAt": "2026-06-17T10:30:00+08:00"
},
"generatedAt": "2026-06-17T10:30:00+08:00"
}
]
}
```
### 5.6 `FuturesTermStructure` 返回示例
```json
{
"code": 0,
"message": "ok",
"data": [
{
"factorKey": "FuturesTermStructure",
"signal": "contango",
"summary": "黄金 当前为 contango 结构",
"details": {
"productCode": "AU",
"productName": "黄金",
"subjectLevel": "PRODUCT"
},
"generatedAt": "2026-08-15T10:30:00+08:00"
}
]
}
```
### 5.7 `SqrtTimeRule` 返回示例
```json
{
"factorName": "根号 T 原则",
"conclusion": "命中"
}
```
## 6. Agent 调用建议
如果问题可以直接映射到已知因子,建议直接调用:
- 问“有没有背离信号 / 隐波和价格背离 / 偏看涨偏看跌信号”:
- 直接用 `AtmVolDivergence`
- 问“偏度背离 / Call 与 Put 两翼谁更强 / 相对上一收盘的偏度变化”:
- 直接用 `SkewDivergence`
- 解释时说明 `currentDataMode`、两个数据时间和 `interpolationQuality`,不要推测未返回的具体变化值
- 问“根号 T 原则是否命中”:
- 直接用 `SqrtTimeRule`
- 对外只回答因子名称和命中结论,不展示或解释其他返回字段
- 问“期权大额增减仓 / 哪些品种出现持仓异动 / Call 与 Put 持仓变化”:
- 直接用 `OptionFlowAnomaly`
- `sourceFetchedAt` 只代表结果采集时间;需要继续查询行情时先将品种代码解析为标准合约
- 问“找卖方机会 / 找 70% 胜率附近的合约 / 哪些卖方年化高”:
- 直接用 `ShortOption`
- 问“最新席位分析 / 当前席位偏多偏空 / 拉全部席位数据”:
- 直接用 `SeatAnalysis`
- 解释时优先按 `holdInstitutionChange` 给结论
- `家人` 作为散户信号通常偏反向观察
- `杭州帮` 作为游资信号通常偏短线风格观察
- 问“当前是 backwardation 还是 contango / 期货期限结构是什么”:
- 直接用 `FuturesTermStructure`
- `unknow` 表示当前无法明确归类,不应推断为其中任一种结构
- 问“支持哪些主观因子”:
- 直接回答当前支持 `AtmVolDivergence`、`SkewDivergence`、`FuturesTermStructure`、`SqrtTimeRule`、`OptionFlowAnomaly`、`ShortOption` 和 `SeatAnalysis`
补充说明:
- 如果你已经明确要调用哪个因子,可以直接请求 `evaluate`
- 如果你需要展示因子目录、参数结构或状态信息,可以请求 `factors`
- 对 `AtmVolDivergence` 做结果整理时,必须显式提示每条信号的 `generatedAt`,明确告诉用户“当前背离信号时间”;信号时间非常重要,不能只给方向和强度
## 7. 风险提示
- `AtmVolDivergence` 更适合做观察和辅助判断,不应单独作为交易依据
- `SkewDivergence` 是结构性观察因子,插值或外推结果需要结合流动性和期限背景理解
- `OptionFlowAnomaly` 是品种级观察信号,不应单独作为交易决策
- `ShortOption` 属于卖方机会筛选工具,理论风险极高,不能只看胜率和年化回报率
- 使用 `ShortOption` 时应同时考虑仓位、保证金、流动性、波动率冲击和对冲方案
- `SeatAnalysis` 属于主观解释型因子,席位关系复杂,不应脱离行情背景孤立使用
- `FuturesTermStructure` 仅反映当前期限结构分类,不应脱离供需、库存、流动性和合约规则单独作为交易依据
## 8. 当前约定
- 获取因子列表不计费
- `evaluate` 成功返回后按 `factorKey` 计费
- 主观信号内部如果组合基础数据和波动率数据,不重复扣底层服务费用
---
## 来源:Orange Hitick Trump Statements API 文档
原文:https://open.hitick.top/doc/raw/api/trump-statements-skill.md
网页:https://open.hitick.top/doc/api/trump-statements-skill/
# Orange Hitick Trump Statements API 文档
这份文档用于开发者通过 HTTP API 查询 Orange Hitick 收集的特朗普公开言论和白宫正式内容。
## 1. 服务信息
- HTTP 接口:`GET /api/v1/trump/statements`
- HTTP 鉴权方式:请求头 `X-API-Token`
- 返回包装:Orange Hitick 统一 `ApiResponse`
- 模型标识:`TrumpStatements`
- 计费说明:每次成功查询后计费一次
- 默认范围:最近 7 天
- 默认条数:`10`,最大 `100`
HTTP API 的统一返回结构:
```json
{
"code": 0,
"message": "ok",
"data": {}
}
```
## 2. 数据来源
当前公开内容来自以下三类来源:
| `source_type` | 来源 | 内容语义 |
| --- | --- | --- |
| `TRUTH_SOCIAL` | Trump Truth Social 公开内容 | 特朗普在 Truth Social 发布的内容 |
| `WHITE_HOUSE_PRESIDENTIAL_ACTION` | 白宫 Presidential Actions | 白宫发布的总统行动、行政令等正式内容 |
| `WHITE_HOUSE_NEWS` | 白宫 News | 白宫发布的新闻稿、讲话稿和相关正式内容 |
白宫正式行动和新闻稿应根据 `source_type`、标题、正文和来源链接准确描述。
## 3. HTTP 查询 API
```http
GET /api/v1/trump/statements
```
请求头:
```http
X-API-Token: your_token_value
```
查询参数:
- `startTime`:可选,开始时间,必须是带时区的 ISO-8601 时间;不传时默认为 `endTime - 7 天`
- `endTime`:可选,结束时间,必须是带时区的 ISO-8601 时间;不传时默认为当前时间
- `limit`:可选,默认 `10`;必须大于 `0`,超过 `100` 时按 `100` 处理
时间范围采用左闭右开区间 `[startTime, endTime)`。返回结果按 `published_at` 倒序排列;发布时间相同时按记录 ID 倒序排列。
查询默认最近 7 天、返回 3 条:
```bash
curl -sS 'https://api.hitick.top/api/v1/trump/statements?limit=3' \
-H 'X-API-Token: your_token_value'
```
查询指定时间范围:
```bash
curl -sS \
'https://api.hitick.top/api/v1/trump/statements?startTime=2026-08-01T00%3A00%3A00%2B08%3A00&endTime=2026-08-08T00%3A00%3A00%2B08%3A00&limit=20' \
-H 'X-API-Token: your_token_value'
```
## 4. 返回结构
```json
{
"code": 0,
"message": "ok",
"data": {
"start_time": "2026-08-01T00:00:00+08:00",
"end_time": "2026-08-08T00:00:00+08:00",
"count": 1,
"items": [
{
"id": 1001,
"subject_tag": "trump",
"source_type": "WHITE_HOUSE_NEWS",
"publisher": "The White House",
"title": "Remarks by President Trump ...",
"content_markdown": "Article body...
",
"source_url": "https://www.whitehouse.gov/remarks/...",
"aggregation_url": null,
"media_urls": [],
"categories": [],
"metadata": {
"rss_guid": "example-guid"
},
"published_at": "2026-08-05T12:00:00+08:00"
}
]
}
}
```
字段说明:
- `start_time`:本次实际查询的开始时间,统一转换为 `Asia/Shanghai`
- `end_time`:本次实际查询的结束时间,统一转换为 `Asia/Shanghai`
- `count`:本次实际返回的记录数
- `items`:言论或报道数组
- `id`:记录 ID
- `subject_tag`:主题标签,当前固定为 `trump`
- `source_type`:数据来源类型,取值见“数据来源”章节
- `publisher`:发布机构或媒体名称
- `title`:标题;部分 Truth Social 内容可能没有独立标题
- `content_markdown`:正文内容,可能保留来源中的原始格式
- `source_url`:原始内容地址
- `aggregation_url`:聚合来源地址;没有聚合来源时为空
- `media_urls`:正文关联的媒体资源 URL 数组
- `categories`:RSS 分类数组
- `metadata`:来源相关的附加元数据,不建议依赖其中未明确约定的字段
- `published_at`:原始内容发布时间
## 5. API 调用建议
- 用户没有指定时间范围时,使用默认最近 7 天;不要自行扩展到无限历史范围
- 用户指定自然语言时间时,转换为带时区的 ISO-8601 时间后再调用
- 优先依据 `source_type`、`publisher` 和 `source_url` 说明信息来自哪里
- `TRUTH_SOCIAL` 可以描述为特朗普在 Truth Social 发布的内容
- 白宫 Presidential Actions、白宫 News 与特朗普个人社交媒体发言应分别描述
- 引用或总结前检查 `published_at`,避免把旧内容表述为最新消息
- 如果 `count=0`,说明指定范围内当前没有可返回的记录,不要虚构结果
- 返回内容可能很长,先根据标题、来源和时间筛选,再按用户问题提取相关正文
## 6. 参数错误与使用限制
- `startTime` 或 `endTime` 不符合带时区 ISO-8601 格式时,返回参数错误
- `startTime` 必须早于 `endTime`
- `limit` 必须大于 `0`
- 数据不保证覆盖所有特朗普公开言论和白宫正式内容
- 来源页面可能受站点故障或访问限制影响
- 该接口用于信息检索与 Agent 分析,引用时仍应保留原始来源和发布时间
---
## 来源:Orange Hitick 波动率数据 Skill 文档
原文:https://open.hitick.top/doc/raw/api/vol-data-skill.md
网页:https://open.hitick.top/doc/api/vol-data-skill/
# Orange Hitick 波动率数据 Skill 文档
这份文档用于开发者手动接入,或让 Agent 按统一规则接入 Orange Hitick 的波动率数据服务。
## 1. 服务信息
- 平台接口前缀:`/api/v1/vol-data`
- 鉴权方式:请求头 `X-API-Token`
- 返回包装:Orange Hitick 统一 `ApiResponse`
- 当前服务编码:`vol_data`
- 当前服务名称:`波动率数据`
- 计费说明:`/groups` 不计费;`/query/*`、`/snapshot/*`、`/ts/*`、`/gex/*`、`/gex-image/*` 成功返回后计费,扣费失败则接口直接返回错误
平台统一返回结构:
```json
{
"code": 0,
"message": "success",
"data": {}
}
```
说明:
- `code = 0` 表示平台调用成功
- 真正的波动率数据结果放在 `data` 中
- `data` 是上游接口返回结果的透传 JSON
## 2. 鉴权
所有请求都必须带:
```http
X-API-Token: your_token_value
```
为减少大 JSON 的传输量,HTTP 客户端可发送 `Accept-Encoding: gzip`。服务端协商压缩后返回 `Content-Encoding: gzip`,客户端应解压后再解析 JSON;例如 `curl --compressed` 会自动完成协商和解压。不声明支持 gzip 时仍返回原文,返回结构和查询范围限制不变。
## 3. 接口能力总览
本服务可以提供 6 大类数据能力:
1. 分组目录:可查询哪些 `(underlying, expire_date, multiplier)` 组合当前可用
2. 实时快照:可查询标的报价、ATM 隐波、期权链、Greeks、盘口隐波、卖方保证金
3. 历史小时快照:可查询本地落库的 T 型报价小时快照
4. 时序数据:可查询某一时间区间内的 `atm_iv` 与标的价格走势
5. GEX 曲线与 GEX 小时快照:可查询 Gamma Exposure 分布、当前净 GEX、零 gamma 位置,并可回看本地落库的小时 GEX 快照
6. Agent / MCP 接入:先用 `orange_resolve_subject` 解析标的,实时快照统一使用 `by_underlying`,并支持 `snapshot_*`、`ts_*`、`gex_*` 标准化动作
建议使用顺序:
1. Agent 中先用 `orange_resolve_subject` 把中文品种名、代码前缀或不完整合约解析成标准三元组
2. 查询实时快照时优先使用 `query/*`
3. 查询历史整点快照时使用 `snapshot/*`
4. 查询波动率走势时使用 `ts/*`
5. 查询 Gamma Exposure 分布时使用 `gex/*`
6. 查询历史整点 GEX 结构时使用 `gex/snapshot/*`
REST 的 `/groups` 接口仍保持不变,供原有 HTTP 客户端使用;Raw MCP 不公开全量分组 action。
## 4. 接口列表与请求参数
### 4.1 获取缓存分组
```http
GET /api/v1/vol-data/groups
```
用途:
- 返回当前可查询的 `(underlying, expire_date, multiplier)` 组合
- 适合在已知标的代码后,进一步确认有哪些到期日和合约乘数可查
- 不扣费
请求参数:
- 无 query 参数
示例:
```bash
curl -sS 'https://api.hitick.top/api/v1/vol-data/groups' \
-H 'X-API-Token: your_token_value'
```
返回核心结构:
```json
{
"groups": [
{
"underlying": "au2607",
"expire_date": "20260624",
"multiplier": 1000
}
]
}
```
字段说明:
- `groups[].underlying`:标的代码
- `groups[].expire_date`:到期日,格式 `yyyyMMdd`
- `groups[].multiplier`:合约乘数
### 4.2 实时快照接口
实时快照接口用于查询某个标的分组下的完整 T 型报价快照,包含:
- 标的最新报价
- 当前 ATM 隐含波动率
- 隐含波动率偏度(`iv_skew`)
- PCR 指标(`oi_pcr`、`volume_pcr`)
- 行权价维度的期权链
- Call / Put 双边 Greeks
- 理论隐波、盘口隐波
- 卖方参考保证金
#### 4.2.1 按标的查询
```http
GET /api/v1/vol-data/query/by-underlying?underlying=au2607
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
可选参数:
- `expire`:到期日,格式 `yyyyMMdd`
- `multiplier`:合约乘数,例如 `1000`
适用场景:
- 只知道标的代码,想拿当前默认分组的实时快照
- 若同时传 `expire` / `multiplier`,上游会按更具体的分组筛选
#### 4.2.2 按到期日查询
```http
GET /api/v1/vol-data/query/by-expire?underlying=au2607&expire=20260624
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
建议参数:
- `expire`:到期日,格式 `yyyyMMdd`
可选参数:
- `multiplier`:合约乘数,例如 `1000`
适用场景:
- 已明确目标到期日,希望获取该到期日下的实时快照
#### 4.2.3 按乘数查询
```http
GET /api/v1/vol-data/query/by-multiplier?underlying=au2607&expire=20260624&multiplier=1000
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
建议参数:
- `expire`:到期日,格式 `yyyyMMdd`
- `multiplier`:合约乘数,例如 `1000`
适用场景:
- 已明确完整分组,想精确锁定某一条可交易链
### 4.2.4 历史小时快照查询
```http
GET /api/v1/vol-data/snapshot/by-underlying?underlying=au2607&snapshotTime=1781062200000
```
用途:
- 查询本地数据库中某个小时档位的历史 T 型快照
- 返回结构与实时快照 `GET /api/v1/vol-data/query/by-multiplier` 基本一致
- 适合回看某个历史时点的 `atm_iv`、`iv_skew`、PCR、标的报价、期权链、Greeks 和盘口隐波
必填参数:
- `underlying`:标的代码,例如 `au2607`
- `snapshotTime`:目标时间戳,毫秒;也可传 `last`,表示查询当前分组在数据库中最新的一条快照,主要用于非开盘时段获取上次收盘时的快照
可选参数:
- `expire`:到期日,格式 `yyyyMMdd`
- `multiplier`:合约乘数,例如 `1000`
参数规则:
- 当未传 `expire` 时,默认选择该 `underlying` 的最近月
- 当未传 `multiplier` 时,默认选择该月下最小乘数
- `snapshotTime` 传毫秒时间戳时会先向下取整到整点,再查询对应小时快照
- `snapshotTime=last` 时不做时间取整,直接按当前分组查询数据库中 `snapshot_hour_ms` 最大的一条记录;主要使用场景是在非开盘时段获取上次收盘时的快照
示例:
```bash
curl -sS 'https://api.hitick.top/api/v1/vol-data/snapshot/by-underlying?underlying=au2607&snapshotTime=1781062200000' \
-H 'X-API-Token: your_token_value'
```
返回核心结构:
```json
{
"found": true,
"query_type": "snapshot_by_underlying",
"underlying": "au2607",
"expire_date": "20260624",
"multiplier": 1000,
"atm_iv": 0.1852,
"iv_skew": -0.0174,
"oi_pcr": 1.2389,
"volume_pcr": 0.8123,
"data_time_ms": 1781062200000,
"underlying_quote": {
"symbol": "au2607",
"last_price": 812.34
},
"rows": [
{
"strike": 800,
"call": {
"symbol": "au2607-C-800",
"delta": 0.54,
"gamma": 0.0012,
"vega": 0.0831,
"theta": -0.0245,
"theo_vol": 0.1841,
"implied_vol": 0.1863
},
"put": {
"symbol": "au2607-P-800",
"delta": -0.46,
"gamma": 0.0011,
"vega": 0.0818,
"theta": -0.0229,
"theo_vol": 0.1874,
"implied_vol": 0.1889
}
}
]
}
```
字段说明:
- `found`:是否命中该历史快照
- `query_type`:固定为 `snapshot_by_underlying`
- `underlying`:标的代码
- `expire_date`:实际命中的到期日,格式 `yyyyMMdd`
- `multiplier`:实际命中的合约乘数
- `atm_iv`:该小时快照的 ATM 隐含波动率,小数表示
- `iv_skew`:该小时快照的隐含波动率偏度
- `oi_pcr`:按 `put.open_interest / call.open_interest` 聚合得到的持仓量 PCR
- `volume_pcr`:按 `put.volume / call.volume` 聚合得到的成交量 PCR
- `data_time_ms`:快照所属整点时间,毫秒
- `underlying_quote.last_price`:该时点标的最新价
- `rows[]`:该时点期权链,结构与实时 `query/*` 返回一致
说明:
- 如果 `found = false`,表示该分组在对应整点没有可用历史快照
- `rows[].call` / `rows[].put` 下的 Greeks、理论隐波、盘口隐波字段与实时接口一致
- PCR 口径与实时快照一致:
- `oi_pcr = sum(put.open_interest) / sum(call.open_interest)`
- `volume_pcr = sum(put.volume) / sum(call.volume)`
- 缺失 `open_interest` 或 `volume` 按 `0` 处理
- 当 call 侧分母为 `0` 时,返回 `NaN`
- `atm_iv`、`theo_vol`、`implied_vol` 等隐波字段均为小数,不是百分比
### 4.3 时间序列接口
时间序列接口用于查询某个时间区间内的 ATM 隐波、隐含波动率偏度和标的价格时序。
三个 `/ts/*` 接口统一限制单次查询跨度最多 **24 小时(86400000 毫秒)**:
- `start`、`end` 必填。正数为绝对 Unix 毫秒时间戳;非正数为相对该分组最新有效数据时间的毫秒偏移,`0` 表示最新数据,并非服务器当前时间。
- 绝对、相对及混合写法均按解析后的时间校验:`0 <= end - start <= 86400000`。恰好 24 小时允许,超过 24 小时直接报错,不自动截断。
- `start=-86400000&end=0` 查询最新 24 小时;原相对查询自动裁剪到 12 小时的行为已取消。
- 超限请求不扣查询费用。沿用业务错误格式:HTTP 状态码为 `200`,客户端必须检查 `code`,并展示 `message`。请缩小时间范围后再请求,不要原样重试。
超限返回示例:
```json
{
"code": 1001,
"message": "时序查询时间范围不能超过 24 小时(86400000 毫秒),请缩小 start/end 时间范围后重试。",
"data": null
}
```
返回重点:
- `timestamp_ms`
- `underlying_last_price`
- `atm_iv`
- `iv_skew`
#### 4.3.1 按标的查询时序
```http
GET /api/v1/vol-data/ts/by-underlying?underlying=au2607&start=1781062200000&end=1781062300000
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
- `start`:起始时间戳,毫秒
- `end`:结束时间戳,毫秒
可选参数:
- `expire`:到期日,格式 `yyyyMMdd`
- `multiplier`:合约乘数,例如 `1000`
#### 4.3.2 按到期日查询时序
```http
GET /api/v1/vol-data/ts/by-expire?underlying=au2607&expire=20260624&start=1781062200000&end=1781062300000
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
- `start`:起始时间戳,毫秒
- `end`:结束时间戳,毫秒
建议参数:
- `expire`:到期日,格式 `yyyyMMdd`
可选参数:
- `multiplier`:合约乘数,例如 `1000`
#### 4.3.3 按乘数查询时序
```http
GET /api/v1/vol-data/ts/by-multiplier?underlying=au2607&expire=20260624&multiplier=1000&start=1781062200000&end=1781062300000
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
- `start`:起始时间戳,毫秒
- `end`:结束时间戳,毫秒
建议参数:
- `expire`:到期日,格式 `yyyyMMdd`
- `multiplier`:合约乘数,例如 `1000`
### 4.4 GEX 曲线接口
GEX 接口用于查询 Gamma Exposure 扫描结果,适合分析:
- 当前净 GEX 是正还是负
- 价格上移 / 下移后净 GEX 如何变化
- 零 gamma 位置在哪里
- 当前价附近是否存在 GEX 翻转区
#### 4.4.1 按标的查询 GEX
```http
GET /api/v1/vol-data/gex/by-underlying?underlying=au2607
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
可选参数:
- `expire`:到期日,格式 `yyyyMMdd`
- `multiplier`:合约乘数,例如 `1000`
#### 4.4.2 按到期日查询 GEX
```http
GET /api/v1/vol-data/gex/by-expire?underlying=au2607&expire=20260624
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
建议参数:
- `expire`:到期日,格式 `yyyyMMdd`
可选参数:
- `multiplier`:合约乘数,例如 `1000`
#### 4.4.3 按乘数查询 GEX
```http
GET /api/v1/vol-data/gex/by-multiplier?underlying=au2607&expire=20260624&multiplier=1000
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
建议参数:
- `expire`:到期日,格式 `yyyyMMdd`
- `multiplier`:合约乘数,例如 `1000`
### 4.5 GEX 历史小时快照接口
GEX 历史小时快照接口用于查询本地数据库中已落库的整点 GEX 结构。它适合回看某一小时档位的净 GEX、零 gamma 和扫描曲线,而不是重新按当前行情计算。
```http
GET /api/v1/vol-data/gex/snapshot/by-underlying?underlying=au2607&snapshotTime=1781651875123
```
用途:
- 查询本地数据库中某个小时档位的历史 GEX 快照
- 返回结构与实时 GEX `GET /api/v1/vol-data/gex/by-multiplier` 基本一致
- 适合回看某个历史时点的 `current_gex`、`zero_gamma`、`spot_price` 和 `points`
必填参数:
- `underlying`:标的代码,例如 `au2607`
- `snapshotTime`:目标时间戳,毫秒;也可传 `last`,表示查询当前分组在数据库中最新的一条 GEX 快照,主要用于非开盘时段获取上次收盘时的 GEX 快照
可选参数:
- `expire`:到期日,格式 `yyyyMMdd`
- `multiplier`:合约乘数,例如 `1000`
参数规则:
- 当未传 `expire` 时,默认选择该 `underlying` 的最近月
- 当未传 `multiplier` 时,默认选择该月下最小乘数
- `snapshotTime` 传毫秒时间戳时会先向下取整到整点,再查询对应小时快照
- `snapshotTime=last` 时不做时间取整,直接按当前分组查询数据库中 `snapshot_hour_ms` 最大的一条记录;主要使用场景是在非开盘时段获取上次收盘时的 GEX 快照
- 计费 payload 中会同时记录实际查询的 `snapshotTime` 和原始请求的 `requestedSnapshotTime`
示例:
```bash
curl -sS 'https://api.hitick.top/api/v1/vol-data/gex/snapshot/by-underlying?underlying=au2607&snapshotTime=1781651875123' \
-H 'X-API-Token: your_token_value'
```
返回核心结构:
```json
{
"found": true,
"query_type": "gex_by_multiplier",
"underlying": "au2607",
"expire_date": "20260624",
"multiplier": "1000",
"data_time_ms": 1781650800123,
"spot_price": 919.12,
"price_min": 827.208,
"price_max": 1011.032,
"range_pct": 0.1,
"steps": 81,
"current_gex": -1582342.118,
"zero_gamma": 941.47,
"points": [
{
"price": 827.208,
"net_gex": -2120341.441
}
],
"error": null
}
```
字段说明:
- `found`:是否命中该历史 GEX 快照
- `query_type`:命中快照时通常保留落库时的实时查询类型,例如 `gex_by_multiplier`;未命中时为 `gex_snapshot_by_underlying`
- `underlying`:标的代码
- `expire_date`:实际命中的到期日,格式 `yyyyMMdd`
- `multiplier`:实际命中的合约乘数
- `data_time_ms`:落库快照对应的上游行情时间戳
- `spot_price`:该快照用于计算 GEX 的标的价格
- `current_gex`:该快照现价下的净 GEX
- `zero_gamma`:若曲线穿越 0,则返回线性插值得到的零 gamma 价格,否则为 `null`
- `points[]`:扫描价格点数组,结构与实时 `gex/*` 返回一致
说明:
- 如果 `found = false`,表示该分组在对应整点没有可用 GEX 快照
- 后台定时任务按可用分组抓取实时 `gex/by-multiplier`,并以整点小时作为 `snapshotHourMs` 落库
- 只有上游返回 `found = true` 且 `data_time_ms` 距当前时间不超过 30 分钟时,后台才会持久化该小时 GEX 快照
### 4.6 GEX 图片接口
GEX 图片接口用于获取已渲染的 GEX 结构图 CDN 地址,适合聊天机器人、外部系统或移动端直接展示图片。默认生成实时 GEX 图;传入 `snapshotTime` 后可生成过去某个小时档位的历史 GEX 图,传 `snapshotTime=last` 可生成当前分组数据库最新快照图,主要用于非开盘时段获取上次收盘时的 GEX 图。
```http
GET /api/v1/vol-data/gex-image/by-underlying?underlying=au2607
```
必填参数:
- `underlying`:标的代码,例如 `au2607`
建议参数:
- `expire`:到期日,格式 `yyyyMMdd`
- `multiplier`:合约乘数,例如 `1000`
- `snapshotTime`:目标时间戳,毫秒;也可传 `last`,表示使用当前分组数据库最新 GEX 快照生成图片,主要用于非开盘时段获取上次收盘时的 GEX 图
返回示例:
```json
{
"code": 0,
"message": "ok",
"data": {
"url": "https://cdn.example.com/gex/au2607-20260624-1000.png",
"generated_at": 1781650800000
}
}
```
调用说明:
- 只传 `underlying` 即可获取该标的的 GEX 图片 URL
- `expire` / `multiplier` 可选;未传时系统会自动选择可用组合
- 未传 `snapshotTime` 时生成实时 GEX 图;传毫秒时间戳时生成对应小时快照图;传 `last` 时生成最新落库快照图,主要用于非开盘时段获取上次收盘时的 GEX 图
- 返回的 `url` 可直接用于图片展示或发送
- 成功返回图片 URL 后触发计费;失败时接口返回错误信息
## 5. 参数说明总表
所有接口的 query 参数都来自下面这组字段:
| 参数名 | 类型 | 是否必填 | 适用接口 | 说明 |
| --- | --- | --- | --- | --- |
| `underlying` | string | `query/*`、`snapshot/*`、`ts/*`、`gex/*`、`gex-image/*` 必填 | `query/*`、`snapshot/*`、`ts/*`、`gex/*`、`gex-image/*` | 标的代码,例如 `au2607`、`cu2607` |
| `expire` | string | 视场景建议传 | `query/*`、`snapshot/*`、`ts/*`、`gex/*`、`gex-image/*` | 到期日,格式 `yyyyMMdd`,例如 `20260624` |
| `multiplier` | string / number | 视场景建议传 | `query/*`、`snapshot/*`、`ts/*`、`gex/*`、`gex-image/*` | 合约乘数,例如 `1000`、`5` |
| `start` | string / number | `ts/*` 必填 | `ts/*` | 起始毫秒时间戳 |
| `end` | string / number | `ts/*` 必填 | `ts/*` | 结束毫秒时间戳 |
| `snapshotTime` | string / number | `snapshot/*`、`gex/snapshot/*` 必填;`gex-image/*` 可选 | `snapshot/*`、`gex/snapshot/*`、`gex-image/*` | 目标毫秒时间戳,服务端会向下取整到整点查询;也可传 `last` 查询当前分组数据库最新快照,主要用于非开盘时段获取上次收盘时的快照。用于 `gex-image/*` 时,表示生成历史 GEX 图或最新落库 GEX 图 |
实务建议:
- 如果你只知道标的代码,先用 `by-underlying`
- 如果你在做单一期限分析,优先传 `expire`
- 如果同一标的存在多个乘数,建议显式传 `multiplier`
- 时间区间建议用毫秒级 Unix 时间戳,避免时区歧义
## 6. 返回结构详解
### 6.1 快照查询返回结构
三个 `query/*` 接口的 `data` 顶层结构一致:
```json
{
"found": true,
"query_type": "by_underlying",
"underlying": "au2607",
"expire_date": "20260624",
"multiplier": 1000,
"atm_iv": 0.29434965770081106,
"iv_skew": -0.0174,
"oi_pcr": 1.2389,
"volume_pcr": 0.8123,
"data_time_ms": 1781071070500,
"api_latency_ms": 132,
"calc_latency_ms": 8,
"underlying_quote": {
"symbol": "au2607",
"last_price": 919.12,
"bid_price": 918.94,
"ask_price": 919.24,
"open_price": 930.0,
"highest_price": 951.2,
"lowest_price": 912.6,
"pre_settlement_price": 947.94
},
"rows": [
{
"strike": 704.0,
"call": {
"symbol": "au2607C704",
"delta": 0.9920005958397674,
"gamma": 0.00019125757057879587,
"vega": 0.03419517453622726,
"theta": -0.10879514980386451,
"theo_vol": 0.584031857797719,
"implied_vol": null,
"implied_bid_vol": null,
"implied_ask_vol": null,
"short_margin": 364215.4
},
"put": {
"symbol": "au2607P704",
"delta": -0.007040959652272832,
"gamma": 0.00019125757057879587,
"vega": 0.03419517453622726,
"theta": -0.10879514980386451,
"theo_vol": 0.584031857797719,
"implied_vol": null,
"implied_bid_vol": null,
"implied_ask_vol": null,
"short_margin": 85297.7
}
}
],
"error": null
}
```
#### 6.1.1 顶层字段
- `found`:是否命中数据
- `query_type`:查询类型,如 `by_underlying`、`by_expire`、`by_multiplier`
- `underlying`:标的代码
- `expire_date`:到期日
- `multiplier`:合约乘数
- `atm_iv`:当前 ATM 隐含波动率,使用小数表示,不是百分比
- `iv_skew`:当前隐含波动率偏度
- `oi_pcr`:按 `put.open_interest / call.open_interest` 聚合得到的持仓量 PCR
- `volume_pcr`:按 `put.volume / call.volume` 聚合得到的成交量 PCR
- `data_time_ms`:快照数据时间戳,毫秒
- `api_latency_ms`:上游接口耗时,毫秒
- `calc_latency_ms`:上游计算耗时,毫秒
- `error`:上游错误对象;正常时通常为 `null`
#### 6.1.2 标的报价字段
`underlying_quote` 用于表示标的实时行情,稳定字段包括:
- `underlying_quote.symbol`:标的代码
- `underlying_quote.last_price`:标的最新价
- `underlying_quote.bid_price` / `ask_price`:买一价和卖一价
- `underlying_quote.open_price`:Basic Data 返回的当前交易日开盘价
- `underlying_quote.highest_price`:Basic Data 返回的当前交易日最高价
- `underlying_quote.lowest_price`:Basic Data 返回的当前交易日最低价
- `underlying_quote.pre_settlement_price`:昨结算价
- `underlying_quote.open_interest`:持仓量
- `underlying_quote.volume`:成交量
- `underlying_quote.exchange`:交易所
- `underlying_quote.timestamp_ms`:行情源时间戳
说明:
- 开盘、最高和最低均直接透传 Basic Data,不由 volData 的分钟序列推算。
- 字段在上游尚未形成有效价格时可能为 `null`。
#### 6.1.3 期权链字段
`rows` 表示按行权价展开的期权链。
- `rows[].strike`:行权价
- `rows[].call`:该行权价对应的看涨期权数据
- `rows[].put`:该行权价对应的看跌期权数据
如果某一侧无数据,对应 `call` 或 `put` 可能为空。
#### 6.1.4 报价相关字段
当前快照结构中,文档已确认或约定可重点关注以下报价相关字段:
- `underlying_quote.last_price`:标的最新价
- `underlying_quote.open_price` / `highest_price` / `lowest_price`:当前交易日开高低
- `underlying_quote.pre_settlement_price`:昨结算价
- `rows[].strike`:行权价
- `rows[].call.symbol` / `rows[].put.symbol`:期权合约代码
如果上游后续补充盘口价、买一卖一、成交量、持仓量等字段,也会继续透传在 `call` / `put` 节点中。当前这份对外文档先只写明已验证存在的稳定字段。
#### 6.1.5 隐含波动率字段
本接口可提供多层次的隐波数据:
- `atm_iv`:整个分组当前的 ATM 隐含波动率
- `iv_skew`:整个分组当前的隐含波动率偏度
- `rows[].call.theo_vol` / `rows[].put.theo_vol`:模型理论波动率
- `rows[].call.implied_vol` / `rows[].put.implied_vol`:该合约的中间隐含波动率
- `rows[].call.implied_bid_vol` / `rows[].put.implied_bid_vol`:按买价反推的隐含波动率
- `rows[].call.implied_ask_vol` / `rows[].put.implied_ask_vol`:按卖价反推的隐含波动率
字段解释:
- `atm_iv`:最适合做品种层面的升波 / 降波、时点比较、排序分析
- `theo_vol`:更偏模型内部估计值,适合与市场隐波对比
- `implied_vol`:更适合看单个合约当前的市场定价隐波
- `implied_bid_vol` / `implied_ask_vol`:适合衡量盘口两侧隐波差异和流动性状态
注意:
- 所有隐波字段都以小数表示,例如 `0.28` 表示 `28%`
- 返回 `null` 表示该时刻无法稳定反推出对应隐波,不应直接当作 `0`
#### 6.1.6 PCR 字段
当前快照顶层还会返回两个 PCR 指标:
- `oi_pcr`:持仓量 Put/Call Ratio
- `volume_pcr`:成交量 Put/Call Ratio
PCR 口径:
- `oi_pcr = sum(put.open_interest) / sum(call.open_interest)`
- `volume_pcr = sum(put.volume) / sum(call.volume)`
- 缺失 `open_interest` 或 `volume` 按 `0` 处理
- 当 call 侧分母为 `0` 时,返回 `NaN`
#### 6.1.7 Greeks 字段
本接口目前明确可返回以下 Greeks:
- `delta`
- `gamma`
- `vega`
- `theta`
字段位置:
- `rows[].call.delta`
- `rows[].call.gamma`
- `rows[].call.vega`
- `rows[].call.theta`
- `rows[].put.delta`
- `rows[].put.gamma`
- `rows[].put.vega`
- `rows[].put.theta`
含义说明:
- `delta`:标的价格变化 1 单位时,期权价格的一阶敏感度
- `gamma`:`delta` 对标的价格变化的二阶敏感度
- `vega`:期权价格对隐含波动率变化的敏感度
- `theta`:期权价格对时间流逝的敏感度
使用建议:
- 做方向判断时优先看 `delta`
- 做 Gamma 风险或 Gamma 暴露分析时看 `gamma`
- 做升波 / 降波敏感度分析时看 `vega`
- 做临近到期的时间损耗分析时看 `theta`
#### 6.1.7 保证金字段
- `rows[].call.short_margin`
- `rows[].put.short_margin`
说明:
- `short_margin` 面向卖方场景,表示卖出该期权时的参考保证金金额
- 可用于估算资金占用、静态收益率和风控承受能力
- 该字段是参考值,实际交易保证金仍可能因期货公司、交易所规则、账户风险参数和盘中行情而变化
### 6.2 时间序列返回结构
三个 `ts/*` 接口的 `data` 顶层结构一致:
```json
{
"found": true,
"query_type": "ts_by_underlying",
"underlying": "au2607",
"expire_date": "20260624",
"multiplier": 1000,
"start_ms": 1781062200000,
"end_ms": 1781062300000,
"rows": [
{
"timestamp_ms": 1781062200500,
"underlying_last_price": 911.92,
"atm_iv": 0.3072331463176879,
"iv_skew": -0.0174
}
],
"error": null
}
```
字段说明:
- `found`:是否命中
- `query_type`:查询类型,可能为 `ts_by_underlying`、`ts_by_expire`、`ts_by_multiplier`
- `underlying`:标的代码
- `expire_date`:到期日
- `multiplier`:合约乘数
- `start_ms`:请求起始时间戳
- `end_ms`:请求结束时间戳
- `rows`:时间序列点数组
- `rows[].timestamp_ms`:数据点时间戳,毫秒
- `rows[].underlying_last_price`:该时点的标的最新价
- `rows[].atm_iv`:该时点的 ATM 隐含波动率
- `rows[].iv_skew`:该时点的隐含波动率偏度
- `error`:上游错误对象;正常时通常为 `null`
时序能力总结:
- 可以做日内升波 / 降波分析
- 可以做开盘到当前的 `atm_iv` 变化分析
- 可以做某一交易时段的标的价格与隐波联动分析
- 可以作为主观信号、量化特征、图表展示的原始输入
### 6.3 GEX 曲线返回结构
三个 `gex/*` 接口的 `data` 顶层结构一致:
```json
{
"found": true,
"query_type": "gex_by_underlying",
"underlying": "au2607",
"expire_date": "20260624",
"multiplier": 1000,
"data_time_ms": 1781071070500,
"spot_price": 919.12,
"price_min": 827.208,
"price_max": 1011.032,
"range_pct": 0.1,
"steps": 81,
"current_gex": -1582342.118,
"zero_gamma": 941.47,
"points": [
{
"price": 827.208,
"net_gex": -2120341.441
}
],
"error": null
}
```
字段说明:
- `found`:是否命中
- `query_type`:查询类型,可能为 `gex_by_underlying`、`gex_by_expire`、`gex_by_multiplier`
- `underlying`:标的代码
- `expire_date`:到期日
- `multiplier`:合约乘数
- `data_time_ms`:快照时间戳
- `spot_price`:当前标的价格,GEX 扫描中心
- `price_min`:扫描下界
- `price_max`:扫描上界
- `range_pct`:扫描半区间比例,例如 `0.1` 表示以现价上下各 `10%` 扫描
- `steps`:扫描网格数量
- `current_gex`:当前现价下的净 GEX
- `zero_gamma`:若曲线穿越 0,则返回线性插值得到的零 gamma 价格,否则为 `null`
- `points`:扫描价格点数组
- `points[].price`:扫描价格点
- `points[].net_gex`:该价格点对应的净 GEX
- `error`:上游错误对象;正常时通常为 `null`
GEX 能力总结:
- 可看当前市场整体是正 GEX 还是负 GEX
- 可判断现价附近是否接近零 gamma 区域
- 可辅助分析价格波动放大 / 收敛的潜在结构
- 可与 `gamma`、`open interest`、持仓结构分析配合使用
### 6.4 GEX 历史小时快照返回结构
`gex/snapshot/by-underlying` 返回本地落库的小时 GEX 快照。命中时结构与实时 `gex/*` 基本一致,未命中时返回一个轻量的未命中对象:
```json
{
"found": false,
"query_type": "gex_snapshot_by_underlying",
"underlying": "au2607",
"expire_date": "20260624",
"multiplier": "1000"
}
```
使用建议:
- 需要“某个整点附近的 GEX 结构”时使用 `gex/snapshot/by-underlying`
- 需要“当前实时 GEX 结构”时使用 `gex/by-underlying`、`gex/by-expire` 或 `gex/by-multiplier`
- `snapshotTime` 可传任意毫秒时间戳,服务端会按整点小时归档查询;也可传 `last` 查询当前分组数据库最新快照,主要用于非开盘时段获取上次收盘时的快照
## 7. 波动率日差说明
如果需要回答这类问题:
- “今天 `xx` 有升波吗?”
- “今天升波最大的品种是什么?”
- “今天哪些品种降波最多?”
建议统一使用“波动率日差”口径。
定义:
- 波动率日差 = 当前波动率 - 上一交易日收盘时波动率
- 波动率上升 / 下降,均以上一交易日收盘时的波动率为比较基准
使用建议:
1. 先用快照接口读取当前 `atm_iv`
2. 再用时间序列接口读取覆盖“上一交易日收盘前后”和“当前时刻”的数据
3. 取上一交易日收盘时最近的 `atm_iv` 作为对比基准
4. 用当前 `atm_iv - 上一交易日收盘时 atm_iv` 得到波动率日差
判读规则:
- 波动率日差 > 0:表示今天升波
- 波动率日差 < 0:表示今天降波
- 波动率日差 = 0:表示与上一交易日收盘相比基本持平
注意:
- `atm_iv` 为小数形式返回,例如 `0.28` 表示 `28%`
- 做跨品种比较时,建议统一使用同一时点的当前快照,并统一以上一交易日收盘时为基准
- 如果上一交易日收盘附近没有有效时序点,应选择最接近收盘时间的可用点,并在结果中说明是“收盘附近参考值”
## 8. Agent 接入规范
如果给 Agent 使用,建议按下面的最小规则封装。
### 8.1 工具名建议
```text
orange_resolve_subject
orange_vol_data
```
`orange_resolve_subject` 输入 `query`,可选 `limit` 默认 5、最大 5。它返回推荐的 `selected` 三元组及最多 5 个候选,不返回完整目录、行情或期权链。
### 8.2 输入结构建议
```json
{
"action": "by_underlying | snapshot_by_underlying | gex_snapshot_by_underlying | ts_by_underlying | ts_by_expire | ts_by_multiplier | gex_by_underlying | gex_by_expire | gex_by_multiplier | gex_image_by_underlying",
"params": {
"underlying": "au2607",
"expire": "20260624",
"multiplier": "1000",
"start": "1781062200000",
"end": "1781062300000",
"fullChain": false
}
}
```
参数要求:
- `action = by_underlying`:必须传 `underlying`;`expire`、`multiplier` 可选,未传时自动选择最早到期日及该到期日最小乘数;默认只返回现价上下 10% 行权价档位,完整链需传 `fullChain=true`
- `action = snapshot_by_underlying`:必须传 `underlying`、`snapshotTime`,建议传 `expire`、`multiplier`;`snapshotTime` 可为毫秒时间戳或 `last`,其中 `last` 主要用于非开盘时段获取上次收盘时的快照
- `action = gex_snapshot_by_underlying`:必须传 `underlying`、`snapshotTime`,建议传 `expire`、`multiplier`;`snapshotTime` 可为毫秒时间戳或 `last`,其中 `last` 主要用于非开盘时段获取上次收盘时的 GEX 快照
- `action = ts_by_underlying`:必须传 `underlying`、`start`、`end`
- `action = ts_by_expire`:必须传 `underlying`、`start`、`end`,建议传 `expire`
- `action = ts_by_multiplier`:必须传 `underlying`、`start`、`end`,建议传 `expire`、`multiplier`
- `action = gex_by_underlying`:必须传 `underlying`
- `action = gex_by_expire`:必须传 `underlying`,建议传 `expire`
- `action = gex_by_multiplier`:必须传 `underlying`,建议传 `expire`、`multiplier`
- `action = gex_image_by_underlying`:必须传 `underlying`,建议传 `expire`、`multiplier`;未传时后端自动补齐;可选传 `snapshotTime` 毫秒时间戳或 `last` 生成历史 GEX 图,其中 `last` 主要用于非开盘时段获取上次收盘时的 GEX 图
### 8.3 路由映射
- `by_underlying` -> `GET /api/v1/vol-data/query/by-underlying`
- `snapshot_by_underlying` -> `GET /api/v1/vol-data/snapshot/by-underlying`
- `gex_snapshot_by_underlying` -> `GET /api/v1/vol-data/gex/snapshot/by-underlying`
- `ts_by_underlying` -> `GET /api/v1/vol-data/ts/by-underlying`
- `ts_by_expire` -> `GET /api/v1/vol-data/ts/by-expire`
- `ts_by_multiplier` -> `GET /api/v1/vol-data/ts/by-multiplier`
- `gex_by_underlying` -> `GET /api/v1/vol-data/gex/by-underlying`
- `gex_by_expire` -> `GET /api/v1/vol-data/gex/by-expire`
- `gex_by_multiplier` -> `GET /api/v1/vol-data/gex/by-multiplier`
- `gex_image_by_underlying` -> `GET /api/v1/vol-data/gex-image/by-underlying`
### 8.4 Agent 调用流程建议
1. 从安全存储读取 `X-API-Token`
2. 标的不完整时先调用 `orange_resolve_subject`;命中且无歧义后使用 `selected`,否则向用户澄清
3. 根据目标调用 `orange_vol_data`
4. 检查平台响应 `code`
5. MCP `by_underlying` 默认只返回现价上下 10% 档位;根据 `chain_meta` 判断是否发生裁剪或缺少现价回退
6. 如果确实需要完整期权链,显式传 `params.fullChain=true`
7. 如果需要分析一段时间内的隐波变化,读取 `ts/*` 的 `rows`
8. 如果需要分析 Gamma Exposure 分布,读取 `gex/*` 的 `points`、`current_gex`、`zero_gamma`
9. 如果需要回看历史整点 GEX 结构,调用 `gex_snapshot_by_underlying`,读取 `points`、`current_gex`、`zero_gamma`
10. 如果因为未开盘、行情源不可用或实时接口返回 `found=false` 导致实时 `query/*` 或 `gex/*` 获取失败,可以改用 `snapshot/by-underlying` 或 `gex/snapshot/by-underlying`,并传 `snapshotTime=last`;这是 `last` 的主要使用场景,返回的是当前分组数据库最新快照,通常可视为上次收盘时的快照
11. 当用户询问特定标的的 GEX、零 gamma、正负 GEX 或 GEX 结构时,除 `gex/*` 结构化数据外,可以额外调用 `gex_image_by_underlying`,把图片 URL 一并返回,方便用户理解与查看
12. 如果需要给用户直接展示或发送 GEX 图,调用 `gex_image_by_underlying` 并使用返回的 `url`;如果用户需要过去的 GEX 图,传 `snapshotTime` 毫秒时间戳,若处于非开盘时段、需要上次收盘图则传 `snapshotTime=last`
### 8.5 Agent 错误处理建议
- 平台 `code != 0`:直接抛出平台错误
- `401/403`:扣费侧使用 `Authorization: Bearer ` 调用计费接口时鉴权失败
- `扣费失败`:直接透传平台错误,提示用户检查 token 或计费服务状态
- `404` 且 `found = false`:按“未命中”处理,不要当系统故障
- 上游超时或异常:建议重试,并保留原始错误信息
## 9. 计费与明细说明
- 平台在业务数据成功返回后,使用 OpenAI 兼容 `POST /chat/completions` 发起同步扣费
- `groups` 不触发扣费
- `query/*`、`snapshot/*`、`ts/*`、`gex/*`、`gex-image/*` 成功返回后触发扣费
- 对外业务接口协议保持不变,仍然由调用方传 `X-API-Token`
- `model` 固定为 `VolData`,用于标识业务类型
- `messages` 保持最简,只携带本次请求路径和参数
- 扣费请求头格式固定为 `Authorization: Bearer `
- 外部计费接口返回 HTTP `200` 视为扣费成功
- 扣费失败时,业务响应直接返回错误,不再写本地 usage 明细或异步扣费任务
## 10. 最小测试示例
查询实时快照:
```bash
curl -sS 'https://api.hitick.top/api/v1/vol-data/query/by-underlying?underlying=au2607' \
-H 'X-API-Token: your_token_value'
```
查询 ATM IV 时序:
```bash
curl -sS 'https://api.hitick.top/api/v1/vol-data/ts/by-underlying?underlying=au2607&start=1781062200000&end=1781062300000' \
-H 'X-API-Token: your_token_value'
```
查询 GEX 曲线:
```bash
curl -sS 'https://api.hitick.top/api/v1/vol-data/gex/by-underlying?underlying=au2607' \
-H 'X-API-Token: your_token_value'
```
## 11. 接入建议
- 手动接入适合后端服务、脚本、联调测试
- Agent 接入适合自动查询、波动率分析、Greeks 辅助处理、GEX 结构分析
- 建议给不同用途创建不同 Token,方便审计和隔离
---
## 来源:HitickCubie 配网与绑定指南
原文:https://open.hitick.top/doc/raw/hitickcubie/provisioning.md
网页:https://open.hitick.top/doc/hitickcubie/provisioning/
# HitickCubie 配网与绑定指南
首次使用 HitickCubie 时,设备会先创建一个临时 Wi-Fi 热点。用手机连接该热点,把家庭或办公室 Wi-Fi 写入设备,再使用六位绑定码将设备绑定到 HiTick 账户。
> 本文截图中的热点名、Wi-Fi 名称和绑定码均为示例,请以自己设备屏幕上的内容为准。
## 准备工作
开始前请准备:
- 一台已通电的 HitickCubie;
- 一部可连接 Wi-Fi 的手机;
- 一个可用的 **2.4GHz Wi-Fi** 及其密码。
设备目前不支持只开放 5GHz 的 Wi-Fi。双频路由器如果把 2.4GHz 和 5GHz 合并为同一个名称,通常可以直接使用;如果配网失败,请先为 2.4GHz 频段设置一个独立名称后重试。
## 第一步:找到设备热点
首次启动且尚未配网时,设备屏幕会显示一个形如 `HiTick-XXXXXX` 的热点名称,以及配网页地址 `http://192.168.4.1`。
设备进入配网状态。点击图片可查看原图。
图中的 `HiTick-000001` 只是示例。每台设备的后六位不同,请记录自己屏幕上显示的完整热点名称。
## 第二步:手机连接设备热点
1. 打开手机的“设置 → Wi-Fi”。
2. 选择设备屏幕上显示的 `HiTick-XXXXXX`。
3. 该热点当前**无需密码**,直接连接即可。
4. 手机可能提示“无互联网连接”或“此网络无法访问互联网”,这是正常现象,请选择“仍然连接”或“保持连接”。
配网期间不要让手机自动切回移动网络或其他 Wi-Fi,否则手机将无法访问设备的本地配网页。
## 第三步:打开配网页
连接成功后,手机通常会自动弹出“HiTick 设备配网”页面。如果没有自动弹出:
1. 打开手机浏览器;
2. 手工输入 **`http://192.168.4.1`**;
3. 确认使用的是 `http://`,不要改成 `https://`。
手机配网页。点击图片可查看原图。
## 第四步:填写要连接的 Wi-Fi
1. 点击“Wi-Fi 名称”,从扫描结果中选择网络,或手工输入准确的名称。
2. 输入该 Wi-Fi 的密码。
3. 点击“保存并连接”。
注意:
- 加密 Wi-Fi 的密码应为 8–63 位;开放网络可以留空。
- Wi-Fi 名称和密码区分大小写,请特别检查空格、数字和相似字符。
- 点击保存后,`HiTick-XXXXXX` 热点消失属于正常现象,表示设备正在重启并尝试连接目标 Wi-Fi。
## 第五步:使用六位码绑定设备
设备成功联网并完成签到后,会显示六位绑定码:
设备联网后显示六位绑定码。点击图片可查看原图。
1. 登录 HiTick,打开 [HitickCubie 设备管理页面](https://open.hitick.top/display/)。
2. 点击“绑定新设备”。
3. 输入设备屏幕上的六位数字并确认。
4. 等待设备自动刷新。绑定成功后,六位码页面会退出。
绑定码只用于绑定当前设备,请勿把仍然有效的绑定码发送给他人。
## 配网成功后的正常表现
- 未开盘、没有关注品种,或尚未收到新行情时,设备显示时钟。
- 开盘且关注品种有新行情时,设备自动进入行情轮播。
- 收到预警或通知时,通知会临时覆盖当前画面,结束后自动回到行情或时钟。
因此,绑定成功后暂时显示时钟,并不代表配网失败。
## 常见问题
### 手机没有自动打开配网页
确认手机仍连接 `HiTick-XXXXXX`,然后在浏览器中直接访问 `http://192.168.4.1`。如果仍然无法打开,可临时关闭移动数据、VPN、代理或“自动切换到可联网网络”等功能后重试。
### 找不到 `HiTick-XXXXXX`
等待设备启动完成,并核对屏幕是否仍停留在“设备配网”页面。如果设备已经保存过有效 Wi-Fi,它不会主动重新开放热点;需要更换网络时,请通过维护流程清除原有网络配置后再配网。
### 页面中找不到家里的 Wi-Fi
先确认路由器开启了 2.4GHz。也可以在“Wi-Fi 名称”中手工输入准确名称。隐藏网络同样需要手工输入。
### 保存后又回到配网页
通常是 Wi-Fi 名称或密码错误,或者目标 Wi-Fi 暂时不可达。固件连续连接失败 10 次后会重新开放配网热点,请重新连接 `HiTick-XXXXXX` 并填写正确配置。
### 已显示绑定码,但页面绑定失败
确认手机或电脑已经恢复正常互联网连接,再重新打开 HitickCubie 设备管理页面。绑定码应输入六位数字;若已过期,以设备最新显示的绑定码为准。
## 安全提示
当前固件的临时热点是开放网络,配网页使用本地 HTTP。建议只在可信、人员可控的环境中完成配网,不要在公共场所输入 Wi-Fi 密码。配网成功后设备热点会自动关闭。
---
## 来源:绑定飞书失败了怎么办
原文:https://open.hitick.top/doc/raw/troubleshooting/feishu-binding-failed.md
网页:https://open.hitick.top/doc/troubleshooting/feishu-binding-failed/
# 绑定飞书失败了怎么办
扫描机器人二维码后,如果没有出现授权页面,而是提示 **“服务器异常,请稍后再试”**,请先检查当前登录的是否为 **豆包账号**,再切换到飞书企业账号重新扫码。
## 故障现象
使用飞书扫描机器人二维码后,未进入授权流程,页面底部出现 **“服务器异常,请稍后再试”** 的提示,如下图所示。
扫码后未出现授权页面,而是提示服务器异常。点击图片可查看原图。
## 故障原因
初步怀疑是 **豆包账号在飞书中的兼容性问题**,导致扫码授权失败;具体原因尚未得到官方确认。
截至 **2026 年 10 月 15 日**,暂未收到官方针对该问题的回应,也未确认该问题已修复。
## 解决方法
**使用飞书企业账号完成绑定,不使用豆包账号扫码授权。** 如果已经有企业账号,直接切换即可;如果没有,则先创建一个新的企业账号。
### 1. 确认当前账号类型
点击飞书左上角的 **头像**,打开账号菜单。查看当前身份是否标注为 **“豆包账号”**。
下图左侧为账号列表,可以切换已有账号;底部的 **“登录更多账号”** 用于登录或创建其他账号。
确认当前账号类型,选择已有企业账号,或点击最下方的“登录更多账号”。点击图片可查看原图。
### 2. 已有企业账号:切换后重新扫码
在左侧账号列表中,选择自己已有的 **企业账号**。确认已切换到对应企业身份后,重新扫描机器人二维码,按页面提示完成授权。
### 3. 没有企业账号:创建后重新扫码
如果原来没有企业账号,按以下步骤操作:
1. 点击账号列表最下方的 **“登录更多账号”**。
2. 选择 **创建企业账号**,按页面提示完成注册。
3. 切换到新创建的企业账号,重新扫描机器人二维码,按提示完成授权。
已有企业账号的用户完成第 2 步即可,无需再创建新账号。