Skip to content

Improved Kraken API interface for Elixir applications

License

Notifications You must be signed in to change notification settings

Around25/kraken_api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kraken_api

Elixir library for Kraken (kraken.com) exchange API

Installation

This package can be installed by adding kraken_api to your list of dependencies in mix.exs:

def deps do
  [
    {:kraken_api, "~> 0.1.0"}
  ]
end

The docs can be found at https://hexdocs.pm/kraken_api.

Configuration

You'll need to provide two environment variables which supply your Kraken API key and private key. You can generate them at https://www.kraken.com/u/settings/api

use Mix.Config

config :kraken_api,
  api_key: "YOUR_API_KEY",
  private_key: "YOUR_PRIVATE_KEY"

You might want to keep the key out of the version control system.

Usage

The names of the available methods correspond to the names listed at https://www.kraken.com/help/api. For example, "Get account balance" corresponds to the method get_account_balance(params \\ %{}).

If the API call succeeded, a tuple {:ok, response} will be returned, where response is a Map containing the response from Kraken.

If it failed, {:error, errors} will be returned, where errors might contain the reason for error given by Kraken. However, it might also simply be nil if it wasn't possible to obtain the reason for failure from Kraken.

Parameters are supplied as an Elixir Map to the methods. For example,

iex(1)> KrakenApi.get_asset_info(%{asset: "BCH,XBT"})
{:ok,
 %{"BCH" => %{"aclass" => "currency", "altname" => "BCH", "decimals" => 10,
    "display_decimals" => 5},
    "XXBT" => %{"aclass" => "currency", "altname" => "XBT", "decimals" => 10,
    "display_decimals" => 5}}}

iex(2)> KrakenApi.get_closed_orders(%{start: 1507204548, end: 1507244548})
{:ok,
 %{"closed" => ...},
    ...}

For the full list of API methods and the corresponding parameters please refer to the Kraken documentation and the package documentation. The Kraken documentation also contains the response formats.

License

kraken_api is released under the MIT License. See LICENSE file for more information.

About

Improved Kraken API interface for Elixir applications

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages