Make Automated Trading Easy to Everyone!
Explore the Docs »
Report Bug
·
Request Feature
Table of Contents
ATS is a comprehensive automated trading system designed for traders and developers. With ATS, you can test, deploy, and manage custom trading strategies across various exchanges through an intuitive interface and API support.
Features:
- Backtesting:
- Deploy strategies for real-time trading on supported exchanges, with live data feeds and execution.
- Live Trading:
- Deploy strategies for real-time trading on supported exchanges, with live data feeds and execution.
- Custom Strategies:
- Develop and integrate unique trading strategies tailored to your requirements. ATS provides a framework for implementing and testing new approaches.
- Exchange Connectivity:
- Connect to any trading exchange by creating custom exchange classes, enabling flexibility and support for various markets.
- Reporting:
- Generate reports for backtesting and live trading environments. ATS offers insights into performance, risk metrics, and other essential analytics.
- Custom Indicators:
- Create indicators that complement your strategy, providing unique signals and insights based on custom data.
- Custom Report Generation:
- Tailor reports to specific needs, extracting insights from trade performance, risk, and market conditions.
- API for Trading Jobs:
- Use ATS APIs to create, manage, and monitor trading jobs programmatically, providing automation capabilities. Use ATS APIs to create, manage, and monitor trading jobs programmatically, providing automation capabilities.
- Simple Trading UI:
- A user-friendly interface for managing trades, viewing strategy performance, and monitoring real-time positions. Of course, no one template will serve all projects since your needs may be different. So I'll be adding more in the near future. You may also suggest changes by forking this repo and creating a pull request or opening an issue. Thanks to all the people have contributed to expanding this template!
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
Following are the prerequisites you need to have beforehand.
- conda (Recommended)
- MongoDB
- Makesure the MongoDB server is running on the system
-
simply run the
setup.sh
(for Linux) orsetup.bat
(for Windows) script to create a separate conda environment namedats
with all the requirements needed for ATS. -
This will guid you through the installation with optional packages for AI-based strategies as well.
-
For Linux
./setup.sh
- For Windows
.\setup.bat
- You can create the conda environment named
ats
with the givenenvironment.yml
file.
conda env create -f environment.yml
- You may need to install the required AI-related packages manually if you are willing to run AI-based strategies.
- Use the
requirements.txt
file provided to install the requiredPython
packages in an existing environment. - The package versions in
requirements.txt
have been tested forPython 3.12
only. - If you are using a different
Python
version you may need to check for the compatible package versions.pip install -r requirements.txt
- You may need to install the required AI-related packages manually if you are willing to run AI-based strategies.
This option will be available soon 🤩
-
If you followed setup Option 1 or Option 2, you may use the provided
start.sh
(for Linux) orstart.bat
(for Windows) if you followed Refer our Documentation for all the information Documentation -
For Linux
./start.sh
- For Windows
.\start.bat
- Inside the created
Python
environment, you can simply run themain.py
file.python -m ats.main
- The
custom_modules
directory is dedicated to user-defined customizations. - It allows users to add their own exchange connectors, strategies, indicators, and fee models.
- These modules override the core ones in the ats folder if there is a naming conflict.
- Custom modules should be extended from our
BaseExchange
,BaseStrategy
,BaseIndicator
andBaseFees
classes - Please Refer following sections of the Documentation for complete guidelines.
- Back trading Engine
- Live Trading Engine
- Add More Exchanges
- Binance Spot
- Binance Futures
- More Exchanges
- Add More Indicators
- Volatility (std)
- Moving Average/ Weighted Moving Average
- RSI
- OBV
- Trend
- Super Trend
- AI Indicator
- Bollinger Bands
- More Indicators
- Realtime Plotting API
- Realtime Logging API
- Optimize Back trading Engine
- Release the Docker Image
- Release the Python Package
See the open issues for a full list of proposed features (and known issues).
Distributed under the Apache-2.0 License. See LICENSE
for more information.
- Isuru S. Rajakaruna: isururajakaruna@gmail.com
- Sunanda Gamage: rcsunanda@gmail.com
- Kasun Imesha Wickramasinghe: iamkasunimesha@gmail.com
- Project Link: https://github.com/ats-sys/ats