Install Hummingbot

This is part 1 of the Hummingbot quickstart guide:

System Requirements

If you are installing Hummingbot either locally or on a cloud server, here are the recommended minimum system requirements:

Operating System

  • Linux: Ubuntu 16.04 or later
  • MacOS: macOS 10.12.6 (Sierra) or later
  • Windows: Windows 10 or later


1 GB RAM per instance + 250 MB per additional instance


  • Install using Docker: 5 GB per instance
  • Install from source: 3 GB per instance
  • Downloadable installer: 3 GB per instance


A stable internet connection is necessary to keeping Hummingbot connected to exchanges when a bot is running.

Tip: If you are running Hummingbot on your local machine, make sure to turn off any sleep or energy-saving features that may terminate your network connection.

API Keys

In order to authorize Hummingbot to trade your assets, you will need to enter trade-enabled exchange API keys during the Hummingbot configuration process. Separately, if you would like to participate in Liquidity mining, you will need to provide read-only API keys in the Miner App

For more information on how to get the API keys for each exchange, please see the individual exchange pages in Connectors.

Installation methods

For new users: We recommend that you download the installer (see below). This lets you try out Hummingbot in only a few minutes.

For experienced traders and developers: We recommend that you install the Docker version on a cloud instance to maximize performance and reliability. See Installation in the User Manual.


Download the Windows installer from our Downloads page, and click it to start the installation process.

Watch this video that shows you how to complete the installation process:

For more assistance, see this guide in the Hummingbot docs.


Download the macOS installer from our Downloads page, and click it to start the installation process.

Watch this video that shows you how to complete the installation process:

For more assistance, see this guide in the Hummingbot docs.


We recommend that serious users install the Docker version of Hummingbot, which is optimized for running multiple bot simultaenously.

Open a Terminal/Bash window and run the following comamnds. These comamnds download and run the Docker installation scripts.

  1. Download Hummingbot install, start, and update script



2. Enable script permissions

chmod a+x *.sh

3. Create a Hummingbot instance


Follow the script instructions to create a Hummingbot instance.

For more information about other installation options, see the Installation section of the Hummingbot docs.

After installing Hummingbot, you should see the Hummingbot interface:

Proceed to the next part of the Hummingbot quickstart guide: Configure a Market Making Bot.

Configure a market making bot

This is part 2 of the Hummingbot quickstart guide:

If you have successfully installed Hummingbot you should see the welcome screen, read through the important disclaimer and create a secure password.

Create a secure password

If you are using Hummingbot for the first time on this machine, the system will prompt you to create a password. This password will be used to encrypt sensitive configuration settings e.g. API keys, secret keys and wallet private keys.

Warning: For security reasons, the password is only stored locally in encrypted form. We do not have access to your password.

Navigate the client interface

After setting up your password, you should see the command line-based Hummingbot interface.

First, let's walk through the design of the Hummingbot client interface:

  • Left top pane: command output pane
  • Left bottom pane: command input pane
  • Right pane: trading logs

Enter the command help to see a list of commands:

Command Description
connect List available exchanges and add API keys to them
create Create a new bot
import Import an existing bot by loading the configuration file
help List available commands
balance Display your asset balances across all connected exchanges
config Display the current bot's configuration
start Start the current bot
stop Stop the current bot
status Get the market status of the current bot
history See the past performance of the current bot
exit Exit and cancel all outstanding orders
paper_trade Toggle paper trading mode
export Export your bot's trades or private keys
order_book Display the current top bid and ask on the order book

Enter API keys

Hummingbot requires trade enabled API keys to access your exchange account. For exchange-specific information on how to find your API keys, please see the Connectors page in the Hummingbot docs.

Enter the command connect [exchange] to connect your exchange account to Hummingbot by adding API keys, where [exchange]is one of the exchanges supported by Hummingbot. You can hit SPACE or start typing to see available options.

The command connect shows if API keys have been successfully added.

Note that each exchange has a different format for API keys.

Tip: Some users have reported not being able to copy and paste their API keys on some platforms. Our help articles such as Other ways to copy and paste and Paste items from clipboard in PuTTY may help.

Create a new configuration

Next, we'll create a configuration for a market making bot using the pure market making strategy.

Enter the command create to begin creating a strategy config file. This configuration will be saved to a file that can be imported later on.

Select exchange and trading pair

Next, select the exchange and trading pair.

Since we are creating a paper trading bot, you don't need any assets on the exchange. However, you will need an account in order to generate API keys.

For the trading pair, select either ETH-USDT or ETH-USDC depending on the exchange. Here are two examples:

Coinbase Pro

Enter market making parameters

A bot's strategy parameters control how it behaves. During this step, you will define the basic parameters for your market making bot: order spreads, order sizes, and how often to refresh orders.

What spreads should I set?

Order spread is one of the most important levers that market makers can control. Tighter spreads cause your orders to be filled more often, resulting in more trades, bigger changes in asset balance, and potentially more risk. We recommend that new users start with wider spreads, such as 1.00% for each side of the order book or higher.

Alternate buy and sell orders

The ping pong feature helps users in managing inventory risk by alternating buy and sell orders after a fill.

Managing inventory risk in the face of market volatility is one of the most important aspects of market making. See the Advanced Market Making section of the Hummingbot docs for more ways to manage inventory risk.

Save configuration

Enter the name you want for your configuration file to complete the process.

Run your first bot

This is part 3 of the Hummingbot quickstart guide:

If you have successfully configured a bot in step 2, you should see the following message in the left pane of Hummingbot:

Enable paper trading mode (optional)

You can set the bot to run in paper trading mode, In paper trading mode, the bot uses live order book data and real trades to simulate placing orders getting them filled. Note that if you don't enable paper trading mode, the bot will place real orders using your exchange balances.

Enter the command paper_trade to enable this feature.

Afterwards, the top bar in the Hummingbot client should say paper_trade: ON.

How do I edit paper trading mode balances?

To change the asset balances used in paper trading, use the balance paper command. For example, to set a 1000 BTC paper trading balance, run balance paper BTC 1000.

Start bot

Now that you have successfully configured a trading bot, you can start market making by running the start command.

Run bot

After some preliminary checks, the bot will fetch the current state of the order book and start placing orders.
You should see messages like this in the right-hand log pane.

Get bot status

Enter the command status (you can also use the Ctrl-S keyboard shortcut).
This command shows you:
● Preliminary checks: Checks to ensure that the bot is able to run
● Assets: How much of each asset you have
● Active orders: List of the current open orders
● Warnings: Warnings that may impact how your bot runs.

If you don't see any active orders, check that you have correctly entered API keys for the exchange.

See past trades and performance

Enter the command history.

This command shows you:
● List of trades: The trades your bot has performed during this session
● Inventory: How your inventory has changed as a result of these trades
● Performance: How much profit or loss your bot has made as a result of these trades
For more information on how Hummingbot calculates performance, refer to Performance Analysis.

Exit Hummingbot

Enter stop to stop the bot, or exit to stop and also exit Hummingbot.

Both stop and exit automatically cancels all outstanding orders and notifies you if it believes that there are potentially uncancelled orders.

When you restart Hummingbot, you can import your saved configuration file, which was automatically named conf_pure_mm_1.yml:

??? Congratulations on successfully completing the Hummingbot quickstart guide!