Project

vexapion

0.0
No commit activity in last 3 years
No release in over 3 years
This is a low layer API wrapper for easy connection to exchanges.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.12
~> 10.0
 Project Readme

Vexapion

Vexapionは、仮想(暗号)通貨取引所のAPIを簡単に使えるようにしたAPIラッパーです。

現在ほぼ問題なく利用可能なのはCoincheck, Zaifのみです。

Bitflyer, Poloniexも一応利用可能ですが、マージン取引、特殊取引などに関連する関数はテストされていません。

Installation

Add this line to your application's Gemfile:

gem 'vexapion'

And then execute:

$ bundle

Or install it yourself as:

$ gem install vexapion

Usage

例:zaifの場合

クラスファイルを読み込みます。

require 'vexapion/zaif'

クラスの初期化をします。

zapi = Vexapion::Zaif.new(APIkey, secretkey)

扱いたいペアを指定します

pair = 'btc_jpy'

tickerを取得します

tick = zapi.ticker(pair)
ask = tick['ask']
bid = tick['bid']

(すぐ売買に利用可能な)残高を取得します

res = zapi.balance
balance = res['return']['funds']
jpy_available = balance['jpy']
btc_available = balance['btc']

売買します

zapi.sell(pair, rate, amount)
zapi.buy(pair, rate, amount)

等のように使います。

各取引所クラスでメソッド名が異なるため、各取引所のAPIドキュメントをご覧ください。

また、各メソッドの返り値はAPIから返って来たものをHash化しただけになりますので、詳しくは http://vexapion.fuyuton.net にある各取引所のAPIドキュメントをご覧ください。

例外。 各メソッドはHTTPを使って取引所と通信をします。そのため接続できなかった場合などにエラーが返ってくることがあります。

Vexapionには、4つの例外があります。

Vexapion::RetryException は、サーバー側にエラーが発生し、接続が出来ないまたは、リクエストが通ったかどうか定かでない状態になったときに発生します。

(当初Vexapion側で自動的に再接続処理をする予定で付けていた名残でRetryExceptionという名前になっています。将来的に変更される可能性があります)

Vexapion::Warning は、場合によってはアプリ側で無視出来るかもしれないエラーになります。

Vexapion::Error は、アプリ側またはVexapion自体の修正が必要なエラーになります。

Vexapion::Fatal は、Vexapion自体の修正が必要なエラーになると思います。

Development

After checking out the repo, run bin/setup to install dependencies. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/fuyuton/vexapion.