有了它,人人都能做去中心化交易所
一个交易所最核心的是这两个部分:订单撮合与资产结算。
在区块链领域,根据这两个环节在链上(on-chain)还是链下(off-chain)执行,可以将加密货币交易所做以下分类:
1)链下撮合、链下结算:中心化交易所,如币安/火币/OKEX;
2)链下撮合、链上结算:目前主流的去中心化交易的方式;
3)同时,也存在完全链上的交易所,如Oasis。
其中,链下撮合、链上结算的去中心化交易所,主要分为2种模式:
【Open模式】如 RadarRelay / ERCDex
这种模式的交易所没有撮合引擎,将订单广播,用户自行吃单。所以面临着2个问题:
订单冲突(order collision):多人可能吃到同一个订单,但只有一个人能成交,剩下的人都吃单失败。订单失败或成功只能等区块链的确认结果,耽误交易时机。
而且,越是市场变化剧烈、交易旺盛时,冲突越严重。
抢先交易(front running): 即在上述情况下,谁的gas费出的高,谁就更有可能交易成功,普通交易者相对于机器人脚本劣势巨大。
【混合模式】如 DDEX / Paradex / IDEX
即hybrid模式,也称matching模式。这种模式的交易所在Open模式的基础上进行优化,使用链下的撮合引擎,提高订单撮合效率。
在日益增长的去中心化金融市场中,几乎每个DeFi产品都有创建交易市场的需求,比如借贷、预测市场和指数产品等。
DeFi的交易市场本质上是加密资产在智能合约中的交互,天然适合去中心化交易所(DEX)。但是,目前搭建DEX难度仍然很高,从合约到撮合引擎再到前端交互,还没有一个开源框架能够完全满足全部技术栈。
于是,Hydro协议开源了去中心化交易所的核心组件:前端、撮合引擎与智能合约。将开发DDEX的经验分享给爱好者与开发者,提供开发去中心化交易所的全栈解决方案,以及赋能DeFi项目构建自己的交易场所。
对于这套开源的Hydro SDK,创始人李天放介绍了Hydro合约上线以来的数据表现、Hydro SDK的开发背景以及使用方式。
以下是李天放英文文章的翻译,enjoy:
《引介 Hydro SDK》
2018年12月,去中心化交易所 DDEX 不再依靠0x的智能合约来结算订单,我们开发了一个新的去中心化交易协议——Hydro。
技术上,我们很自信。这个决定使我们:
1)聚焦于真正的混合模式交易所
2)提供智能合约级别的市价单功能
3)移除了无关紧要的功能
但是运营上,分叉其实是一件有风险的事。
因为智能合约包括一个DApp的全部链上状态,所以当DDEX从0x上迁移走,DDEX每个用户的钱包授权状态是无法随之迁移到Hydro上的。这意味着用户在新DDEX上需要重新授权钱包,我们需要从头开始运营流量。
幸运的是,Hydro迁移后的数据表现,还是不错的:
0x的全部relayers 与 Hydro的DDEX 每季度总交易次数
(Hydro自2018年12月17日部署到DDEX)
数据来源:0xTracker.com与Hydroscan.io
Hydro智能合约至今成功执行了60,000+笔交易。我们在2019年3月继续发布了Hydro 1.1 版本,进一步提升智能合约的性能。
现在,我们决定与每个人分享Hydro开发者工具。
我们不是为了在GitHub拥有一个SDK,才去创造这个SDK,而是希望与开发者一起推进解决去中心化交易的共同难题。
去中心化交易所极简开发史
——难题在哪儿,如何解决?
【前以太坊时代】
2013年,如果你想要搭建一个去中心化交易所,首先你需要自己写一条公链,代表案例是Bitshare。开发成本不言而喻。
【EtherDelta时代】
2017年,以EtherDelta为代表的第一代以太坊去中心化交易所,受到人们的关注。这一波交易所利用以太坊这样的计算平台,创建基于智能合约的去中心化交易所。
虽然省去了从头写链的开发成本,但门槛仍然很高:智能合约的开发、审计、部署,每一步都不轻松。
这一代交易所的问题是,用户交易的每一笔操作都需要上链,这不仅意味着交易速度慢、成本高,而且还有订单冲突和抢先交易的问题。
【0x时代】
此时,0x这样的开源项目进入市场。0x提供了一个用于交易结算的开源合约,开发者建立交易所时可以直接调用0x合约。
2018年上半年,基于0x协议的去中心化交易所纷纷建立起来。这些交易所大部分都是open模式,即不负责链下的订单撮合。
但是这种open模式的交易所性能还是很差,因为这个关键问题仍然没有解决:
抢先交易和订单冲突。
在做DDEX的时候,我们开发了自己的解决方案:插入一个中间层(middle-ware layer),建立一个撮合引擎,来做到真正的链下撮合、链上结算,大幅提高了性能。
但是这种方法的开发成本,高了很多。
【Hydro时代】
2018年,很多人还没有理解open模式和混合模式之间的微妙差别。大部分开发者选择了当时更容易开发的open模式。
然而,实践证明open模式确实不能使交易所活下去:
2017-2019年 0x relayer数量
灰色为open模式交易所
蓝色为混合模式交易所
来源:
https://github.com/0xProject/0x-relayer-registry/blob/master/relayers.json
在0x生态之外,同样的故事在重复上演。2018年交易量最大的去中心化交易所IDEX,也采用的是混合模式。
到了2019年,如果你想建立一个成功的去中心化交易所,混合模式是你最正确的选择。
直到昨天,你都要重头写这个混合模式的交易合约。
Hydro SDK
现代去中心化交易所与 DeFi 交易市场的全栈解决方案
Hydro SDK 包含了混合模式的去中心化交易所的所有核心模块。是搭建一个去中心化交易所最快的方法。
Hydro SDK 提供中间层解决方案,进一步减少开发成本
Hydro SDK 提供了一个最基础版本的web前端,但是它的目的不是创造一堆低配版DDEX。
通过开源必要的标准组件,我们希望解放下一代开发者的生产力,使开发者聚焦于去中心化交易的共同问题:比如可用性、流动性和与DeFi 项目的深度整合。
现在就试试
Hydro SDK 今天已经在GitHub开源。为了便于上手,发布的第一个版本尽可能简洁。此后,我们还会发布一系列高级模块和功能。
Hydro Relayer SDK 前端截图
Hydro SDK 开源链接:
https://github.com/HydroProtocol/hydro-sdk
上手只需5分钟:
Clone git repo 到本地
一行命令启动 docker
点击左下角「阅读原文」前往 GitHub 使用Hydro SDK
【近期动态】
Hydro合约 1.1 版本 | TRON DDEX去中心化交易所 | Hydro 升级 | DDEX 1.0 | Hydro 分叉0x
【往期文章回顾】
世界货币失败史 | 美股交易| DeFi 投资密码 | 一个人的量化基金 | 用 Dai 做空美股 | Facebook 发币 | J.P.摩根发币 | WBTC的V神小意见 | 去中心化交易所 2019 | 以太坊 2018