Skip to main content

Paradex Python SDK

Project description

Paradex Python SDK

Release Build status codecov Commit activity License

Paradex Python SDK provides a simple interface to interact with the Paradex REST and WS API.

Examples

L1 + L2 Authentication (Traditional)

from paradex_py import Paradex
from paradex_py.environment import Environment

paradex = Paradex(env=Environment.TESTNET, l1_address="0x...", l1_private_key="0x...")
print(hex(paradex.account.l2_address)) # 0x...
print(hex(paradex.account.l2_public_key)) # 0x...
print(hex(paradex.account.l2_private_key)) # 0x...

L2-Only Authentication (Subkey)

from paradex_py import ParadexSubkey
from paradex_py.environment import Environment

# Use ParadexSubkey for L2-only authentication
paradex = ParadexSubkey(
    env=Environment.TESTNET,
    l2_private_key="0x...",
    l2_address="0x..."
)
print(hex(paradex.account.l2_address)) # 0x...
print(hex(paradex.account.l2_public_key)) # 0x...
print(hex(paradex.account.l2_private_key)) # 0x...

WebSocket Usage

async def on_message(ws_channel, message):
    print(ws_channel, message)

await paradex.ws_client.connect()
await paradex.ws_client.subscribe(ParadexWebsocketChannel.MARKETS_SUMMARY, callback=on_message)

📖 For complete documentation refer to tradeparadex.github.io/paradex-py

💻 For comprehensive examples refer to following files:

Development

make install
make check
make test
make build
make clean-build
make publish
make build-and-publish
make docs-test
make docs
make help

Using uv

This project uses uv for managing dependencies and building. Below are instructions for installing uv and the basic workflow for development outside of using make commands.

Installing uv

uv is a fast and modern Python package manager. You can install it using the standalone installer for macOS and Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

For other installation methods, refer to the uv installation documentation.

Basic Workflow with uv

If you prefer not to use make commands, you can directly use uv for development tasks:

  • Install dependencies: Sync your environment with the project's dependencies.
    uv sync
    
  • Run tests: Execute the test suite using pytest within the uv environment.
    uv run pytest
    
  • Build the project: Create a distribution package for the SDK.
    uv build
    

For more detailed information on using uv, refer to the uv documentation.

The CI/CD pipeline will be triggered when a new pull request is opened, code is merged to main, or when new release is created.

Notes

[!WARNING] Experimental SDK, library API is subject to change

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

paradex_py-0.5.6.tar.gz (353.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

paradex_py-0.5.6-py3-none-any.whl (98.5 kB view details)

Uploaded Python 3

File details

Details for the file paradex_py-0.5.6.tar.gz.

File metadata

  • Download URL: paradex_py-0.5.6.tar.gz
  • Upload date:
  • Size: 353.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for paradex_py-0.5.6.tar.gz
Algorithm Hash digest
SHA256 1587047f4a8a7511a30b68539f8404d032f0df447d885fcd77ce2a3884f5ae59
MD5 3b01b408802983764d62a80bb47fd847
BLAKE2b-256 0b0d68300be7a2c91e7ed6b2a6a5b54e7551711a28e974aaff931358558c2998

See more details on using hashes here.

File details

Details for the file paradex_py-0.5.6-py3-none-any.whl.

File metadata

  • Download URL: paradex_py-0.5.6-py3-none-any.whl
  • Upload date:
  • Size: 98.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for paradex_py-0.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8a6c1a5be155f18b457cf0082a45af2846cd04dabd1d74a63401177561835829
MD5 1442c4586d17cc8204ae340b05821bff
BLAKE2b-256 e8f97490b88b3bcbe29247b938b98f15417dad384de0e767e919c05019e26b1b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page