Class: Kaesen::Quoine
Overview
Quoine Wrapper Class developers.quoine.com/ API制限API users should not make more than 300 requests per 5 minute. Requests go beyond the limit will return with a 429 status
Constant Summary collapse
- @@nonce =
0
Instance Attribute Summary
Attributes inherited from Market
#api_key, #api_secret, #name, #url_private, #url_public
Instance Method Summary collapse
-
#depth ⇒ hash
abstract
Get order book.
-
#initialize(options = {}) {|_self| ... } ⇒ Quoine
constructor
A new instance of Quoine.
-
#ticker ⇒ hash
Get ticker information.
Methods inherited from Market
#balance, #buy, #cancel, #cancel_all, #market_buy, #market_sell, #opens, #sell, unBigDecimal
Constructor Details
#initialize(options = {}) {|_self| ... } ⇒ Quoine
Returns a new instance of Quoine.
16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/kaesen/quoine.rb', line 16 def initialize( = {}) super() @name = "Quoine" @api_key = ENV["QUOINE_KEY"] @api_secret = ENV["QUOINE_SECRET"] @url_public = "https://api.quoine.com" @url_private = @url_public .each do |key, value| instance_variable_set("@#{key}", value) end yield(self) if block_given? end |
Instance Method Details
#depth ⇒ hash
This method is abstract.
Get order book.
68 69 70 71 72 73 74 75 |
# File 'lib/kaesen/quoine.rb', line 68 def depth h = get_ssl(@url_public + "/products/5/price_levels") # the id of BTCJPY is 5. { "asks" => h["buy_price_levels"].map{|a,b| [BigDecimal.new(a.to_s), BigDecimal.new(b.to_s)]}, # to_s でないと誤差が生じる "bids" => h["sell_price_levels"].map{|a,b| [BigDecimal.new(a.to_s), BigDecimal.new(b.to_s)]}, # to_s でないと誤差が生じる "ltimestamp" => Time.now.to_i, } end |
#ticker ⇒ hash
Get ticker information.
44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/kaesen/quoine.rb', line 44 def ticker h = get_ssl(@url_public + "/products/code/CASH/BTCJPY") # the id of BTCJPY is 5. { "ask" => BigDecimal.new(h["market_ask"].to_s), "bid" => BigDecimal.new(h["market_bid"].to_s), "last" => BigDecimal.new(h["last_traded_price"].to_s), # "high" # "low" "volume" => BigDecimal.new(h["volume_24h"].to_s), # of the previous 24 hours "ltimestamp" => Time.now.to_i, # "vwap" } end |