跳至内容

在 Derive 上使用 Hummingbot 运行交易机器人

cover

欢迎来到全新的 Derive Hummingbot 连接器指南,这是您使用 Hummingbot 集成并交易 Derive 去中心化衍生品平台的全面资源。Derive 基于创新的 Derive Chain 和 OP Stack 构建,提供高吞吐量与低成本结算,通过无缝开户、强大的自托管功能以及针对期权、永续合约和结构化产品的高级风险管理,重新定义链上交易。

在本指南中,我们将引导您将 Derive 账户连接至 Hummingbot,并设置自动化交易机器人,以充分利用这些前沿功能。让我们开始吧!

添加资金并获取 Derive API 密钥

在使用 Hummingbot 开始通过 Derive 进行交易之前,您需要设置钱包、将其连接至 Derive 平台、存入资金并配置 API 访问权限。本节将引导您完成这些必要的初始步骤,为自动化交易做好账户准备。

Derive 支持多种钱包,例如 Rabby Wallet、Coinbase Wallet、Ledger 等,但在本指南中,我们将使用MetaMask这是最流行的以太坊钱包之一。MetaMask 允许用户通过其浏览器扩展程序或移动应用程序与 Derive 交互。

安装 MetaMask

确保已安装并设置好 MetaMask

如果尚未安装,请下载并安装 MetaMask 浏览器扩展程序或移动应用。创建一个新钱包或导入现有钱包。

将 MetaMask 钱包连接到 Derive

打开您的网页浏览器并访问 https://derive.xyz/。在 Derive 首页上,点击通常位于页面右上角的 "连接钱包" 按钮。

image

从可用选项列表中选择 "MetaMask"

image

MetaMask 将弹出窗口要求您确认连接。

image

钱包连接成功后,Derive 将提示您签名一条消息,以验证您是该钱包的所有者。

image image

如果您已阅读并同意相关条款,请勾选两个复选框,然后点击“同意并继续”

image

存入资金

钱包连接成功后,您需要向您的 Derive 账户存入代币。存入 USDC、ETH、BTC 和其他代币,即可开始交易期权和永续合约。请确保余额足以覆盖最低交易金额以及手续费。

image

注册会话密钥

连接后,点击页面左侧的“开发者”链接。如果看不到该选项,请返回首页,然后点击“开发者”。点击“注册会话密钥”,然后输入你的 Metamask 钱包的公开地址。你需要在 Metamask 中确认签名请求。

image image

完成后,请记下接下来连接 Hummingbot 所需的两个信息:第一个是Derive 钱包地址,第二个是子账户 ID

image

获取 Metamask 钱包私钥

  • 点击账户旁边的三个点,然后选择“账户详情”。

  • 在账户详情页面,点击“显示私钥”。

  • 输入你的钱包密码,然后点击“确认”。

  • 点击“按住以显示私钥”来查看你的私钥。

image

一旦显示出来,请复制私钥并安全地存储在安全位置。稍后你将需要此密钥来连接 Hummingbot。

在 Hummingbot 客户端中使用 Derive

仪表板兼容性通知

由于 Hummingbot 库内部存在依赖冲突,目前无法通过 Hummingbot 仪表板使用 Derive。在问题解决之前,请按照以下说明使用独立的命令行客户端(Docker 或源码安装)设置 Derive。

以下说明将指导你如何将 Derive 凭据添加到独立的 Hummingbot 命令行客户端。

Docker 设置

克隆 Hummingbot 仓库

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

编辑docker-compose.yml

导航至hummingbot项目目录,并使用 VSCode 等 IDE 或文本编辑器打开docker-compose.yml文件。

更新镜像行

hummingbot服务下找到以image:开头的行。根据你是想使用最新稳定版还是开发版进行修改:

对于最新稳定版本:

image: hummingbot/hummingbot:latest

对于开发版本:

image: hummingbot/hummingbot:development

启动 Docker 容器

更新镜像行后,克隆仓库并启动 Hummingbot Docker 容器:

cd hummingbot
docker compose up -d

附加到 Hummingbot 容器

现在 Hummingbot 应在后台运行。使用以下命令附加到正在运行的实例:

docker attach hummingbot

继续添加 API 密钥

Hummingbot 运行后,请按照下方“向 Hummingbot 添加密钥”部分的步骤连接你的 Derive 账户。

源码设置

克隆仓库

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

运行安装

克隆仓库后,通过运行 install 命令来安装 Hummingbot 的依赖项:

cd hummingbot
./install

激活 Conda 环境并编译

激活 conda 环境并编译 Hummingbot:

conda activate hummingbot
./compile

启动 Hummingbot

运行以下命令以启动 Hummingbot:

./start

将密钥添加到 Hummingbot

要将 Hummingbot 连接到 Derive 的永续合约市场,你需要 Derive 钱包地址、子账户 ID 以及你的 Metamask 钱包私钥。

在 Hummingbot 客户端内,运行以下命令以开始连接流程:

connect derive_perpetual

系统会提示你输入凭据:

 Enter Your DerivePerpetual Wallet address >>>
 Enter your wallet private key >>>
 Enter your Subaccount ID >>>

如果凭据正确,你将看到以下确认消息:

You are now connected to derive_perpetual

为验证连接是否成功,在 Hummingbot 客户端中运行 balance 命令,检查显示的余额是否与你的 Derive 账户余额一致:

balance

image

运行策略

本示例中,我们将使用 bollinger_v1 方向性交易控制器。

创建控制器配置

在 Hummingbot 客户端中运行 create 命令来配置控制器:

create --controller-config directional_trading.bollinger_v1

创建配置:

系统会提示你提供各种配置参数。可根据个人偏好自由调整设置:

  • 选择 derive_perpetual 作为你要交易的交易所名称。
Enter the total amount in quote asset to use for trading >>>
Enter the name of the exchange to trade on >>> derive_perpetual
Enter the trading pair to trade on >>>
Enter the maximum number of executors per side >>>
Set the leverage to use for trading >>>
Enter the stop loss >>>
Enter the take profit >>>
Enter the time limit in seconds >>>
Enter the order type for taking profit >>>
Enter the trailing stop as activation_price, trailing delta >>> 
  • 当提示输入用于蜡烛图数据的连接器时,请确保选择一个不同于 derive 的连接器,因为目前 derive 尚不支持蜡烛图数据流。

Enter the connector for the candles data, leave empty to use the same exchange as the connector:
Enter the trading pair for the candles data, leave empty to use the same trading pair as the connector:
image

  • 配置完成后,为该控制器配置命名或使用默认名称:

image

创建脚本配置

  • 接下来,我们需要为 v2_with_controllers 通用脚本创建脚本配置,以便运行我们的控制器配置。

  • 使用以下命令创建脚本配置:

create --script-config v2_with_controllers
  • 请确保输入我们之前创建的控制器配置文件的文件名

image

  • 最后,为脚本配置命名

image

启动策略

使用以下命令启动策略。注意:如果你的配置文件名称不同,请替换下方的配置名称

start --script v2_with_controllers.py --conf conf_v2_with_controllers_1.yml

image

监控策略

你可以通过查看日志是否有错误,并运行 status 命令来查看当前订单状态,从而监控你的机器人。如有需要,可关闭日志面板以更清晰地查看状态信息。

该策略的设计逻辑是:当价格接近布林带下轨时下达买入订单(表示处于超卖状态),当价格达到布林带上轨时下达卖出订单(表示处于超买状态)。由于机器人会在执行交易前等待有利条件,因此可能需要等待一段时间才会下达第一笔订单。

status

image

停止机器人

要停止机器人,请使用stop命令。请注意,机器人需要一些时间来创建订单以平掉持仓。

stop

image

有关 V2 策略或其他可用控制器的更多详细信息,请查看V2 策略文档中的控制器部分。请注意,由于 Derive 仅支持单向模式,因此使用对冲模式的一些 V2 策略可能无法与该控制器正常工作。

已知问题

  • Derive 速率限制 - 系统使用固定时间窗口算法实施速率限制,每 5 秒补充一次请求配额,以维持系统稳定性。做市商可联系支持团队申请更高的速率限制。

附加信息:杠杆

在使用永续期货交易所时,杠杆指的是您的头寸规模相对于您提供的抵押品的比例。具体计算方式如下:

\[ \text{杠杆} = \frac{\text{名义价值的绝对值}}{\text{抵押品(扣除期权后的净值)}} \]

有关 Derive 上杠杆计算方式的详细信息,请参阅其关于杠杆的官方文档