跳至内容

2023 年 10 月机器人大战回顾

cover

2023 年 10 月是特别引人注目的一个月,因为这标志着官方机器人大战(Bot Battle)的举办,这是一场专为 Botcamp 成员举办的月度机器人交易竞赛。在目光聚焦于奖品、头脑专注于表现的情况下,我们踏上了一段考验我们战略实力和机器人能力的旅程。

深入十月机器人大战

比赛从 10 月 27 日开始,持续到 10 月 30 日。我和我的 Botcamp 活跃成员们一起参加了一场旨在将我们的自动化交易策略相互比拼的活跃竞赛。根据比赛规则,我们可以使用任何 Hummingbot 策略或脚本,起始资金不超过 200 USDT,并且比赛开始后不允许再进行额外充值。

Beta 版大战回顾

Beta 机器人大战中,我使用了PMM 与偏移动态中点价差脚本的一个修改版本,这是一种旨在在单一市场中为交易对提供流动性的策略。

这是我的版本。我选择了 Binance 上的 SEI-USDT 交易对,因为它是相对新上市的,且最近表现出了波动性。

注意

在没有奖励或回扣的情况下,从现货做市中获利是很困难的,而没有高级 VIP 等级并支付标准手续费使得这种挑战更加困难。因此,我的预期是策略在扣除手续费后会亏损,但我希望能从业务损益的角度达到盈亏平衡。

在这两天中,我的机器人执行了 392 次交易,表现非常活跃且激进!我的平均买入价格为惊人的 0.1245 USDT,而平均卖出价格为 0.1244 USDT。鉴于市场波动性,这一微小的价差展示了机器人根据市场波动率动态调整价差的能力。

大部分由于手续费的原因,结果是总损益为-4.84 USDT。虽然这不是我希望的结果,但这是一次宝贵的学习经历,提供了对市场动态和机器人行为细微之处的洞察。

history-sept

十月的变化:使用 V2 策略

快速转到十月,我想测试新的 V2 策略框架,其显著特点是创建执行器而不是订单。这一创新方法基于三重屏障方法,这来自于 Martin Prado 的《金融机器学习进展》

V2 策略在其前身的基础上有几个关键的不同之处:

  • 可组合:它们允许对策略构建进行模块化方法,允许快速修改和增强。
  • 可回测:它们可以针对历史数据进行彻底测试以评估性能。
  • 易于访问:它们可以通过用户友好的仪表板进行部署,适合非技术用户和技术用户。

在架构方面,V2 策略由在脚本中定义的组件构成:

  • 蜡烛图:这些创建了一种市场数据的结构化方法,允许进行精细的交易信号生成。
  • 控制器:它们根据信号协调策略,确定执行器的行动方案。
  • 执行器:这些是自我管理的组件,执行交易、管理订单并适应市场变化。

我使用了基础 DManV2 脚本的一个修改版本。我的修改,主要是减少订单级别和扩大价差,旨在使策略更加保守。

十月表现

history

我决定再次在 SEI-USDT 货币对上使用该策略,尽管这次在 Binance Futures 上。

通过稍作调整和精心调整的参数,我的机器人执行了总共 186 笔买入和卖出交易,保持了平衡和灵活性。这次,已实现的损益为正 0.85 USDT,总交易量飙升至 4,071.0092 USDT。

表现非常显著,准确率为 32.26%,利润因数为 1.11。三天期间的价格变动为 5.67%。

值得注意的是,机器人的平均买入价格为 0.1101 USDT,而平均卖出价格为 0.1103 USDT,清楚地展示了在紧密市场价差内的成功交易执行。

尽管已实现的损益看似微薄,但产生的总交易量描绘了不同的成功画面。总买入量为 2034.62 USDT,总卖出量为 2036.8 USDT,显示了交易执行的显著一致性和平衡性。

对比分析

当比较连续两个月的表现时,十月的策略明显优于九月。损益不仅从负转为正,而且交易的效率和交易量也大幅增加。

在九月,机器人的活动以-4.84 USDT 的总损益结束,这一数字反映了尽管机器人在市场中积极参与,但费用高昂。相比之下,十月见证了完全的逆转,已实现的损益为 0.85 USDT,表明战略调整和转向 V2 框架带来了回报。

买入和卖出的平均价格在两个月内都保持紧密,反映了我的机器人在市场波动中导航的能力。然而,十月的机器人大战显示,买入价格的平均值高于卖出价格,尽管幅度很小,这说明了交易执行效率的提高。

关于我经验的其他想法

在仪表板中分析表现

Dashboard Performance

在机器人之战期间,我严重依赖 Hummingbot 仪表板来追踪我的表现。仪表板的策略表现页面非常有帮助,允许我直接上传 sqlite 数据库并深入研究我的交易的细节。这一功能让我能够深入探究什么有效、什么无效,为我的策略执行提供细致的视图。

虽然仪表板 UI 是一个很棒的工具,但我发现使用 Docker 直接连接到我的实例更为高效。这种方法为我提供了在命令行界面中启动和停止机器人的灵活性,简化了整个过程。

执行器让胜负分析变得简单

Executor Status

V2 执行器的一个显著优势是其透明的生命周期,可以清楚地表明每个执行器是如何关闭以及处于什么状态的。这种清晰度不仅对实时分析方便,也使回测变得轻而易举。通过评估每个执行器的表现,我可以精确地调整我的策略,以优化未来交易的胜负比率。

例如,通过查看到期的执行器数量与那些触发止损或追踪止损的执行器数量,我可以直接反馈来调整策略参数。通过分析以止盈收盘的执行器数量与未止盈的执行器数量,我可以调整我的止盈阈值以更好地捕捉市场波动。

V2 位置执行器的生命周期是 Hummingbot V2 策略的核心部分,它提供了一种透明度和控制力,显著增强了战略决策过程。

V2 PositionExecutor 的生命周期

理解执行器的生命周期对于优化 V2 策略至关重要:

  1. 非活跃(订单):旅程开始于创建一个订单,该订单保持非活跃状态,直到满足某些市场条件。这一阶段对于设定将定义执行器如何与市场互动的策略参数至关重要。

  2. 活跃(位置):一旦订单被激活,它就成为一个执行器将管理的位置。这种转变是关键点,在这个点上市场条件与策略的进入规则一致,执行器开始控制。

  3. 关闭:位置可以基于几个预定义的条件关闭:

    • 止盈:一旦价格达到设定的盈利目标,执行器将通过关闭位置来锁定利润。
    • 止损:为了降低风险,执行器将在预设的亏损阈值处关闭位置。
    • 时间限制:在特定时间后关闭位置,防止在不利的市场条件下暴露。
    • 追踪止损:这使得位置能够从价格波动中受益,通过在价格有利时调整止损级别。
  4. 过期:如果在指定的时间框架内未满足任何关闭条件,执行器将过期位置。这种状态确保了位置不会无限期地开放,这可能导致不必要的风险。

这种结构化方法提供了几个好处。它允许清楚地了解何时开仓和关仓,使策略的微调更加容易。明确的状态也促进了回测,因为可以分析每个执行器的结果,了解在不同市场条件下策略的有效性。

V2 策略中执行器的引入不仅仅是技术更新;它代表了向更加严格和数据驱动的算法交易方法的转变。通过为订单的创建到其关闭提供一条清晰的路径,交易者配备了执行更多知情和战略交易所需的工具,为改善在交易动态世界中的表现铺平了道路。

这种细粒度的分析正是 V2 框架所独有的。它使像我这样的交易者能够剖析和理解我们策略表现的每一个方面,将这些洞察转化为可操作的改进。展望未来的竞争,我很兴奋能够充分利用这一强大功能,以期在即将到来的机器人大战中取得更大的成功。

向前看

每一场战斗都深化了我对市场复杂性的理解,增强了我将机器人微调以适应这些动态的能力。Botcamp 社区内的思想交流,特别是在#bot-battle Discord 频道中,已被证明是无价的资源。在这里的经历的同伴情谊和共同学习与交易本身一样宝贵。

在为未来的竞争做准备时,我致力于战略开发的迭代过程。从九月到十月的进步是一种激励力量,强调了在算法交易这个快节奏世界中适应性和持续学习的重要性。请继续关注我的下一个更新,我将深入探讨我在即将到来的机器人大战中 V2 策略表现的复杂性。

对于下一个机器人大战,我计划在现货交易所市场部署 V2 策略,因为 V2 框架的目标是让交易者能够在现货和永续合约交易所上运行相同的策略。我将确保分享我的策略和结果,继续在 Hummingbot 社区中透明和共同成长的传统。

要参与并学习如何掌握 V2 策略,请注册Botcamp