Token ECR20
Hoy veremos como crear un token ecr20, listarlo en Uniswap, crear un par nuestro y agregarle liquidez.
Crear Cuenta de MetaMask
Primero de todo tenemos que tener descargado MetaMask en nuestro navegador favorito.
Nos preguntara si somos nuevos en MetaMask, le daremos en crear wallet.
En este paso nos solicitara una contraseña, una vez escrita debemos de aceptar los términos y condiciones de MetaMask y le damos en Crear.
MetaMask nos dará unas Frases Secretas, esto sirve para recuperar la cuenta en caso que olvidemos la contraseña o cambiemos de equipo, se recomienda guardar o escribir en un lugar las llaves secretas.
Como ultimo paso MetaMask nos pedirá que confirmemos las frases secretas, una vez hecho esto ya tendremos nuestra cuenta de MetaMask y una dirección de ETH que nos permitirá enviar y recibir ETH, Tokens, interactuar con Dapps etc.
Fondear Cuenta de MetaMask
Ya con nuestra cuenta de MetaMask, el siguiente paso es fondear nuestra cuenta para poder crear nuestro token ECR20, para eso vamos a cambiar de Red ya que lo que vamos a hacer, lo haremos en una la red de pruebas de Rinkeby.
Le damos click donde dice Red Principal de Eth y seleccionamos la opción Red Privada Rinkeby y listo. Ahora necesitamos entrar al siguiente enlace faucet rinkeby.
Aquí solicitaremos que nos envíen Eth a nuestra dirección de MetaMask. Para hacerlo necesitamos publicar en Twitter o en Facebook la dirección a la cual queremos que lleguen los Eth y copiar el link de la publicación y pegarlo en donde dice Social network URL, y donde dice Give me Eth solicitaremos 18 Eth para esta prueba.
Compilar y Correr Contrato Inteligente
Listo ya tenemos nuestros 18 Eth para las pruebas. Ahora lo que sigue es compilar y enviar a la Red de Eth un contrato inteligente para la creación de un token ECR20. Contrato ERC20. Una vez tengamos el contrato ingresaremos a Remix. Remix es un IDE Online que nos permite desarrollar nuestros, compilar y mandar nuestros contratos inteligentes a la red de Eth.
Una vez en Remix, crearemos un nuevo archivo llamado ERC20.sol y pegaremos nuestro contrato inteligente y donde dice BusCoin lo cambiaremos por otro nombre el que Uds. quieran en mi caso le pondré TokenCoin.
Ahora buscaremos la opción Solidity Compiler, luego en compiler pondremos la opción de 0.6.12, que es la versión de Solidity que va a compilar IDE.
Ahora le damos en Compile ERC20.sol, ya que lo tengamos compilado tenemos que buscar la opción de Deploy & run transaction y buscamos la opción Enviroment y seleccionamos Injected Web3, al hacer esto nos saltara una ventana de MetaMask donde nos pedirá factorización y le damos aceptar.
Ahora nos vamos a la opción de Deploy ahi tendremos las opciones del Token. Como ser Name es el nombre de nuestro token, el Symbol es el símbolo, decimales vamos a poner 0 porque no vamos a tener fracciones y TotalSupply es la cantidad de tokens que vamos a emitir.
Le damos en transact y nos abrirá de nuevo una ventana de MetaMask solicitando permisos y le damos aceptar y listo ya tenemos creado nuestro token ECR20 a la espera de las confirmaciones por la red de eth.
En la consola de Remix nos debe de aparecer algo similar cuando las transacción se haya confirmado, tendremos un link ingresando a el podemos obtener la dirección de nuestro contrato inteligente y la Copiamos.
Agregar Token a MetaMask
ya que tengamos nuestra dirección de contrato vamos a MetaMask y hacemos click en la opción de Agregar Token.
Una vez en la pantalla de Agregar Token, buscamos la opción de Token Personalizado.
Pegamos nuestra dirección de Contrato y en casi todos los casos MetaMask Obtiene el Símbolo del Token y los decimales en caso que no hay que poner lo mismo que se puso en el deploy del Contrato, le damos en Siguiente.
Nos salen todos los token creados y le damos a Agregar tokens
Uniswap
como ultimo paso veremos como crear un par TKCN / ETH y como agregarle liquidez a ese par a partir de un pool. Para esto necesitamos ir Uniswap.
Una vez en Uniswap vamos a conectar nuestra wallet le daremos en la opción de Connect a wallet.
Seleccionamos MetaMask
Nos aparecerá la ventana de MetaMask Pidiendo Autorización y le damos siguiente.
Listo ya tenemos conectado nuestra wallet de MetaMask con Uniswap. Ahora nos vamos a Pool
Ahí tendremos la opción de Create a pair la seleccionamos
Nos aparecerá la siguiente pantalla donde vamos a tener que agregar nuestro token, para eso tenemos que copiar la dirección del contrato de nuestro token. seleccionamos la opción Select a token y ahí pegamos nuestra dirección del contrato.
Una vez pegada la dirección del contrato inteligente Uniswap automáticamente identifica nuestro token y nos muestra el símbolo de nuestro token, seleccionamos el token.
Ahora vamos a crear una liquides para nuestro token, como tenemos solo 10 mil token entonces, los vamos a poner todos y en la parte de ETH vamos a agregar 10 Eth, con esto nos quedara que 1 Eth equivale a 1000 TKCN y 1 TKCN equivale a 0.001 Eth. Le damos a Approve TKCN. MetaMask nos pedirá permiso, se lo damos y esperamos a que se confirme nuestra transacción.
Una vez la transacción este aprobada nos aparecerá la opción de Supply le damos click.
Nos mostrara esta pantalla con la información del Pool que vamos a crear, donde nos dice la cantidad de Eth y de TKCN que vamos a depositar y los cambios donde 1 Eth = 1000 TKCN y 1 TKCN = 0.001 ETH y le damos en Create Pool & Supply
MetaMask nos pedirá que confirmemos la orden y una vez confirmada tendremos que esperar a que la transacción se confirme. una vez se confirme regresamos a la pantalla de pool y tenemos que importar el pool creado, para eso le damos en Import it.
Le damos en Select a Token y tenemos que volver a poner nuestra dirección de contrato de nuestro token y lo seleccionamos.
Nos saldrá la información de nuestro pool y le damos a la flecha y nos saldrá ya el pool en la pantalla principal.
Listo ya tenemos el pool creado.
Revisando mi Wallet de MetaMask podemos ver que mis TKCN ahora dice 0 y solo tenemos 8 ETH ya que agregamos esos tokens y eth al pool.
Ahorra nos vamos a Swap y voy a comprar 10 TKCN. Abajo nos sale algo de información como ser el impacto de nuestra compra al precio de nuestro Token, le damos en Swap, confirmamos la transacción en MetaMask y esperamos a que la transacción se confirme.
Listo ya tengo mis 10 TKCN y si quiero volver a comprar mas tokens, nos daremos cuenta que el precio aumento de nuestro token esto se debe a que estamos generando mercado a mayor compradores el precio del token se sube y a mayor vendedores el precio baja.
Conclusiones
Como podemos ver nos nada difícil crear un token, agregarle liquidez, con esto podemos hacer muchas cosas en el mundo real como crear tokens para la venta de café, vinos, Camisetas, etc. que cada token emitido pueda ser cambiado por producto real. De igual manera dejo link de repositorio de un ejemplo de un Exchange usando el sdk de uniswap y ethers. Ticket Exchange