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
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:
- Fork the project.
- Create your feature branch (
git checkout -b feature/YourFeature
). - Commit your changes (
git commit -am 'Add some feature'
). - Push to the branch (
git push origin feature/YourFeature
). - Create a new Merge Request.
License
This project is licensed under the terms of the MIT license. See LICENSE for more details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for tradelocker-0.37.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ac26609ca2cf911edc3748cfcdaca519441a3f00ded24031f6e8dbc8a57bc6d9 |
|
MD5 | 856f8df82a168232e034e0739070d794 |
|
BLAKE2b-256 | c8ff6466a7f86f13e036e6e741113b4c3914fa37c03ede1eaeae3d67320e2e65 |