kraken.com cryptocurrency exchange API
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 krakenex
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 doc. This requires sphinx and its rtd theme.
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 krakenex.
A PyPI package is available.
For general use, there is only one direct dependency: requests.
Locally for a project, in a virtual environment (recommended)
This requires python-virtualenv and python-pip.
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 pip:
# install from PyPI pip install krakenex # ... or from local copy pip install /path/to/clone/of/repo
“Core” code is licensed under LGPLv3. See LICENSE.txt and LICENSE-GPLv3.txt.
Examples are licensed under the Simplified BSD license. See examples/LICENSE.txt.
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.