bitflyer is a wrapper interface of Bitflyer lightning API
gem install bitflyer
See https://lightning.bitflyer.jp/docs for details.
See public.rb / private.rb for method definition.
public_client = Bitflyer.http_public_client
p public_client.board # will print board snapshot
private_client = Bitflyer.http_private_client('YOUR_API_KEY', 'YOUR_API_SECRET')
p private_client.positions # will print your positions
Accessor format is like {event_name}_{product_code}
.
You can set lambda to get realtime events.
{event_name}
and {product_code}
is defined at client.rb.
To subscribe to the private child_order_events
and parent_order_events
, pass your API key and secret when creating the realtime_client
.
The ready
callback is called when the realtime_client
is ready to receive events (after the socket connection is established, the optional authentication has succeeded, and the channels have been subscribed). If connection is lost, the disconnected
callback is called, and reconnection is attempted automatically. When connection is restored, ready
is called again.
For public events only:
client = Bitflyer.realtime_client
client.ticker_btc_jpy = ->(json){ p json } # will print json object
client.executions_btc_jpy = ->(json){ p json }
# ...
For both public and private events:
client = Bitflyer.realtime_client('YOUR_API_KEY', 'YOUR_API_SECRET')
# Private events:
client.child_order_events = ->(json){ p json }
client.parent_order_events = ->(json){ p json }
# Public events:
client.ticker_btc_jpy = ->(json){ p json }
client.executions_btc_jpy = ->(json){ p json }
# ...
Connection monitoring:
client = Bitflyer.realtime_client
client.ready = -> { p "Client is ready to receive events" }
client.disconnected = ->(error) { p "Client got disconnected" }
Bug reports and pull requests are welcome on GitHub at https://github.com/unhappychoice/bitflyer. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
The gem is available as open source under the terms of the MIT License.
Thanks goes to these wonderful people (emoji key):
Yves-Eric Martin 💻 |
Yuji Ueki 💻 |
Shoma FUKUDA 💻 |
shidetake 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!