主页 > imtoken钱包安卓版 > 机器人大战:做市商如何套利加密货币交易所?
机器人大战:做市商如何套利加密货币交易所?
在 2017 年 12 月到 2018 年 3 月之间的几个月里,我编写了一个机器人,执行了价值约 5000 万美元的加密货币做市商交易。 接下来我将讲述我是如何进入做市商的故事,机器人算法背后的理论,以及做市商之间日益激烈的竞争。 错失恐惧症
时间倒回到2017年11月,当时比特币的价格正在快速上涨至10000美元大关,这种指数级的价格上涨加速了比特币走向主流的速度,随着更多投资者的进入,价格得以回升。 进一步向上。
这段时间,我和两个朋友外出度假。 两位朋友都在比特币上投入了大量资金,并从不断上涨的价格中获利。 作为三人中唯一一个之前没有考虑过投资的人,我觉得自己错过了什么。
当我休假回来后,我做的第一件事就是找到一个加密货币交易所并在我的账户中存入 500 美元,我的计划很简单:购买价值 500 美元的比特币,如果我看到回报,就增加投资。
传播
在我投入 500 美元之前,我注意到一些奇怪的事情:我交易的交易所有很大的“点差”。
在解释这种现象之前,为了理解什么是点差以及它们为什么重要,我们需要了解一些关于交易所如何运作的基础知识。
当我们想到股票等交易所交易资产时,我们通常认为它具有可以买卖的固定价格。 例如,Apple(苹果)股票的价格是 100 美元。 但实际上并不是单一的价格,而是两种不同的价格:
出价,这是交易所中任何人愿意为资产支付的最高金额。
要价,这是交易所中任何人愿意出售资产的最低价格。
大多数买家愿意支付的价格低于卖家愿意出售的价格,因此出价总是低于要价。
就苹果股票而言,这两个价格可能非常接近。 买入价为 99.99 美元,卖出价为 100.01 美元。 这两个数字之间的差异($0.02)就是我们所说的点差。
对于像苹果这样受欢迎且稳定的股票来说,价差很小。 这是因为总是有很多人愿意购买该股票,从而导致买方价格上涨,同时也有很多人愿意出售,从而压低了售价。 买家之间和卖家之间的竞争实际上使价格更加接近。
然而,当我第一次开始研究比特币交易时,价差要大得多,通常高达 100 美元。 在此期间,比特币的交易价格约为 10,000 美元,这意味着其价差可能高达其总价值的 1%(相比之下,Apple 的交易价差仅为 0.02%)。
比特币的价差规模是 2017 年 12 月市场混乱的结果。 散户投资者,包括你我以及普通大众,涌入市场,结果价格波动如此之大,以至于价差从未稳定下来。
巨大的价差听起来像是一件坏事,在某种程度上确实如此。 但与此同时,高点差也提供了获利机会。
假设比特币的买入价为 9900 美元,卖出价为 10000 美元,点差为 100 美元。 如果你能够以 9,900 美元的价格购买一个比特币并立即以 10,000 美元的价格出售,那么你将获得 100 美元的利润。
制造者和接受者
如果您认为这种情况过于理想而不真实,那么您是对的。 你之所以怀疑,是因为你想到了交易手续费? 要了解费用如何与此相适应,我们必须绕道而行,了解交易所的运作方式。
假设您想购买比特币,它以 9,900 美元的价格买入,以 10,000 美元的价格卖出。 大致有两种方法可以做到这一点:
首先,您可以提交挂单。 在这里,您指定一个价格,最高为卖家价格(0 美元到 10,000 美元之间),以及您愿意购买的数量。 您的订单会一直留在交易所,直到有人出现并决定接受您的订单,这会在几秒后还是几天后发生,取决于您的价格和交易所的交易量。
或者,您可以提交吃单。 这与挂单完全相反,挂单要求您立即购买比特币。 但问题是你的 taker 订单匹配所有卖家挂单中的最低价格。 当然,这也是要价,即交易所中任何人愿意出售资产的最低价格。
在我们继续之前,有一些关于挂单和吃单的重要事项需要注意:
最后一点至关重要,因为它有助于解释大多数交易所的费用结构。 由于交易所希望最大限度地提高流动性,因此他们通常对吃单收取比挂单更高的费用。 一些交易所,包括我正在使用的交易所,只收取吃单费用和 0% 的挂单费用。
回到我们之前的例子。 如果我们能够以 9900 美元的价格买入比特币并通过挂单以 10000 美元的价格卖出,那么我们每交易一个比特币就可以获得 100 美元的净利润。
挂单不仅是免费的,还因为如果我们使用吃单购买,我们必须以卖方价格支付,即 10,000 美元。 那么如果我们继续以吃单卖出,我们必须以 9900 美元的买入价卖出,并损失 100 美元。
因此,使用挂单,我们可以在买价买入,卖价卖出的情况下,很大程度上保证利润。 然而,最后一个问题对能够以编程方式实现这一目标的算法设计提出了最大挑战。
正如我们之前提到的,在交易发生之前,需要挂单和吃单。 接受者倾向于“吃掉”最好的价格。 如果你想用挂单购买比特币,你必须出价略高于出价,以便接受者匹配你的订单。 无论您出价多少btc关机价格查询,您都可以多出一分钱,比如 9,900.01 美元。
因此,编写做市机器人的第一步是能够以高于当前出价的出价下达买单。 这需要一个 API 来查询买家的价格和另一个 API 来提交订单。
理论上,只要出价比买家出价高出一个百分点,就应该没问题。 然而,在实践中,投标价格往往会在询价和提交订单之间发生变化。 为确保您的订单高于所有其他买单,通常建议将买价设置为比当前买价高 5-10 美分。
这样可以确保如果有卖家的吃单进来,它会匹配我们的买单,并且无论我们将来购买多少比特币,我们都不会损失任何费用。
然后,我们可以做与刚才所做的完全相反的事情。 在销售方面。 我们查看当前卖家价格并出价低于该价格几美分。 这确保如果买方的吃单进入,它与我们的卖出挂单相匹配。
我们赚了一笔可观的利润,大致等于比特币交易价差(卖价价差)乘以我们能够交易的比特币数量。
竞争
如果您仍然认为这太容易让人难以置信,那您仍然是对的。 只要有明显的获利机会,交易者就会蜂拥而至,从而引发竞争。 这方面最明显的例子可以在做市商之间为设定出价而进行的竞争中看到。
早在 2017 年 12 月,竞争非常激烈btc关机价格查询,投标价格通常每秒变化多次,通常只有一两美分,因为交易员互相争斗以最大限度地延长他们设定的投标价格时间,但也希望尽可能低。
最初,我的机器人倾向于在查看买入价后高出一分钱买单,虽然这看起来很合理,但我发现当我的订单通过审查时,我的价格往往比(变化)低几美分买方的价格。
为了回避这个问题,并确保尽可能多的订单会超过当前出价,我测量了出价通常每 100 毫秒变化多少。 这使我的机器人能够提供一个远高于出价(0-5 美分)的价格,这样其他交易者就不会在处理我的订单时超过我的价格。
我也开始考虑点差的大小将如何影响我的买入订单超过买入价的部分。 正如我们之前看到的,任何交易的利润都与价差的大小成正比,这使得在价差较大时击败买入价变得更加重要。 正因为如此,我写了一个公式,根据价差的大小来确定我的出价应该比买家的价格高多少。
到目前为止,我一直在谈论做市的买方,但卖方的工作完全相同。 一旦你购买了比特币,你就想以(更高的)要价出售它。 卖价上会有竞争,因为出价上会有竞争,所以你必须通过提供比当前卖家价格低几美分的价格来削弱你的竞争。
然而,2017 年底/2018 年初,卖家价格的竞争总体上要少得多。 我认为买家之间的竞争比卖家之间的竞争更多的原因是因为当时比特币供不应求。
市场操纵
市场操纵是指交易者为了获得不公平的优势而在市场上使用的各种恶意策略。 作为一个不受监管的市场,加密货币交易所已经(并且仍然)适合市场操纵。 最常见的操纵形式是所谓的欺骗 - 仅为了改变市场条件而下订单的行为。
如何操纵它? 例如,在上图中,买入价为 9,900 美元,卖出价为 10,000 美元,点差为 100 美元,这是一个很好的市场机会。 但是,如果有人以 9,999.99 美元的价格下单,价差将缩小至仅 1 美分。 点差如此之小,以至于不可能从做市中获利,所有交易活动都陷入停顿。
买家以低于要价 1 美分的价格下单,这本身并不是市场操纵。 事实上,如果您的交易所不收取下比特币订单的费用,这是一种快速有效的购买比特币的方式。 但问题是,每当这些买单进来时,它们都是最小数量的 0.00001 比特币,价值约 10 美分。
做市商之所以下这么小的买单,恰好低于要价,是因为如果做市商能够以买入价买入比特币,他们就会有动力尽快卖出尽可能出售比特币。 他们出售比特币所需的时间越长,销售价格变化和利润变化的风险就越大。
当然,您可能会争辩说,在此期间价格上涨的可能性与下跌的可能性一样大。 做市商不关心这些,他们的工作不是投机价格,而是尽快进出。
为了阻止价格下跌,并防止卖家竞相压低要价,做市商将他们的要价设置在要价下方,并在新要价下方插入(“假”)买单。 后一个订单的订单大小将尽可能小(0.00001 比特币)。
这有两个作用:
第二点至关重要,因为它解释了为什么当欺诈性买单的价格刚好低于要价/要价时,几乎所有的市场机器人都会关闭。 事实上,即使点差看起来只有 1 美分,但仍有机会。
让我们假设下一个卖家想要接受 1 个比特币的订单。 第一个 0.00001 比特币将以伪造的订单卖给做市商,订单从交易所撤回后,下一个 0.99999 比特币将以新的买价卖给订单,该价格是低于该订单的最高价伪造订单价格。
我对我的机器人所做的最大改进之一是让它在计算点差时忽略欺骗性订单。 即使卖价可能只比买价高 1 美分,如果没有恶搞订单,我的机器人会查看恶搞订单以找出差异(仍然可能是 50-100 美元)。 如果价差大到足以提供机会,它就会在欺诈订单之后竞争下一个最高价的买单。 这意味着当卖家的吃单进来时,价值几美分的比特币将被卖给骗子,剩下的卖给我。
2018
2018 年的前几个月动荡不安。 比特币在 12 月升至 20,000 美元后,价格开始下跌。
但这为做市商提供了巨大的机会。 双方的大量交易(意味着更多的接受者)大大增加了高效做市商每天可以执行的交易量。
然而,这段机会相对来说是短暂的。 在 1 月和 2 月的狂热之后,成交量开始枯竭,这意味着获利机会减少。 尽管交易量下降,但随着新的机器人进入交易所,做市商的数量继续增加。
交易所的做市商越多,买卖价格的竞争就越激烈,价差就越小。 更多的竞争对手也意味着订单通常会在较短的时间内以出价出价,因为一旦您提交订单,就会有更多的竞争对手准备好出价超过您。
由于竞争加剧和盈利机会减少,我在 3 月份关闭了所有机器人,此后就没有重新启动过。 许多交易所都提高了做市商费用,这让我无法重新回到做市商的行列,但仍有机会供那些足够聪明的人把握时机。
总而言之,我在 2017 年 12 月至 2018 年 3 月期间交易了价值约 5000 万美元的比特币,获得了 20.2 的投资回报率。