Type/to search
Built-in Functions
Structures
Built-in Variables and Constants
Conventions
Exchanges
Capability Matrix
Centralized Exchanges
AscendEx
Backpack
BigONE
Binance
Bitfinex
bitFlyer
Bitget
Bithumb
Bitstamp
Bybit
Coincheck
Coinone
CoinW
Crypto.com
DeepCoin
Deribit
DigiFinex
Gate
Gemini
HashKey
HitBTC
HTX
Korbit
Kraken
KuCoin
LBank
MEXC
OKX
Poloniex
Upbit
WEEX
WOO X
Zaif
Decentralized Exchanges (DEX)
Prediction Markets
Securities and Futures
On-chain & Custom

Spot trading on the Korean exchange Upbit (API address https://api.upbit.com): the KRW, BTC and USDT markets. It uses REST only, with no market-data or order push. Private endpoints are signed with an Upbit API key (Access Key and Secret Key). Conditional orders are not supported.

Names and Configuration

exchange.GetName(): Upbit (Spot).

FieldRequired
Access KeyYes
Secret KeyYes

Trading Pairs and Contract Codes

Pair examples: BTC_KRW, ETH_BTC, XRP_USDT

Trading pairs are written BASE_QUOTE; Upbit native market codes put the quote currency first (BTC_KRW is KRW-BTC), and the connector converts between them.

Function Support

Not supported (the call fails with an error and returns null): exchange.CreateConditionOrder, exchange.ModifyConditionOrder, exchange.CancelConditionOrder, exchange.GetConditionOrder, exchange.GetConditionOrders, exchange.GetHistoryConditionOrders.

Served through a fallback:

  • exchange.GetRecords: Native periods are 1s, 1m, 3m, 5m, 10m, 15m, 30m, 1h, 4h, 1d, 1w, 1M, 1y; other periods are synthesized by the docker.

Notes
  • The amount of a market buy order is the quote currency to spend (placed as Upbit's price with ord_type price); a market sell order uses the base-currency quantity.
  • Limit orders support IOC, FOK and maker-only (postOnly).
  • exchange.ModifyOrder() uses Upbit's cancel-and-new endpoint (cancel_and_new): the exchange atomically cancels the original order and places a new one, and the new order ID is returned; use the new ID from then on. The new order stays a limit order and needs a new price greater than 0; a price that is not positive is an error and never turns it into a market order. When the amount is not changed (not positive), the new order takes the original order's remaining amount. exchange.ModifyOrder() never turns an order into a market order.
  • The batch tickers of exchange.GetTickers() carry no order book, so Buy and Sell are 0.
  • exchange.GetHistoryOrders() returns filled and canceled orders; without limit, at most 100 orders are returned.