MARKET Protocol - Open source building blocks powering decentralized derivative trading and exchanges
MARKET provides developers with a trustless and secure framework to create
decentralized exchanges, including the necessary clearing and collateral pool
infrastructure. As a protocol, MARKET enables third parties to build applications for trading,
order routing and related activities.
The decentralized protocol facilitates risk transference and a trustless trading system
through smart contracts on the Ethereum blockchain. MARKET contracts derive their price
from an underlying asset, either digital or real-world. Traders are not limited to owned or
existing ERC20 tokens, allowing price exposure to other cryptocurrencies like Bitcoin,
Ripple, and Monero.
As derivatives, MARKET contracts offer users continuous price exposure and future
settlement. Traders can quickly enter long or short positions in any contract where they find
Trade participants then contribute funds to a collateral pool before trade execution. The
contract then distributes funds in a rule-based manner at an agreed-upon settlement date
or when Traders exit positions before the settlement date.
The clearing functionality provides a safe and secure framework to manage crypto assets,
positions, and leverage in a systemically responsible way. All smart contracts and collateral
pool balances are publicly available on the blockchain. No person or entity controls the flow
of assets among participants, order matching, contract creation or dispute resolution.
Participants will govern the protocol in a democratic and equitable fashion. Traders of the
protocol will be the owners and decision makers. The goal of MARKET is to provide users
the most efficient, safe, and secure environment possible while creating a robust and fair
MARKET allows third parties to create “markets” by hosting an order book. The order book
hosts, referred to hereafter as “nodes”, are incentivized to host order books by collecting
transaction fees, which they set and control. MARKET simplifies the complexity of securing
collateral, validating creditworthiness, executing settlement and the custody of customer
funds with smart contracts.
At this time, nodes are not responsible for the matching of trades and never have custody of
funds. Traders of the protocol can post orders as makers, or they can trade against resting
orders as takers. Nodes act in a bulletin board like fashion and broadcast all maker orders
transmitted to them providing potential matches to takers, who ultimately select and
execute the trade
In the future, MARKET may pursue alternative node solutions, such as a fully decentralized
order book and matching, as well as other scaling implementations.
Contract Creation and Clearing
MARKET allows users to create a contract, specify its terms, publish those terms, and
provide a mechanism for automated settlement while ensuring contract solvency through
collateral pools. Any Trader can create a new contract by outlining the contract
specifications. The contract creator will be presented with the following options:
● Underlying Instrument: What is the underlying asset for pricing? This could be a real
world or digital asset.
● Price Floor and Cap: This defines the maximum loss or gain for participants and the
amount of collateral each participant must post in order to take a short or long
● Expiration Date
● Settlement mechanism: Creators select an oracle-based solution for the final
settlement price of the contract used in profit and loss calculations
● Base Token: What will the base currency be for pricing? This dictates the ERC20
token contributed to the collateral pool
Since the value of the contract is derived from the value of a held cryptocurrency, contracts
can be created for any physical asset, digital asset, or ERC20 token.
Shared Collateral Pool
Each MARKET contract is comprised of multiple smart contracts that create the shared
collateral pool and needed accounting of an individual Traders’ balances denoted in the
defined base token (any ERC20 ).
Traders will deposit collateral in the form of ERC20-compatible tokens to the smart contract
prior to trading, and all profits and losses from trades will be settled using the tokens.
After depositing tokens, the Trader can submit orders and enter positions based on their
smart contract balance. When a Trader opens a position, tokens will be transferred from the
Trader’s balance to the collateral pool. The tokens in the collateral pool fully fund the max
loss of all open positions within a specific contract. If a Trader closes a position prior to
settlement, their previously allocated capital - plus or minus any profit or loss - is available
for withdrawal or further trading. Alternatively, a Trader can hold their position through
expiration. In that case, a oracle will provide a settlement value which is used to determine
the Trader’s profit or loss. Once the contract enters a settled state, users may call a function
to return their collateral.
All open positions are fully collateralized at the time of execution removing counterparty risk
and replacing one of the core functionalities of traditional exchanges . A smart contract
governing the collateral pool will provide a reliable and trustless solution to traditional
custody of funds issues.
The executed trade price and quantity determine the amount of collateral moved from the
Trader’s balance to the collateral pool. Allocated collateral equals the maximum loss
possible for that position. For buyers, it is the entry price minus the contract minimum, and
for sellers, it’s the contract maximum minus the entry price.
This collateral remains in the pool until the trade is closed. Next, the contract updates the
price and quantity of the user’s open positions.
Leverage and Contract Range
MARKET contracts offer continuous profit and loss exposure derived from an underlying
asset up to a PRICE_CAP and PRICE_FLOOR specified during contract creation defining the
contract range. Leverage offered through the MARKET protocol differs from traditional
leverage, which runs the risk of forced liquidations and unfunded positions.
Traders will commit the difference between the executed price and their maximum loss to
the collateral pool when they initiate a new trade. This action will require less equity than
the total notional value of the position providing implicit leverage. All prices between initial
entry within the contract range are tradeable. The outcomes are not binary.
If the high or low of the range is breached the contracts is settled with the participants on
one side awarded their maximum gain, while the other side receives nothing (their
maximum loss). It is possible neither is breached, in that case the contract trades and
expires conventionally. We plan to implement this functionality to ensure that the market
remains solvent. This process is one of the most important features of the contract framework
and the MARKET protocol. The amount of leverage afforded to an open position depends on
where the price of the trade executed relative to the ranges of the current contract. For
example, users will post less margin when selling near the maximum as they have less
Traders can replicate uncapped payoff structures by stripping together a series of
contracts. We expect third-party implementations of MARKET to provide multiple strikes
per contract and an easy, cost-effective way for Traders to create the exposure they want.
This may present Traders with arbitrage opportunities as Traders can spread-trade multiple
contracts against each other.
Two detailed examples of trading the MARKET protocol are including later in the document.
Currently, there are limited and inefficient options to short crypto assets. However, a
MARKET contract makes shorting simple.
If two parties are willing to transact at a predefined price they can trade. There is no need
for the short to locate or borrow the underlying asset. With MARKET, if a contract is listed
and has liquidity, it can be shorted.
Order Submission and Execution
To begin trading, a user will first commit the requisite amount of the base token to the
collateral pool smart contract, thus ensuring funds are available to trade. Funding the smart
contract prior to execution results in fewer transactional failures during matching and
creates a better user experience.
For a Trader to enter a trade, they will submit an order, as a maker, to a node providing both
a price and quantity. Upon receipt, the node confirms that the maker’s address has the
necessary balance in the smart contract to place the order. Next, the node will post and
maintain the order in the order book until another Trader (taker) fills it. For providing this
service, the node sets and collects a transaction fee. The taker is responsible for filling the
maker order by calling the trade function via a smart contract and supplying their address.
The taker controls order matching, reinforcing the trustless role of the node. At that point,
funds are moved from the Trader’s smart contract balance to the collateral pool. The node
never handles funds. Finally, the new positions for each participant are recorded in the
smart contract and on the blockchain.
If multiple executions exist, positions are exited in a LIFO (Last In, First Out) manner. After
exiting a position, the appropriate amount of collateral (including any gain or loss) will be
allocated back to the user’s smart contract balance and become available for trading or
Expiration and settlement
Upon the expiration of a contract, functionality built into MARKET allows contracts to be
settled using an oracle such as Oraclize.it or Thomson Reuters Block1IQ. Oracles provide
external data to the blockchain. The contract creator will have the ability to set the
frequency for oracle queries.
To avoid incorrect or inaccurate settlement prices, we will implement a time delay between
the initial execution (contract expiration) and the time at which users may withdraw their
funds. If more than a certain percentage of the participants with open positions initiate a
settlement dispute, then the contract enters a disputed state.
In the event of a settlement dispute, a backup oracle or group of backup oracles can be
used to obtain a settlement value. As crowd based consensus mechanisms evolve MARKET
intends to implement additional resolution mechanisms. Until that point, disputed
settlements may also get resolved through a more centralized process to ensure funds are
equitably returned to participants and not permanently trapped in the contract.
In order to get the most out of MARKET for the non-technical user, distributed apps or
“dApps” will be built by MARKET for use on the MARKET Protocol in addition to third party
developers. MARKET plans to create simple user interfaces that intuitively explain the
process of selecting contract variables and deploying MARKET contracts to the blockchain.
Additionally, a contract explorer will provide the ability to search previously deployed
MARKET contracts and their specifications. Users will also be able to test their oracle
queries to ensure they function as expected prior to contract deployment.
MKT will be the base token of the MARKET ecosystem and benefits from integration into all
facets of MARKET. Peer-to-peer trading is free on MARKET and no fees are native to the
protocol. Nodes providing order book hosting and management will have the option to set
and collect transaction fees for offering this service. Orders submitted without the required
transaction fee may be rejected by the node. These transaction fees will be collected by the
nodes in MKT.
MKT holders will also have a vote in protocol improvements and development. This ensures
both users and projects using MARKET Protocol have a voice in the protocol’s future.
1. Contract Access: Initially, participants are required to post 25 MKT tokens along with
the appropriate base token (for collateral) to trade each user-defined contract. MKT
posted in this way is returned to the user when they stop trading a specific contract
or upon expiration.
2. Transaction fees: Nodes provide a service to users of MARKET Protocol and in
exchange for this service, may charge a transaction fee denominated in MKT. Each
node sets its own fee for the service.. Nodes are expected to differentiate
themselves on the fees and services provided giving users many choices for
3. Settlement: For accuracy and autonomy, most contracts will automatically settle to
publicly accessible oracle solutions. In the event of a settlement disagreement, or a
disrupted settlement process, MARKET intends to a employ number of solutions
including, backup oracles or a crowd sourced resolution pulled from the pool of
4. Contract Creation: Initially, users will be required to hold a minimum of 500 MKT to
create a new trading contract. The purpose of this arbitrary holding is to encourage
thoughtful contract creation.
5. Protocol Decisions: We expect MKT token holders to vote on protocol decisions and
development. This will include things like number of MKT tokens required for
contract access or creation as indicated above. The more MKT an account holds; the
more influence it will have. At the onset, decision making will be more centralized.
MKT holders represent the whole ecosystem, traders, nodes and speculators and
each has a voice in protocol direction. Over time, our goal is to move towards a more
community-based decision model.
The MARKET Protocol team comes from diverse technical and financial backgrounds with
over 30 years of cumulative electronic trading experience on global exchanges.
Co-founders Seth Rubin, Phil Elsasser, and Collins Brown have been working together since
2014 managing a 24-hour algorithmic trading group and started trading cryptocurrencies
the next year. These experiences enabled the team to see how blockchain could solve
many of the problems inherent to traditional and crypto exchange models. These insights
catalyzed the development of MARKET Protocol, to create an open, trustless, and
decentralized trading marketplace.
MARKET Protocol (MKT) - CONTRACT EXAMPLES
Example A – Single Stock Contract
In this example, we showcase how the MARKET protocol can be used to create a derivative
contract between ETH and a traditional security, Tesla stock (NASDAQ, TSLA)
User A will define:
1. A base currency (any ERC20 token, in this case ERC20 compliant ETH)
2. An underlying asset (in this case TSLA)
3. Settlement (with oracle)
4. CAP and FLOOR- If the price of TSLA/ETH is currently 10, the contract may be
created with a CAP of 15 and FLOOR or 5. If the contract underlying instrument goes
to 5 or 15 it expires. All prices are tradeable between 5 and 15.
At expiration all users are paid out their gain or loss.
1. The Trader identifies a contract spec they want to trade. In this case it is TSLA/ETH
2. Trader A deposits 10 ETH and Trader B 7 ETH to the smart contract to begin trading.
They also deposit 25 MKT each.
3. Users with balances can withdraw their balance at any time. Funds committed to
open positions are not eligible for withdrawal.
4. Contracts have a shared collateral pool used to hold funds for open orders and
Placing an Order3. Node confirms that Trader A has funds available in smart contract to create this order.
1. Trader A creates an order object to buy 1 TSLA/ETH at price 10, signs it and
transmits the order to the node.
2. The defined TSLA/ETH contract has a CAP of 15 and a FLOOR of 5.
4. Node accepts order, and displays a bid for 1 TSLA/ETH at price 10.
1. User B looks at the orders held by the node sees user A’s order for 1 bid at price 10.
User B wants to sell 1 ETH/Tesla at price 10
2. User B then takes User A’s order calling the fill trade function to the MARKET smart
contract with the order information
3. The MARKET smart contract then fills the order and allocates positions.
4. Collateral balances and user balances are updated. Each user has their max loss
added to the collateral pool
5. Transaction fees designated for the nodes (in MKT tokens) are sent at execution.
Using an TSLA/ETH contract with a CAP of 15 and FLOOR of 5 there are three post trade
scenarios. If either 15 or 5 is traded in the underlying TSLA/ETH pair, then the contract
expires and goes to settlement
1. Traders exit position prior to expiration
2. Traders hold position to expiration
Contract price CAP or FLOOR is breached
Scenario 1: Users exit positions prior to expiration
Both Traders have an open position, A is long 1 at 10 and B is short 1 at 10. The TSLA/ETH
relationship which was trading at 10 is now trading at 13.
Trader B wants to realize a loss and creates a new order in the same process indicated
previously and submits the order to a node. As a closing order, there is no need for
Trader A wants to realize a profit and fills User B’s order.
Both traders are flat. Trader A has made 3 ETH and Trader B has lost 3 ETH.
Initial collateral balances were 5 ETH each. Trader A receives back 8 ETH and Trader B 2
ETH. Total balance of pool was 10 ETH and is now 0. If they are done trading this contract,
both receive back their MKT tokens.
Scenario 2: Traders hold trade till expiration - 1 month from contract creation
Both users have an open position, A is long 1 at 10 and B is short 1 at 10.
The contract organically settles. An oracle delivers the necessary settlement price based on
the contract specification which is is used to determine the Traders’ PNL.
In this case, the contract settles at 7.
User A has lost 3 ETH and receives back 2 ETH (initial deposit + PNL) and User B made 3
ETH and receives back 8 ETH (initial deposit + PNL).
Scenario 3: Contract Hits CAP of 15
Both traders have an open position, A is long 1 at 10 and B is short 1 at 10.
In this case, the contract hits the upper bound trading 15 When this happens the contract
automatically expires at a price of 15.
Trader A made 5 ETH and receives back 10 ETH (initial deposit +/- PNL) and Trader B lost 5
ETH and receives back 0 ETH (initial deposit +/- PNL).
All open positions are recorded on the blockchain and transparent to all users. The balance of
the collateral pool is always fully funded to cover all open positions. As a user trades out of
open positions, the accounting is done in a last in first out method.
Example B – Hedging a Utility Token
Users can hedge utility tokens with MARKET removing price movement both up and down.
The majority of existing and future ICO tokens provide the owner some benefit or utility.
These tokens, however, may have considerable price volatility which could actually
outweigh any potential benefit associated with the token. MARKET provides owners of
utility tokens a way to hedge their price exposure while maintaining the utility associated
with owning the tokens. Token owners never sell or transfer their tokens.
In this example, we will use SALT lending tokens. SALT is a peer to peer lending platform
allowing users to borrow fiat through loans backed by crypto holdings. SALT Lending
tokens are necessary to participate on the platform and obtain loans.
Since they were issued, SALT tokens have traded from the low $2s to a high of over $17.
With MARKET Traders can hedge this price volatility.
To illustrate this example, suppose Trader A owns a number of SALT tokens and wants to
hedge their price exposure:
1. Trader A owns 10 SALT tokens worth 5 ETH and wants to hedge them, he would
need to sell 10 contracts
2. Trader B doesn't own SALT tokens but wants to speculate on the price of SALT
It is important to note, that Trader A still has his SALT tokens and can use them to access
the platform. Trader B never had SALT tokens and still doesn’t.
For Trader A to hedge his SALT token price exposure, he would need to sell 10 contracts.
The current price is 0.5 ETH. This means they have a maximum downside of 0.25 ETH * 10 =
Trader B is willing to buy SALT/ETH at the same price. From here SALT tokens can go up or
We will cover two post trade scenarios:
1. SALT goes down.
2. SALT goes up.
Scenario 1: SALT goes down from 0.5 to 0.375 and Traders exit positions.
How to Avoid Cryptocurrency Theft
Cryptocurrencies are the newest form of money. They are the Internet of Money — A financial revolution! However, problems exist. Security and custody of funds are still a major issue.
The growing number of cryptocurrency thefts and hacks
The rising value of cryptocurrencies has attracted investors, speculators and thieves alike. Many people have lost their coins to attacks with stolen valuations totaling billions of dollars. But by far, the highest number of thefts have happened on exchanges — around 80%. In 2014, approximately 650,000 bitcoin (now worth over $7 billion) was stolen from Japanese exchange, Mt.Gox, the largest recorded theft to date. More recently, another Japanese exchange, Coincheck, lost $500 million worth of NEM coins to hackers as well.
Yet wallets and exchanges are not the only targets of hackers. Other crypto-related businesses requiring the storage of large amounts of coins have become targets for theft too. One recent example is Slovenian-based mining company,NiceHash, which was hacked for 4700 BTC in December 2017.
Below is an infographic of recorded thefts and hacks of cryptocurrencies from 2011 to March 2018:
list of recorded thefts and hacking of cryptocurrencies:
Centralization comes with customer service support, convenient UI/UX, greater volumes, and instant off-chain trade executions. But all of those benefits come at a huge cost in favor of issues related to centralized custody of funds, disclosing personal information, and jurisdictional restrictions.
Not only have thefts taken place on hot wallets, but recently cold storage wallets have been a target as well. For example, Nano Ledger S recently discovered a vulnerability. There is also the issue of hacks that happen as a consequence ofpurchasing hardware wallets from third-party services like eBay.
The awareness of decentralized custody of funds and its importance amongst cryptocurrency traders and investors is one of the main focuses in the industry. One widely used decentralized wallet solution is Electrum. It was released under the MIT license in 2011 and is used for securing bitcoin payments. It is a free, open source software with support for all major hardware wallets and two-factor authentication. Electrum proves that decentralized software can offer a good user-experience and be reliable, however the security issues associated with using it are still ongoing. To compound the issue, Bitcoin is just one of over 1,500 different digital assets. Securing all of them in a decentralized manner is very difficult.
Many Ethereum network participants useParity wallet to secure their funds. Unfortunately, it suffered a hack in July. It also had a critical vulnerability that resulted in locked funds for 584 wallets in November 2017. Their total balance is unknown, but outside sources have quoted that the funds were worth around 300 million dollars at the time.
Many market participants are short-term traders. They are not usually holding all of their funds in cold storage. Luckily, we are witnessing the emergence of many decentralized exchanges (DEXs) in the space like IDEX, Crypto Bridge or Bisq. At the time of this writing, none of the top 10 most used decentralized exchanges have been hacked. But they do have other downsides.
The two main issues affecting DEXs are extremely low volumes and lack of cross-chain trading relationships. In many cases, these exchanges only support the trading of ERC20 tokens. Atomic swaps could help solve this issue, but only exchanges for Litecoin/Decred and Bitcoin/Litecoin currently exist. Otherwise, there has been limited progress in the development of ERC20 token swap exchanges.
Novel ways of addressing the issue of custody
Smart Contract technology has empowered gifted developers with an opportunity to build products that could have the benefits of centralized solutions while enabling trustless custody of funds, trade execution, and settlement with no single point of failure.
With MARKET Protocol, there is no need to take custody of an asset. Using a series of smart contracts, a trader can gain the exposure he or she wants without having to constantly move coins from wallet to wallet. The contracts are also fully collateralized using smart contracts to eliminate counterparty risk. Users can trust that their funds are secure while managing their desired market exposure.