ICO Analysis Framework — NEX case study.
ICOs are hot right now - over $4.3 billion raised in 2017. But this doesn’t mean every single investment will give you hot returns. I spent the last few months researching and investing in early stage crypto projects. Below are some of the lessons learned.
At first, let’s go over some of the steps involved during a typical Initial Coin Offering.
- Coin offering details are announced.
- Whitelisting/KYC for private sale — most projects started performing Know Your Customer checks where you have to upload your ID and your selfie holding your ID. Furthermore, to avoid regulatory risks, I’ve noticed many projects completely excluding U.S. and Chinese investors. If you are from U.S., you will most likely have to be an accredited investor in order to participate in this round.
- Private/Pre-sale starts — Typically investors are offered 10% of all the tokens to be offered in the crowd-sale with a 10–30% discount as early contributors. Not all projects offer pre-sales, some go directly for public crowd-sale.
- Whitelisting/KYC for public sale — investors have to go through KYC checks for public sales as well. Only those who register and pass are eligible to contribute when the public crowd-sale starts. I’ve noticed many high quality projects close KYC registrations early because of overwhelming demand. Once you are approved, you have to whitelist your contribution wallet address. What does that mean? Most projects require you to contribute in crypto. So you will have to convert your USD into crypto first and then send it to the project’s contribution smart contract. For example, if a project is performing crowdsale on the Ethereum platform, they will set up a crowdsale smart contract for investors to send their ETH contributions. You need to create a new ETH wallet (example: Myetherwallet.com). This will generate your wallet’s public and private keys. Paste your public key into the whitelisting registration form to let the project now that this is your wallet and you will be contributing from it once the sale starts. Send ETH to your new wallet from Coinbase/Gemini to your new public key ETH wallet address.
- Public sale starts —typically sale starts at a specified time or at a specified block. Countdown timers are available on official websites and telegram channels. If you are interested in participating, it is important to contribute as soon as the sale starts because if you send your contributions after the hardcap is reached, your transaction will be rejected. It is literally on a first come first serve basis and everything is recording on the blockchain so you cannot complain to anyone after. I’ve watched many multimillion dollar ICOs close out in seconds as a flood of investors initiated their contribution transactions.
- Tokens distributed to investor wallets — investors can immediately list and trade on decentralized exchanges supporting token’s standard. (ERC-20 tokens=EtherDelta). Typically once the hardcap is reached, tokens are unlocked and distributed to investors’ whitelisted wallet addresses. So the same wallet which you contributed from will receive your newly purchased tokens. It is important to create an appropriate wallet — projects launched on Ethereum require something like Myetherwallet because it’s able to store all ERC20 tokens while projects launched on NEO will require NEON wallet for their NEP-5 tokens. Different blockchain platforms, require different wallets.
- Tokens are listed on exchanges. (Binance, Kucoin, Bittrex). Typically as tokens get listed on more and more exchanges, the price goes up because more investors are exposed to the asset and are able to purchase it in more places. This is called accessibility discount.
Currently the ICO market is made up of 2 types of project founders:
- Founders who found out about crypto last month and want to launch an ICO to raise money first and think about the fundamentals later.
- Founders who have been scouting this space for at least 2 years and are working on a solution to a real problem.
This doesn’t mean that someone with years of experience will succeed for sure and someone new will always fail. However, when there’s a flood of new projects to filter through, I will take my chances with experienced teams. Many newcomers think they get it when they really don’t. All ideas are garbage if there’s no one executing it, which is why team is still one of the most important factors to look at when investing into any project (crypto or not).
Once the team experience stress test is passed here are some other quick indicators I look at to filter out unfair offerings:
Hardcap: $10M — $40M
% of tokens for sale: 30+%
Bonus: Max 30%
Bonuses over 30% for early contributors usually result in immediate sell-offs once the asset is listed on exchanges.
You can start with a raw list of 100 upcoming ICOs, apply these initial filters, and end up with 10–15 potential projects to focus your research on. One such project for me is NEX so I will take your through my detailed white-paper analysis and valuation framework.
I still have some questions (mentioned at the end) which I hope to get answers to when I meet the team @NEODevcon in San Fransisco on January 30–31st.
UPDATE: Fabio C. Canesin spent some time answering my questions @NEODevcon, interview video is up. Thank you Fabio C. Canesin for being so open with the community!
Platform for complex decentralized cryptographic trade and payment service creation.
- Team members: 12
- Token type: NEP-5
- Platform: NEO
- Price: $1.00
- Tokens for sale: 25M
- Softcap/Hardcap: $25M
- Total tokens: 50M
- Total diluted value: $50M
- Discount: NONE
- Order matching is by far the most computationally expensive operation when running an exchange. Centralized exchanges (Coinbase, Bittrex, Binance) use their own servers to optimize throughput to handle large trading volumes but are vulnerable to attacks because they host user funds, order books and order matching on their own servers. Existing DEX solutions of (1) state channels are expensive to open and close (example: Raiden) while (2) off-chain relayers, aka market makers who broadcast an order off-chain, use fewer on-chain transactions to perform a trade, but still suffer from performance issues in comparison to centralized exchanges (example: 0x).
- Because NEO stores data about users’ balances in a structure based on unspent transaction outputs, it is difficult for smart contracts to program interactions with a user’s NEO or GAS balance.
NEX proposes a new kind of a DEX consisting of three main components:
(1) an off-chain trade matching engine,
(2) a smart contract where trades are executed, and
(3) a payment service where global assets such as NEO and GAS can be converted to tokens that can be transfered directly by smart contracts, making them compatible with the exchange.
(1) NEO itself doesn’t provide order book and matching functionalities, it’s only responsible for execution and settlement of the transaction. NEO puts the order book and matching function on the second layer, through a mechanism called “superconducting”.
Under the superconducting transaction, the two parties do not need to host the property to an intermediary (traditional exchange). Users only need send to the exchange an order signed with their private keys. After the exchange matches the buyer and seller orders and broadcasts transactions to NEO. From beginning to end, property does not leave the user’s control, putting an end to the traditional moral hazard. Exchange under the superconducting trading mechanism only plays the role of information matching. 
NEX’s matching engine works exactly like a centralized exchange, but only has control over active orders, and commits trades on-chain without access to the full balance of a user account — utilizing superconducting functionalities of the NEO blockchain described above.
NEX aims to store a user’s encrypted private key client-side in a user’s browser. This preserves the security guarantees of a decentralized account model while allowing users to login into NEX through a traditional web form that asks for a username and password.
To make sure that the engine is matching orders fairly, NEX will introduce provable fair off-chain matching. “Under this scheme, the off-chain matching engine follows a publicly specified deterministic algorithm. By combining this knowledge with a public ledger of the order in which trades have been sent to the exchange and fulfilled on the blockchain, any user can verify that the exchange is operating fairly.”  (My question: Who determines this deterministic algorithm and how?)
NEX will also expose a public JSON API that third-party applications can use to place, modify, and cancel orders on the matching engine.
(2) The NEX engine matches buyer/seller orders and submits them to a smart contract for execution.
(3) Because NEO stores data about users’ balances in a structure based on unspent transaction outputs, it is difficult for smart contracts to program interactions with a user’s NEO or GAS balance. To solve this, NEX introduced a payment service layer that converts global assets into smart contract tokens, which can then be easily interacted with by smart contracts on the NEO network. Example: NEO is converted to XNEO NEP-5 standard token, similarly to how ETH is converted to WETH ERC-20 standard within the 0x ecosystem.)
Why does this need a token?
The NEX token allows holders to claim a share of fees generated by the payment service and exchange. NEX holders can claim their profits through a staking process, where claims on the staked NEX operate similar to GAS claim calculations on the NEO network. In this way, token holders who stake NEX benefit directly from the success of the exchange services: as more fees are generated, holders will receive larger rewards. Hypothetical example: a user owns 1000 NEX, and NEX has generated fees in tokens equivalent to 100 million dollars at market value since they last made a claim. Assuming the user has staked NEX at a rate of 75%, they would be eligible for a claim worth $100M*(1000/50M)*0.75 = $1500. 
Token Valuation Model.
To better understand NEX’s token mechanics and long-term effects of different token distribution schemes, changes in exchange fees, addressable markets, etc., I created an interactive valuation model: https://docs.google.com/spreadsheets/d/1GFYUEO1J8qkMKcXoc__mKN0boHSA1Rc9M0WWLzWp5uQ
NEX token holders share exchange fees collected while their tokens were staked and regulators might quickly label NEX a security token, potentially forcing the team to change token mechanics. The team even mentions in their white-paper: “Please note: legal and regulatory policy may require changes in this token model.”
If NEX were to change their token mechanics, there could be interesting utility use cases for NEX tokens to incentivize safe and fair exchange:
- Voting on NEX matching engine development changes.
- Bounties for unfair exchange behavior.
- Once NEX introduces cross-chain exchange, hubs could be incentivized with NEX to monitor events that occur on one chain and push them to a smart contract on another.
NEX enables a long term vision of decentralized banking through a smart contract based funds management service. (1) Users buy assets from conventional services, (2) then interact with them on the NEO blockchain through the NEX smart contract. (3) These assets can also be traded on NEX through NEP-5 pairs, to enable cross-chain exchange. (4) Funds stored in the management contract have access to other services such as indexed investment accounts or peer-to-peer lending.
Most of the founding members have been in the blockchain space since 2014. Fabio holds a MSc in computational mechanics and variational multi-scale modeling. He’s the source of the original vision for the City of Zion community, which brought together the founders of NEX. Fabian has extensive knowledge in machine learning and AI through his PhD from ETH Zurich. NEX is also supported by NEO founders Da Hongfei and Eric Zhang which should help speed up its adoption within the NEO ecosystem.
IMO this is not just a power-point presentation, Fabio, Fabian, Ethan, and Luciano were all co-founding member of CoZ (City of Zion) with strong engineering backgrounds in blockchain scaling, machine learning and AI. In 5–10 years, blockchains will be mostly used by AI, seamlessly exchanging tokenized goods and services as end-users are anticipated to use them.
Community and network effects.
Although they do not have a telegram channel, NEX has a strong twitter following (over 20K) and will be attending various conferences and meetups throughout 2018. Being the very first DEX solution for NEO + backing from NEO founders themselves —creates a lot of hype around this project.
Their Github account is still looking empty, there’s only a handful of commits from 2 people.
Questions for the team:
- Since NEX smart contracts must hard-code all token pairs that are supported by the exchange, who will decide which token pairs to hard-code?
- How do you compare to 0x? Do you have plans to become the DEX platform for exchanges to build on top of?
- Could you provide more details on how hubs will monitor events that occur on one chain and push them to a smart contract on another? Will this work similar to the ‘channel watchers’ as in Raiden?
- To make sure that the matching engine is acting fairly, you propose the idea of provable fair off-chain matching. Under this scheme, the off-chain matching engine follows a publicly specified deterministic algorithm. Who determines this deterministic algorithm and how?
- “NEX smart contracts must hard-code all token pairs that are supported by the exchange.” What does this mean exactly?
 NEX White Paper: https://neonexchange.org/pdfs/whitepaper_v1.1.pdf
 Ethereum Design Rationale: https://github.com/ethereum/wiki/wiki/Design-Rationale#accounts-and-not-utxos
Would love your thoughts and suggestions!