You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[](https://github.com/SeaQL/sea-orm/stargazers/) If you like what we do, consider starring, sharing and contributing!
-[x]**Persistence of portfolios, orders, positions and trades**: Persistence is achieved through sqlite.
42
-
-[x]**Limit orders**: Create limit orders for buying and selling.
43
-
-[x]**Trade models**: Models and functionality for trades, trades stop losses (fixed and trailing) and take profits (fixed and trailing).
44
-
-[x]**Market data sources**: Market data sources for OHLCV data and ticker data, and extendible with custom data and events.
45
-
-[x]**Polars and Pandas dataframes support** Out of the box dataframes support for fast data processing ([pola.rs](https://pola.rs/), [pandas](https://pandas.pydata.org/)).
46
-
-[x]**Azure Functions support**: Stateless running for cloud function deployments in Azure.
47
-
-[x]**Live trading**: Live trading.
48
-
-[x]**Backtesting and performance analysis reports**[example](./examples/backtest_example)
49
-
-[x]**Backtesting multiple algorithms with different backtest date ranges**[example](./examples/backtests_example)
50
-
-[x]**Backtesting and results evaluation**: Compare multiple backtests and run experiments. Save and load backtests. Save strategies as part of the backtest. [docs](https://investing-algorithm-framework.com/Getting%20Started/backtesting)
51
-
-[x]**Order execution**: Currently support for a wide range of crypto exchanges through [ccxt](https://github.com/ccxt/ccxt) (Support for traditional asset brokers is planned).
52
-
-[x]**Web API**: Rest API for interacting with your deployed trading bot
53
-
-[x]**PyIndicators**: Works natively with [PyIndicators](https://github.com/coding-kitties/PyIndicators) for technical analysis on your Pandas and Polars dataframes.
54
-
-[ ]**Builtin WebUI (Planned)**: Builtin web UI to manage your bot and evaluate your backtests.
55
-
-[ ]**Manageable via Telegram (Planned)**: Manage the bot with Telegram.
56
-
-[ ]**Performance status report via Web UI and telegram(Planned)**: Provide a performance status of your current trades.
57
-
-[ ]**CI/CD integration (Planned)**: Tools for continuous integration and deployment (version tracking, comparison of backtests, automatic deployments).
58
-
-[ ]**Tracing and replaying of strategies in backtests (Planned)**: Tracing and replaying of strategies in backtests for specific dates and date ranges so you can evaluate your strategy step by step.
59
-
-[ ]**AWS Lambda support (Planned)**: Stateless running for cloud function deployments in AWS.
60
-
-[ ]**Azure App services support (Planned)**: deployments in Azure app services with Web UI.
61
-
62
-
## Quickstart
63
-
64
-
1. First install the framework using `pip`. The Investing Algorithm Framework is hosted on [PyPi](https://pypi.org/project/investing-algorithm-framework/).
22
+
23
+
## 🌟 Features
24
+
25
+
-[x] Python 3.10+: Cross-platform support for Windows, macOS, and Linux.
26
+
-[x] Backtesting: Simulate strategies with detailed performance reports.
27
+
-[x] Live Trading: Execute trades in real-time with support for multiple exchanges via ccxt.
28
+
-[x] Portfolio Management: Manage portfolios, trades, and positions with persistence via SQLite.
29
+
-[x] Market Data Sources: Fetch OHLCV, ticker, and custom data with support for Polars and Pandas.
30
+
-[x] Azure Functions Support: Deploy stateless trading bots to Azure.
31
+
-[x] Web API: Interact with your bot via REST API.
32
+
-[x] PyIndicators Integration: Perform technical analysis directly on your dataframes.
33
+
-[x] Extensibility: Add custom strategies, data providers, order executors so you can connect your trading bot to your favorite exchange or broker.
34
+
35
+
## 🚀 Quickstart
36
+
37
+
Installation
38
+
Install the framework via [PyPI](https://pypi.org/project/investing-algorithm-framework/):
39
+
40
+
1. First install the framework using `pip`. The Investing Algorithm Framework is hosted on [PyPi].
65
41
66
42
```bash
67
-
$ pip install investing-algorithm-framework
43
+
pip install investing-algorithm-framework
68
44
```
69
45
70
-
2. Next, just run:
46
+
Run the following command to set up your project:
71
47
72
48
```bash
73
-
$ investing-algorithm-framewor init
49
+
investing-algorithm-framewor init
74
50
```
75
51
76
-
or if you want the web version:
52
+
For a web-enabled version:
77
53
78
54
```bash
79
-
$ investing-algorithm-framework init --web
55
+
investing-algorithm-framework init --web
80
56
```
81
-
> You can always change the app to the web version by changing the `app.py` file.
82
57
83
-
The command will create the file `app.py` and an example script called `strategy.py`.
58
+
This will create:
84
59
85
-
From there, you start building your trading bot in the `strategy.py`.
60
+
* app.py: The entry point for your bot.
61
+
* strategy.py: A sample strategy file to get started.
86
62
87
-
More information can be found on our [docs](https://investing-algorithm-framework.com/)
88
-
89
-
> Make sure you leave the `app.py` file as is, as it is the entry point for the framework.
90
-
> You can change the `bot.py` file to your liking and add other files to the working directory.
91
-
> The framework will automatically pick up the files in the working directory.
92
-
```
63
+
> Note: Keep the app.py file as is. You can modify strategy.py and add additional files to build your bot.
64
+
> You can always change the app to the web version by changing the `app.py` file.
93
65
94
-
## Example implementation
66
+
---
95
67
96
-
The following algorithm connects to binance and buys BTC every 2 hours.
68
+
## 📈 Example: A Simple Trading Bot
69
+
The following example connects to Binance and buys BTC every 2 hours.
97
70
98
71
```python
99
72
import logging.config
@@ -157,7 +130,7 @@ if __name__ == "__main__":
157
130
158
131
> You can find more examples [here](./examples) folder.
159
132
160
-
## Backtesting and experiments
133
+
## 🔍 Backtesting
161
134
162
135
The framework also supports backtesting and performing backtest experiments. After a backtest, you can print a report that shows the performance of your trading bot.
If you discover a bug in the framework, please [search our issue tracker](https://github.com/investing-algorithms/investing-algorithm-framework/issues?q=is%3Aissue)
365
-
first. If it hasn't been reported, please [create a new issue](https://github.com/investing-algorithms/investing-algorithm-framework/issues/new).
366
-
367
-
### Contributing
325
+
## 🤝 Contributing
368
326
369
327
The investing algorithm framework is a community driven project.
370
328
We welcome you to participate, contribute and together help build the future trading bots developed in python.
@@ -376,4 +334,20 @@ You can pick up a task by assigning yourself to it.
376
334
**Note** before starting any major new feature work, *please open an issue describing what you are planning to do*.
377
335
This will ensure that interested parties can give valuable feedback on the feature, and let others know that you are working on it.
378
336
379
-
**Important:** Always create your feature or hotfix against the `develop` branch, not `main`.
337
+
**Important:** Always create your feature or hotfix against the `develop` branch, not `main`.
338
+
339
+
## 📬 Support
340
+
341
+
* Slack Community
342
+
* Reddit Community
343
+
344
+
345
+
## 🏆 Acknowledgements
346
+
347
+
We want to thank all contributors to this project. A full list of all the people that contributed to the project can be
348
+
found [here](https://github.com/investing-algorithms/investing-algorithm-framework/blob/master/AUTHORS.md)
If you discover a bug in the framework, please [search our issue tracker](https://github.com/investing-algorithms/investing-algorithm-framework/issues?q=is%3Aissue)
353
+
first. If it hasn't been reported, please [create a new issue](https://github.com/investing-algorithms/investing-algorithm-framework/issues/new).
0 commit comments