0x is an open source suite of Ethereum smart contracts designed to facilitate the exchange of ERC-20 and ERC-721 tokens via off-chain order matching and on-chain settlement.
While centralized exchanges currently offer more seamless user experiences, they generally suffer from a single point of failure, as they can be mismanaged internally or targeted by hackers. On the opposite end of the spectrum, completely decentralized exchanges (DEXs) are trustless, non-custodial systems facilitating the exchange of tokens, but are typically slower, illiquid, and offer comparably poorer customer experiences. Notably, DEXs’ drawbacks largely reflect their current early stage of development and may improve as the space matures.
0x project began
0x whitepaper released
Contracts deployed on Ethereum’s Kovan testnet
0x OTC product launched on Kovan
Open sourced and security audits complete
0x deployed on Ethereum mainnet on August 15th, 2017
Raised $24 Million via ZRX token
0x Version 2 launched
ZRX token added to Coinbase
DDEX forks the 0x protocol and removes the ZRX functionality
In its simplest form, the 0x protocol is a hybrid implementation that utilizes onchain settlement with off-chain order management… This approach allows traders to remain in control of the wallets containing their funds throughout the exchange process, while eliminating the friction of managing order books on the blockchain.
Conversely, 0x’s hybrid approach, where relayers are somewhat centralized actors, introduces a different set of potential challenges: relayers could theoretically front run or mismanage the order books they have been entrusted to organize off-chain. At the same time, 0x’s approach has its advantages: relayers, by using the 0x Standard Relayer API to share the contents of their order books with other relayers, can opt into liquidity pooling. If successfully adopted by a sufficient relayers, this pooled liquidity could be a valuable shared resource boosting the value of all relayers building upon the protocol.
The 0x team are of the conviction that, ceteris paribus, open codebases have an inherent competitive advantage over proprietary codebases in the long run. 0x has created an API that enables a shared liquidity pool where relayers can effectively share their order books with one another, in the interest of increasing liquidity across the network and, hopefully, enabling a more usable DEX experience. 0x raised $24 million in an August 2017 token sale. 0x’s native token, ZRX, is the first ERC-20 token to be hosted on the Coinbase exchange.
The 0x Network
The 0x exchange process works by allowing market makers to signal their intent to trade a specific Ethereum asset at a certain price for a fixed period of time off-chain, where market takers may see and accept the trade by adding their cryptographic signature. The transaction is only settled on-chain and value is transferred between wallets as a final step facilitated by 0x smart contracts. 0x enables anyone to join the network as a relayer by maintaining an off-chain order book where makers and takers can discover one another. Transactions can be executed either point-to-point or broadcast through relayer-maintained order books.
How 0x Protocol Functions: Overview
▸ Broadcast Orders
Relayers can broadcast orders from makers so that anyone may intercept the order as a taker by cryptographically signing and submitting it. The original order includes a field where arbitrary fees, generally paid in ZRX, can be collected and paid out to a relayer-owned address. Importantly, relayers may decide to keep the fee field blank, thereby not collecting fees at all. They may also choose whether the maker, the taker, or some combination of the two must pay a fee. The maker leaves the taker address blank, so anyone who comes across it may accept the trade. This is most commonly used by individuals using a relayer to make their order more discoverable, since relayers broadcast these orders to the marketplace they have created.
The broadcast order process used commonly by relayers can be summarized as follows:
- The relayer cites a fee schedule and specifies an address used to collect transaction fees.
- The maker creates an order that meets the minimum fee criteria specified by the relayer.
- The maker transmits a cryptographically signed order to the relayer.
- The relayer receives the order and verifies that it is valid, that sufficient assets exist in the corresponding address, and that the required amounts, including fees, are sufficient. The relayer then accepts or rejects the order. If the order is accepted, the relayer posts it to their order book.
- The relayer posts to their marketplace an updated version of the order book that includes the new order.
- The taker intercepts the order and completes it by cryptographically signing it, and submits it either to the relayer as an intermediary, or directly to the 0x exchange smart contract on the Ethereum Virtual Machine.
- The 0x exchange smart contract along with relevant 0x proxy smart contracts move funds between wallets and settle the trade on-chain.
Though less common, a point-to-point order system can be used by individuals who are more technically savvy, as they do not require a relayer at all.
How 0x Protocol Functions: Broadcast Orders
▸ Point-to-Point Orders
Using point-to-point orders, two parties can directly exchange tokens through their preferred medium of communication without needing an order book. This bilateral approach allows the maker to specify a single taker address that renders the order useless to outside parties— a more detailed explanation of this process can be found here. While this method is secure and elegantly simple, it does not promote liquidity or network effects around a single DEX protocol. Point-to-point orders are most commonly used by individuals engaging directly with one another who would like a smart contract to mediate the exchange of funds.
How 0x Protocol Functions: Point-to-Point Orders
▸ Relayer Strategies
A relayer brings value to the 0x network by fostering discoverability and liquidity between traders, though how they implement their user experience, revenue model, matching and management workflows are quite flexible and largely up to them. After all, the suite of smart contract tools essentially creates a market for Relayers to compete for users, based on an underlying resource of maker orders. The 0x team encourages creative relayer strategies and outlines eighteen ideas in a blog post. From an order book management perspective, there are four primary strategies relayers may choose from:
- Open Orderbook: a relayer broadcasts orders, as previously described.
- Quote Provider: a relayer acts as a maker by broadcasting its own orders.
- Reserve Manager: a relayer acts as a maker by broadcasting its own orders, specifically by creating large orders with short expiration times.
- Matching: a relayer requires that all orders specify the wallet address owned by the relayer as the taker in any transaction. With this model, a relayer plays a more centralized role: by becoming the taker, they are able to aggregate all available orders before matching complimentary orders in their own database, before batch settling several orders at once using 0x smart contracts. In this capacity, a relayer functions similar to Shapeshift or any money changer: they directly buy and sell cryptocurrencies from users.
How 0x Protocol Functions: Relayer “Matching” Strategies
The Cryptoeconomics of 0x
The ZRX token has two intended functions:
- Fee payment to relayers who opt to use it
- Governance rights for ZRX holders that will eventually aim to facilitate the secure integration of protocol updates.
The network’s native ZRX token was originally envisioned as the primary method by which relayers would collect fees on each trade, according to an arbitrary fee schedule they themselves would create. Though most relayers do appear to be charging fees in ZRX as of Q4 2018, the ZRX token is not strictly necessary for interacting with the 0x protocol. It can be abstracted away from users to facilitate a more seamless user experience, or it can simply be left blank if relayers decide to eliminate ZRX token fees entirely.
The network’s native ZRX token was originally envisioned as the primary method by which relayers would collect fees on each trade, according to an arbitrary fee schedule they themselves would create. Though most relayers do appear to be charging fees in ZRX as of Q4 2018, the ZRX token is not strictly necessary for interacting with the 0x protocol.
In theory, end users would be willing to pay fees to relayers because relayer services help them avoid both grappling with the protocol directly and sourcing counterparties to fill their orders. To what degree future protocol usage will utilize ZRX as a payment method is unclear, as relayers can implement payments by alternative methods, such as charging a spread-based fee. In addition, Ether makes a more reliable base currency for paying fees, since users with ethereum meta-tokens are more likely to hold Ether than any particular token. Coinbase has acquired one of the more prolific 0x relayers, Paradex, as a means of positioning itself within the non-custodial DEX space. In a decision that proved controversial in the 0x community, Paradex opted not to monetize their role as relayer by charging fees in ZRX. Requiring Relayers to charge fees in ZRX is also difficult to enforce with a set of open-source contracts, since just a few changes to the code could preserve all functionality while taking ZRX out of the operation entirely.
A notable point of friction in the 0x exchange workflow, which perhaps serves as a reminder of just how inchoate these experimental framework are, is that of “Weth”. Because Ethereum’s native Ether token was created before the ERC-20 token standard was established, Ether itself does not adhere to the ERC-20 standard. All tokens being exchanged by 0x smart contract must adhere to this standard, so Ether must first be converted into “Weth”, which is short for “wrapped Ether”. Relayers using 0x v1 required users to first convert their Ether into “Weth” before trading, although since the launch of 0x v2, it is now possible for relayers to abstract Weth from their user facing workflows. How many relayers have implemented such an abstraction thus far is unclear.
The 0x team raised $24 million in an August 2017 token sale. Half of the total 1 billion ZRX token supply were made available during the sale and purchased by some 13,000 participants. 15% of tokens were retained by the 0x organization, 15% went to an external fund to incentivize development on the protocol, 10% to the founding team, and 10% to advisors and early investors. As a result, half of the tokens are held by the company, founders and extended team, whose token compensation is subject to vesting schedules.
The extent and form of 0x usage and contribution towards governance will hopefully become clearer as the roadmap progresses. It is entirely possible that 0x-inspired smart contracts and code will come to permeate the decentralised exchange landscape with little association to the ZRX token or team. As it stands, the ZRX token is entirely optional for using the protocol and the governance rights are undefined. Nonetheless, it is possible that the market places much faith in 0x’s close affiliation with Coinbase as a potential commitment to defining a clear use case for ZRX. The ZRX/USD pair jumped 17% in the hour after Coinbase announced the addition and the token’s price so far has not seemed to reflect the ZRX’s yet undefined utility. After all, there are a lot of stakeholders with a vested interest in the long-term success of a token with a network value measured in the hundreds of millions of USD. It is also possible the market is only thinking that Coinbase’s announcement will bring in more buyers. Time will tell whether 0x emerges with a clearer use case to justify token pricing—and when the market will react accordingly.
The founding team are of the conviction that open standards tend to win over closed proprietary technologies in the long run. This possibility appears plausible: TCP/IP and similar all-pervasive protocols had to be standardised in order to achieve mass adoption, since every client on the internet constructing and operating by its own rule system for exchanging messages with others is a recipe for inefficiency.
Decentralized governance is a key part of the 0x value proposition, though it hasn’t yet been developed and described. Once it has been, they hope to inspire trust and usage across a wide variety of actors, including relayers, market makers, takers, and dApps.
The 0x protocol is made up of a set of Ethereum smart contracts that are by design immutable, meaning their logic cannot be changed once deployed to the blockchain. 0x intends to implement decentralized governance by way of ZRX holder vote, so that network participants can weigh in on upgrades to their core smart contract code over time. Decentralized governance is a key part of the 0x value proposition, though it has yet been developed and described. Once it has been, they hope to inspire trust and usage across a wide variety of actors, including relayers, market makers, takers, and dApps. Simultaneously, the 0x protocol is designed to be sufficiently flexible to handle inevitable updates as the network grows and evolves. Overview of 0x’s Governance Processes
|Proposal||Discussion||Decision||Checks & Balances|
|Software Upgrades||Modular updates to Smart Contract code can be performed to minimise disruption to markets when aspects of the code base require updating||To be determined by the team||V2.0 Smart Contract suite including compatibility with ERC-721 tokens and abstraction of WETH for improved UX||The 0x core-team have authority to determine the checks and balances of the system|
|Funding Allocation||They team raised $24 million in August 2017, which would have ballooned to much more in the bull run at the end of the year. Of the generated ZRX, 15% will be retained by the 0x core development team to fund the first 5 years of work and another 15% will constitute a ‘Developer Fund’ to incentivise projects working on 0x. There is not an ongoing funding model beyond this.|
|Personnel||The team is currently hiring extensively to research governance models and are closely watching projects such as Aragon.|
Funding Allocation They team raised $24 million in August 2017, which would have ballooned to much more in the bull run at the end of the year. Of the generated ZRX, 15% will be retained by the 0x core development team to fund the first 5 years of work and another 15% will constitute a ‘Developer Fund’ to incentivise projects working on 0x. There is not an ongoing funding model beyond this. Personnel The team is currently hiring extensively to research governance models and are closely watching projects such as Aragon.
Like all decentralized projects, the team must ensure that the network’s security is maintained despite changes to the smart contracts upon which the network is built. This will involve ensuring that update implementation is as frictionless as possible for all the participants building and trading with the protocol. In summary, 0x governance needs are:
- Be flexible enough to upgrade core smart contracts over time, thus remaining relevant.
- Ensure the network is secure throughout the upgrade process.
- Make governance a decentralized process, preserving the network value proposition.
- Ensure that upgrade execution is as frictionless as possible for participants.
0x vs. Key Crypto Projects
RELATIVE TO DUTCHX
0x and DutchX both utilise on-chain order settlement for the decentralised exchange of Ethereum tokens without acting as a rent-seeking intermediary or custodian. They diverge in that DutchX also performs order matching on-chain and claims to be more decentralized by virtue of not relying on off-chain relayers to maintain order books in a trustworthy fashion.
RELATIVE TO IDEX
0x has multiple potential points requiring trust in relayers whereas IDEX represent a singular orderbook maintaining entity; utilizing state channels to facilitate near instant transactions, following the deposit of tokens to a smart contract, and batch pushing transactions to the Ethereum mainnet to reduce gas fees and enable participants to close out their states.
RELATIVE TO STELLARX
The StellarX facilitates peer-to-peer transactions without taking custody of user assets without maintaining order books do not impose restrictions on the types of exchangeable assets, and offer fiat on-boarding and conversion. Much like 0x relayers, StellarX enables discovery between parties exchanging assets. Unlike 0x, StellarX traders must arrange settlement themselves, according to smart contracts, wire, physical transfer, or another method of their choosing.
0x takes a focus on dApp and relayer innovation, relative to many other teams implementing decentralized exchange functionality. Other protocol-level initiatives relating to cryptoasset exchangeability and network interoperability anticipate a diverse landscape of blockchains running their own consensus mechanisms.
For instance, Cosmos seeks to address interoperability, scalability and upgradability concerns around current disparate blockchain implementations by means of a ‘Hub’ blockchain that connects to and tracks global token balances across various ‘zone’ blockchains. Cosmos is designed to facilitate the distributed exchange of tokens across different blockchains that can have different consensus mechanisms. While this, in some respects, is a more complex task than exchanging meta-tokens (ERC-20, for example) on one-chain, in the event of a multi-chain future, it could address a more pressing problem space.
Similarly, Polkadot utilise inter-blockchain bridges to allow different protocols to communicate with one another. Polkadot plans to generate their genesis block in Q3 2019 and will effectively comprise a parallelized system of many chains — where 0x focuses on Ethereum. Cosmos, in addition to their own blockchain and consensus mechanism, have announced intention to introduce a second token as a means of payment on their network. This serves to illustrate the diverse routes aimed at achieving smooth user experiences across a presently disparate technology landscape.
Prospects and Challenges
Any consideration of the long-term success of 0x to serve as the infrastructure for decentralized exchange must take into account the following:
1: When the “taker” address of a given order is set in advance to a specific smart contract, trade execution can only be completed via the logIn 0x, v2 orders may be filled by smart contracts, opening up the potential for complex and creative integrations of 0x by dApps, and potentially mitigating some of the existing protocol risk factors.
When the “taker” address of a given order is set in advance to a specific smart contract, trade execution can only be completed via the logic built into that particular smart contract. This may open up an exciting set of opportunities for developers wishing to build more advanced functionality on top of 0x. The list of possibilities may include the following, though 0x is not developing these functions internally. Rather, they have built the protocol to enable developers to potentially create these:
- Commit-reveal scheme to potentially solve front running.
- The “matching mode” relayer strategy is made more feasible and profitable than it was in v1.
- Addresses included in transactions may be checked against whitelists to ensure KYC compliance or membership of an arbitrary list.
- Trade execution coordinators can be added to the flow as a third party responsible for the ordering of transactions, as a potential solution for front running.
- Multisignature transactions are now possible.
- Lower capital costs for order matching and arbitrage trading.
- Forwarding contract provides interface for traders to obtain ZRX with ETH without needing to obtain WETH to execute transactions.
2: Currently all exchanges, whether decentralized or centralized, have advantages and drawbacks in one or more areas across security, speed, cost of transacting or liquidity. While novel, it is unclear whether 0x’s hybrid approach meaningfully solves these issues or simply redistributes them across a different exchange architecture.
It is important to understand that neither centralized exchanges nor decentralized exchanges represent a perfect solution to security, speed, cost of transacting and liquidity. Because each offer different strengths and weaknesses across these areas, they will likely evolve together and coexist until better solutions are developed. Centralized exchanges are fast, generally more liquid, may allow a fiat onramp to cryptocurrency trading, but are flawed because they represent a single point of failure that can be hacked, shut down, or mismanaged internally by stealing user funds or freezing accounts. Many decentralized exchanges attempt to solve for this single point of failure, but these DEXs’ success is dependent upon users successfully managing their own private keys and opting into what is currently a slower and less liquid on-chain order system.
0x represents a hybrid solution between the centralized (fast, liquid, but higher security risk) exchange model and the decentralized (more secure if managed properly, but slow, less liquid, and full of friction) exchange model. 0x’s approach is to have order books managed by third parties called “relayers” off-chain, while orders are settled on-chain via smart contracts. From an efficiency perspective, this is a clever and effective way to redesign an exchange. Yet, it comes with its own set of challenges: in 0x, “relayers”— any party that runs an off-chain order book— must be trusted, since they have sufficient control to mismanage trades or front run.
3: 0x’s success depends significantly upon relayers’ and dApps’ willingness to do a great deal of potentially undercompensated work.
In 0x, “relayers” are any party that manages an off-chain order book. While relayers may draw upon 0x’s open source Ethereum smart contracts to create orders and settle trades on the blockchain, virtually everything else they must do themselves. The work required of them is akin to running a startup, and includes building an off-chain order book, developing a strategy to foster liquidity, onboarding users into a marketplace, establishing a system to manage relayer exposure, and building and maintaining user interfaces and back-end infrastructure. There are currently 21 relayers in the 0x network, two of which appear to be dominating trade activity as of late October 2018, which suggests that achieving meaningful distribution of activity across multiple relayers is non-trivial.
4: Regardless of which strategy 0x relayers choose to implement, they represent a centralized party that must be trusted.
0x provides relayers with a few different ways to monetize their position as a manager of off-chain order books. They may openly broadcast orders, i.e. publish unsigned limit orders from makers to the relayer’s network, allowing anyone to become a taker and complete the order. Alternatively, they may opt for “matching mode”, which automatically makes the relayer the taker of any order. By becoming the default taker for all orders, the relayer may make matches between orders off-chain behind the scenes, before batch settling them on-chain. The benefits of the latter strategy are that it facilitates faster and more seamless user experience, though it relies more heavily on the relayer in its capacity as a trusted intermediary. In either strategy, the relayer is not a custodian of funds, and therefore the structure is more of a decentralized option than using a centralized exchange.
Despite the lack of custodial risk, relayers are still able to negatively impact individual traders by front running or censoring orders. This is not a flaw of 0x’s design in particular, but rather illustrates that any exchange operates somewhere along a spectrum of control by centralized parties, each offering its own set of pros and cons. Traders must understand the tradeoffs implied along this spectrum to accurately determine which type of exchange is appropriate for their security, liquidity, cost, and speed needs.
5: Whether relayers or the 0x corporate entity will be considered an “Exchanger” and/or “Administrator” under FinCEN’s 2013 guidance is unclear. Being deemed a ‘persons administering, exchanging, or using virtual currencies’ would qualify them as a Money Services Business (MSB) under the Bank Secrecy Act of 1970 and Patriot Act of 2001 and require compliance with MSB regulation.
The regulatory environment is clear that centralized exchanges qualify as “exchangers”, therefore also as MSBs, so are subject to the complex registration, reporting and recordkeeping regulations that FinCEN requires of those financial organizations. How US law will ultimately treat 0x style DEXs, with their hybrid off-chain order books and on-chain settlements is still unclear, though the SEC’s enforcement action against the Etherdelta decentralized exchange on Nov. 8th 2018 suggests that review and enforcement is actively underway.
A paper published by FinCEN on March 18, 2013, outlines the parts of law most likely to affect DEXs and offers guidance for anyone interacting with virtual currencies on how the Bank Secrecy and Patriot Acts apply to them. In that document, FinCEN outlines three distinct types of actors: users, exchangers and administrators. While users may obtain virtual currency to purchase goods or services, the guidelines clearly state that users are not an MSB under FinCEN’s regulations. Conversely, exchangers and administrators are deemed money transmitters by FinCEN, so are an MSB subject to FinCEN’s regulations.
The crucial question is whether the law will interpret relayers in the 0x model as being either an administrator or an exchanger. If the relayer issues a virtual currency and also has the authority to withdraw it from circulation, they appear at risk of being classified as an administrator.
Since most relayers have not issued their own tokens and met this criteria, what is perhaps more likely to apply is the categorization of exchanger to any given 0x relayer. An exchanger is defined by FinCEN as a person engaged as a business in the exchange of virtual currency for real currency, funds or other virtual currency. While relayers do use smart contracts to settle trades, the order book management they do off-chain may qualify them for inclusion in this definition. Relayers operating in “matching mode”, whereby they implement themselves as the taker in any given transaction before matching orders and batch settling them on-chain, arguably carry an even higher risk of being seen as an exchanger under FinCEN guidance, due to the fact that they more directly intercept and control orders.
For a more detailed discussion of relevant legal issues, please review FinCen’s original guidance.
6: There is an opportunity to front run at two different levels: the order book level and the Ethereum block production level.
At the order book level, front running may occur when relayers intentionally or unintentionally mismanage their off-chain order book. At the Ethereum block production level, there is opportunity for miners to front run orders, or for other traders to front run orders sitting in the Ethereum mempool by offering a higher gas price to miners to make their transaction more attractive to miners producing blocks, thereby increasing the likelihood of their order being executed first. A relayer, miner or trader may take an action or series of actions to front run, which may include: censoring an order (i.e. intentionally holding the transaction but not processing it), creating a duplicate order and processing it first, paying a higher gas price to bypass an order, or reordering the order of transactions in a block. Whether scaling solutions, like sharding or Casper, will impact any party’s ability to front run 0x at the block production level is currently unclear.
7: A maker can withdraw tokens from the wallet connected to the order at any time, which could leave counterparties vulnerable to failed orders or fees.
In 0x, a maker must first interact with the 0x DEX smart contract and connect funds from an Ethereum address that they control before creating an order. From there, they may broadcast that order through a relayer, or define the taker in advance and execute the order through a point to point trade with another specific party. During this process, the maker can revoke their funds from the Ethereum address they originally connected to the 0x smart contract, which would, at best, result in a failed transaction or, at worst, result in the taker experiencing failed execution and being saddled with fees, depending on how the relayer has set up fees for both parties.
8: Orders can be traded or cancelled by accident in the 0x network, and the probability of accident increases as the network’s usage grows.
There is a time delay from when a relayer or taker submits a signed order to the Ethereum blockchain to the time at which a miner includes it within a mined block. Given this delay, there is a risk that the same trade will be attempted within a single Ethereum block time, which will result in the transaction included first in the block succeeding and the second transaction failing, though both will consume gas. Similarly, an order cancellation submitted to the blockchain might be overridden by a taker signing the same order and paying higher gas fees to increase the likelihood of its inclusion in a block before the cancellation.
9: While the concept of networked liquidity is compelling and advantageous for the growth of DEXs overall, whether relayers are sufficiently incentivized to pool liquidity is unclear, as is how pooling will play out over time.
In the original 0x vision, relayers could pool order books to increase the network’s overall liquidity. This can currently be achieved by a relayer opting in to share their order books through the Standard relayer API. Unless relayers pool their order books to increase the system’s overall liquidity, 0x network effects are unlikely. What may instead result are a large number of disparate relayers competing on liquidity, reputation, user experience and commissions. While perhaps not a terrible outcome, this scenario would somewhat defeat the purpose of the original 0x vision, which was to provide an overarching protocol for the more decentralized trading of ERC-20 tokens.
Accessing pooled liquidity makes sense for young relayers attempting to add liquidity depth to their books as they bootstrap their business. However, pooling liquidity makes less sense for more mature relayers, who have already built their own businesses and achieved a certain depth on their own. An initial milestone occurred on December 14th, 2018 when DDEX decided to transition to a fork of the 0x protocol called Hydro. The new codebase removes ZRX as a fee token for the sake of smoother user experience and limiting unnecessary obstacles to participation in exchanges. In addition to a different order matching schema, DDEX also hope to encourage adoption via the Hydro Protocol Token (HOT) and staked incentives to provide liquidity to the network.
As pooling liquidity is not currently a requirement for joining the 0x network—and the team writes that it never will be— it remains to be seen whether relayers will use this feature throughout their growth cycle or merely as a means to jumpstart growth before retracting participation. If relayers, or dApps interfacing with them, enable shared pools of liquidity, this will not resolve some of the hard problems facing DEXs in virtue of Ethereum’s race conditions and public auditability.
As an example, Paradex is approaching their 0x implementation as a centralized order matchmaker and not participating in the shared liquidity pool, which marks an approach other relayers may elect to take if they feel the tradeoffs are worth it. Paradex’s strategy is that of “matching mode” in 0x, where they act as a taker for all orders first and then match orders behind the scenes before settling them on-chain. Because they are the taker on all orders, they cannot participate in 0x’s shared liquidity pool. This is a point of centralization that comes with certain advantages and efficiencies from user experience and relayer workflow perspectives, at the cost of requiring users to trust the relayer. “Matching mode” does eliminate the possibility that two users will compete as taker to fill the same order in the same block, leading to a situation where one order will be invalidated and the user will lose the associated gas cost.
Paradex has made a tradeoff to offer a better user experience by inserting themselves as a middle man at the cost of a more decentralized process that would also give users access to the liquidity pool. Assuming Paradex will not be holding many ZRX tokens— they are not necessary for their revenue model— they are potentially opting out of future governance decisions that will be based on quantity of ZRX holdings. As their reasoning for not collecting fees in ZRX, Paradex cited user onboarding friction combined with volatile Ethereum gas prices.
Many people in the community perceived Paradex’s decision to eschew use of the ZRX token for fee collection as an exclusionist move that uses 0x’s underlying smart contracts while not contributing to the value of the network token. In reality, 0x is a set of tools that relayers in the wild are creatively implementing to suit their needs, and Paradex is doing just that. 0x founder Will Warren himself admits that v1 of 0x was not optimized for the “matching mode” strategy employed by Paradex and it was more beneficial for relayers employing this strategy to take fees on the spread rather than in ZRX tokens. With the launch of 0x v2 in May 2018, the order matching model is now more feasible from a revenue standpoint.
10: The process by which core protocol updates (changes to the core Ethereum smart contracts) will actually be executed remains to be seen.
0x intends to eventually create a governance mechanism that will allow the Ethereum smart contracts that it is built with to be updated over time. This inevitably introduces a non-zero security risk during that process of updating, which is yet undefined. How decentralized 0x actually is will only be answered in light of their eventual governance and voting processes’ effectiveness. Similarly, as 0x navigates the middle ground between flexible updates and maintaining security, whether the rewards of an updatable protocol outweigh the risks of actual protocol updates will become clear.
Thus far, 0x has said this about governance:
“Decentralized governance is an ongoing focus of research; it will involve token voting with ZRX. Ultimately the solution will maximize security while also maximizing the protocol’s ability to absorb new innovations. Until the governance structure is formalized and encoded within 0x DAO, a multi-sig will be used as a placeholder.”
That said, all decentralized projects are currently wrestling with how to implement effective on-chain governance, and 0x founder Will Warren demonstrates an ability to think about the design in a well rounded way. Not committing to a governance mechanism too early is, arguably, a strong strategic move, given how nascent this space is. The team is actively watching projects like Aragon, and is hiring an internal research team dedicated to tackling this challenge internally, demonstrating what appears to be a thoughtful approach. The team has written that their intention is to incrementally work towards an on-chain voting mechanism by first launching a system that allows the 0x core team to publically submit proposals that ZRX holders may veto.
11: Coinbases’ recent inclusion of ZRX on their platform invited critique from the broader community due to how deeply interwoven members of Coinbase and the 0x team are.
Though Coinbase is known to be a compliant and conservative exchange from a regulatory perspective, their listing of the ZRX token on October 11 2018 ruffled feathers in the crypto community due to perceived conflicts of interest. The 0x and Coinbase teams share significant ties, with three 0x advisors also being affiliated with Coinbase.
ZRX may outperform the broader market for cryptoasset investments in the following scenarios:
1: The ZRX token is built into the protocol in such a way that relayers may use it to charge fees to traders for their service of maintaining offchain order books.
If relayers elect to charge fees in ZRX, this leads to more people holding and transacting with the token, which may lead to an increase in value over time and through growing adoption. While most relayers do appear to be charging fees in ZRX, the exchange Paradex is a first use case of an exchange that elected not to. This decision by Paradex was met with mixed reactions from the community, with many people feeling that Paradex was using 0x smart contract infrastructure while neglecting to contribute value back to the network in the form of adopting use of the ZRX token. Rather, Paradex has opted to collect fees outside of 0x altogether. It remains to be seen whether other exchanges in the space will continue to charge fees in ZRX or opt not to. The 0x team has written that they never intend to make using ZRX for transaction fees a requisite. If they do charge fees in ZRX, competing on fees could become a race to the bottom, if liquidity, user experience, security and reputation at some point become roughly equal. It is unclear whether becoming a relayer will continue to be a profitable role, especially given the significant costs required to become one in terms of technology, management and user onboarding. Relayers are effectively being asked to launch a full startup business that has a single revenue model that may or may not collapse due to undercutting competition down the road.
2: The primary use case for the ZRX token, a governance mechanism currently undefined, drives demand from various stakeholders (i.e., relayers) who seek to influence the protocol direction.
As this mechanism is still in development, any evaluation at this time would be overly speculative. Yet appreciating their challenge is important: any function that charged a fee or required a stake to use the open-source contracts could be easily forked away, so any governance function would either need to be uncompensated and entirely optional—hence, would seem a poor support for token value— or offer such compelling benefits that the community accepts a required token usage. In addition, launching a set of relayers sharing liquidity who all agree to use the ZRX whatever its usage would create network effects to encourage adoption of a ZRX-enabled protocol. This is not an insurmountable challenge, but it is a formidable one that faces all token-based projects developing open-source smart contract libraries.
3: Connections with and early listing by Coinbase continues to drive demand among a broad investor base, after providing a significant boost in Oct 2018.
On October 11, 2018 Coinbase listed the ZRX token on its exchange and the token experienced a 17% gain in a 24 hour period. This movement implies that Coinbase still carries the power to sway market prices when it introduces a new cryptoasset onto its platform. Whether this effect will diminish over time as more exchanges compete with Coinbase remains to be seen. The Coinbase team announced in July that they are exploring five potential tokens for inclusion on their platform— Cardano, Basic Attention Token, Stellar Lumens, ZCash, and 0x— so it is unclear how this news impacted the price, if at all.
Smith + Crown provides cryptoeconomic, strategic, and technical advisory services to a wide array of best-in-class crypto projects and traditional enterprise clients.