Skip to content

Latest

Using Binance with Hummingbot

cover

Introduction

Binance is the world’s largest crypto exchange by trading volume, with $76 billion daily trading volume on Binance exchange as of August 2022, and 90 million customers worldwide.

This section provides a step-by-step guide that helps you use Hummingbot with Binance, starting with generating exchange API keys and adding them to Hummingbot. All information is sourced from the exchange website and other content.

Using Hyperliquid Vaults with Hummingbot

Cover

Introduction

Hyperliquid is a cutting-edge trading exchange that has revolutionized the way individuals engage with digital assets. This exchange is renowned for its introduction of Hyperliquid Vaults, a novel concept that allows both individual traders to optimize their trading strategies and earn profits from their investments.

This guide is designed to walk users through the process of utilizing Hummingbot, an automated trading bot, to trade on Hyperliquid Vaults, thereby automating their trading activities. By integrating Hummingbot into your trading routine, you can take advantage of its sophisticated algorithms to automate trade execution, manage risk, and potentially increase your profitability without the constant need for manual oversight. Whether you're aiming to optimize your trading strategy or simply wish to diversify your investment approach, this guide will provide you with the necessary steps and insights to effectively use Hummingbot on the Hyperliquid platform.

Using Polkadex with Hummingbot

cover

Introduction

Polkadex is a state-of-the-art decentralized exchange on the Polkadot network, offering a seamless blend of the high-speed trading typically found on centralized platforms with the security and autonomy of a DEX. This guide walks through setting up a Polkadex wallet and initiating trading with Hummingbot.

By leveraging Polkadex and Hummingbot, traders can enjoy a high-performance, secure, and automated trading experience without the custodial risks, making it an ideal platform for both novice and seasoned traders in the cryptocurrency ecosystem.

Hummingbot Docker Quickstart Guide

Introduction

This brief guide will introduce you to the process of installing and deploying Hummingbot using Docker. You will learn step-by-step how to set up Hummingbot using Docker Compose, a tool for defining and running multi-container Docker applications, and then run your first algo trading strategy!

What You Will Learn

  1. Install Docker: Step-by-step instructions to installing Docker and Docker Compose,

  2. Hummingbot Interface: Uncover the essentials of the Hummingbot interface, including layout and navigation.

  3. Running a Script: Learn how to run an algo trading strategy as a Hummingbot script.

  4. Connecting API Keys: Master the crucial process of integrating API keys with Hummingbot, ensuring secure API-based bot trading across various exchanges.

Using Dashboard to Deploy and Backtest Strategies

Introduction

Welcome to the Hummingbot Dashboard Quickstart Guide!

While Hummingbot started as a simple CLI-based market making bot in 2019, today it has evolved into a flexible platform that helps you create, backtest, optimize and deploy all types of algorithmic trading strategies.

This guide shows you the basics of how to use the new Hummingbot Dashboard application to create and deploy strategies at scale. Whether you're a seasoned trader or just starting out, this tutorial will provide you with the tools and knowledge to maximize your trading potential.

Using Dashboard to Deploy and Backtest Strategies - Part 1

Introduction

Welcome to the second part of the Hummingbot Dashboard quickstart. In this section, we'll guide you through the essential steps to set up the project and get Dashboard up and running.

Prerequisites

Before diving in, there are a couple of essential tools you'll need:

Update Linux Packages

It's a good practice to ensure your Linux system is up-to-date. Updating your system ensures that you have the latest security patches, bug fixes, and system improvements, reducing potential conflicts or issues during installation.

Run the following command:

sudo apt update && sudo apt upgrade -y && sudo apt install -y build-essential

Anaconda

Anaconda is a powerful distribution of Python and R for scientific computing and data science. It's vital for managing different environments for your projects. Download the installer for your environment from the Anaconda website and then run it.

For example, here is how to download and run the Linux installer:

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

Follow the prompts on the installer screens. If you are unsure about any setting, accept the defaults. You can change them later.

To make the changes take effect, close and then re-open your Terminal window. Afterwards, run the conda command from your path:

conda

You should see a response similar to:

usage: conda [-h] [-V] command ...

conda is a tool for managing and deploying applications, environments and packages.

Options:

positional arguments:
  command
    clean        Remove unused packages and caches.
    compare      Compare packages between conda environments.

Docker

Docker is a platform that allows you to develop, ship, and run applications inside containers. It's necessary for ensuring that the dashboard runs in a consistent environment. If Docker isn't installed on your system, click here to follow the installation guide.

The easiest way to install Docker is to install Docker Desktop, which includes Docker Compose along with Docker Engine and Docker CLI which are Compose prerequisites. Here are links to installers for each major OS:

For command-line Linux distributions, you can install Docker Engine following the steps below:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER

Installing Dashboard

1. Access the Dashboard Repo

Hummingbot Dashboard is open-source, allowing anyone to access, modify, and contribute to its codebase. To get started, visit the project repository on GitHub at the following link: hummingbot/dashboard.

2. Clone the Repository

To get a local copy of the project, clone the repository by running the command:

git clone https://github.com/hummingbot/dashboard

3. Set Up the Conda Environment

Once you've cloned the repository and navigated into its root directory, it's time to create a Conda environment. This environment ensures that all the required dependencies for the dashboard are installed and isolated from other projects. Run the following commands:

cd dashboard
make env_create

4. Activate the Environment

After creating the environment, you'll need to activate it:

conda activate dashboard

5. Launch the Dashboard

With the environment activated, initiate the dashboard with:

make run

It might take a while to load the dashboard for the first time. Subsequent launches will typically be faster. Once the dashboard is up, open a web browser and navigate to https://localhost:8501 to view it.

Next Steps

Congratulations - you've successfully set up the Hummingbot Dashboard. In the next tutorial, we'll delve into managing your credentials and understanding the registration process.

Manage Credentials

Using Dashboard to Deploy and Backtest Strategies - Part 2

Introduction

In this section, we'll dive into the importance of securely managing credentials in the Hummingbot Dashboard, ensuring that your information remains private and under your control.

Enabling Credential Management

If you plan to expose Dashboard externally or enable multiple users, managing credentials securely is paramount.

To add authentication layer to Dashboard, modify the AUTH_SYSTEM_ENABLED variable in the CONFIG.py file. By default, it is set to False.

Change it to True and save the file:

AUTH_SYSTEM_ENABLED = True

Afterwards, stop Dashboard and restart it with make run. Users will now be asked to log in when accessing Dashboard at https://localhost:8501.

Setting User Credentials

We present two methods for setting user credentials for Dashboard:

1. Manual Password Hashing

In this method, we manually declare the users and their corresponding passwords in the credentials.yml file.

credentials:
  usernames:
    admin:
      email: [email protected]
      name: Admin User
      password: abc # To be replaced with hashed password: hashed_passwords = stauth.Hasher(['abc', 'def']).generate()
In the default file above, the template password abc is a placeholder for the hashed password.

To generate a hashed password for a given string, follow these instructions:

  1. Run conda activate dashboard to ensure that you're in the Dashboard environment is active.
  2. Afterwards, enter the Python console with:
    python
    
  3. Import the auth library and hash the password:
    import streamlit_authenticator as st_auth
    hashed_password = st_auth.Hasher("YOUR_PASSWORD")
    hashed_password
    
  4. In the credentials.yml file, Replace the admin user's password with this hashed_password.
  5. Run exit() to exit the Python console.
  6. Access the dashboard at https://localhost:8501 and enter the username(admin) and string(YOUR_PASSWORD) used to generated the hashed password.

2. Whitelisted Email Registration

While the method works for 1-2 users, it might be cumbersome if numerous users interact with Dashboard.

Instead, you can edit the preauthorized section in credentials.yml. This method below allows you to whitelist a list of emails and allow users to set their own passwords. Each user is added to the credentials file.

  1. Define a whitelist of emails authorized to access the dashboard.
  2. In the pre_authorized: section of `credentials.yml``, add the emails of users who will be pre-authorized to register and create their credentials.
    pre_authorized:
      emails:
        - [email protected]
        - [email protected]
    
  3. Users with whitelisted emails can fill out a registration form upon their first login.
  4. Upon registration, Dashboard will hash and store their credentials automatically in this file.

Logging Out

Once logged in, you have the freedom to navigate through the various sections of the dashboard. However, to log out securely, ensure you return to the main Hummingbot Dashboard page and click the logout button. This ensures optimal security for your credentials and the dashboard's functionality.

Next Steps

Next, learn how to use the master bot profile to manage the keys you store in Dashboard.

Using the Master Bot Profile