pip install hyperliquid-python-sdk
- Set the public key as the
account_address
in examples/config.json. - Set your private key as the
secret_key
in examples/config.json. - See the example of loading the config in examples/example_utils.py
Generate and authorize a new API private key on https://app.hyperliquid.xyz/API, and set the API wallet's private key as the secret_key
in examples/config.json. Note that you must still set the public key of the main wallet not the API wallet as the account_address
in examples/config.json
from hyperliquid.info import Info
from hyperliquid.utils import constants
info = Info(constants.TESTNET_API_URL, skip_ws=True)
user_state = info.user_state("0xcd5051944f780a621ee62e39e493c489668acf4d")
print(user_state)
See examples for more complete examples. You can also checkout the repo and run any of the examples after configuring your private key e.g.
cp examples/config.json.example examples/config.json
vim examples/config.json
python examples/basic_order.py
-
Download
Poetry
: https://python-poetry.org/. Note that in the install script you might have to setsymlinks=True
invenv.EnvBuilder
. -
Point poetry to correct version of python. For development we require python 3.10 exactly. Some dependencies have issues on 3.11, while older versions don't have correct typing support.
brew install [email protected] && poetry env use /opt/homebrew/Cellar/[email protected]/3.10.10_1/bin/python3.10
-
Install dependencies:
make install
CLI commands for faster development.
Install all dependencies
Install requirements:
make install
Codestyle
Install pre-commit hooks which will run isort, black and codestyle on your code:
make pre-commit-install
Automatic formatting uses pyupgrade
, isort
and black
.
make codestyle
# or use synonym
make formatting
Codestyle checks only, without rewriting files:
make check-codestyle
Note:
check-codestyle
usesisort
,black
anddarglint
library
Update all dev libraries to the latest version using one command
make update-dev-deps
Tests with coverage badges
Run pytest
make test
All linters
make lint
the same as:
make test && make check-codestyle && make mypy && make check-safety
Cleanup
Delete pycache files
make pycache-remove
Remove package build
make build-remove
Delete .DS_STORE files
make dsstore-remove
Remove .mypycache
make mypycache-remove
Or to remove all above run:
make cleanup
You can see the list of available releases on the GitHub Releases page.
We follow the Semantic Versions specification and use Release Drafter
. As pull requests are merged, a draft release is kept up-to-date listing the changes, ready to publish when you’re ready. With the categories option, you can categorize pull requests in release notes using labels.
Label | Title in Releases |
---|---|
enhancement , feature |
Features |
bug , refactoring , bugfix , fix |
Fixes & Refactoring |
build , ci , testing |
Build System & CI/CD |
breaking |
Breaking Changes |
documentation |
Documentation |
dependencies |
Dependencies updates |
Building a new version of the application contains steps:
- Bump the version of your package with
poetry version <version>
. You can pass the new version explicitly, or a rule such asmajor
,minor
, orpatch
. For more details, refer to the Semantic Versions standard. - Make a commit to
GitHub
- Create a
GitHub release
poetry publish --build
This project is licensed under the terms of the MIT
license. See LICENSE for more details.
@misc{hyperliquid-python-sdk,
author = {Hyperliquid},
title = {SDK for Hyperliquid API trading with Python.},
year = {2023},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/hyperliquid-dex/hyperliquid-python-sdk}}
}
By using this package you agree to the Terms of Use. See TERMS for more details.
This project was generated with python-package-template
.