domingo, 31 de octubre de 2021

Mundo Bitcoin: Cómo evitar que falle una transacción de Ethereum usando un límite más alto de gas

Por Victor Hernández

Con esto de que cada vez hay más gente interesada en comprar Shiba Inu y otros tokens ERC-20 (o sea tokens basados en Ethereum) voy a publicar este tutorial para prevenir un problem muy común cuando se hacen transacciones de Ethereum: Que se cancele la transacción por falta de gas. Este problema puede ser muy costoso para los usuarios nuevos o inclusive para los usuarios experimentados que no ponen suficiente cuidado a la hora de hacer transacciones de Ethereum.

Recomiendo leer con mucho detenimiento este tutorial para evitar perder el dinero de la gas si se cancela una transacción.

Para empezar vamos haciendo algunas definiciones:

GAS: Se le llama "gas" (gasolina) a una cantidad de Ethereum que hay que pagar a la red Ethereum para hacer transacciones con Ethereum o con tokens basados en Ethereum. Es decir, es una tarifa de minería. El precio de la gas varía dependiendo de qué tan congestionada esté la red de Ethereum. Mientras más transacciones hay, más cara está la gas.

GWEI: La gas se mide en GWEI, que quiere decir "Gigawei", que es la cantidad más pequeña posible de Ethereum. En las últimas fechas la gas ha estado costando entre 54 y más de 300 GWEI debido a lo congestionada que ha estado la red Ethereum desde su actualización más reciente.

GAS LIMIT: El gas limit, o límite de gas, es la cantidad más alta que está uno dispuesto a ofrecer por una transacción. El límite lo calcula el monedero de Ethereum que uno está usando, como MetaMask, pero uno lo puede ajustar de manera manual. Es importante saber esto y aprender a ajustar el límite de gas porque el precio de la gas sube sin avisar, y si sube más de lo que sugere MetaMask, la transacción se cancela pero uno pierde la gas.

TRANSACCIÓN CANCELADA: Una transacción de Ethereum se cancela cuando no se ofrece suficiente gas para confirmarla. El problema es que si bien la transacción no ocurre, la red Ethereum le quita a uno la gas que ofreció originalmente. Este "castigo" ocurre para desincentivar que haya transacciones spam que congestionen la red.

Lo que buscamos con este tutorial es evitar que la transacción se cancele ofreciendo un límite de gas más alto del que sugiere MetaMask.

CÓMO EVITAR UNA CANCELACIÓN

Para evitar cancelar una transacción de Ethereum hay que aumentar la cantidad de gas que uno está dispuesto a pagar. Supongamos que el sistema dice que hay que pagar 35 dólares de gas. Entonces uno ofrece 50 dólares de gas. Así si la gas sube, se cubre el aumento. Y si sube, digamos a 35 dólares, sólo se cobran los 35 dólares, no los 50 que uno ofreció.

Para ofrecer más gas por transacción hay que cambiar el límite de gas. Esto se hace en MetaMask al hacer una transacción. Al iniciar una transacción, MetaMask va a pedir verificar si se quiere aceptar la transacción. Aparecerá un menú con la palabra EDIT. Picamos en EDIT y sale un menú parecido a este:



En las versiones más recientes de MetaMask el menú es distinto, pero no importa. Lo que necesitamos ubicar es el campo que dice GAS LIMIT. En la gráfica lo indico con una flecha roja.

El campo GAS LIMIT tiene la cantidad de gas que sugiere MetaMask (o la red Ethereum, más bien). Para aumentar la cantidad a ofrecer de gas simplemente hay que cambiar el número por un número más alto. En la gráfica aparece el número 155096. Yo lo aumentaría por lo menos a 255096. Esto debido a que si la gas aumenta mientras se está verificando la transacción, hay suficiente gas para pagar por el aumento.

OJO: No se puede cambiar el límite de gas a una cantidad que uno no tenga. Si se va a cambiar el número de 155096 a 255096, uno tiene que tener suficiente Ethereum en Metamask para pagar 255095 GWEI. Dicho de otro modo, si la gas está a 35, y uno va a ofrecer 50 por si aumenta mientras se verifica la transacción, uno debe tener por lo menos 50 dólares en MetaMask para gas. Si uno trata de ofrecer más gas de lo que se tiene en MetaMask, la red no va a permitir la transacción.

OJO2: La gráfica que estoy usando aquí es de Julio pasado, cuando la gas aún estaba muy baja. Hoy en día es prácticamente imposible pagar menos de 35 dólares por transacción de Ethereum en sitios como ShibaSwap.com. Esto va a cambiar cuando ShibaSwap.com lance su propio blockchain, llamado SHIBARIUM. Entonces las transacciones para comprar o enviar Shiba Inu van a bajar de precio de manera significativa.

El caso es que la única manera de evitar que una transacción de Ethereum se cancele--y se pierda la gas--es ofreciendo más gas de lo que pide la red. Y esto se hace aumentando el límite de gas en MetaMask para cada transacción.

Confieso que a mi me cancelaron 3 transacciones antes de que supiera lo del límite de gas. Y recientemente, por estar distraído, me cancelaron una transacción de 30 dólares de gas por no aumentar el límite de gas. Así que siempre hay que verificar el límite de gas para que la transacción no se cancele.

Finalmente: El precio de la gas varía dependiendo de la hora del día. Suele estar más bajo en la madrugada, cuando hay poca actividad en la red Ethereum, y entre las 7 de las 10 de la noche, cuando hay menos actividad en Asia, pero hay días en los que la gas está alta todo el día. Para saber a cómo está la gas se puede ir a coinmarketcap.com y revisar el precio de la gas en la barra de  información de hasta arriba. Hasta la derecha está el precio de la gas en el momento. El precio se pone razonable cuando está entre 50 y 60 GWEI. Más de eso, en mi opinión, es de pensarse o de plano de evitarse.




No hay comentarios.:

Publicar un comentario