Skip to content
/ viabtc Public

๐Ÿ“ˆ ViaBTC Exchange Server API Wrapper

License

Notifications You must be signed in to change notification settings

krmbzds/viabtc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

55 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

ViaBTC ๐Ÿ“ˆ

Build Status Downloaded Coveralls Gem Version RubyDoc

An HTTP client to interface with the open-source ViaBTC Exchange Server.

Installation

Add viabtc to your Gemfile and run bundle OR install it yourself with gem install viabtc.

Configuration

If using Rails, create a file named viabtc.rb under config/initializers and add the following block of code.

ViaBTC.configure do |config|
  config.http_base_url = 'http://localhost:18080'
end

If not, add it anywhere in your code that runs before a new client is initialized. Read more at: ๐Ÿ“– Configuration Wiki

Usage

Create a new instance:

viabtc_http_client = ViaBTC::HTTP::Client.new

Make an API request:

viabtc_http_client.market_status(market: 'ETHBTC')

#=> {"error"=>nil, "result"=>{"low"=>"0", "period"=>86400, "last"=>"0", "high"=>"0", "open"=>"0", "volume"=>"0", "close"=>"0", "deal"=>"0"}, "id"=>0}

Support

Ruby Versions Tested Against

  • โœ… 3.2.2 (stable)
  • โœ… 3.1.4 (stable)
  • โณ 3.0.6 (security maintenance)
  • ๐Ÿชฆ 2.7.8 (end of life)

ViaBTC Exchange Server API Support

API Method Corresponding Methods
balance.query #balance
balance.update #withdraw #deposit
balance.history #balance_history
asset.list #asset_list
asset.summary #asset_summary
order.put_limit #limit_sell #limit_buy
order.put_market #market_sell #market_buy
order.cancel #cancel_order
order.deals #order_deals
order.book #sell_orders #buy_orders
order.depth #order_depth
order.pending #pending_orders
order.pending_detail #pending_order_details
order.finished #finished_orders #finished_sell_orders #finished_buy_orders
order.finished_detail #finished_order_detail
market.last #market_last
market.deals #market_deals
market.user_deals #user_executed_orders
market.kline #market_kline
market.status #market_status
market.status_today #market_status_today
market.list #market_list
market.summary #market_summary

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. 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.

Contributing

  1. Fork the repository
  2. Switch to develop branch (git checkout develop)
  3. Create your feature branch (git checkout -b my-new-feature)
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create new Pull Request

Donations โค๏ธ

You can donate me at Liberapay. Thanks! โ˜•๏ธ

Is it any good?

Yes.

License

Copyright ยฉ 2018-2023 Kerem Bozdas

This gem is available under the terms of the MIT License.