mcpField
U
upbit

upbit

github.com/upbit-official其他38515 次安装8 周前更新
代码仓库

关于 upbit

upbit 是通过 `upbit` CLI 操作 Upbit 交易所的技能。它指导 API 调用、解释市场与响应字段,并要求在执行写入操作前获得确认。

主要功能

  1. 01通过 CLI 调用 Upbit REST API
  2. 02区分公开与需认证的端点
  3. 03按语言术语表解释交易所字段
  4. 04写入操作前要求确认
  5. 05查阅设置与命令详情参考

适用场景

  1. 01查询行情、订单簿、交易和 K 线
  2. 02查看账户余额与订单状态
  3. 03确认后提交或取消订单
  4. 04检查提现地址与钱包状态

安装

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

$npx skills add https://github.com/upbit-official/upbit-agent-skills --skill upbit

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

包含的文件

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

LICENSE.md
references/
account.md
candles.md
deposits.md
glossary.md
orderbooks.md
orders.md
pockets.md
setup.md
tickers.md
trades.md
trading-pairs.md
travel-rule.md
withdraws.md

详细介绍

Upbit 技能

所有 Upbit REST API 交互都使用 upbit CLI 二进制文件。

语言行为

检测用户使用的语言,并据此作答:

  • 韩语用户:使用韩语作答,并使用 references/glossary.md 中的韩语术语(例如,주문、매수、잔고、체결、호가)
  • 英语用户:使用英语作答,并使用同一词汇表中的英语术语
  • 混合语言/无法确定:遵循最近一条消息所使用的语言

解释 API 字段或命令输出时,始终使用词汇表将字段名称翻译成用户使用的语言。例如,用户使用韩语提问时,将 bid 解释为“매수”,将 ask 解释为“매도”,将 balance 解释为“보유 잔고”。

翻译术语或解释响应字段时,加载 references/glossary.md。

设置

如果未安装 upbit 或尚未配置凭据,请加载 references/setup.md 并按照其中的步骤操作。

检查 upbit 是否可用且满足最低版本要求:

upbit --version

需要 v1.0.0+。 如果版本较旧,请先升级再继续:

npm install -g @upbit-official/upbit-cli@latest

必需的请求标头

每条调用 API 的 upbit 命令都必须将 --header 'X-Upbit-Initiator: upbit-cli-skill/{metadata.version}' 作为最后一个参数追加。 这适用于所有调用 API 的命令,包括公开端点(tickers、orderbooks、trades、candles、trading-pairs)和私有端点(accounts、orders、withdraws、deposits、travel-rule、api-keys、wallet-status、pockets)。

upbit <resource> <command> [flags] --header 'X-Upbit-Initiator: upbit-cli-skill/{metadata.version}'

{metadata.version} 是占位符,绝不能按字面值发送。 运行任何命令之前,请将 {metadata.version} 替换为上方 front matter 中 metadata.version 字段所列的此技能版本。

例外(这些命令不会发起 API 请求,因此无需添加标头):upbit --version、upbit config set、upbit config show、upbit config path,以及安装/Shell 代码片段(npm install、node --version、curl、export ...)。

身份验证

私有端点需要凭据。建议通过 CLI 配置:

upbit config set

凭据会保存到 ~/.upbit/config,并自动用于所有 CLI 命令。

或者,通过环境变量设置:

export UPBIT_ACCESS_KEY=<your-access-key>
export UPBIT_SECRET_KEY=<your-secret-key>

也可以在每条命令中内联传递:

upbit <resource> <command> --access-key <key> --secret-key <secret> --header 'X-Upbit-Initiator: upbit-cli-skill/{metadata.version}'

私有(需要身份验证):accounts、api-keys、orders、withdraws、deposits、travel-rule、wallet-status、pockets 公开(无需身份验证):tickers、orderbooks、trades、candles、trading-pairs

安全规则——写入操作

执行任何写入操作之前,展示完整命令,并要求用户输入 CONFIRM。

写入操作:

  • orders create、orders cancel、orders cancel-and-new、orders cancel-by-uuids、orders cancel-open
  • withdraws create-withdrawal、withdraws create-krw-withdrawal、withdraws cancel-withdrawal
  • deposits deposit-krw、deposits create-coin-address
  • travel-rule verify-deposit-by-txid、travel-rule verify-deposit-by-uuid
  • pockets transfer、pockets universal-transfer

orders test-create 是试运行,无需输入 CONFIRM。

Upbit 领域概念

交易对格式
  • 字段名称:market
  • 格式:{QUOTE}-{BASE}——先写报价货币,再写基础资产
  • 分隔符:连字符(-),不是斜杠(/)
  • 始终使用大写
  • 报价货币:KRW、BTC、USDT
  • 不是 {BASE}-{QUOTE} 或 {BASE}/{QUOTE}——Upbit 的顺序与大多数交易所使用的传统顺序相反
市场含义
KRW-BTC以 KRW 计价的 BTC;Upbit 使用 KRW-BTC,而不是 BTC/KRW 或 BTC-KRW
KRW-ETH以 KRW 计价的 ETH
KRW-XRP以 KRW 计价的 XRP
BTC-ETH以 BTC 计价的 ETH
USDT-XRP以 USDT 计价的 XRP
账户余额字段

accounts list 中的每个条目:

字段说明
currency资产代码(例如,KRW、BTC、ETH)
balance可用余额(未用于任何未结订单)
locked当前锁定在未结订单或提现中的余额
avg_buy_price平均买入价格(十进制字符串)
unit_currencyavg_buy_price 所用的计价货币(例如,KRW、BTC)

持仓总额 = balance + locked

口袋

仅限韩国(KR) — 口袋仅在 Upbit Korea 提供,全球服务不支持口袋。

口袋允许用户在单个 Upbit 账户中拆分资产,以满足不同用途。每个口袋都由一个 uuid 标识。

  • 主口袋:随账户自动创建。负责账户默认交易,包括外部充值和提现,并可拥有账户中所有口袋的主控权限。
  • 子口袋:由用户为特定用途创建。在其 API 密钥的权限范围内独立运作,但禁止外部充值和提现。要转出子口袋中的资产,请使用其自己的密钥执行 pockets transfer。

每个 pockets 命令都需要以下两种权限之一,且每种权限仅适用于一种口袋类型,因此单个 API 密钥无法同时调用这两组命令:

命令权限可调用者
list、retrieve-balance、list-api-keys、universal-transfer、list-universal-transfers포켓관리(口袋管理)仅主口袋密钥
transfer、list-transfers자산이전(资产转移)仅子口袋密钥

请注意,retrieve-balance 会读取子口袋的余额,但仍需使用主口袋密钥调用。 完整的命令语法和参数请参阅 references/pockets.md,官方概览请参阅 https://docs.upbit.com/kr/reference/pocket-overview。

订单类型(ord_type)
ord_type说明必填项不得设置
limit按指定价格下限价单price、volume—
price市价买入 — 支出固定的计价货币金额pricevolume
market市价卖出 — 卖出固定的基础资产数量volumeprice
best按最优可用价格成交(见下方规则)见下文见下文

best 订单规则:

  • time_in_force 必须为 ioc 或 fok(不能为 post_only)
  • 如果 side=bid(买入):必须提供 price,不得提供 volume
  • 如果 side=ask(卖出):必须提供 volume,不得提供 price

post_only 与 smp_type 冲突:两者互斥,不要同时设置。

方向值
side含义
bid买入
ask卖出
订单状态
状态含义
wait等待执行
watch等待触发(止损单)
done已全部成交
cancel已取消
订单费用字段
字段说明
reserved_fee下单时预留的费用总额
paid_fee已收取的费用(部分成交时)
remaining_feereserved_fee - paid_fee
locked为此订单锁定的金额(买入时为计价货币,卖出时为基础资产)
首次下单

在不熟悉的市场下单前,运行 orders retrieve-chance 以确认:

  • 最低订单金额(bid.min_total、ask.min_total)
  • 支持的订单类型(bid_types、ask_types)
  • 费率(bid_fee、ask_fee、maker_bid_fee、maker_ask_fee)
upbit orders retrieve-chance --market "KRW-BTC" --header 'X-Upbit-Initiator: upbit-cli-skill/{metadata.version}'
提现 — 多链资产

对于可在多个网络上使用的资产(例如,USDT),必须指定 net_type 来选择区块链。提现前,请使用 withdraws list-coin-addresses 查看支持的网络和地址:

upbit withdraws list-coin-addresses --currency "USDT" --header 'X-Upbit-Initiator: upbit-cli-skill/{metadata.version}'
提现 — 二级地址

某些资产除了主地址外,还需要二级地址(Destination Tag、Memo 等)。发送前,请务必通过 withdraws list-coin-addresses 检查已登记的地址,确认是否存在 secondary_address。

提现 — 地址未登记(withdraw_address_not_registered)

当 withdraws create-withdrawal 返回包含 name: withdraw_address_not_registered 的 400 错误时,表示该地址尚未加入 Upbit Open API 提现允许列表。

如需登记提现地址,请访问对应环境的允许列表管理页面:

环境URL
KRhttps://www.upbit.com/mypage/open_api_management/withdraw_access_register
SGhttps://sg.upbit.com/mypage/open_api_management/withdraw_access_register
IDhttps://id.upbit.com/mypage/open_api_management/withdraw_access_register
THhttps://th.upbit.com/mypage/open_api_management/withdraw_access_register

登记后,请运行 withdraws list-coin-addresses,确认地址已显示后再重试。

充值 / 提现状态
状态含义
PROCESSING处理中
ACCEPTED已完成
CANCELLED已取消
REJECTED已拒绝
TRAVEL_RULE_SUSPECTED等待 Travel Rule 验证
REFUNDING退款处理中
REFUNDED退款已完成

当充值处于 TRAVEL_RULE_SUSPECTED 状态时,请使用 travel-rule 命令进行验证。

钱包状态

wallet-status list 返回各资产的网络状态:

wallet_state含义
working充值和提现均可用
withdraw_only充值已暂停
deposit_only提现已暂停
paused充值和提现均已暂停
unsupported不支持
K 线单位与限制
  • 分钟 K 线:仅支持 1, 3, 5, 10, 15, 30, 60, 240 这些单位
  • 秒级 K 线:数据最多保留 3 个月(查询更早的数据将返回空数组)
  • count:默认为 1,每次请求最多 200
交易分页
  • count:每次请求最多 500
  • cursor:传入最后一条结果中的 sequential_id,以继续获取下一页
  • days_ago:整数 1–7(基于 UTC 的日期偏移量)
Ticker 关键字段
字段说明
trade_price当前(最新)价格
acc_trade_price_24h24 小时累计成交额
acc_trade_volume_24h24 小时累计成交量
change相较前一日收盘价为 RISE、EVEN 或 FALL
signed_change_price带正负号的绝对涨跌额(下跌时为负)
highest_52_week_price / lowest_52_week_price52 周价格区间
价格方向枚举(change、ask_bid)
change 值含义
RISE价格高于前一日收盘价
EVEN与前一日收盘价相同
FALL价格低于前一日收盘价
ask_bid 值含义
ASK由卖单发起的交易
BID由买单发起的交易
单位与格式
值单位格式
volume基础资产数量十进制字符串(例如,"0.01")
price(限价)计价货币的单位价格十进制字符串(例如,"140000000")
price(市价买入)要支付的计价货币总额十进制字符串(例如,"10000")
费用字段计价货币金额十进制字符串
timestamp距 Unix 纪元的毫秒数整数
created_at / done_at带 KST 时区偏移量的 ISO 8601 格式字符串(例如,2024-01-01T09:00:00+09:00)
trade_dateUTC 日期字符串 yyyyMMdd
trade_timeUTC 时间字符串 HHmmss(24 小时制)
费率十进制数(0.05% = "0.0005")十进制字符串

日界线(opening_price、acc_trade_price 等)以 UTC 00:00 为准,而非 KST。

命令参考

需要了解资源的详细标志信息时,请阅读相应的参考文件。

资源子命令参考
orderscreate, test-create, retrieve, list-open, list-closed, list-by-uuids, cancel, cancel-and-new, cancel-by-uuids, cancel-open, retrieve-chancereferences/orders.md
tickerslist-by-quote-currencies, list-by-trading-pairsreferences/tickers.md
candleslist-minutes, list-days, list-weeks, list-months, list-years, list-secondsreferences/candles.md
orderbookslist, list-instrumentsreferences/orderbooks.md
tradeslistreferences/trades.md
trading-pairslistreferences/trading-pairs.md
withdrawsretrieve, list, cancel-withdrawal, create-withdrawal, create-krw-withdrawal, list-coin-addresses, retrieve-chancereferences/withdraws.md
depositsretrieve, list, create-coin-address, deposit-krw, list-coin-addresses, retrieve-chance, retrieve-coin-addressreferences/deposits.md
travel-rulelist-vasps, verify-deposit-by-txid, verify-deposit-by-uuidreferences/travel-rule.md
pocketslist, retrieve-balance, transfer, list-transfers, universal-transfer, list-universal-transfers, list-api-keysreferences/pockets.md
accounts / api-keys / wallet-statuslistreferences/account.md
输出与筛选--format, --transform, GJSON, 调试, 自动分页references/output.md
韩语 ↔ 英语术语表术语翻译、字段名称韩语 ↔ 英语对照references/glossary.md
CLI 设置与凭据安装、环境选择、API 密钥设置、config setreferences/setup.md

对于参考文件中未列出的标志,请运行:upbit <resource> <command> --help

环境

upbit accounts list --header 'X-Upbit-Initiator: upbit-cli-skill/{metadata.version}'                   # kr (default)
upbit accounts list --environment sg --header 'X-Upbit-Initiator: upbit-cli-skill/{metadata.version}'  # sg | id | th
upbit accounts list --base-url <url> --header 'X-Upbit-Initiator: upbit-cli-skill/{metadata.version}'  # custom base URL

评论

支持 Markdown