跳转至内容

与 Hummingbot 配合使用 Osmosis

cover

引言

这些说明帮助用户了解如何在 Hummingbot Gateway 上安装、配置和运行 (OSS) Hummingbot 高频交易机器人,该机器人在 Osmosis DEX 上执行自动做市套利或区间自动做市策略。

先决条件

创建 Osmosis (Cosmos) 钱包

Cosmos 生态系统由跨链通信协议(IBC)驱动,其功能类似于区块链互联网。大多数 Cosmos 钱包都原生支持所有 IBC 链,包括 Osmosis - 尽管特定网络可能需要手动添加

在 Osmosis 网站和/或文档中获取最新的 Osmosis 特定钱包信息:

为确保能够轻松导出钱包私钥,请使用Leap。请记住,从 Leap 导出的私钥将包含一个'0x'前缀,该前缀必须被移除。

为钱包充值

有多种可用的 Cosmos 桥接,但最简单的方法是使用 Osmosis DEX 前端直接向 Osmosis 存款。

注意

请确保您的钱包有足够余额,包括用于燃料费的 OSMO


安装 Hummingbot

安装 Hummingbot 有两种主要方式:

Docker

安装 Hummingbot 的推荐方法是使用 Docker。

源码

对于熟悉使用命令行界面的高级用户,从源代码安装允许进行自定义和私人更改。

适用于各种环境的指南:


向 Hummingbot 添加 Osmosis 钱包

您需要为您指定的交易钱包导出私钥。强烈建议为此目的设置一个专用账户。

警告

请注意,导出的私钥开头可能有 0x,可能需要将其移除以符合私钥格式检查。

→ 之前:0x1234567890...

→ 之后:1234567890...

从 Keplr 导出私钥

Keplr 是最受欢迎的基于 Cosmos 的钱包。但是,在创建 Keplr 钱包时,只有链接了 Google 账户的用户才能直接从 Keplr 导出私钥

注意

对于链接了 Google 的 Keplr 钱包,请在此处查找导出私钥的说明。

要绕过此限制,请导出助记词,然后使用允许导出私钥的不同 Osmosis 钱包进行恢复。

在没有链接 Google 账户的情况下获取 Keplr 私钥:

  1. 导出 Keplr 助记词。image

  2. 使用助记词在允许导出私钥的不同基于 Cosmos 的钱包(如 Leap 钱包)中恢复钱包。image

  3. 从新恢复的钱包中导出私钥。

警告

您的钱包助记词极其敏感。请保密,切勿在网上或与您不信任的人分享。在处理助记词时,始终确保您处于安全和私密的环境中。


从 Leap 导出私钥

从 Leap 钱包导出私钥:

  1. 打开 Leap 钱包,然后打开钱包菜单。

  2. 向下滚动至“安全”部分并选择“导出私钥”。image

  3. 输入钱包密码,然后将光标悬停在模糊区域上以查看私钥。

  4. 复制私钥并务必删除显示密钥开头的“0x”。image

注意

图片使用 Leap 0.10.7 版本和 Keplr 0.12.70 版本在 Chrome 中制作。

将私钥添加到 Hummingbot

运行 gateway connect osmosis 并按照提示将交易钱包添加到 Osmosis DEX 连接器。

注意

Hummingbot 在本地机器上以加密形式存储 API 密钥和私钥,使用 Hummingbot 客户端密码作为密钥。

image

网关连接

  • 要连接到 Osmosis 主网,请运行以下命令
>>> gateway connect osmosis
  • 要连接到 Osmosis 测试网,请在提示时选择 'testnet' 而不是 'mainnet'。

  • 系统将提示您输入 Osmosis 私钥。如果有效,您应该会收到一条消息,内容为 连接器 osmosis_osmosis_mainnet 现在正在使用钱包 osmo

  • 要确认连接,您可以运行以下余额命令,查看 Hummingbot 是否能够从交易所获取可用余额

>>> gateway balance

运行策略

要开始交易,必须配置一种策略。Osmosis 连接器原生支持的两种策略是 amm_arbamm_v3_lp

准备

  1. 如果尚未连接,请使用 gateway connect osmosis 将钱包连接到 Osmosis 主网。之后,当您运行 gateway balance 时,应该能够看到您的 osmosis_osmosis_mainnet 钱包。

  2. 要在交易钱包余额中显示特定代币的余额,请运行 gateway approve-tokens osmosis_osmosis_mainnet <TOKEN_SYMBOL_HERE>。下次运行 gateway balance 时将显示代币余额。

  3. 确保添加的交易钱包至少有 1 OSMO 以支付交易燃气费用。

创建新策略

使用 create 命令设置 amm_arbamm_v3_lp 策略。回答显示的问题提示,以便生成以下示例配置的你自己的版本。

>>> create

示例 AMM_ARB 配置

strategy: amm_arb
connector_1: osmosis_osmosis_mainnet
market_1: OSMO-USDC
connector_2: uniswap_polygon_mainnet
market_2: USDC-WOSMO
min_profitability: 1.0
market_1_slippage_buffer: 1.0
market_2_slippage_buffer: 1.0
concurrent_orders_submission: false
debug_price_shim: false
gateway_transaction_cancel_interval: 600

示例 AMM_V3_LP 配置

strategy: range_amm
connector: osmosis_osmosis_mainnet
market: OSMO-USDC
fee_tier: MEDIUM
price_spread: 1.0
amount: 1.0
min_profitability: 1.0

image

导入策略

运行 import 获取本地存储文件列表,使用箭头键或 Tab 键滚动并选择一个。或者,您也可以通过直接运行 import <file_name.yml> 来跳过提示。

>>> import

image

如果成功,您将看到:

image

启动策略

要运行交易策略:

  1. 确保已加载策略并确认初步检查。

  2. 运行 start

注意

amm_arb 策略将首先请求确认所选钱包。

image

使用脚本

脚本可以像策略一样创建,使用 create --script 命令即可。

>>> create --script

修改策略或脚本配置

可以通过手动编辑文件来修改策略和脚本:

  1. 找到 hummingbot/scripts 文件夹并使用任何文本编辑器或像 Visual Studio Code 这样的 IDE 打开相关文件。

  2. 进行所需更改并保存。

  3. 重启 Hummingbot 并运行以下命令重新启动机器人:

>>> start <strategy_name.yml>

或者,如果使用脚本:

start --script <script_name.py>


有用命令

您可以运行下面显示的 status 命令或按 CTRL + S 来检查机器人状态:

status

注意

status 命令当前在 amm_v3_lp 策略上存在一个问题

已知问题

  • amm_arb 和 amm_v3_lp 的 V1 策略兼容性正在开发中。
  • 不支持费用等级 'LOWEST',这将导致错误。
  • 在某些情况下,代币对必须按字母顺序排列。
  • PoolPrice RPC 可能会间歇性超时,导致 500 错误。

潜在改进

如果您有兴趣为该连接器或相关策略的额外功能或改进贡献代码或资助赏金,请随时联系Pecunia.Finance


[Osmosis 额外信息占位符]


附加资源