Kraken.com exchange API, Python 3 package.
This package is intentionally as lean as possible, and only provides a minimal interface to the Kraken cryptocurrency exchange.
Intended for developers, not traders.
Software that uses
- pykrakenapi - nicely wraps API methods into regular Python methods, and JSON responses into Pandas dataframes (available on PyPI!)
- CurrencyViewer - short python3 framework for data extraction, conversion, and smooth development experience (available on PyPI!)
- clikraken - command-line client for the Kraken exchange (available on PyPI!)
- Telegram-Kraken-Bot - Telegram bot to trade on Kraken exchange
The code is documented in docstrings, and can be viewed with a text editor.
You can also generate your own with, e.g.,
make html in
sphinx and its
For the most up-to-date list of public/private Kraken API methods, see their API documentation.
A few package use examples are available in the examples directory.
This package requires Python 3.3 or later. The module will be called
A PyPI package is available.
For general use, there is only one direct dependency: requests.
Locally for a project, in a virtual environment (recommended)
In a terminal:
# create directory for a project that'll be using krakenex mkdir my-project cd my-project # bootstrap virtualenv export VIRTUAL_ENV=.virtualenv/krakenex mkdir -p $VIRTUAL_ENV virtualenv $VIRTUAL_ENV source $VIRTUAL_ENV/bin/activate # install from PyPI pip install krakenex
For more information on
virtualenv, see its documentation.
For the user
# install from PyPI pip install --user krakenex # ... or from local git repo clone cd CLONE-OF-GIT-REPO pip install --user .
System-wide (not recommended)
In general, use the distribution's package manager.
If it's unavailable, one can use
# install from PyPI pip install krakenex # ... or from local copy pip install /path/to/clone/of/repo
"Core" code is licensed under LGPLv3. See
Examples are licensed under the Simplified BSD license. See
Do not annoy the Kraken with tests
Some tests may be making queries to the Kraken API server.
If you intend to do development on this package, and have tests enabled on Travis CI, be sure to limit concurrent jobs to 1, and enable all possible auto-cancellations.
(Better yet, don't rely on public infrastructure, but run the tests locally first.)
No Python 2
This package will never support Python 2. There will be no changes made to enable compatibility with Python 2. Python 3.0 was released in 2008, before Bitcoin was.
There is no reason to support Python 2 except for compatibility with systems from the pre-blockchain era.
The fact that some GNU/Linux distributions still ship with Python 2 as the default seems unfortunate to me. However, I will not support this madness with my precious time.
If you have a valid reason to use Python 2, see python2-krakenex. Be warned, though, that it is unmaintained.