Skip to main content

Python client for TradeLocker's Trading API

Project description

TradeLocker Python API Wrapper

This project provides a Python wrapper for TradeLocker's public API. It simplifies the process of making requests to the API by providing Pythonic interfaces.

A full description of the TradeLocker's public API can be found at TradeLocker API Documentation


Table of Contents

  1. Getting Started
  2. Installation
  3. Usage
  4. Contributing
  5. License

Getting Started

To use this Python wrapper, you'll need the username, password and the id of the server that you use to access TradeLocker. If you don't already have access, you need to find a broker that supports TradeLocker and create an account.

Installation

This package requires Python 3.11 or later. The easiest way to install this package is using pip:

pip install tradelocker

Usage

Here's a simple example on how to use the TradeLocker Python API wrapper. The code below initializes a TLAPI object with authentication data. It then: fetches price history and latest price, creates an order that converts into a position, waits for 2 seconds, and finally closes the same position.

from tradelocker import TLAPI
import time, random

# Initialize the API client with the information you use to login
tl = TLAPI(environment = "https://demo.tradelocker.com", username = "user@email.com", password = "YOUR_PASS", server = "SERVER_NAME")

symbol_name = "BTCUSD" # "RANDOM"
all_instruments = tl.get_all_instruments()
if symbol_name == "RANDOM":
	instrument_id = int(random.choice(all_instruments['tradableInstrumentId']))
else:
	instrument_id = tl.get_instrument_id_from_symbol_name(symbol_name)
price_history = tl.get_price_history(instrument_id, resolution="1D", start_timestamp=0, end_timestamp=0,lookback_period="5D")
latest_price = tl.get_latest_asking_price(instrument_id)
order_id = tl.create_order(instrument_id, quantity=0.01, side="buy", type_="market")
if order_id:
	print(f"Placed order with id {order_id}, sleeping for 2 seconds.")
	time.sleep(2)
	tl.close_position(order_id)
	print(f"Closed order with id {order_id}.")
else:
	print("Failed to place order.")

For more detailed examples, see the examples directory.

Contributing

To contribute to the development of this project, please create an issue, or a pull request.

Steps to create a pull request:

  1. Clone the project.
  2. Create your feature branch (git checkout -b feature/YourFeature).
  3. Commit your changes (git commit -am 'Add some feature').
  4. Push to the branch (git push origin feature/YourFeature).
  5. Create a new Merge Request.

License

This project is licensed under the terms of the MIT license. See LICENSE for more details.

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

tradelocker-0.49.0.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

tradelocker-0.49.0-py3-none-any.whl (21.4 kB view details)

Uploaded Python 3

File details

Details for the file tradelocker-0.49.0.tar.gz.

File metadata

  • Download URL: tradelocker-0.49.0.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.6 Darwin/23.5.0

File hashes

Hashes for tradelocker-0.49.0.tar.gz
Algorithm Hash digest
SHA256 0c94aecf0e5e583054af2ca82c0dc90179bc30d5226d93b46bb0a2f32cfb1bd6
MD5 36dc64b70d986b034aecd864b652d0de
BLAKE2b-256 68a3e21bc94bab657b287510143741e7b81c5991886250b22cd579cd1c9b0474

See more details on using hashes here.

File details

Details for the file tradelocker-0.49.0-py3-none-any.whl.

File metadata

  • Download URL: tradelocker-0.49.0-py3-none-any.whl
  • Upload date:
  • Size: 21.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.6 Darwin/23.5.0

File hashes

Hashes for tradelocker-0.49.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b641bfcca96f257eeb72ed83bbcdc47865c6e92fe6a0a0123745eddef6786170
MD5 edb8b55c26d9f67ff7bd97bc81e2b23c
BLAKE2b-256 2673a5b43eb84705e2047f9a84e6102b343e0a2fa200455a0fdb05d637ab0e15

See more details on using hashes here.

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