仮想通貨100種類以上の特徴を紹介!だけど雑記ブログw

BITTREXのAPIについて調べたら日本語のドキュメントが見つからなかった(^^;

もらった888,888KICKが500$くらいになってた話

BITTREXのAPIを使ってみたいなーと思って、日本語のサイトを探したんですが、見つかりませんでした(^^;

まぁ、公式サイトの説明が単純明快で、敢えて日本語に直す必要もないかもしれませんが。……というか、簡単すぎて、コレってセキュリティ的に問題ないのかなぁ……と、少し心配になるくらいのものでした(^^;

売買から出金まで、GETリクエストだけで完結って……WEB系のAPIってそんなもんなんですか!?僕はプログラマではないので、その辺の事情はさっぱりわからないんですが(^^;

ともあれ、せっかくなので、自分用のまとめ的に技術メモを残すことにしました♪

2018年02月24日追記:敢えてVBAでBittrexのトレーディングBOTを作る方法を記事にしてみました。読んでいただける方はこちらからどうぞ ⇒ VBAでBittrexの仮想通貨トレーディングBOTを作ろう【エクセルやアクセスでできる!】

基本的な使い方

GETリクエストを送ると、json形式のデータが返ってきます。それだけですw

GETリクエストの書き方もいたって簡単で下記の通りとなります。

https://bittrex.com/api/バージョン/ディレクトリ/メソッド?パラメータ=値

※バージョンは現在は「v1.1」です。ディレクトリのところには「public」「market」「account」のいずれかが入ります。

※注意点としては、$nonceに値を代入する部分が、下のメソッドでは省略されていますが、MarketApiとAccountApiについては、必須のようです。

※以下公式サイトの引用ですが、これをまんまPHPファイルにコピペして、先頭の$apikeyと$apisecretの値だけ変えてやれば動きました。

$apikey=’xxx’;
$apisecret=’xxx’;
$nonce=time();
$uri=’https://bittrex.com/api/v1.1/market/getopenorders?apikey=’.$apikey.’&nonce=’.$nonce;
$sign=hash_hmac(‘sha512’,$uri,$apisecret);
$ch = curl_init($uri);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(‘apisign:’.$sign));
$execResult = curl_exec($ch);
$obj = json_decode($execResult);

僕は本職プログラマではないので、どのプログラミング言語にどんなライブラリや関数が揃っているか、イマイチ把握していないです。上記のSHA512を導入できるライブラリがない言語だと苦労しそうですね。出来れば、VBAで簡単に使いたいと思っている僕としては、頭が痛い問題ではあります(^^;

次に、簡単ではありますが、下で、メソッドをすべて解説します。

Public Api

getmarkets

パラメータ不要。全通貨ペアの基本情報が返ってきます。現在値はなく、最小取引単価や通貨の略称など、本当に基本的な情報を得る時に使用します。

例)https://bittrex.com/api/v1.1/public/getmarkets

{
“success” : true,
“message” : “”,
“result” : [{
“MarketCurrency” : “LTC”,
“BaseCurrency” : “BTC”,
“MarketCurrencyLong” : “Litecoin”,
“BaseCurrencyLong” : “Bitcoin”,
“MinTradeSize” : 0.01000000,
“MarketName” : “BTC-LTC”,
“IsActive” : true,
“Created” : “2014-02-13T00:00:00”
}, {
“MarketCurrency” : “DOGE”,
“BaseCurrency” : “BTC”,
“MarketCurrencyLong” : “Dogecoin”,
“BaseCurrencyLong” : “Bitcoin”,
“MinTradeSize” : 100.00000000,
“MarketName” : “BTC-DOGE”,
“IsActive” : true,
“Created” : “2014-02-13T00:00:00”
}
]
}

getcurrencies

パラメータ不要。通貨の手数料などのデータを取得する時に使用します。

例)https://bittrex.com/api/v1.1/public/getcurrencies

{
“success” : true,
“message” : “”,
“result” : [{
“Currency” : “BTC”,
“CurrencyLong” : “Bitcoin”,
“MinConfirmation” : 2,
“TxFee” : 0.00020000,
“IsActive” : true,
“CoinType” : “BITCOIN”,
“BaseAddress” : null
}, {
“Currency” : “LTC”,
“CurrencyLong” : “Litecoin”,
“MinConfirmation” : 5,
“TxFee” : 0.00200000,
“IsActive” : true,
“CoinType” : “BITCOIN”,
“BaseAddress” : null
}
]
}

getticker

marketというパラメータに通貨ペアを指定し、現在のBid・Ask・Lastの値を取得できます。

例)https://bittrex.com/api/v1.1/public/getticker?market=BTC-LTC

{
“success” : true,
“message” : “”,
“result” : {
“Bid” : 2.05670368,
“Ask” : 3.35579531,
“Last” : 3.35579531
}
}

getmarketsummaries

パラメータ不要。全通貨ペアの高値・安値・Bid・Ask・Lastなどが取得できます。

例)https://bittrex.com/api/v1.1/public/getmarketsummaries

{
“success” : true,
“message” : “”,
“result” : [{
“MarketName” : “BTC-888”,
“High” : 0.00000919,
“Low” : 0.00000820,
“Volume” : 74339.61396015,
“Last” : 0.00000820,
“BaseVolume” : 0.64966963,
“TimeStamp” : “2014-07-09T07:19:30.15”,
“Bid” : 0.00000820,
“Ask” : 0.00000831,
“OpenBuyOrders” : 15,
“OpenSellOrders” : 15,
“PrevDay” : 0.00000821,
“Created” : “2014-03-20T06:00:00”,
“DisplayMarketName” : null
}, {
“MarketName” : “BTC-A3C”,
“High” : 0.00000072,
“Low” : 0.00000001,
“Volume” : 166340678.42280999,
“Last” : 0.00000005,
“BaseVolume” : 17.59720424,
“TimeStamp” : “2014-07-09T07:21:40.51”,
“Bid” : 0.00000004,
“Ask” : 0.00000005,
“OpenBuyOrders” : 18,
“OpenSellOrders” : 18,
“PrevDay” : 0.00000002,
“Created” : “2014-05-30T07:57:49.637”,
“DisplayMarketName” : null
}
]
}

getmarketsummary

marketというパラメータに通貨ペアを指定することで、特定の通貨ペアについての高値・安値・Bid・Ask・Lastなどが取得できます。

例)https://bittrex.com/api/v1.1/public/getmarketsummary?market=btc-ltc

{
“success” : true,
“message” : “”,
“result” : [{
“MarketName” : “BTC-LTC”,
“High” : 0.01350000,
“Low” : 0.01200000,
“Volume” : 3833.97619253,
“Last” : 0.01349998,
“BaseVolume” : 47.03987026,
“TimeStamp” : “2014-07-09T07:22:16.72”,
“Bid” : 0.01271001,
“Ask” : 0.01291100,
“OpenBuyOrders” : 45,
“OpenSellOrders” : 45,
“PrevDay” : 0.01229501,
“Created” : “2014-02-13T00:00:00”,
“DisplayMarketName” : null
}
]
}

getorderbook

marketに通貨ペアを指定、typeにはbuyかsellかbothを指定することで、特定の通貨ペアの注文状況を取得できます。

例)https://bittrex.com/api/v1.1/public/getorderbook?market=BTC-LTC&type=both

{
“success” : true,
“message” : “”,
“result” : {
“buy” : [{
“Quantity” : 12.37000000,
“Rate” : 0.02525000
}
],
“sell” : [{
“Quantity” : 32.55412402,
“Rate” : 0.02540000
}, {
“Quantity” : 60.00000000,
“Rate” : 0.02550000
}, {
“Quantity” : 60.00000000,
“Rate” : 0.02575000
}, {
“Quantity” : 84.00000000,
“Rate” : 0.02600000
}
]
}
}

getmarkethistory

marketに通貨ペアを指定することで、特定の通貨ペアの取引履歴を所得することができます。

例)https://bittrex.com/api/v1.1/public/getmarkethistory?market=BTC-DOGE

{
“success” : true,
“message” : “”,
“result” : [{
“Id” : 319435,
“TimeStamp” : “2014-07-09T03:21:20.08”,
“Quantity” : 0.30802438,
“Price” : 0.01263400,
“Total” : 0.00389158,
“FillType” : “FILL”,
“OrderType” : “BUY”
}, {
“Id” : 319433,
“TimeStamp” : “2014-07-09T03:21:20.08”,
“Quantity” : 0.31820814,
“Price” : 0.01262800,
“Total” : 0.00401833,
“FillType” : “PARTIAL_FILL”,
“OrderType” : “BUY”
}, {
“Id” : 319379,
“TimeStamp” : “2014-07-09T02:58:48.127”,
“Quantity” : 49.64643541,
“Price” : 0.01263200,
“Total” : 0.62713377,
“FillType” : “FILL”,
“OrderType” : “SELL”
}, {
“Id” : 319378,
“TimeStamp” : “2014-07-09T02:58:46.27”,
“Quantity” : 0.35356459,
“Price” : 0.01263200,
“Total” : 0.00446622,
“FillType” : “PARTIAL_FILL”,
“OrderType” : “BUY”
}
]
}

Market Api

※ここからはnonce・apikeyというパラメータが必須となります。

buylimit

買い注文を出すのに使用します。marketに通貨ペア、quantityに注文する量、rateに価格を指定します。

例)https://bittrex.com/api/v1.1/market/buylimit?apikey=API_KEY&market=BTC-LTC&quantity=1.2&rate=1.3

{
“success” : true,
“message” : “”,
“result” : {
“uuid” : “e606d53c-8d70-11e3-94b5-425861b86ab6”
}
}

selllimit

売り注文を出すのに使用します。marketに通貨ペア、quantityに注文する量、rateに価格を指定します。

例)https://bittrex.com/api/v1.1/market/selllimit?apikey=API_KEY&market=BTC-LTC&quantity=1.2&rate=1.3

{
“success” : true,
“message” : “”,
“result” : {
“uuid” : “614c34e4-8d71-11e3-94b5-425861b86ab6”
}
}

cancel

注文したオーダーをキャンセルするのに使用します。uuidに注文時に返ってきたuuidの値を指定することが必要です。uuidがわからない場合は、下記のgetopenordersメソッドを使用することで確認することができます。

例)https://bittrex.com/api/v1.1/market/cancel?apikey=API_KEY&uuid=ORDER_UUID

{
“success” : true,
“message” : “”,
“result” : null
}

getopenorders

現在の自分の注文状況を確認することができます。marketに通貨ペアを指定した場合、特定の通貨ペアについての注文状況の実を抽出することができます。

例)https://bittrex.com/api/v1.1/market/getopenorders?apikey=API_KEY&market=BTC-LTC

{
“success” : true,
“message” : “”,
“result” : [{
“Uuid” : null,
“OrderUuid” : “09aa5bb6-8232-41aa-9b78-a5a1093e0211”,
“Exchange” : “BTC-LTC”,
“OrderType” : “LIMIT_SELL”,
“Quantity” : 5.00000000,
“QuantityRemaining” : 5.00000000,
“Limit” : 2.00000000,
“CommissionPaid” : 0.00000000,
“Price” : 0.00000000,
“PricePerUnit” : null,
“Opened” : “2014-07-09T03:55:48.77”,
“Closed” : null,
“CancelInitiated” : false,
“ImmediateOrCancel” : false,
“IsConditional” : false,
“Condition” : null,
“ConditionTarget” : null
}, {
“Uuid” : null,
“OrderUuid” : “8925d746-bc9f-4684-b1aa-e507467aaa99”,
“Exchange” : “BTC-LTC”,
“OrderType” : “LIMIT_BUY”,
“Quantity” : 100000.00000000,
“QuantityRemaining” : 100000.00000000,
“Limit” : 0.00000001,
“CommissionPaid” : 0.00000000,
“Price” : 0.00000000,
“PricePerUnit” : null,
“Opened” : “2014-07-09T03:55:48.583”,
“Closed” : null,
“CancelInitiated” : false,
“ImmediateOrCancel” : false,
“IsConditional” : false,
“Condition” : null,
“ConditionTarget” : null
}
]
}

Account Api

※ここからはnonce・apikeyというパラメータが必須となります。

getbalances

現在所有している通貨を確認することができます。

例)https://bittrex.com/api/v1.1/account/getbalances?apikey=API_KEY

{
“success” : true,
“message” : “”,
“result” : [{
“Currency” : “DOGE”,
“Balance” : 0.00000000,
“Available” : 0.00000000,
“Pending” : 0.00000000,
“CryptoAddress” : “DLxcEt3AatMyr2NTatzjsfHNoB9NT62HiF”,
“Requested” : false,
“Uuid” : null
}, {
“Currency” : “BTC”,
“Balance” : 14.21549076,
“Available” : 14.21549076,
“Pending” : 0.00000000,
“CryptoAddress” : “1Mrcdr6715hjda34pdXuLqXcju6qgwHA31”,
“Requested” : false,
“Uuid” : null
}
]
}

getbalance

currencyを指定し、現在所有している特定の通貨にを確認することができます。

例)https://bittrex.com/api/v1.1/account/getbalance?apikey=API_KEY&currency=BTC

{
“success” : true,
“message” : “”,
“result” : {
“Currency” : “BTC”,
“Balance” : 4.21549076,
“Available” : 4.21549076,
“Pending” : 0.00000000,
“CryptoAddress” : “1MacMr6715hjds342dXuLqXcju6fgwHA31”,
“Requested” : false,
“Uuid” : null
}
}

getdepositaddress

外部から、通貨を送金するためのアドレスを確認することができます。currencyで通貨を指定する必要があります。

例)https://bittrex.com/api/v1.1/account/getdepositaddress?apikey=API_KEY&currency=VTC

{
“success” : true,
“message” : “”,
“result” : {
“Currency” : “VTC”,
“Address” : “Vy5SKeKGXUHKS2WVpJ76HYuKAu3URastUo”
}
}

withdraw

外部に通貨を送金することができます。currencyに通貨、quantityに通貨の数、addressに送金先アドレスを指定する必要があります。

また、paymentidやmemoに対応した通貨に送金する場合は、paymentidに値を指定することができます。

例)https://bittrex.com/api/v1.1/account/withdraw?apikey=API_KEY&currency=EAC&quantity=20.40&address=EAC_ADDRESS

{
“success” : true,
“message” : “”,
“result” : {
“uuid” : “68b5a16c-92de-11e3-ba3b-425861b86ab6”
}
}

getorder

uuidを指定することで、注文状況を確認することができます。

例)https://bittrex.com/api/v1.1/account/getorder&uuid=0cb4c4e4-bdc7-4e13-8c13-430e587d2cc1
uuid

{
“success” : true,
“message” : “”,
“result” : {
“AccountId” : null,
“OrderUuid” : “0cb4c4e4-bdc7-4e13-8c13-430e587d2cc1”,
“Exchange” : “BTC-SHLD”,
“Type” : “LIMIT_BUY”,
“Quantity” : 1000.00000000,
“QuantityRemaining” : 1000.00000000,
“Limit” : 0.00000001,
“Reserved” : 0.00001000,
“ReserveRemaining” : 0.00001000,
“CommissionReserved” : 0.00000002,
“CommissionReserveRemaining” : 0.00000002,
“CommissionPaid” : 0.00000000,
“Price” : 0.00000000,
“PricePerUnit” : null,
“Opened” : “2014-07-13T07:45:46.27”,
“Closed” : null,
“IsOpen” : true,
“Sentinel” : “6c454604-22e2-4fb4-892e-179eede20972”,
“CancelInitiated” : false,
“ImmediateOrCancel” : false,
“IsConditional” : false,
“Condition” : “NONE”,
“ConditionTarget” : null
}
}

getorderhistory

注文履歴を確認することができます。marketに通貨ペアを指定することで、特定の通貨ペアの注文履歴のみを取り出すこともできます。

例)https://bittrex.com/api/v1.1/account/getorderhistory

{
“success” : true,
“message” : “”,
“result” : [{
“OrderUuid” : “fd97d393-e9b9-4dd1-9dbf-f288fc72a185”,
“Exchange” : “BTC-LTC”,
“TimeStamp” : “2014-07-09T04:01:00.667”,
“OrderType” : “LIMIT_BUY”,
“Limit” : 0.00000001,
“Quantity” : 100000.00000000,
“QuantityRemaining” : 100000.00000000,
“Commission” : 0.00000000,
“Price” : 0.00000000,
“PricePerUnit” : null,
“IsConditional” : false,
“Condition” : null,
“ConditionTarget” : null,
“ImmediateOrCancel” : false
}, {
“OrderUuid” : “17fd64d1-f4bd-4fb6-adb9-42ec68b8697d”,
“Exchange” : “BTC-ZS”,
“TimeStamp” : “2014-07-08T20:38:58.317”,
“OrderType” : “LIMIT_SELL”,
“Limit” : 0.00002950,
“Quantity” : 667.03644955,
“QuantityRemaining” : 0.00000000,
“Commission” : 0.00004921,
“Price” : 0.01968424,
“PricePerUnit” : 0.00002950,
“IsConditional” : false,
“Condition” : null,
“ConditionTarget” : null,
“ImmediateOrCancel” : false
}
]
}

getwithdrawalhistory

出金履歴を確認することができます。marketに通貨ペアを指定することで、特定の通貨ペアの出金履歴のみを取り出すこともできます。

例)https://bittrex.com/api/v1.1/account/getwithdrawalhistory?currency=BTC

{
“success” : true,
“message” : “”,
“result” : [{
“PaymentUuid” : “b52c7a5c-90c6-4c6e-835c-e16df12708b1”,
“Currency” : “BTC”,
“Amount” : 17.00000000,
“Address” : “1DeaaFBdbB5nrHj87x3NHS4onvw1GPNyAu”,
“Opened” : “2014-07-09T04:24:47.217”,
“Authorized” : true,
“PendingPayment” : false,
“TxCost” : 0.00020000,
“TxId” : null,
“Canceled” : true,
“InvalidAddress” : false
}, {
“PaymentUuid” : “f293da98-788c-4188-a8f9-8ec2c33fdfcf”,
“Currency” : “XC”,
“Amount” : 7513.75121715,
“Address” : “XVnSMgAd7EonF2Dgc4c9K14L12RBaW5S5J”,
“Opened” : “2014-07-08T23:13:31.83”,
“Authorized” : true,
“PendingPayment” : false,
“TxCost” : 0.00002000,
“TxId” : “b4a575c2a71c7e56d02ab8e26bb1ef0a2f6cf2094f6ca2116476a569c1e84f6e”,
“Canceled” : false,
“InvalidAddress” : false
}
]
}

getdeposithistory

入金履歴を確認することができます。marketに通貨ペアを指定することで、特定の通貨ペアの入金履歴のみを取り出すこともできます。

例)https://bittrex.com/api/v1.1/account/getdeposithistory?currency=BTC

{
“success” : true,
“message” : “”,
“result” : [{
“PaymentUuid” : “554ec664-8842-4fe9-b491-06225becbd59”,
“Currency” : “BTC”,
“Amount” : 0.00156121,
“Address” : “1K37yQZaGrPKNTZ5KNP792xw8f7XbXxetE”,
“Opened” : “2014-07-11T03:41:25.323”,
“Authorized” : true,
“PendingPayment” : false,
“TxCost” : 0.00020000,
“TxId” : “70cf6fdccb9bd38e1a930e13e4ae6299d678ed6902da710fa3cc8d164f9be126”,
“Canceled” : false,
“InvalidAddress” : false
}, {
“PaymentUuid” : “d3fdf168-3d8e-40b6-8fe4-f46e2a7035ea”,
“Currency” : “BTC”,
“Amount” : 0.11800000,
“Address” : “1Mrcar6715hjds34pdXuLqXcju6QgwHA31”,
“O
pened” : “2014-07-03T20:27:07.163”,
“Authorized” : true,
“PendingPayment” : false,
“TxCost” : 0.00020000,
“TxId” : “3efd41b3a051433a888eed3ecc174c1d025a5e2b486eb418eaaec5efddda22de”,
“Canceled” : false,
“InvalidAddress” : false
}
]
}

BITTREX公式サイトはこちら ・ 公式サイトのAPIに関するページはこちら

 

SNSでフォローする
コメント (2)
  1. のるん より:

    このサイトを作成してくれてありがとうございます。
    非常に助かります。

    1. アバター画像 キズキ より:

      のるんさん、使っていただきありがとうございますm(__)m
      意外にこういうのって需要あるんですね♪

      他の取引所のAPIについても記事を書いてみようかな♪

キズキ へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 が付いている欄は必須項目です