Skip to main content

TradeLocker Algo Trading API support for Python

Project description

TradeLocker Python API Wrapper

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

Full description of the TradeLocker Algo Trading 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 and password 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.7 or later. You can install the TradeLocker Python API Wrapper using pip:

Local pip wheel

hatch build
pip install dist/tradelocker[*].whl

From PyPi

# While still published only on test.pypi.org:
pip install -i https://test.pypi.org/simple --extra-index-url https://pypi.org/simple/ tradelocker

### From gitlab repo:

```shell
pip install git+https://gitlab.tradelocker.com/tradelocker-bots/tradelocker-bots.git@tradelocker_api

After publishing to the main pypi repo:

pip3 install tradelocker


### Pushing to PyPi (or TestPyPi)
```shell
hatch run test
hatch version minor
hatch build
hatch publish [--repo test]

Usage

Here's an example of how to use the TradeLocker Python API wrapper:

from tradelocker import TLAPI
import time, random

# Initialize the API client with the information you use to login
tl = TLAPI(environment = "demo", 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:

  1. Fork 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.37.0.tar.gz (18.7 kB view details)

Uploaded Source

Built Distribution

tradelocker-0.37.0-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tradelocker-0.37.0.tar.gz
  • Upload date:
  • Size: 18.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Darwin/23.1.0

File hashes

Hashes for tradelocker-0.37.0.tar.gz
Algorithm Hash digest
SHA256 d63f3543fada3a7de1b5c97f3f6eb3391fbe33e89fca9e29a45aeb322c404505
MD5 71a3f831869a2c976ca9fa49ca0521ba
BLAKE2b-256 19b6c50fac139032b1ec85516d8b6df53a27537903a600499ca3dc3d57ae5e13

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tradelocker-0.37.0-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Darwin/23.1.0

File hashes

Hashes for tradelocker-0.37.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ac26609ca2cf911edc3748cfcdaca519441a3f00ded24031f6e8dbc8a57bc6d9
MD5 856f8df82a168232e034e0739070d794
BLAKE2b-256 c8ff6466a7f86f13e036e6e741113b4c3914fa37c03ede1eaeae3d67320e2e65

See more details on using hashes here.

Supported by

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