mcpField
F
futu-quote

futu-quote

github.com/futunnopen其他4512 次安装1 天前更新
代码仓库

关于 futu-quote

futu-quote 是使用官方 futu CLI 查询市场数据的技能,提供命令选择与安全操作指引,涵盖行情查询、身份验证、分页和实时推送请求。

主要功能

  1. 01使用官方 futu CLI 查询市场数据
  2. 02先检查 CLI 可用性和身份验证
  3. 03按市场代码格式化证券代码
  4. 04继续获取分页行情结果
  5. 05将实时推送请求转向 WebSocket 指引

适用场景

  1. 01查询股票或加密货币行情
  2. 02获取后续分页行情结果
  3. 03将旧接口请求映射到当前命令
  4. 04将实时报价推送请求指向文档中的 WebSocket

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/futunnopen/futu-agent-hub --skill futu-quote

安装后在 Claude Code 中输入/futu-quote确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
cli-parameters.md
dictionaries.md
pagination.md
websocket-push.md

README 原文English

来自项目 README

README 暂无中文译文,以下为英文原文;中文介绍见上方。

Futu Quote

Use the locally available futu CLI for market-data queries. Answer in the user's language by default. Keep commands, flags, JSON fields, symbols, and error codes in their original form.

Futu CLI runtime

This skill requires the official futu CLI. macOS and Linux install it to $HOME/.futu/bin/futu. Windows installs futu.exe to %LOCALAPPDATA%\FutuCLI\bin. See the futu-cli install guide.

Probe futu before any business command.

macOS / Linux:

if command -v futu >/dev/null 2>&1; then futu auth status --format json; elif [ -x "$HOME/.futu/bin/futu" ]; then "$HOME/.futu/bin/futu" auth status --format json; else echo '__FUTU_CLI_MISSING__'; fi

Windows, including Git Bash: do not use that bash block or install.sh. install.sh rejects Windows. Use this PowerShell call instead:

$exe = Join-Path $env:LOCALAPPDATA 'FutuCLI\bin\futu.exe'
if (Get-Command futu -ErrorAction SilentlyContinue) { futu auth status --format json } elseif (Test-Path $exe) { & $exe auth status --format json } else { Write-Output '__FUTU_CLI_MISSING__' }

__FUTU_CLI_MISSING__ means stop. Do not run a quote command yet. Ask the user before installing. After they agree:

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/FutunnOpen/futu-cli/main/scripts/install.sh | sh

Windows PowerShell. The official Windows installer supports amd64:

iwr -UseBasicParsing https://raw.githubusercontent.com/FutunnOpen/futu-cli/main/scripts/install.ps1 -OutFile install.ps1
powershell -ExecutionPolicy Bypass -File .\install.ps1

If the Windows installer reports an unsupported architecture, stop and relay that message. Never run either installer without explicit consent. Then run futu version. If the current shell still cannot see futu, call $HOME/.futu/bin/futu or %LOCALAPPDATA%\FutuCLI\bin\futu.exe directly.

To update an already installed futu CLI, use futu update --check and, after the user agrees, futu update.

Usage rules

  • Follow Futu CLI runtime before any quote command. If the probe prints __FUTU_CLI_MISSING__, stop until futu is installed.
  • When the probe succeeds, its business output is futu auth status --format json. If that returns not logged in, tell the user to run futu auth login and continue only after login. Do not run the business command directly.
  • Invocation convention for this skill: when calling the futu CLI from Bash, always append the hidden internal marker --source skill at the end of the command. With --source skill, the CLI automatically detects hosts such as Codex or Claude Code and reports agent_name. Append --agent codex or --agent claude_code only when auto-detection fails and the CLI is confirmed to support it. Do not include these internal markers in commands shown to the user.
  • Do not read or print token file contents. The CLI attaches the OAuth Bearer token automatically. PERMISSION_DENIED usually means a server-side permission or quote-permission denial. Do not explain it as a missing token.
  • Use the smallest parameter set when generating commands. If the CLI already has a default and the user did not specify a value, do not pass that flag explicitly.
  • Add --format json only when the output must be parsed programmatically. Commands meant for the user to copy and run can use the default table output.
  • Quote symbols must be MARKET.CODE, for example HK.00700, US.AAPL, and CC.BTCUSD. If the user gives a bare code or a legacy format, fill in the market only when it can be determined; otherwise ask first.
  • When the user mentions a legacy REST endpoint name, map it to the current aggregate command and selector flag. Do not call unregistered legacy command names.
  • The current quote CLI does not paginate automatically. When the user asks for more, the next page, or the full list, use --format json, read the response cursor, and continue according to the pagination reference.
  • watchlist --action add/delete/move-out modifies the user's watchlist. Confirm the target group and symbol first unless the user has already explicitly asked to change it.
  • Do not run real-trading or paper-trading commands. Use futu-trading for securities trading, futu-sim-trading for paper trading, and futu-crypto for crypto trading.
  • For live streaming (subscribe, push quote/order book/ticker/K-line, real-time broker queue), the CLI does not replace OpenD. Direct the user to Open API Quote Push WebSocket (wss://webapi-quote.futunn.com/ws): auth, then subscribe; broker queue arrives as BROKER_QUEUE messages. Read WebSocket push reference and hub websocket-quote-push.md. Do not use OpenD or removed futuapi subscribe scripts.

References

  • When building a specific quote command, choosing a selector, or checking required, default, or pagination parameters, read CLI parameters.
  • When explaining or choosing markets, security types, K-line types, adjustment types, trading sessions, plate types, option filters, and other quote enums, read quote naming dictionary.
  • When handling the next page, more results, or all results, or when next_key, next_time, limit, or count is needed, read quote pagination.
  • When the user needs live push or broker queue instead of one-off REST quotes, read websocket-push.

评论

支持 Markdown