跳至内容

配置文件

配置文件允许您在 YAML 文件中定义参数。之后,您可以修改该文件的值,与他人共享,并将其导入到您的策略中。

配置文件的存储位置

Hummingbot 创建和使用的这些配置文件保存在实例的 /conf 目录中,您可以使用标准文本编辑器直接编辑。

  • conf/scripts:脚本的配置文件
  • conf/controllers:StrategyV2 控制器的配置文件
  • conf/strategies:原始“V1”策略的配置文件

脚本配置文件

从 v1.24.0 开始,脚本 可以定义一个 ScriptConfig 类,用于定义用户可存储在 YAML 文件中的配置参数。

class DManV3ScriptConfig(BaseClientModel):
    script_file_name: str = Field(default_factory=lambda: os.path.basename(__file__))

    # Account configuration
    exchange: str = Field("binance_perpetual", client_data=ClientFieldData(prompt_on_new=True, prompt=lambda mi: "Enter the name of the exchange where the bot will operate (e.g., binance_perpetual):"))
    trading_pairs: str = Field("DOGE-USDT,INJ-USDT", client_data=ClientFieldData(prompt_on_new=True, prompt=lambda mi: "List the trading pairs for the bot to trade on, separated by commas (e.g., BTC-USDT,ETH-USDT):"))
    leverage: int = Field(20, client_data=ClientFieldData(prompt_on_new=True, prompt=lambda mi: "Set the leverage to use for trading (e.g., 20 for 20x leverage):"))

这是一个可选功能,更基础的脚本可以选择在脚本文件中硬编码其参数。

创建脚本配置文件

要为兼容的脚本创建配置文件,请运行 create 命令并添加 --script-config 标志。

在自动补全下拉菜单中,仅会显示位于 /scripts 文件夹中的可配置脚本。

随后,系统将显示上述配置类中定义的提示和默认值。

最后一个提示将要求您输入配置文件的名称,该文件将保存在 conf/scripts 中。

启动可配置的脚本

运行 start 命令,并同时使用 --script--conf 标志,以使用配置文件运行脚本。

控制器配置文件

StrategyV2 框架将策略逻辑抽象为 控制器。每个控制器定义其接受的配置参数。

创建控制器配置文件

要创建控制器配置文件,请运行 create 命令并添加 -controller-config 标志。

在自动补全下拉菜单中,会显示 /controllers 文件夹中每个子文件夹内的控制器。

与脚本配置类似,系统会提示您输入信息,并显示控制器中定义的默认值。

最后一个提示将要求您输入配置文件的名称,该文件将保存在 conf/controllers 目录中。

启动控制器配置

要启动控制器配置,请定义 v2_generic_with_controllers.py 加载器脚本的配置文件:

create --script-config v2_generic_with_controllers

然后,通过运行以下命令启动加载器脚本:

start --script v2_generic_with_controllers.py --conf conf_v2_generic_with_controllers_1.yml

策略 V1 配置文件

原始的 Hummingbot V1 策略 也允许用户定义配置文件。

创建策略 V1 配置文件

运行 create 命令,不带 --script-config 标志,以创建一个 策略 V1 配置文件。自动补全命令将显示可用 V1 策略列表,每个策略对应 /hummingbot/strategy 文件夹中的一个子文件夹。

接下来,根据您要使用的策略回答提示问题,以配置机器人的行为。

最后一个提示将要求您输入配置文件的名称。您也可以在开始时通过运行 create [文件名] 命令指定文件名。

导入现有配置文件

  1. 运行 import 命令
  2. 输入您的策略配置文件名称

您也可以通过运行 import [文件名] 命令跳过提示。

示例用法

>>>`import conf_pure_mm_1.yml`
Configuration from conf_pure_mm_1.yml file is imported.

Preliminary checks:
 - Exchange check: All connections confirmed.
 - Strategy check: All required parameters confirmed.
 -All checks: Confirmed.

Enter "start" to start market making

>>> start

配置文件模板

虽然脚本是包含其参数类型和消息的单个文件,但 V1 策略由策略作者预先定义了单独的模板配置文件。

每个 V1 策略模板可在此处找到:配置模板