Skip to main content

Vortex APIs to place orders in AsthaTrade Flow application

Project description

Vortex API Python Client

Installation

pip install vortex-api

Api Usage

from vortex_api import AsthaTradeVortexAPI
from vortex_api import Constants as Vc

client = AsthaTradeVortexAPI("your api secret","your application id")

#For client login using TOTP
client.login("client code","client password","totp")

# Place order 

client.place_order(
       exchange = Vc.ExchangeTypes.NSE_EQUITY,
       token = 22,
       transaction_type =  Vc.TransactionSides.BUY,
       product = Vc.ProductTypes.DELIVERY,
       variety = Vc.VarietyTypes.REGULAR_LIMIT_ORDER,
       quantity = 1,
       price = 1700.0,
       trigger_price=0.0,
       disclosed_quantity= 0,
       validity = Vc.ValidityTypes.FULL_DAY)

#Get order book 
client.orders(limit=20,offset=1)

Connecting to websocket

Using the feed, you can listen to both price quote changes and order/trade updates. You need to define your own callbacks for on_price_update and on_order_update. The packet structure for on_order_update is the same as that received in postbacks and is available here

from vortex_api import VortexFeed
from vortex_api import Constants as Vc
import time

def main():
    # Get access token from any of the login methods
    wire = VortexFeed(access_token) 

    wire.on_price_update = on_price_update
    wire.on_order_update = on_order_update
    wire.on_connect = on_connect
    wire.connect(threaded=True) 
    # If you make threaded = False, anything after this line will not execute

    time.sleep(10)
    
    wire.unsubscribe(Vc.ExchangeTypes.NSE_EQUITY, 26000)
    wire.unsubscribe(Vc.ExchangeTypes.NSE_EQUITY, 26009)
    wire.unsubscribe(Vc.ExchangeTypes.NSE_EQUITY, 2885)


def on_price_update(ws,data): 
    print(data)

def on_order_update(ws,data): 
    print(data)

def on_connect(ws, response):
    ws.subscribe(Vc.ExchangeTypes.NSE_EQUITY, 26000, Vc.QuoteModes.LTP) #Subscribe to NIFTY 
    ws.subscribe(Vc.ExchangeTypes.NSE_EQUITY, 26009,Vc.QuoteModes.OHLCV) # Subscribe to BANKNIFTY 
    ws.subscribe(Vc.ExchangeTypes.NSE_EQUITY, 2885,Vc.QuoteModes.FULL) # Subscribe to RELIANCE 

if __name__ == "__main__":
    main()

Refer to the python document for all methods and features

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

vortex_api-1.0.8.tar.gz (15.4 kB view hashes)

Uploaded Source

Built Distribution

vortex_api-1.0.8-py3-none-any.whl (15.0 kB view hashes)

Uploaded Python 3

Supported by

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