Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hummingbot/dashboard
Application that helps you create, backtest, deploy, and manage Hummingbot instances
https://github.com/hummingbot/dashboard
Last synced: about 1 month ago
JSON representation
Application that helps you create, backtest, deploy, and manage Hummingbot instances
- Host: GitHub
- URL: https://github.com/hummingbot/dashboard
- Owner: hummingbot
- License: apache-2.0
- Created: 2022-06-17T19:15:31.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-05T16:26:24.000Z (about 2 months ago)
- Last Synced: 2024-11-05T17:32:18.871Z (about 2 months ago)
- Language: Python
- Homepage:
- Size: 44.1 MB
- Stars: 187
- Watchers: 12
- Forks: 121
- Open Issues: 33
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-hummingbot - Streamlit Apps - Github Repo
README
# Hummingbot Dashboard
Hummingbot Dashboard is an open-source application designed to assist in the creation, backtesting, and optimization of a wide variety of algorithmic trading strategies. Once refined, these strategies can be deployed as [Hummingbot](https://github.com/hummingbot/hummingbot) instances in live trading modes, providing a seamless transition from strategy formulation to actual trading execution.
## Features
- **Bot Orchestration**: Deploy and manage multiple instances of Hummingbot
- **Strategy Backtesting and Optimization**: Evaluate the performance of your strategies against historical data and optimize them with Optuna
- **One-Click Deployment**: Seamlessly deploy your strategies as Hummingbot instances for paper or live trading.
- **Performance Analysis Monitoring**: Monitor and analyze the performance of your deployed strategies.
- **Credential Management**: Create and manage separate accounts for API keys
## DocumentationFor detailed instructions and further information, visit our [documentation page](https://hummingbot.org/dashboard/).
## Installation
Currently, we recommend users to install Dashboard using the **[Deploy repo](https://github.com/hummingbot/deploy)** instead as this will automatically launch Dashboard along with the needed components in their own Docker containers.
If you are a developer, and want to make changes to the code then we recommend using the Source installation below - please note that you will also need to launch the Backend API and Broker separately (either through source install or through Docker).
1. **Install Dependencies**:
- Docker Engine
- Miniconda or Anaconda2. **Clone Repository and Navigate to Directory**:
```bash
git clone https://github.com/hummingbot/dashboard.git
cd dashboard
```3. **Create Conda Environment and Install Dependencies**:
```bash
make install
```4. **Activate the Isolated 'conda' Environment**:
```bash
conda activate dashboard
```5. **Start the Dashboard**:
```bash
make run
```For more detailed instructions on how to install and update the dashboard, refer to [INSTALLATION.md](INSTALLATION.md).
## Authentication
Authentication is disabled by default. To enable Dashboard Authentication please follow the steps below:
**Set Credentials (Optional):**
The dashboard uses `admin` and `abc` as the default username and password respectively. It's strongly recommended to change these credentials for enhanced security.:
- For Docker, navigate to the `deploy` folder or `dashboard` folder if using Source and open the `credentials.yml` file.
- Add or modify the current username / password and save the changes afterward
```
credentials:
usernames:
admin:
email: [email protected]
name: John Doe
logged_in: False
password: abc
cookie:
expiry_days: 0
key: some_signature_key # Must be string
name: some_cookie_name
pre-authorized:
emails:
- [email protected]
```### Docker
- Ensure the dashboard container is not running.
- Open the `docker-compose.yml` file within the `deploy` folder using a text editor.
- Locate the environment variable `AUTH_SYSTEM_ENABLED` under the dashboard service configuration.
```
services:
dashboard:
container_name: dashboard
image: hummingbot/dashboard:latest
ports:
- "8501:8501"
environment:
- AUTH_SYSTEM_ENABLED=True
- BACKEND_API_HOST=backend-api
- BACKEND_API_PORT=8000
```
- Change the value of `AUTH_SYSTEM_ENABLED` from `False` to `True`.
- Save the changes to the `docker-compose.yml` file.
- Relaunch Dashboard by running `bash setup.sh`
### Source- Open the `CONFIG.py` file located in the dashboard root folder
- Locate the line `AUTH_SYSTEM_ENABLED = os.getenv("AUTH_SYSTEM_ENABLED", "False").lower() in ("true", "1", "t")`.
```
CERTIFIED_EXCHANGES = ["ascendex", "binance", "bybit", "gate.io", "hitbtc", "huobi", "kucoin", "okx", "gateway"]
CERTIFIED_STRATEGIES = ["xemm", "cross exchange market making", "pmm", "pure market making"]
AUTH_SYSTEM_ENABLED = os.getenv("AUTH_SYSTEM_ENABLED", "False").lower() in ("true", "1", "t")
BACKEND_API_HOST = os.getenv("BACKEND_API_HOST", "127.0.0.1")
```
- Change the value from `False` to `True` to enable dashboard authentication.
- Save the CONFIG.py file.
- Relaunch dashboard by running `make run`### Known Issues
- Refreshing the browser window may log you out and display the login screen again. This is a known issue that might be addressed in future updates.## Latest Updates
Stay informed about the latest updates and enhancements to Hummingbot Dashboard by subscribing to our [newsletter](https://hummingbot.substack.com/).
## Contributing and Feedback
We welcome contributions from the community. Please read our [contributing guidelines](CONTRIBUTING.md) to get started.
Join our [Discord](https://discord.gg/hummingbot) community to discuss strategies, ask questions, and collaborate with other Hummingbot Dashboard users:
## License
Hummingbot Dashboard is licensed under the Apache License, Version 2.0. See [LICENSE](LICENSE) for more details.