- Part 1: Architecture comparison of decentralized exchanges
- Part 2: IDEX, Kyber, and Bancor architecture review
- Part 3: Saturn Protocol and Saturn DAO
- Part 4: Multi-blockchain decentralized trading with Saturn Protocol
This is another sneak peek from Saturn Network's whitepaper, as we've promised in one of our previous blog posts. Today, we are going to discuss our future plans for Rados, Radex and the whole Saturn Network ecosystem.
Our goal is to enable as many people as possible to join the cryptocurrency movement and trade freely. In order for that to happen we, the cryptocurrency community, need to both demand existing exchanges to adopt decentralized technology, as well as foster and promote new businesses around decentralized exchanges.
The two biggest problems that any new exchange faces are:
- Building technology that would enable trading in a secure way
- Attracting liquidity
We propose a three-pronged approach to solving these problems.
The first, and the most important, piece of the puzzle is Saturn protocol - a decentralized liquidity pool for token trading on Ethereum network. Saturn protocol will be governed by a DAO that will utilize SATURN tokens for protocol governance. Exchanges utilizing Saturn Protocol won't have to worry about users' funds safety - the protocol will be designed in a correct and transparent manner and will be thoroughly tested and audited prior to being launched on the mainnet.
The second piece of the puzzle is Radex. As of today, Radex is a 0-fee decentralized exchange for Ethereum tokens. After we launch Saturn protocol, Radex will be the first exchange to adopt it and promote its growth.
The third piece of the puzzle is Rados. Rados's mission is to become a place where you can learn and become better as a cryptocurrency trader. To that end, we've created a blogging platform and a forum that we use to discuss our projects with our community. Furthermore, we plan to develop a suite of financial products with deep integration into SATURN ecosystem to bootstrap the token economy.
Let's talk about each of those three components in more detail.
Saturn protocol is an evolution of ideas developed in Radex that takes the concept of shared infrastructure ownership even further.
As Bitcoin and Ethereum have demonstrated, even the best decentralized projects have a group of people that possess more power over the project than any other participant - the developers. In case of Bitcoin, the developers of the blockchain were the main reason for the Bitcoin Cash hard fork. In case of Ethereum, the developers chose to abandon their Code is Law principle and this led to creation of the Ethereum Classic blockchain.
In case of Radex, we have manifested the power imbalance in two ways. Firstly, we arbitrarily chose that takers pay 0.1% fee that goes to the market maker who provided liquidity as a rebate. Secondly, because most of the tokens on Ethereum blockchain follow the outdated ERC20 standard, we have to follow the ERC223 upgrade procedure and manually list the upgraded token on the exchange. Thus, we the developers control what tokens get listed on the exchange and when.
The solution to such power imbalance would be to create a DAO that governs the protocol instead.
A DAO is, essentially, a smart contract that has power over some entity or funds, and decision making is performed via a democratic vote among its token holders. In order to fully understand what power this DAO has, let's take a closer look at the thing that it governs - the decentralized liquidity pool (hereafter abbreviated as DLP) for token trading.
The DLP is a smart contract that implements ERC223's
ContractReceiver protocol and it is, essentially, a decentralized order book. People can either create orders by sending ETH, wrapped ERC20 or native ERC223 tokens and specifying what token they'd like to trade it for and at what price, or they can send their cryptocurrency and specify which existing order they'd like to trade against. This works very similarly to how Radex currently functions, with the exception that Saturn Protocol will not require any
deposits to be made. Creating an order or trading against an existing order will be just one transaction. This ease of use will allow any DApp or another exchange to utilize this liquidity pool without having to ask permission or go to meetings behind closed doors. DApps get free liquidity, and Saturn Protocol benefits from facilitating a larger trade volume.
With each order there are certain parameters that can be tweaked that balance between DLP owner's profitability, low fees for market takers, and high rewards for market makers. Namely,
- Market taker fees. On Radex, this fee is set to 0.1% of the purchase.
- Market maker fees. On Radex, this fee does not exist, or is equal to 0% of the order.
- Exchange commission. On Radex, this fee is 0. Or, technically speaking, it is 0% of the market taker fee.
- Market maker rebates. On Radex, the rebate is equal to 100% of the market taker fee, or 0.1% of the total trade.
Instead of having these values fixed, it is beneficial to retain certain flexibility when it comes to changing these parameters. If the protocol is getting abused by wash traders on some particular token, it should be possible to raise the fees in order to discourage such behavior. When the protocol is fighting for user preference with other decentralized exchanges, it would make sense to vote for lowering the fees across the board. When the protocol needs upgrades in order to, say, support a new token standard, it would make sense to take a portion of market maker rebates and give this money to a team of developers to support the work on the protocol. When the protocol has firmly established its place in the token ecosystem it may prove beneficial to remove the fees altogether.
Being adaptable is the key to success for a decentralized exchange protocol. However, when this power is in the hands of a small group of people it undermines trust in the protocol and makes it less likely for people to embrace it.
We introduce Saturn DAO that will make these decisions through a democratic process. The voting will be tamper-proof and will be conducted on Ethereum blockchain.
Every SATURN token holder can vote for changes to Saturn protocol and participate in its development. The price of SATURN tokens on the market will be a measure of the protocol's importance, as only SATURN holders will be allowed to vote, and each vote you cast will be proportional to the amount of tokens that you own. This ensures that SATURN token holders are incentivized to keep the fees as low as possible in order to grow the protocol's liquidity and trade volume. The more trades happen through Saturn protocol, the more power SATURN token holders wield, the higher the value of SATURN tokens.
Any SATURN token holder will be able to propose a vote to do one of these things:
- List an upgraded ERC20 token. ERC223 tokens will not require an approval to be tradable via Saturn protocol. This aligns with our objective to promote this newer and better standard. However, because ERC20 tokens have to be upgraded to ERC223 standard, the DAO will have to inspect the upgraded smart contract and ensure that it is safe to be listed and conforms to the recommended specification. An alternative to this approach would be to set a fixed fee to be paid in ETH that goes towards DAO fund.
- Change default maker fee. We will start with 0% maker fee, but the DAO can vote to change this value. This is the default fee that works for all tokens unless specified otherwise. Maker fee goes to the DAO fund.
- Change default taker fee. We will start with the same 0.1% taker fee as on Radex, but the DAO can vote to change this fee. This is the default fee that works for all tokens unless specified otherwise.
- Change default taker fee allocation between market maker and DAO fund. We will start with 100% of the taker fee going to the market maker as a reward for providing liquidity to the protocol. The DAO can change this allocation if it decides to do so.
- Change taker fee, maker fee, and maker/DAO split for a specific token. This value overrides the default behavior. For example, all tokens on Saturn protocol can have 0.1% taker fee, but SATURN token can be traded without any fees or market making rebates if the DAO decides that this is best for the protocol. Or, if the DAO decides to ban a certain token from participation in Saturn protocol, such as some ponzi coin, the DAO can vote to enable 100% maker fee and effectively ban this token from ever being tradable on the market.
- Withdraw funds to a specific address. As mentioned above, the DAO can earn money by charging trading fees if it considers it necessary, as well as receive donations. The voting proposal will consist of the address of the token that shall be withdrawn, the amount that shall be withdrawn, and the recipient address. The beneficiary of these funds can be a person or another smart contract. The DAO fund is further discussed in a dedicated section.
- Move the DAO to another smart contract. The DAO itself needs to be upgradable in order to withstand the test of time. The main power of the DAO is its ability to influence Saturn Protocol and its decentralized liquidity pool. In the future it may make sense to add new liquidity pools for other token standards, such as non-fungible tokens like EIP821. In this case, a new DAO smart contract will be created, and the DAO can vote to transfer Saturn protocol ownership to the new smart contract. This allows the DAO to adopt new features of the blockchain while keeping the same SATURN token, contributing to the token's long-term value. This can be done without any interruption to the order book's functionality.
Each vote will require tokens to be staked in it to prevent a spam attack on the DAO, and there will be a requirement for the minimal amount of SATURN required to start a vote. Each vote will be active for a maximum of 30 days since the moment of its proposal. Voting will require staking your funds in one of the active votes. As soon as a vote passes success threshold its desired effect is appliead immediately via the power of smart contracts. The staked tokens from this vote will be available for withdrawal, and the changes to Saturn protocol will be performed automatically as part of the last voting transaction. If the vote fails to pass success threshold for 30 days it is considered to be a failed vote. No changes to SATURN protocol will be made, and those who have staked their tokens in this vote will be able to withdraw their SATURN after the deadline.
We will develop the DApp that will let SATURN token holders navigate the votes, discuss and coordinate proposals, and vote for changes in the protocol. The easier and the more accessible the app is, the more democratic and fair the governance will be.
As stated above, the DAO will be able to vote for introducing fees for all or some tokens. All proceeds from the introduced fees will be automatically transferred to the DAO smart contract, and the DAO can decide what to do with those funds through a vote.
The only way for the funds to leave the DAO smart contract is through a successful vote. The funds can be transferred to any Ethereum address, both an account address, such as someone's wallet, or a smart contract address. The use cases for handling the funds include, but are not limited to these:
- Pay for bug bounties. It is common for big software projects, such as Google, Facebook, Uber, to establish a fund for bug bounties. These bounties attract white-hat hackers to research the protocol, the apps and contribute security fixes.
- Reward projects that contribute to the ecosystem. Any modern software project is judged not by its existing features, but by its potential for growth. Growth requires both marketing and development work. The DAO can decide to support projects that make the overall ecosystem grow and thus contribute to the value of SATURN tokens.
- Pay out dividends. One can design a smart contract that will take in funds and allow people to withdraw a portion of the funds proportional to their SATURN ownership snapshotted at a particular block. The DAO can then vote to transfer the funds to this smart contract to financially reward its members.
- Invest in ICOs. If the DAO decides to not withdraw the funds, it can either let them sit idly in the smart contract, or the DAO can invest these funds into an ICO and receive the new tokens. These tokens can later be distributed to the DAO members as dividends or traded into ETH through Saturn protocol.
- Trade on Saturn protocol. As described in the section about trading bots, the DAO can allocate funds for a secure fund management smart contract provided by Rados or another third party. This has a synergetic effect with the protocol itself, as active bot trading contributes to increased liquidity and trading volume on Saturn protocol. Or, to give you another example, the DAO can use the collected fees to buyback SATURN tokens like big companies do on the stock market.
There may be other creative and profitable ways to allocate this money. Because of the DAO's flexibility we expect to see a lot of discussion and suggestions by the community and the DAO can vote to implement those suggestions. As a community the DAO is encouraged to discuss the best ways to invest money and collectively select the best ideas, improving the chances of making a successful investment.
Saturn DAO is, in a nutshell, a decentralized, uncensorable, self-funding, self-governing protocol that is incentivized to provide high liquidity and competitive prices to traders.
Radex will be the first exchange that operates on top of Saturn protocol. The goal is to make it easy to use Saturn protocol for trading and to promote Saturn DAO.
There is no limit to perfection, and there is always more work to be done on any project. However, a real life product benefits from having a clear roadmap and prioritizing features. Based on customer feedback that we've collected and our core beliefs, we have decided to prioritize the following three goals for Radex, in addition to the eventual migration from a custom smart contract to Saturn Protocol.
A standalone desktop app for Radex would not only be more convenient for some of our users, but would also have other improvements:
- Improved stability. We currently depend on MetaMask or Mist to provide a stable channel of communication between your browser and the Ethereum blockchain. Unfortunately, it is a well known fact among Dapp users and developers that MetaMask quite often cannot handle the load on its servers. A standalone app would ship with its own blockchain node that should provide a more consistent experience and be less prone to downtime.
- Improved anonymity. As we've mentioned in our first whitepaper sneak peek, you currently have to trust our website to not record the IP address of the trader. You also have to trust the website that the data that it presents you is correct and matches with what is on the blockchain. The desktop app will come with the user interface built-in and will pull the data directly from the blockchain, eliminating a need for a trusted third party. This, coupled with running your own blockchain node, would result in best in class anonymity and decentralization among all available cryptocurrency exchanges.
- Improved security. Nobody is immune to large-scale internet attacks. For example, recently EtherDelta's DNS servers got hacked. Instead of being routed to EtherDelta, users were routed to the hacker's servers unbeknownst to themselves. A desktop app that interfaces with the blockchain directly is immune to such attacks by design. Having a dedicated desktop app would also allow us to support hardware wallets such as Trezor and Ledger.
While it is true that all Radex's trade data is on the blockchain and you can easily get historical trade data, including full order book at any point in time, it is also highly unlikely that someone without coding and blockchain experience will be able to do so. We will make a dashboard that shows trading data from all Saturn Protocol markets so that traders and analysts can use this data without having to get two PhD's just to start their analysis.
Most coders are familiar with working with APIs. However, working with a blockchain will still be a first for most programmers. We will provide a read-only API for the most important information - current order book, current price, etc.
The API server is important for three reasons:
- Coinmarketcap requires an API for prices in order to list an exchange
- We will migrate the website to utilize the API instead of MetaMask for data pulling, thus providing a much more consistent experience for traders worldwide
- A website that's built on top of this API would be much more lightweight and it would be possible to run Radex on a mobile phone's browser
Rados in its current incarnation is a news blog where we publish what's on our mind, as well as a forum where we discuss all things blockchain with our community. Going forward, we plan to monetize the blog's audience by offering financial services on top of Saturn Protocol. These new services include:
- Trading bots
- Decentralized fund management
- Decentralized ETFs
- Token payment system
Let's describe these four services in more detail.
An anonymous 0-fee exchange is heaven for trading bots. We fundamentally believe that in an unregulated market that works 24/7 the best path towards price stability is widespread use of trading algorithms that exhibit market inefficiencies. Our goal is to make it easy to implement such bots for those who have the knowledge of how markets operate, as well as for those who know how to code and want to get into programmatic cryptocurrency trading. To that end we want to foster a community that will exchange knowledge and share best practices with each other. In order to incentivize knowledge sharing we'll establish hidden subforums for people with premium access and provide tools to help people monetize their content.
Examples of such bots include, but are not limited to:
- Market making bot that will provide liquidity for any token-token trading pair
- Arbitrage with other decentralized exchanges to make sure our users have the best price
- Tools for bot writers - download historical order book and trade data, strategy backtesting
Decentralized money management
As we've mentioned before, currently money management is riddled with complex legal structures. The future that we want to build is centered around connecting investors with traders in a trustless way utilizing decentralized technology.
Investors want to allocate their capital and make a profit without having to spend time learning how to trade. They already know how to make money in their own way, now they need help with making the right investment decisions. Traders spend their time perfecting their craft: learning how to read the market, looking for projects with strong fundamentals, studying the underlying technology in order to separate the wheat from the chaff. Once a trader finds a profitable strategy, which is usually based on discovering a market inefficiency, he needs to act quickly before somebody else seizes the opportunity. He needs to be able to raise capital for his strategy without having to go through the painfully slow legal process which is traditionally necessary when it comes to handling someone else's money.
There's an obvious synergy that comes with matching investors and traders via a trustless protocol that will eliminate costly legal overhead using blockchain technology. In fact, that's what blockchain was designed for: trustless value transfer, full transparency, and in case of smart-contract powered blockchains, automating law enforcement. As Ethereum supporters like to say, Code is Law.
We propose a protocol for trustless money management based on Ethereum smart contracts. We will develop decentralized money management protocol in these four stages.
Stage zero: HODL contracts
Have an impulsive personality and always sell too early? Why not use smart contracts to ensure that you don't sell during the dip? We will provide an easy interface for you to HODL your tokens in smart contracts for a predefined period of time, from days to years. You choose!
Stage one: Humans
Pick a professional trader and deposit your funds in a smart contract. The trader can then manage the funds inside that smart contract via Saturn Protocol, but he won't be able to withdraw your funds.
Before you engage in this agreement you define what percentage of the profit made goes to the trader as management fee. Profit is calculated relative to ETH value. Beginners can let someone knowledgeable manage their funds in a secure and trustless way, and professional traders can monetize their skill by managing other people's money and earning a percentage of the profits that they can generate.
Stage two: Trading bots
Reusing the same infrastructure, we can extend the notion of money management to trading bots. Trading bots will participate in the same trader leaderboard and will compete with humans for our users' funds.
Stage three: Marketplace
Once we iron out the infrastructure and tools for writing trading bots for Radex we will open source the helper libraries needed to develop a bot. After that, we will open up a trading bot marketplace, and our users will have a selection of professional human traders, official Rados bots, and bots developed by our diverse community to choose from.
Best of all, the users are guaranteed that their funds are safe, while traders and bot developers are guaranteed that they get paid fairly for their services and they can stay anonymous while doing so, which is a big deal if you are a skilled and capable trading bot writer.
An ETF is an index fund whose value tracks that of a basket of assets. We will create such indexes and package them as ERC223 tokens that are tradable on Saturn Protocol. Users will be able to mint new ETF tokens by sending the appropriate amount of underlying digital assets to a smart contract. In return they will receive an appropriate amount of the ETF coin. This ETF coin can then be traded on exchanges.
If the market value of the ETF coin falls below the value of its underlying assets, holders will be able to disassemble the ETF coin and get the underlying assets back. ETFs will make it easier for investors to take advantage of investing in multiple coins at once in one transaction. Trading bots performing arbitrage will ensure that ETFs are always competitively priced.
Token Payment System
Merchants can select what currency they would like to be paid in, and customers will be able to pay in any token that's tradable on Saturn Protocol. Rados will facilitate an automatic conversion of tokens into merchant's preferred currency. The decentralized nature of Saturn Protocol will ensure that it is the optimal choice for DApp developers to accept payments.
Our ultimate goal would be to provide easy integrations for Shopify, Magento, Woocommerce and other popular ecommerce solutions to enable merchants worldwide to accept crypto as their payment method. Ultimately, this will increase adoption for the whole Ethereum token economy.
Saturn Network whitepaper released!
Want to read the full whitepaper? Please join us on our forum, download and discuss the whitepaper!
In the whitepaper you will find additional technical details, our full roadmap for 2018-2019 and SATURN token ICO terms.
DAO means decentralized autonomous organization. Alongside crowdfunding and token creation, DAOs are one of the key reasons why Ethereum blockchain was created. You can read more about DAOs on Ethereum Foundation's website ↩︎
We're talking about public ledgers like Bitcoin and Ethereum. Private ledgers like ZCash and Monero are solving a different problem and are thus designed differently. ↩︎