インポート
import { PAIR, ORDER_TYPE, ORDER_SIDE, ORDER_STATUS, CANDLE_TYPE, EXCHANGE_STATUS, WITHDRAWAL_STATUS, DEPOSIT_STATUS, BITBANK_ERROR_CODE } from '@pokooo/bb-api';
import type { BitbankApiResponse, PairString, OrderType, OrderSide, OrderStatus, CandleType, OrderFields } from '@pokooo/bb-api';
取引ペア(PAIR)
import { PAIR } from '@pokooo/bb-api';
PAIR.BTC_JPY
PAIR.ETH_JPY
PAIR.XRP_JPY
PAIR.SOL_JPY
JPY 建て・BTC 建てのペアが定義されています。PairString 型は PAIR の値に加え、任意の文字列も受け付けます(IDE 補完は PAIR の値のみ)。
全ペア一覧(JPY 建て):
btc_jpy, xrp_jpy, ltc_jpy, eth_jpy, mona_jpy, bcc_jpy, xlm_jpy, qtum_jpy, bat_jpy, omg_jpy, xym_jpy, link_jpy, mkr_jpy, boba_jpy, enj_jpy, matic_jpy, dot_jpy, doge_jpy, astr_jpy, ada_jpy, avax_jpy, axs_jpy, flr_jpy, sand_jpy, ape_jpy, gala_jpy, chz_jpy, oas_jpy, wbtc_jpy, op_jpy, arb_jpy, imx_jpy, mana_jpy, grt_jpy, blur_jpy, pepe_jpy, shib_jpy, bnb_jpy, sol_jpy, sui_jpy, ton_jpy, ordi_jpy, sats_jpy
全ペア一覧(BTC 建て):
xrp_btc, ltc_btc, eth_btc, mona_btc, bcc_btc, xlm_btc
注文種別(ORDER_TYPE)
| 定数 | 値 | 説明 |
|---|
ORDER_TYPE.LIMIT | 'limit' | 指値注文 |
ORDER_TYPE.MARKET | 'market' | 成行注文 |
ORDER_TYPE.STOP | 'stop' | ストップ成行 |
ORDER_TYPE.STOP_LIMIT | 'stop_limit' | ストップ指値 |
ORDER_TYPE.TAKE_PROFIT | 'take_profit' | 利食い注文 |
ORDER_TYPE.STOP_LOSS | 'stop_loss' | 損切り注文 |
ORDER_TYPE.LOSSCUT | 'losscut' | ロスカット(システム自動) |
売買方向(ORDER_SIDE)
| 定数 | 値 |
|---|
ORDER_SIDE.BUY | 'buy' |
ORDER_SIDE.SELL | 'sell' |
注文ステータス(ORDER_STATUS)
| 定数 | 値 | 説明 |
|---|
ORDER_STATUS.INACTIVE | 'INACTIVE' | 未アクティブ(ストップ注文の待機中) |
ORDER_STATUS.UNFILLED | 'UNFILLED' | 未約定 |
ORDER_STATUS.PARTIALLY_FILLED | 'PARTIALLY_FILLED' | 一部約定 |
ORDER_STATUS.FULLY_FILLED | 'FULLY_FILLED' | 全部約定 |
ORDER_STATUS.CANCELED_UNFILLED | 'CANCELED_UNFILLED' | キャンセル済み(未約定) |
ORDER_STATUS.CANCELED_PARTIALLY_FILLED | 'CANCELED_PARTIALLY_FILLED' | キャンセル済み(一部約定) |
ORDER_STATUS.REJECTED | 'REJECTED' | 拒否 |
ローソク足種別(CANDLE_TYPE)
| 定数 | 値 |
|---|
CANDLE_TYPE.MIN1 | '1min' |
CANDLE_TYPE.MIN5 | '5min' |
CANDLE_TYPE.MIN15 | '15min' |
CANDLE_TYPE.MIN30 | '30min' |
CANDLE_TYPE.HOUR1 | '1hour' |
CANDLE_TYPE.HOUR4 | '4hour' |
CANDLE_TYPE.HOUR8 | '8hour' |
CANDLE_TYPE.HOUR12 | '12hour' |
CANDLE_TYPE.DAY1 | '1day' |
CANDLE_TYPE.WEEK1 | '1week' |
CANDLE_TYPE.MONTH1 | '1month' |
取引所ステータス(EXCHANGE_STATUS)
| 定数 | 値 | 説明 |
|---|
EXCHANGE_STATUS.NORMAL | 'NORMAL' | 通常 |
EXCHANGE_STATUS.BUSY | 'BUSY' | 混雑 |
EXCHANGE_STATUS.VERY_BUSY | 'VERY_BUSY' | 非常に混雑 |
EXCHANGE_STATUS.HALT | 'HALT' | 停止 |
出金ステータス(WITHDRAWAL_STATUS)
| 定数 | 値 | 説明 |
|---|
WITHDRAWAL_STATUS.CONFIRMING | 'CONFIRMING' | 確認中 |
WITHDRAWAL_STATUS.EXAMINING | 'EXAMINING' | 審査中 |
WITHDRAWAL_STATUS.SENDING | 'SENDING' | 送金中 |
WITHDRAWAL_STATUS.DONE | 'DONE' | 完了 |
WITHDRAWAL_STATUS.REJECTED | 'REJECTED' | 却下 |
WITHDRAWAL_STATUS.CANCELED | 'CANCELED' | キャンセル |
WITHDRAWAL_STATUS.CONFIRM_TIMEOUT | 'CONFIRM_TIMEOUT' | 確認タイムアウト |
入金ステータス(DEPOSIT_STATUS)
| 定数 | 値 | 説明 |
|---|
DEPOSIT_STATUS.FOUND | 'FOUND' | 検知 |
DEPOSIT_STATUS.CONFIRMED | 'CONFIRMED' | ブロックチェーン確認済み |
DEPOSIT_STATUS.DONE | 'DONE' | 入金完了 |
エラーコード(BITBANK_ERROR_CODE)
| 定数 | 値 | 説明 |
|---|
BITBANK_ERROR_CODE.INVALID_API_KEY | 10000 | 無効な API キー |
BITBANK_ERROR_CODE.INVALID_NONCE | 10001 | 無効な nonce |
BITBANK_ERROR_CODE.INVALID_SIGNATURE | 10002 | 無効な署名 |
BITBANK_ERROR_CODE.API_KEY_REQUIRED | 10003 | API キーが必要 |
BITBANK_ERROR_CODE.NONCE_REQUIRED | 10004 | nonce が必要 |
BITBANK_ERROR_CODE.SIGNATURE_REQUIRED | 10005 | 署名が必要 |
BITBANK_ERROR_CODE.INVALID_PAIR | 10006 | 無効な取引ペア |
BITBANK_ERROR_CODE.ORDER_NOT_FOUND | 50009 | 注文が見つからない |
BITBANK_ERROR_CODE.CIRCUIT_BREAK_MARKET_ORDER | 70020 | サーキットブレイカー中の成行注文 |
共通レスポンス型
BitbankApiResponse<T>
interface BitbankApiResponse<T> {
success: 0 | 1;
data: T;
}
success === 1 のとき成功、success === 0 のときエラー。
OrderFields
注文に共通するフィールド(REST・ストリームで共有):
interface OrderFields {
order_id: number;
pair: PairString;
side: OrderSide;
position_side?: PositionSide;
type: OrderType;
start_amount: string | null;
remaining_amount: string | null;
executed_amount: string;
price?: string;
post_only?: boolean;
user_cancelable: boolean;
average_price: string;
ordered_at: number;
expire_at: number | null;
triggered_at?: number;
trigger_price?: string;
status: OrderStatus;
}