Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

delta-rest-client

Package Overview
Dependencies
Maintainers
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

delta-rest-client

Rest Client for Delta Exchange

  • 1.0.12
  • PyPI
  • Socket score

Maintainers
3

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

  1. Create an account on Testnet-India: https://testnet.delta.exchange/
    For non-Indian customers use Testnet-Global: https://testnet-global.delta.exchange/
  2. Install the package:
    pip install delta-rest-client
    
  3. Follow the below snippet to trade on testnet:
from delta_rest_client import DeltaRestClient

delta_client = DeltaRestClient(
  base_url='https://cdn-ind.testnet.deltaex.org',
  api_key='',
  api_secret=''
)
base_url for different environments:
Production-India : https://api.india.delta.exchange
(Site at: https://india.delta.exchange/)

Testnet-India : https://cdn-ind.testnet.deltaex.org
(Site at: https://testnet.delta.exchange/)

Production-Global : https://api.delta.exchange
(Site at: https://www.delta.exchange/)

Testnet-Global : https://testnet-api.delta.exchange
(Site at: https://testnet-global.delta.exchange/)
  1. 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.

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
NameTypeDescriptionRequired
product_idintegerid of producttrue

Get Ticker Data

See sample response

response = delta_client.get_ticker(symbol)
NameTypeDescriptionRequired
symbolstringproduct symboltrue

Get Orderbook

Get level-2 orderbook of the product. See sample response

response = delta_client.get_l2_orderbook(product_id)
NameTypeDescriptionRequired
product_idintegerid of producttrue

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
    )
NameTypeDescriptionRequired
product_idintid of producttrue
sizeintorder sizetrue
sidestringbuy or selltrue
limit_pricestringorder price (ignored if market order)false
order_typestringlimit or marketfalse (LIMIT by default)
time_in_forcestringIOC or GTC or FOKfalse (GTC by default)
post_onlystringtrue or falsefalse (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',
    )
NameTypeDescriptionRequired
product_idintid of producttrue
sizeintorder sizetrue
sidestringbuy or selltrue
stop_pricestringprice at which order will be triggeredfalse(required if stop_loss)
trail_amountstringtrail pricefalse(required if trailing_stop_loss)
limit_pricestringorder price (ignored if market order)false
order_typestringlimit or marketfalse (LIMIT by default)
time_in_forcestringIOC or GTC or FOKfalse (GTC by default)
isTrailingStopLossstringtrue or falsefalse (false by default)

Cancel Order

Delete open order. Authorization required. See sample response

cancel_response = delta_client.cancel_order(product_id, order_id)
NameTypeDescriptionRequired
product_idintid of producttrue
order_idintorder idtrue

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)
NameTypeDescriptionRequired
orderarrayarray of orderstrue

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)
NameTypeDescriptionRequired
orderarrayarray of orderstrue

Change Order Leverage

Change leverage for new orders. Authorization required. See sample response

response = delta_client.set_leverage(product_id, leverage)
NameTypeDescriptionRequired
product_idintegerid of producttrue
leveragestringleverage valuetrue

Open Position

Current open position of product. Authorization required. See sample response

response = delta_client.get_position(product_id)
NameTypeDescriptionRequired
product_idintegerid of producttrue

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)
NameTypeDescriptionRequired
product_idintegerid of producttrue
marginstringnew margintrue

Get Wallet Balances

Get user's balance. Authorization required. See sample response

response = delta_client.get_balances(asset_id)
NameTypeDescriptionRequired
asset_idintegerid of assettrue

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)
NameTypeDescriptionRequired
page_sizeintegerpage sizefalse

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)
NameTypeDescriptionRequired
page_sizeintegerpage sizefalse

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc