ヘルプにあるAPIを一通り叩けるようなやつ作ってみました。
導入
rubygemsに登録するのは何か忍びなかったのでspecific_install使う感じで。
$ gem install specific_install
$ gem specific_install -l "https://github.com/blue1st/btcbox.git"
API
やりたいことに応じて予めAPIキーを取得しときましょう。
API | 概要 | APIキー |
---|---|---|
Ticker | 売り気配・買い気配・24時間での出来高など | 不要 |
Depth | 注文量 | 不要 |
Orders | オーダーブック | 不要 |
Blance | アカウントの情報 | 読み出しのみ |
Wallet | 口座のアドレス | 読み出しのみ |
Trade List | 注文一覧 | 読み出しのみ |
Trade View | 注文の詳細 | 読み出しのみ |
Trade Cancel | 注文のキャンセル | 読み書き |
Trade Add | 注文の追加 | 読み書き |
使い方
require 'btcbox'
btc = Btcbox::Client.new(PUBLIC_KEY, SECRET_KEY)
btc.ticker(["btc"|"ltc"|"doge"])
btc.depth(["btc"|"ltc"|"doge"])
btc.orders(["btc"|"ltc"|"doge"])
btc.balance()
btc.wallet(["btc"|"ltc"|"doge"])
btc.trade_list(["btc"|"ltc"|"doge"], [since], ["open"|"all"] )
#第二引数としてunixtimeを入れると、その時点以降の一覧となる
#第三引数は"open"を指定すると未完了の注文のみ、"all"だと完了したものやキャンセルしたものを含めた一覧が返る
btc.trade_view(["btc"|"ltc"|"doge"], id)
#第二引数にtrade_listなどで取得したidを指定する
btc.trade_cancel(["btc"|"ltc"|"doge"], id)
#第二引数にtrade_listなどで取得したidを指定する
btc.trade_add(["btc"|"ltc"|"doge"], amount, price, ["buy"|"sell"])
#第二引数に個数、第三引数価格、第四引数に売買のいずれかを指定する
戻り値の子細はヘルプの方で。jsonをパースしたものが返ってきます。
ワンライナーだとこんな感じ。
$ ruby -rbtcbox -e'b=Btcbox::Client.new("DUMMY","DUMMY");cnt=0;b.orders.each{|o|cnt+=1;puts "#{cnt},#{Time.at(o["date"].to_i)},#{o["price"]},#{o["amount"]}"}'
1,2015-12-13 14:49:33 +0900,52973,0.808
2,2015-12-13 14:50:43 +0900,52926,0.4235
3,2015-12-13 14:51:39 +0900,52952,2.7395
…
97,2015-12-13 15:54:25 +0900,52813,0.52
98,2015-12-13 15:54:57 +0900,52832,0.254
99,2015-12-13 15:55:53 +0900,52815,0.2655
100,2015-12-13 15:56:23 +0900,52802,0.34
いちおうブログもよろしく => ビットコイン取引所BTCボックスのAPIを叩くgem作った
免責事項
いかなる損害やトラブルの責任は一切負いかねますので予めご了承ください