跳转至内容

启动和停止策略

启动策略

创建或导入配置文件后,使用 start 命令来运行策略。

停止运行中的策略

运行 stop 命令以停止正在运行的策略。这样做也会取消所有活跃订单。

策略自动启动

Hummingbot 可以在启动时自动开始执行先前配置的交易策略,而无需用户交互。此功能适用于常规模式和无头模式。

Docker 自动启动

先决条件

  • 您通过 Docker Compose 运行 Hummingbot
  • 您已经至少运行过一次实例,并设置了密码和 API 密钥
  • 您至少有一个之前设置的策略配置文件

如何配置 Docker 自动启动

  1. 停止所有正在运行的容器

    docker compose down
    

  2. 修改 docker-compose.yml

编辑 environment 部分以包含:

environment:
  - CONFIG_PASSWORD=password
  - CONFIG_FILE_NAME=simple_pmm_example.py
  - SCRIPT_CONFIG=conf_simple_pmm_example_config_1.yml  # Optional for scripts
  - HEADLESS_MODE=true  # Optional: Enable headless mode
  1. 部署 Hummingbot 容器
    docker compose up -d
    

这将启动 Hummingbot 并进入分离模式(在后台运行)。

  1. 查看活动容器
    docker ps
    

你应该能看到你的 Hummingbot 容器正在运行已配置的策略。

  1. 附加到正在运行的容器
    docker attach hummingbot
    

当你附加时,策略应该已经在运行了。要分离容器而不停止它,请使用 Ctrl+P 然后按 Ctrl+Q

源码安装自动启动

先决条件

  • 你已通过源码安装了 Hummingbot
  • 您已经通过添加 API 密钥连接了交易所
  • 您至少有一个之前设置的策略配置文件

如何配置源码安装自动启动

使用以下命令:

bin/hummingbot_quickstart.py -p CONFIG_PASSWORD -f SCRIPT_FILE_NAME [-c CONFIG_FILE_NAME] [--headless]

示例:

# Regular mode with autostart
bin/hummingbot_quickstart.py -p mypassword -f simple_pmm_example.py -c conf_simple_pmm_example_config_1.yml

# Headless mode with autostart
bin/hummingbot_quickstart.py -p mypassword -f simple_pmm_example.py -c conf_simple_pmm_example_config_1.yml --headless

无头模式

警告

在没有人工监督的情况下运行任何交易机器人可能会带来额外的风险。在部署能够无人值守交易的机器人之前,您必须充分理解和测试策略及参数。

Hummingbot 可以在无头模式下运行,这使得机器人可以在没有交互式 CLI 界面的情况下运行。这对于将机器人部署到云服务或以编程方式运行多个实例特别有用。

无头模式的前提条件

  • 必须启用并运行 MQTT:由于在无头模式下没有 CLI 界面,需要通过 MQTT 来控制和监控机器人
  • 必须设置 Hummingbot 密码:密码用于解密 API 密钥和钱包
  • 必须存在策略配置:你需要一个预配置的策略或脚本文件

如何在无头模式下运行

使用命令行参数

bin/hummingbot_quickstart.py --headless -p PASSWORD -f CONFIG_FILE_NAME [-c SCRIPT_CONFIG]

其中:

  • --headless:启用无头模式

  • -p PASSWORD:你的 Hummingbot 密码

  • -f CONFIG_FILE_NAME:策略配置文件 (.yml) 或脚本文件 (.py)

  • -c SCRIPT_CONFIG:(可选)脚本的配置文件

使用环境变量

你也可以使用环境变量,这对 Docker 部署尤其有用:

export HEADLESS_MODE=true
export CONFIG_PASSWORD=your_password
export CONFIG_FILE_NAME=your_strategy.yml
export SCRIPT_CONFIG=your_script_config.yml  # Optional for scripts

无头模式的重要注意事项

需要 MQTT:没有 CLI 界面的情况下,MQTT 是唯一的方式来:

  • 监控机器人状态和性能

  • 查看日志和错误消息

  • 停止机器人或修改参数

  • 接收警报和通知

与 Hummingbot API 一起使用:我们强烈建议将无头模式与 Hummingbot API 一起使用,用于:

  • 管理多个机器人实例

  • 实时监控和控制

  • 自动化部署和扩展

  • 与其他系统集成

日志记录:在无头模式下,日志仍然写入文件,但除非通过 MQTT 监控或直接查看日志文件,否则无法实时查看。

自动启动文件类型

您可以自动启动:

  • 脚本:包含所有策略逻辑的 Python 文件(.py)。Hummingbot 会在scripts目录中查找这些文件

  • 策略:带有 YAML 配置文件(.yml)的可配置策略模板。Hummingbot 会在conf/strategies目录中查找这些文件

无人值守交易的最佳实践

  1. 充分测试:在无人值守运行之前,始终先在模拟交易模式下测试策略

  2. 设置适当限制:配置紧急停止、余额限制和其他安全参数

  3. 定期监控:即使在无头/自动启动模式下,也要定期检查日志和性能

  4. 使用 MQTT/API:通过 MQTT 或 Hummingbot API 设置适当的监控以获得实时警报

  5. 保护系统安全:确保您的部署环境安全,特别是在使用自动启动时