Skip to main content

A Package designed for connecting to a Stock Broker that uses Symphony Fintech Solutions Pvt. Ltd for there API.

Project description

Introduction

  • This package is written to be used as a XTS API Client in Python.
  • With the correct API credentials, User can access XTS interactive & market data.

Reference

Package Structure

  • To better consume the package, the user should have a clear understanding of the architecture of the package.

Here is the folder structure of the project:

└───xts_api_client
    │   interactive_socket.py
    │   interactive_socket_client.py
    │   market_data_socket.py
    │   market_data_socket_client.py
    │   py.typed
    │   xts_connect.py
    │   xts_connect_async.py
    │   xts_exception.py
    │   __init__.py
    │   
    ├───helper
        helper.py
        helper_classes.py
        __init__.py

There are two version of xts_connect. A synchronous version & an asynchronous version.

xts_connect.py

  • This module is written for simple test cases & basic understanding of the API, however in practical cases, user will have to use asynchronous methods.

xts_connect_async.py

  • For all intensive purposes, this module will be used only because of the nature of application.

Getting Started

  • The user should have API Key, API Secret Key & the URL with Port details for using this package.
  • XTS API is a REST based Trading API with Socket IO streaming component. This client makes it easier to consume the data from API into Python.
  • In XTS, there are two types of API, one for trading (interactive sessions) & one for market data.

Trading API

  • Trading APIs allows to integrate trading system with XTS Platform for placing orders, monitor your positions, manage your portfolio and much more.

Market Data API

  • Market Data API is a mixed HTTP REST and HTTP streaming API. It provides access to live quotes data on a wide range of symbols.

A Simple Example

  • Here's an example code block that loads API credentials from environment variables and uses them to log in to a MarketData API. It has been explained in subsequent steps.
import os
from dotenv import load_dotenv
load_dotenv()

API_key = os.getenv("API_KEY")
API_secret = os.getenv("API_SECRET")
API_source = os.getenv("API_SOURCE")
API_root = os.getenv("API_URL")

"""""""""""""""""""""""""""""""""""""""
      |DataFrame for Cash Market|
"""""""""""""""""""""""""""""""""""""""
from xts_api_client.xts_connect_async import XTSConnect
from xts_api_client.helper.helper import cm_master_string_to_df
import asyncio

async def main():
      xt_market_data = XTSConnect(
      apiKey = API_key,
      secretKey = API_secret,
      source = API_source,
      root = API_root
      )
      response_marketdata_login = await xt_market_data.marketdata_login()

      market_data_get_master = await xt_market_data.get_master(
      exchangeSegmentList = [xt_market_data.EXCHANGE_NSECM] # Works for BSECM as well.
      )

      print((cm_master_string_to_df(market_data_get_master['result'])))
if __name__ == "__main__":
    asyncio.run(main())
""""""""""""""""""""""""""""""""""""""""""

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

xts_api_client-0.1.22.tar.gz (15.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xts_api_client-0.1.22-py3-none-any.whl (30.5 kB view details)

Uploaded Python 3

File details

Details for the file xts_api_client-0.1.22.tar.gz.

File metadata

  • Download URL: xts_api_client-0.1.22.tar.gz
  • Upload date:
  • Size: 15.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.11

File hashes

Hashes for xts_api_client-0.1.22.tar.gz
Algorithm Hash digest
SHA256 d9c927ab8402bdf40b3cb95e877f04d619967b09f08c842aeeccb164e97e4d62
MD5 8ddf0e11b2dd14a4fc8993367d3802c7
BLAKE2b-256 5687a50fc1de75132b0845118b3f7392db8d1ff90937cf047ab25e7b16fbf8bb

See more details on using hashes here.

File details

Details for the file xts_api_client-0.1.22-py3-none-any.whl.

File metadata

File hashes

Hashes for xts_api_client-0.1.22-py3-none-any.whl
Algorithm Hash digest
SHA256 9c826165ea0ef3f47c7bbf12385f479632172c6a6b96cdfb4f273f173bda9fab
MD5 274922142452b501597bfdea02a198e6
BLAKE2b-256 4042d1b8bea484050c91b112e28b95a29933a14e8ffe9917dd83cd7ed9a78018

See more details on using hashes here.

Supported by

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