Official Python SDK for the Merx TRON resource exchange
Project description
merx-sdk
Python SDK for the Merx TRON energy exchange.
Installation
pip install merx-sdk
Requires Python 3.11+. No external dependencies (uses stdlib urllib and json).
Quickstart
from merx import MerxClient
client = MerxClient(api_key="sk_live_...")
# Check prices
prices = client.prices.list()
best = client.prices.best("ENERGY")
# Preview cost
preview = client.prices.preview(
resource="ENERGY",
amount=65000,
duration=3600,
)
# Create order
order = client.orders.create(
resource_type="ENERGY",
amount=65000,
duration_sec=3600,
target_address="TYourAddress...",
)
API Reference
Constructor
client = MerxClient(
api_key: str, # Required
base_url: str = "https://merx.exchange", # Optional
)
client.prices
| Method | Returns | Description |
|---|---|---|
list() |
list[ProviderPrice] |
All current prices from all providers |
best(resource, amount=None) |
PriceHistoryEntry |
Cheapest available provider (server-side) |
history(provider=None, resource=None, period="24h") |
list[PriceHistoryEntry] |
Historical price snapshots |
stats() |
PriceStats |
Market statistics |
preview(resource, amount, duration, max_price_sun=None) |
OrderPreview |
Preview order cost |
client.orders
| Method | Returns | Description |
|---|---|---|
create(resource_type, amount, duration_sec, target_address, ...) |
Order |
Place a new order |
list(limit=30, offset=0, status=None) |
tuple[list[Order], int] |
Orders with total count |
get(order_id) |
OrderWithFills |
Order details with fills |
create parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
resource_type |
str |
Yes | "ENERGY" or "BANDWIDTH" |
amount |
int |
Yes | Min 65000 for ENERGY, 300 for BANDWIDTH |
duration_sec |
int |
Yes | Duration in seconds (3600 = 1h, 86400 = 1d) |
target_address |
str |
Yes | TRON address to receive resources |
order_type |
str |
No | "MARKET" (default), "LIMIT", "PERIODIC", "BROADCAST" |
max_price_sun |
int |
No | Maximum price per unit in SUN |
idempotency_key |
str |
No | Prevent duplicate orders |
client.balance
| Method | Returns | Description |
|---|---|---|
get() |
Balance |
TRX, USDT, locked amounts |
deposit_info() |
DepositInfo |
Deposit address and memo |
withdraw(address, amount, currency="TRX", idempotency_key=None) |
Withdrawal |
Withdraw TRX or USDT |
history(period="30D") |
list[HistoryEntry] |
Transaction history |
summary() |
HistorySummary |
Aggregated stats |
client.webhooks
| Method | Returns | Description |
|---|---|---|
create(url, events) |
Webhook |
Register webhook (secret shown once) |
list() |
list[Webhook] |
List all webhooks |
delete(webhook_id) |
bool |
Delete a webhook |
Error Handling
All API errors raise MerxError:
from merx import MerxClient, MerxError
try:
order = client.orders.create(...)
except MerxError as e:
print(e.code, str(e))
Types
All responses are dataclasses: ProviderPrice, PricePoint, PriceHistoryEntry, PriceStats, OrderPreview, PreviewMatch, Balance, DepositInfo, Order, OrderWithFills, Fill, HistoryEntry, HistorySummary, Withdrawal, Webhook.
License
MIT
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file merx_sdk-2.0.0.tar.gz.
File metadata
- Download URL: merx_sdk-2.0.0.tar.gz
- Upload date:
- Size: 8.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce0511885c19314d5105e70a8ab5b86b9f199a596bc50a2533e004e655aca9be
|
|
| MD5 |
f66ca1b6bbb9de9ede73ec04faf77f81
|
|
| BLAKE2b-256 |
51ef1326e1f8f0553e80c729624aa1e8814c7532560b743834b78a06ec186720
|
File details
Details for the file merx_sdk-2.0.0-py3-none-any.whl.
File metadata
- Download URL: merx_sdk-2.0.0-py3-none-any.whl
- Upload date:
- Size: 9.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
13f77fb7f6322e1c7e914f8f62634ec4ed278b2b1e6826b5495abe434c84aec3
|
|
| MD5 |
5d791a05fe187c670d0cf34e4a29f21d
|
|
| BLAKE2b-256 |
58d89a08539fac44cd1bcb75deef208462e61461071ecce6523d31f9c1dda5cf
|