/
Launch Hummingbot Miner

Get Support

How to get help running Hummingbot


Before you reach out to our 24/7 live support, do look at some of the common issues and error messages found when using Hummingbot and how to resolve them.

Installation

Permission denied after Docker installation

docker: Got permission denied while trying to connect to the Docker daemon socket at
unix:///var/run/docker.sock: Post
http://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/create?name=hummingbot_instance:
dial unix /var/run/docker.sock: connect: permission denied.

Exit from your virtual machine and restart.

Package 'docker.io' has no installation candidate

Install Docker using get.docker.com script as an alternative. Install curl tool then download and run get.docker.com script.

apt-get install curl
curl -sSL https://get.docker.com/ | sh

Allow docker commands without requiring sudo prefix (optional).

sudo usermod -a -G docker $USER

Conda command not found

$ conda
-bash: conda: command not found

If you have just installed conda, close terminal and reopen a new terminal to update the command line's program registry.

If you use zshrc or another shell other than bash, see : install dependencies.

Syntax error invalid syntax

File "bin/hummingbot.py", line 40
  def detect_available_port(starting_port: int) -> int:
                                           ^
SyntaxError: invalid syntax

Make sure you have activated the conda environment: conda activate hummingbot.

Module not found error

ModuleNotFoundError: No module named 'hummingbot.market.market_base'

root - ERROR - No module named
‘hummingbot.strategy.pure_market_making.inventory_skew_single_size_sizing_delegate’
(See log file for stack trace dump)

Solution 1: exit Hummingbot to compile and restart using these commands:

conda activate hummingbot
./compile
bin/hummingbot.py

Solution 2: make sure you have conda section in ~/.bashrc. Run conda init if it is not there. Explanation: if you have custom PATH defined in ~/.bashrc, supplied scripts (./compile etc) may pick wrong python binary, causing different errors.

Configuration

I can't copy and paste my API keys!

Copying and pasting your API keys into Hummingbot may be problematic, especially in Docker installations or for PuTTY users. See below for how to copy/paste in different environments.

other ways to copy and paste

COPY on Windows or Linux

Ctrl + C
Ctrl + Insert
Ctrl + Shift + C

PASTE on Windows or Linux

Ctrl + V
Shift + Insert
Ctrl + Shift + V

paste items from clipboard in putty

You should be able to paste items from your clipboard by doing mouse right-click or SHIFT + right-click. If that doesn't work, follow the steps below.

  1. If you are currently logged in a session, left-click on the upper left hand corner of the PuTTY window or a right-click anywhere on the title bar then select "Change Settings". If not, proceed to next step.
  2. In PuTTY configuration under Window category go to "Selection". Select the "Window" radio button for action of mouse buttons.
  3. You can now paste items from clipboard by doing a right-click to bring up the menu and select "Paste".

Where are my config and log files?

Hummingbot saves user data in the following directories:

  • conf: strategy configuration files
  • log: log files
  • data: executed trades, saved in a sqlite database

Below are instructions on how to access these files in various environments.

Windows

  1. Open File Explorer, select This PC and open local disc (C:)
  2. Browse to the Users folder, and open your profile folder.
  3. Locate and open AppData folder
  4. Open Local folder then Hummingbot.io folder. You may see another folder named Hummingbot, open it and you will see the data files folder.

Tip: In case the AppData folder is not visible, on the menu bar found above your folder, go to View and tick the checkbox for Hidden items.

MacOS

  1. Open Finder
  2. On the top menu bar, click Go
  3. After clicking the Go menu, press the Option button on your keyboard.
  4. Additional Library option should appear after that.
  5. Click Library
  6. Find and open Application Support folder and you will see Hummingbot folder.

Note: Mac has multiple library folders, make sure that the library folder you're trying to open is the Library folder under your user profile.

Docker

  1. Run the following command to view the details of your instance:
docker inspect $instance_name
  1. Look for a field Mounts, which will describe where the folders are on your local machine:
"Mounts": [
    {
        "Type": "bind",
        "Source": "/home/ubuntu/hummingbot_files/hummingbot_data",
        "Destination": "/data",
        "Mode": "",
        "RW": true,
        "Propagation": "rprivate"
    },
    {
        "Type": "bind",
        "Source": "/home/ubuntu/hummingbot_files/hummingbot_conf",
        "Destination": "/conf",
        "Mode": "",
        "RW": true,
        "Propagation": "rprivate"
    },
    {
        "Type": "bind",
        "Source": "/home/ubuntu/hummingbot_files/hummingbot_logs",
        "Destination": "/logs",
        "Mode": "",
        "RW": true,
        "Propagation": "rprivate"
    }
],
  1. Go to the folder locations listed under Source.

How do I edit my config files from the command line?

If Hummingbot is installed on a virtual machine or a Linux cloud server, you can use the vi text editor (or any text editor of your choice). Run command vi $filename. See this page for more information on how to use this text editor.

You can also use an FTP client software (e.g. WinSCP, FileZilla) to copy, move, files and folders from your virtual machine to your local machine and vice versa.

I forgot my password. How do I reset it?

For security reasons, Hummingbot does not store your password anywhere so there's no way to recover it. The only solution is to create a new password and re-enter your API keys upon restarting Hummingbot after deleting or moving the encrypted files.

  1. Run exit command to exit from the Hummingbot client.
  2. Delete the encrypted files and wallet key file (if applicable) from the hummingbot_conf folder.
  3. Restart Hummingbot and run config command.

If using Linux, copy the commands below and run in your terminal to delete the files. You will be prompted to confirm before proceeding.

rm hummingbot_files/hummingbot_conf/encrypted* hummingbot_files/hummingbot_conf/key_file*
rm hummingbot/conf/encrypted* hummingbot/conf/key_file*

If Hummingbot is installed on Windows, simply delete the encrypted files found in %localappdata%\hummingbot.io\Hummingbot\conf.

If Hummingbot is installed on MacOS, simply delete the encrypted files found in ~/Library/Application\ Support/Hummingbot/Conf.

Warning: Be careful when deleting the local wallet key file created through Hummingbot, i.e, a wallet that was not imported from Metamask; deleting the key file will result in a permanent loss of access to that wallet and any assets it may contain.

delete_encrypted_files

How to reset global configs to default settings?

Editing conf_global.yml from text editor sometimes can cause error or corrupted configuration when running Hummingbot, its because of incorrect format, incorrect parameters, wrong spelling and unintentional added characters to the global config.

  1. Run exit command to exit from the Hummingbot client.
  2. Delete conf_global.yml from the hummingbot_conf folder.
  3. Restart Hummingbot and a new generated conf_global.yml will be created, type config command to see the global configuration.

If using Linux, copy the commands below and run in your terminal to delete the file. You will be prompted to confirm before proceeding.

rm hummingbot_files/hummingbot_conf/conf_global.yml
rm hummingbot/conf/conf_global.yml

If Hummingbot is installed on Windows, simply delete the conf_global.yml found in %localappdata%\hummingbot.io\Hummingbot\conf.

If Hummingbot is installed on MacOS, simply delete the conf_global.yml found in ~/Library/Application\ Support/Hummingbot/Conf.

Note: If telegram is enabled make sure to backup your telegram token and chat id when deleting conf_global.yml.

Operation

Why is my bot not placing orders?

Fetch your bot status by running status or [Ctrl + S]:

  • Are there any warnings that may prevent the bot from starting?
  • Is your order_amount parameter larger than the exchange minimum order size requirement?
  • Check the available balance. If your available balance is lower than order_amount, Hummingbot will not place orders.
  • Is your inventory_skew_enabled parameter enabled? Since this parameter adjusts order sizes, one side may be too low or too high.

What parameter values should I set to make profitable trades?

The art of market making is identifying the optimal combination of strategy parameters, which may be different for each trading pair and in different market regime. As a general rule, Hummingbot does not advise users on parameter values.

[Binance] Timestamp for this request is outside of the recvWindow

Sample log error message

binance.exceptions.BinanceAPIException: APIError(code=-1021): Timestamp for this request is outside of the recvWindow.

Timestamp errors in logs happen when the Binance clock gets de-synced from time to time as they can drift apart for a number of reasons. Hummingbot should safely recover from this and continue running normally.

[Binance] Too much request weight used; IP banned

Sample log error message

binance.exceptions.BinanceAPIException: APIError(code=-1003): Way too much request weight used; IP banned until 1573987680818. Please use the websocket for live updates to avoid bans

This error occurs when the Binance API rate limit is reached. Causes include:

  • Using multiple order mode with 3+ orders per side
  • High order refresh rate
  • Running multiple instances of Hummingbot

Weight/Request error in logs happens when it encounters a warning or error and Hummingbot repeatedly sends the request (fetching status updates, placing/canceling orders, etc.) which resulted in getting banned. This should be lifted after a couple of hours or up to a maximum of 24 hours.

[Kraken] 0 Balance error

Sample log error message

Failed connections:                                                                                      |
    kraken: {'error': {'error': []}}

10:12:24 - kraken_market - Error received from https://api.kraken.com/0/private/Balance. Response is {'error': []}.

This error occurs when Kraken account currently has no funds on the exchange. Fund your account to fix the error. For more info visit this article.

MAC mismatch error

Hummingbot.core.utils.async_utils - ERROR - Unhandled error in background task: MAC mismatch Traceback (most recent call last):
File "/home/ubuntu/hummingbot/hummingbot/core/utils/async_utils.py", line 9, in safe_wrapper return await c
File "/home/ubuntu/hummingbot/hummingbot/core/utils/async_call_scheduler.py", line 128, in call_async return await self.schedule_async_call coro, timeout_seconds, app_warning_msg=app_warning_msg)
File "/home/ubuntu/hummingbot/hummingbot/core/utils/async_call_scheduler.py", line 117, in schedule_async_call return await fut
File "/home/ubuntu/hummingbot/hummingbot/core/utils/async_call_scheduler.py", line 80, in _coro_scheduler fut.set_result(await coro)
File "/home/ubuntu/miniconda3/envs/hummingbot/lib/python3.8/concurrent/futures/thread.py", line 57, in run result = self.fn(*self.args, **self.kwargs)
File "/home/ubuntu/hummingbot/hummingbot/client/config/security.py", line 88, in decrypt_all cls.decrypt_file(file)
File "/home/ubuntu/hummingbot/hummingbot/client/config/security.py", line 73, in decrypt_file cls._secure_configs[key_name] = decrypt_file(file_path, Security.password)
File "/home/ubuntu/hummingbot/hummingbot/client/config/config_crypt.py", line 67, in decrypt_file secured_value = Account.decrypt(encrypted, password)
File "/home/ubuntu/miniconda3/envs/hummingbot/lib/python3.8/site-packages/eth_account/account.py", line 134, in decrypt return HexBytes(decode_keyfile_json(keyfile, password_bytes))
File "/home/ubuntu/miniconda3/envs/hummingbot/lib/python3.8/site-packages/eth_keyfile/keyfile.py", line 49, in decode_keyfile_json return _decode_keyfile_json_v3(keyfile_json, password)
File "/home/ubuntu/miniconda3/envs/hummingbot/lib/python3.8/site-packages/eth_keyfile/keyfile.py", line 170, in _decode_keyfile_json_v3 raise ValueError("MAC mismatch")
ValueError: MAC mismatch

This error is usually caused by having multiple encrypted keys with different passwords in the same config folder. For example:

Instance1                       Instance2
Password  : 1234                Password  : 5678
API key/s : Binance             API key/s : Bittrex, Coinbase Pro,
                                            Eterbase, Kraken, Huobi

Copying encrypted Binance key file from Instance1 to Instance2 will result to this error. To fix this:

  1. Delete just the encrypted_binance_api/secret_key.json from Instance2's conf folder
  2. Restart Hummingbot and password 5678 remains unchanged
  3. Run connect binance and add the API keys - this will encrypt it with 5678 password and sync it with the rest of the API keys

Miscellaneous

How do I resize my Hummingbot window without jumbling the text?

When resizing the window of your Hummingbot, text becomes unclear or at the same location as the previous size of the window. To do a refresh to the new window size, while inside Hummingbot press CTRL + L and it will refresh Hummingbot window panes. These command applies to all Hummingbot build.

How to change time or timezone of Hummingbot?

Hummingbot follows the same date/time and timezone on the machine where it is installed. Below are some steps you can follow to change the timezone depending on the operating system and installation type.

Docker

While docker $instance_name is running on background, type in command line.

docker exec -it $instance_name bash
dpkg-reconfigure tzdata

Configure geographic location and timezone by inputting the corresponding number, see example below:

Windows

You can change the timezone on a Windows computer by doing the following:

  1. Press Win + R shortcut to open the Run dialog box
  2. Enter timedate.cpl to open Date and Time settings
  3. Click Change time zone

Alternatively, you can also follow these steps in Windows Support article: How to set your time and time zone

Needed support info

Before reporting bugs or issues, please collect these three items which helps our support team triage your issue promptly.

  1. Screenshot: In the Hummingbot client, run the status command and take a screenshot that includes the full terminal/bash window. Make sure to include both the left pane and the right log pane of Hummingbot.

  2. Strategy config file: This is the file with the parameters associated with your strategy. It does not contain API keys, wallet private keys, or other confidential data. It is located in the conf/ (Windows and macOS) or hummingbot_conf/ (Docker) folder. For example, if you have configured a pure market making strategy for the first time, the file's default name is conf_pure_mm_1.yml.

  3. Log file: This is the file that contains a detailed log output and error stack trace. It is located in the logs/ (Windows and macOS) or hummingbot_logs/ (Docker) folder. If you are sending logs related to your most recent Hummingbot session, sort the folder for the most recently updated file. It should have a name similar to logs_conf_pure_mm_1.log.

Locating your configs

  • Installed from source: hummingbot/conf
  • Installed via Docker: hummingbot_files/hummingbot_conf
    • hummingbot_files is the default name of the parent directory. This can be different depending on the setup when the instance was created.
  • Installed via Binary (Windows): %localappdata%\hummingbot.io\Hummingbot\conf
  • Installed via Binary (MacOS): ~/Library/Application\ Support/Hummingbot/Conf

Locating your logs

  • Installed from source: hummingbot/logs
  • Installed via Docker: hummingbot_files/hummingbot_logs
    • hummingbot_files is the default name of the parent directory. This can be different depending on the setup when the instance was created.
  • Installed via Binary (Windows): %localappdata%\hummingbot.io\Hummingbot\logs
  • Installed via Binary (MacOS): ~/Library/Application\ Support/Hummingbot/Logs

Ways to get support

Discord

Our official Discord server is the primary gathering spot for announcements, user support, trading strategies, connectors, and other discussion about Hummingbot.

When you sign up for our Discord, please check that the link you are accessing is https://discord.hummingbot.io.

Note: Currently, our Discord server is the only officially-supported online Hummingbot community. We do not maintain any other communities on Telegram, WeChat, Slack, or other applications. Please beware that any such communities (except for the official Hummingbot Discord) may be scams.

Github

For bugs not yet listed in GitHub, please submit a Bug Report.

Follow the template and include detailed descriptions of the bug, steps to reproduction, supporting artifacts such as screenshots, logs, configuration settings, and suggested fixes, if any.

We pledge that we will not use your information for trading purposes or share your personal information with third parties.

E-mail

For support requests via email, you can send us a message at support@hummingbot.io.

Edit on GitHub