mcpField
U
upbit

upbit

github.com/starchild-ai-agentその他301.3k 回インストール6 日前に更新
リポジトリ

upbit について

upbitは、Upbit REST APIの操作で`upbit` CLIを使うためのスキルです。市場データや口座操作に加え、書き込み前の確認や認証情報、取引所固有のルールを案内します。

主な機能

  1. 01公開市場データの取得
  2. 02口座・注文・入出金コマンド
  3. 03認証情報の設定と認証案内
  4. 04書き込み操作前の確認
  5. 05Upbit市場と応答フィールドの解説

活用シーン

  1. 01ティッカー、板、約定、ローソク足の確認
  2. 02残高と既存注文の確認
  3. 03市場ルールに沿った取引準備
  4. 04安全策を用いた入出金管理

インストール

コマンドをコピーしてターミナルで実行します。

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

インストール後、Claude Code で/upbitを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

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

詳細

Upbit スキル

すべての Upbit REST API 操作には、upbit CLI バイナリを使用してください。

⚠️ オンボーディング — 認証情報が不足している場合

UPBIT_ACCESS_KEY / UPBIT_SECRET_KEY が設定されていない場合、または認証が必要なコマンドが 401 を返す場合:

1 回のターンで、次のすべてをこの正確な順序で実行してください:

  1. bash("curl -s https://api.ipify.org") を呼び出して、送信元 IP を取得します。
  2. 返信テキストに以下のセットアップ手順を記載します(<ip> は手順 1 で取得した実際の IP に置き換えてください):

ステップ 1 — Upbit でこの IP を許可リストに登録する

Upbit は、明示的に許可した IP アドレスからの API 呼び出しのみを受け付けます。次の IP を追加してください:

<ip>
ステップ 2 — API キーを作成する
  1. upbit.com にログイン → プロフィール → API 관리(API 管理)
  2. API 키 발급(API キー発行)をクリック
  3. IP の入力を求められたら、<ip> を貼り付けます
  4. スコープを有効化します:
    • 자산조회(資産照会)— 常に必須
    • 주문조회(注文照会)— 必須
    • 주문생성(注文作成)— 取引に必須
    • 출금(出金)— 出金サポートが必要な場合のみ
  5. 2FA + メール認証を完了し、Access Key と Secret Key をコピーします
ステップ 3 — キーを入力する

以下の安全な入力カードに Access Key と Secret Key を入力してください。


言語の動作

ユーザーの言語を検出し、それに応じて応答します:

  • 韓国語ユーザー: 韓国語で応答し、references/glossary.md の韓国語用語を使用します(例: 주문、매수、잔고、체결、호가)
  • 英語ユーザー: 英語で応答し、同じ用語集の英語用語を使用します
  • 混在/曖昧: 直近のメッセージの言語に従います

API フィールドやコマンド出力を説明する際は、常に用語集を使用してフィールド名をユーザーの言語に翻訳してください。たとえば、ユーザーが韓国語で質問した場合、bid は「매수」、ask は「매도」、balance は「보유 잔고」と説明します。

用語を翻訳したりレスポンスフィールドを説明したりする際は、references/glossary.md を読み込んでください。

セットアップ

upbit がインストールされていない、または認証情報が設定されていない場合は、references/setup.md を読み込み、そこに記載されている手順に従ってください。

upbit が利用可能かどうかを確認します:

upbit --version

認証

プライベートエンドポイントには認証情報が必要です。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>

プライベート(認証が必要): accounts、api-keys、orders、withdraws、deposits、travel-rule、wallet-status パブリック(認証不要): 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

orders test-create はドライランです — CONFIRM は不要です。

Upbit ドメインの概念

マーケットペアの形式
  • フィールド名: market
  • 形式: {QUOTE}-{BASE} — クォート通貨が先、基軸資産が後
  • 区切り文字: ハイフン(-)であり、スラッシュ(/)ではありません
  • 常に大文字
  • クォート通貨: KRW、BTC、USDT
  • {BASE}-{QUOTE} や {BASE}/{QUOTE} ではありません — Upbit はほとんどの取引所が採用している慣例的な順序を逆にしています
マーケット意味
KRW-BTCKRW で価格付けされた BTC。Upbit は BTC/KRW や BTC-KRW ではなく KRW-BTC を使用します
KRW-ETHKRW で価格付けされた ETH
KRW-XRPKRW で価格付けされた XRP
BTC-ETHBTC で価格付けされた ETH
USDT-XRPUSDT で価格付けされた XRP
口座残高フィールド

accounts list の各エントリ:

フィールド説明
currency資産コード (例: KRW、BTC、ETH)
balance利用可能残高 (未約定注文に含まれないもの)
locked現在、未約定注文または出金でロックされている残高
avg_buy_price平均購入価格 (10 進数文字列)
unit_currencyavg_buy_price の基準通貨 (例: KRW、BTC)

総保有量 = balance + locked

注文タイプ (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 の競合: この 2 つは排他的であり、両方を設定しないでください。

side の値
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"
出金 — マルチチェーン資産

複数のネットワークで利用可能な資産 (例: USDT) の場合、ブロックチェーンを指定するために net_type が必要です。出金前に withdraws list-coin-addresses を使用して、サポートされるネットワークとアドレスを確認してください:

upbit withdraws list-coin-addresses --currency "USDT"
出金 — セカンダリアドレス

一部の資産では、メインアドレスに加えてセカンダリアドレス (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_SUSPECTEDTravel Rule の検証待ち
REFUNDING返金処理中
REFUNDED返金完了

入金が TRAVEL_RULE_SUSPECTED ステータスの場合、travel-rule コマンドを使用して検証してください。

ウォレットステータス

wallet-status list は資産ごとのネットワークステータスを返します:

wallet_state意味
working入金と出金の両方が利用可能
withdraw_only入金が停止中
deposit_only出金が停止中
paused両方とも停止中
unsupported未対応
ローソク足の単位と制限
  • 分足ローソク足: 対応する単位は 1, 3, 5, 10, 15, 30, 60, 240 のみです
  • 秒足ローソク足: データ保持期間は最大 3 か月です (それより古いクエリは空の配列を返します)
  • count: デフォルト 1、リクエストあたり最大 200
取引のページネーション
  • count: リクエストあたり最大 500
  • cursor: 最後の結果の sequential_id を渡すと次ページへ進みます
  • days_ago: 1〜7 の整数 (UTC ベースの日オフセット)
ティッカーの主要フィールド
フィールド説明
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基軸資産の数量10 進数文字列 (例: "0.01")
price (指値)クォート通貨での 1 単位あたりの価格10 進数文字列 (例: "140000000")
price (成行買い)使用するクォート通貨の合計額10 進数文字列 (例: "10000")
手数料フィールドクォート通貨の金額10 進数文字列
timestampエポックからのミリ秒整数
created_at / done_atKST オフセット付きの ISO 8601文字列 (例: 2024-01-01T09:00:00+09:00)
trade_dateUTC 日付文字列 yyyyMMdd
trade_timeUTC 時刻文字列 HHmmss (24 時間制)
手数料率10 進数 (0.05% = "0.0005")10 進数文字列

日付の境界 (opening_price、acc_trade_price など) は KST ではなく UTC 00:00 に基づきます。

コマンドリファレンス

リソースの詳細なフラグ情報が必要な場合は、対応するリファレンスファイルを参照してください。

リソースサブコマンドリファレンス
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
accounts / api-keys / wallet-statuslistreferences/account.md
出力とフィルタリング--format, --transform, GJSON, debug, auto-pagingreferences/output.md
韓国語 ↔ 英語用語集用語の翻訳、フィールド名の韓国語 ↔ 英語マッピングreferences/glossary.md
CLI のセットアップと認証情報インストール、環境の選択、API キーの設定、config setreferences/setup.md

リファレンスファイルに記載されていないフラグについては、次を実行してください: upbit <resource> <command> --help

環境

upbit accounts list                   # kr (default)
upbit accounts list --environment sg  # sg | id | th
upbit accounts list --base-url <url>  # custom base URL

コメント