Skip to main content

Revolut X Python SDK

Python client library for the Revolut X Crypto Exchange REST API (v1.0).

📖 Documentation: janprikryl1.github.io/revolut-x-python
🐘 Looking for PHP? See revolut-x-php.


Features

  • Revolut X API v1.0 — Complete coverage of market data, order placement, balances, and transaction history.
  • Ed25519 Authentication — Cryptographic request signing using cryptography (PKCS#8 PEM).
  • Smart Maker Strategy (0.00% fee) — Automatic offset pricing and post_only execution to prevent taker fees (0.09%).
  • Streaming Iterators — iter_candles() and iter_trades() automatically handle cursor pagination and rate-limit delays.
  • 100% Type Annotated — Built with Python TypedDict, Enum, and type annotations.
  • AI Agent Skill — Pre-packaged skill definition for AI coding assistants (Google Antigravity, Claude, Cursor).

Installation

pip install revolut-x-python

In a requirements.txt:

revolut-x-python>=1.0.0
Pre-release builds (TestPyPI)

Release candidates go to TestPyPI first. Versions 0.0.1 – 0.1.0 were published there only; 1.0.0 is the first release on PyPI proper. To install a pre-release build:

pip install --extra-index-url https://test.pypi.org/simple/ revolut-x-python

Use --extra-index-url (rather than --index-url) so PyPI stays available for the requests and cryptography dependencies, which are not mirrored on TestPyPI.


Quickstart

1. Public Market Data (No API Key Required)

from revolut_x import RevolutXClient, Interval

client = RevolutXClient()

# Get BTC-EUR ticker
ticker = client.get_ticker("BTC-EUR")
print(f"BTC Price: {ticker['last_price']} EUR")

# Get 1-hour OHLCV candles
candles = client.get_candles("BTC-EUR", Interval.HOUR_1)

2. Authenticated Trading & 0% Fee Maker Orders

from revolut_x import RevolutXClient, OrderSide

client = RevolutXClient(
    api_key="your-api-key",
    private_key_path="keys/private.pem",
)

# Submit zero-fee Maker limit order (post_only=True)
order = client.place_maker_order(
    symbol="BTC-EUR",
    side=OrderSide.BUY,
    quote_size="50.00",
    offset="0.10",
)
print(f"Order ID: {order['venue_order_id']}")

Running Tests

pytest tests

Academic Reference

This library was written as part of a master's thesis at VŠB – Technical University of Ostrava, Faculty of Electrical Engineering and Computer Science.

  • Author: Bc. Jan Přikryl
  • University: VŠB – Technical University of Ostrava
  • Faculty: Faculty of Electrical Engineering and Computer Science (FEI)

Changelog

See CHANGELOG.md.


License

This project is licensed under the MIT License — see the LICENSE file for details.

Metadata

Release files for revolut-x-python 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for revolut-x-python 1.0.0
File Size Uploaded
revolut_x_python-1.0.0.tar.gz 55.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for revolut-x-python 1.0.0
File Interpreter ABI Platform
revolut_x_python-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 89.4 kB

Release files / revolut_x_python-1.0.0.tar.gz

Download URL revolut_x_python-1.0.0.tar.gz
Size 55.5 kB
Tags Source
SHA-256 checksum
How to use checksums
b103e667f5fc251c919705c649beec0fe9e0d5836ed2e3b22e9d675ddd3073a1
BLAKE2b-256 checksum
How to use checksums
8acd22688f973470e89ef51c867f52bd4d4951926fffb8bcb0444f67c951504f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.6

Release files / revolut_x_python-1.0.0-py3-none-any.whl

Download URL revolut_x_python-1.0.0-py3-none-any.whl
Size 34.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
218b76abcab100f91025b85da02b1d200b5d915bafbf42508594fc085869a765
BLAKE2b-256 checksum
How to use checksums
e3c831d0b7e1d2a4483388fe8fd0a35c29e337f01d015019257bd06e081cc827
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.6

Release history Release notifications | RSS feed

1.1.1

2 release files

1.1.0

2 release files

1.0.1

2 release files

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page