Rest Client for Delta Exchange
Project description
Python Rest Client for Delta Api
Delta Exchange is a crypto derivatives exchange where you can trade bitcoin, ethereum, ripple futures upto 100x leverage. This package is a wrapper around rest apis of Delta Exchange. User Guide - https://www.delta.exchange/user-guide API Documentation - https://docs.delta.exchange
Please read the Changelog before using this package.
Get started
- Create an account on https://testnet.delta.exchange/signup
- Install the package:
pip install delta-rest-client
- Follow the below snippet to trade on testnet:
from delta_rest_client import DeltaRestClient
delta_client = DeltaRestClient(
base_url='https://testnet-api.delta.exchange',
api_key='',
api_secret=''
)
- Get json list of available contracts to trade from given url and note down the product_id and asset_id, as it will be used in most of the api calls. production - https://api.delta.exchange/products testnet - https://testnet-api.delta.exchange/products
Methods
Get Assets
Get list of assets supported on Delta.
response = delta_client.get_assets()
Get Product Detail
Get product detail of current product. See sample response
product = delta_client.get_product(product_id) # Current Instrument
settling_asset = product['settling_asset'] # Currency in which the pnl will be realised
Name | Type | Description | Required |
---|---|---|---|
product_id | integer |
id of product | true |
Get Ticker Data
response = delta_client.get_ticker(symbol)
Name | Type | Description | Required |
---|---|---|---|
symbol | string |
product symbol | true |
Get Orderbook
Get level-2 orderbook of the product. See sample response
response = delta_client.get_l2_orderbook(product_id)
Name | Type | Description | Required |
---|---|---|---|
product_id | integer |
id of product | true |
Open Orders
Get open orders. Authorization required. See sample response
orders = delta_client.get_live_orders()
Place Order
Create a new market order or limit order. Authorization required. See sample response
order_response = delta_client.place_stop_order(
product_id=product_id,
size=10,
side='sell',
limit_price='7800',
order_type=OrderType.LIMIT,
time_in_force=TimeInForce.FOK
)
Name | Type | Description | Required |
---|---|---|---|
product_id | int |
id of product | true |
size | int |
order size | true |
side | string |
buy or sell | true |
limit_price | string |
order price (ignored if market order) | false |
order_type | string |
limit or market | false (LIMIT by default) |
time_in_force | string |
IOC or GTC or FOK | false (GTC by default) |
post_only | string |
true or false | false (false by default) |
Place Stop Order
Add stop loss or trailing stop loss. Authorization required. See sample response
# Trailing Stop loss
order_response = delta_client.place_stop_order(
product_id=product_id,
size=10,
side='sell',
limit_price='7800',
order_type=OrderType.LIMIT,
trail_amount='20',
isTrailingStopLoss=True
)
# Stop loss
order_response = delta_client.place_stop_order(
product_id=product_id,
size=10,
side='sell',
order_type=OrderType.MARKET,
stop_price='8010.5',
)
Name | Type | Description | Required |
---|---|---|---|
product_id | int |
id of product | true |
size | int |
order size | true |
side | string |
buy or sell | true |
stop_price | string |
price at which order will be triggered | false(required if stop_loss) |
trail_amount | string |
trail price | false(required if trailing_stop_loss) |
limit_price | string |
order price (ignored if market order) | false |
order_type | string |
limit or market | false (LIMIT by default) |
time_in_force | string |
IOC or GTC or FOK | false (GTC by default) |
isTrailingStopLoss | string |
true or false | false (false by default) |
Cancel Order
Delete open order. Authorization required. See sample response
cancel_response = delta_client.cancel_order(product_id, order_id)
Name | Type | Description | Required |
---|---|---|---|
product_id | int |
id of product | true |
order_id | int |
order id | true |
Batch Create Orders
Create multiple limit orders. Max number of order is 5. Authorization required. See sample response
response = delta_client.batch_create(product_id, orders)
Name | Type | Description | Required |
---|---|---|---|
order | array |
array of orders | true |
Batch Cancel Orders
Cancel multiple open orders. Max number of order is 5. Authorization required. See sample response
response = delta_client.batch_cancel(product_id, orders)
Name | Type | Description | Required |
---|---|---|---|
order | array |
array of orders | true |
Change Order Leverage
Change leverage for new orders. Authorization required. See sample response
response = delta_client.set_leverage(product_id, leverage)
Name | Type | Description | Required |
---|---|---|---|
product_id | integer |
id of product | true |
leverage | string |
leverage value | true |
Open Position
Current open position of product. Authorization required. See sample response
response = delta_client.get_position(product_id)
Name | Type | Description | Required |
---|---|---|---|
product_id | integer |
id of product | true |
Change Leverage Positions
Change leverage for open position by adding or removing margin to an open position. Authorization required. See sample response
response = delta_client.change_position_margin(product_id, margin)
Name | Type | Description | Required |
---|---|---|---|
product_id | integer |
id of product | true |
margin | string |
new margin | true |
Get Wallet Balances
Get user's balance. Authorization required. See sample response
response = delta_client.get_balances(asset_id)
Name | Type | Description | Required |
---|---|---|---|
asset_id | integer |
id of asset | true |
Order History
query = { "product_id": 27 }
response = delta_client.order_history(query, page_size=100)
old_orders = response['result']
after_cursor_for_next_page = response["meta"]["after"]
more_orders = delta_client.order_history(query, page_size=100, after=after_cursor_for_next_page)
Name | Type | Description | Required |
---|---|---|---|
page_size | integer |
page size | false |
Fills
Get fill history of your orders
query = { "contract_types": "futures,interest_rate_swaps" }
response = delta_client.fills(query, page_size=100)
fills = response['result']
after_cursor_for_next_page = response["meta"]["after"]
more_fills = delta_client.fills(query, page_size=100, after=after_cursor_for_next_page)
Name | Type | Description | Required |
---|---|---|---|
page_size | integer |
page size | false |
Project details
Release history Release notifications | RSS feed
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
Hashes for delta_rest_client-1.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6ac2f7faea7cd6e8d3c83c94c5a82af2bfe762f21b5899147d311db324418d9 |
|
MD5 | 979a09c22be35b96d93ea3a4fbc8cb93 |
|
BLAKE2b-256 | 0e9516687bbca2f7339ce8db5f0dd579a734e43f4fae05245fd5780e4c4eb56d |