3. BRIEF HISTORY OF ETH
•07-30 Birth
of Platform
•Birth of ERC-
20
2015
•Experiments
with Smart
Contracts
•DAO Birth
and Debacle
2016
ICO
Cryptokitties
2017
Ethereum
Futures
Uniswap
2018
Non-Fungible
Assets
Tether and
other
stablecoins
2019
•ETH 2.0
•DeFi2020
Hadean Archean Proterozoic
4. FOCUS TODAY: DEFI AND
DECENRALIZED EXCHANGES
Ethereum Network V1
Smart Contracts
Tokens (ERC-20, ERC-721, ERC-998,
…)
DeFi Application
Exchanges Casinos Games DAO
Ethereum Network V2
11. DECENTRALIZED EXCHANGES
Oversee security and transfer of assets
Use blockchain or distributed ledger
Typically use smart contracts
Users do not need to transfer their assets to the exchange
May be more anonymous then centralized exchanges
Could be less expensive as users do not need to pay middleman
12. DEX PROS AND CONS
Benefits
Users can list any token they like
Transparency and open protocols
Users to remain in control of their funds
Trustless, which means that users’ funds
and personal data are safe
Security and privacy are well preserved
Draw backs
Very new kid in the block
Slow
Expensive
Prone to instability, slowness and,
occasionally, scams
The same scalability problems as the
underlying blockchain
Sometimes struggle with liquidity
Inconsistent transaction costs
Inconsistent user interfaces
16. UNISWAP
Most popular decentralized exchange
August 30 surpassed major cryptocurrency exchange Coinbase in
volume after its users traded $426 million worth of cryptocurrencies
in a single day
Decentralized exchange based on user provided
liquidity reserves
24. UNISWAP ROUTER CONTRACT
interface IUniswapV2Router01 {
function factory() external pure returns (address);
function WETH() external pure returns (address);
function addLiquidity()
function addLiquidityETH()
function removeLiquidity()
function removeLiquidityETH()
function removeLiquidityWithPermit()
function removeLiquidityETHWithPermit()
function swapExactTokensForTokens()
function swapTokensForExactTokens()
function swapExactETHForTokens()
function swapTokensForExactETH()
function swapExactTokensForETH()
function swapETHForExactTokens()
function quote(uint amountA, uint reserveA, uint reserveB)
function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut)
function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut)
function getAmountsOut(uint amountIn, address[] calldata path)
function getAmountsIn(uint amountOut, address[] calldata path)
}
34. SWAP TOKEN TO ETH
// amountOutMin must be retrieved from an oracle of some kind
address[] memory path = new address[](2);
path[0] = address(DAI);
path[1] = UniswapV2Router02.WETH();
UniswapV2Router02.swapExactTokensForETH(amountIn, amountOutMin, path,
msg.sender, block.timestamp)
Our first meetup – January 2018
Legal use cases:
mechanism to enable decentralized record keeping
electronic currency, money equivalent, means of transfer of value
smart contracts coded on the blockchain, that are commonly used to issue and manipulate third party tokens
digital tokens, enabling tokenomics