El empresario y entusiasta de las criptomonedas Ivan Bogatyy nos cuenta cómo aprovecharnos del auge del mercado y por qué es importante seguir rigurosamente la estrategia elegida.
Seguramente todo el mundo ya haya oído hablar de CryptoKitties, un bonito juego que se volvió viral hasta el punto de sobrecargar toda la red ethereum. Esta es la historia sobre cómo ganamos 107.000 $ invirtiendo en CryptoKitties y batimos brevemente el récord de la venta más grande de la historia (actualmente la segunda más grande).
Más tarde, ganamos alrededor de 8.000 $ con un bot de arbitraje automatizado. Aunque jugar a este juego era emocionante, la creación del robot resultó técnicamente difícil, y esta parte de la historia será de interés para los que quieren entender la tecnología blockchain en general.
Mientras jugaba con mis contratos inteligentes de ethereum un sábado por la noche (2 de diciembre), algo estaba claramente fuera de lugar: las transacciones se paralizaron y tardaron mucho más de lo habitual en confirmarse. Una rápida investigación demostró que había entre 10 y 20 veces más transacciones pendientes de lo habitual, y muchas de ellas iban a la misma misteriosa dirección, 0x06012...66d. Así es como me enteré por primera vez del ahora famoso juego CryptoKitties.
Idea de inversión
A la mañana siguiente llamé a Oleg Ostroumov, un amigo cercano que gestiona un fondo de cobertura de criptomonedas en Rusia, para discutir este inusual fenómeno. Mientras que el juego de CryptoKitties era simplemente una curiosidad para mí, Oleg descubrió inmediatamente una lucrativa oportunidad de inversión.
En primer lugar, estábamos claramente entre los primeros participantes. En segundo lugar, el juego parecía tener todos los ingredientes para convertirse en viral, al igual que sucedió con Pokémon Go, y su etapa de crecimiento explosivo acababa de comenzar.
Ahora la pregunta era, ¿qué Kitties debemos comprar? En ese momento, los gatitos podían ser clasificados de cuatro maneras: los más caros primero, los más baratos primero, los más nuevos primero y los más viejos primero (el sitio web ha sido rediseñado desde entonces).
Oleg compró Founder Cats #4, #6, #8 a 50 ETH cada uno (25.000 $ en ese momento), y yo invertí 5.000 $ por una participación del 20% en Founder Cat #4. Nos mostrados bastante optimistas y los pusimos a la venta a 250 ETH, 5 veces el precio de compra.
Tardamos alrededor de una hora ya que fijamos un precio de gas demasiado bajo, y el servicio MetaMask no permitía subir el gas, por lo que tuvimos que volver a instalar la aplicación. Moraleja: si compra algo por 25.000 dólares, no intente ahorrar 20 $ en comisiones.
Inmediatamente después de colgar el teléfono, consideré las posibilidades de que esta fuera la forma más ridícula de malgastar 5.000 $.
El sutil arte de salir en la cima
Durante los días siguientes (2-5 de diciembre), el juego entró en una fase de explosión viral. Puesto que era adictivo, resultaba bastante difícil concentrarse en otra cosa. Claramente, la locura no iba a durar: la mecánica del juego era mucho más sencilla que la de Pokémon Go, con solo dos funciones disponibles, comprar los gatitos o criarlos para producir nuevos. Asumimos que podría durar un par de semanas como máximo, por lo que era importante formular una estrategia de salida racional de antemano y atenerse a ella.
Usamos tres métricas. En primer lugar, Google Trends mostró la frecuencia con la que la gente buscaba en Google información sobre el juego, lo que es un buen indicador de interés. En segundo lugar, GasGuzzlers muestra los contratos inteligentes que más gas consumen en la red y la proporción de gas que consumen (para CryptoKitties era ~4% cuando entramos y ~20% cuando alcanzó más popularidad). Tercero, observamos las condiciones del mercado y los precios de las ventas recientes en una aplicación extremadamente cómoda (https://kittysales.herokuapp.com/).
El 4 y 5 de diciembre, varios gatitos menos prestigiosos (#35, #78, #87) se vendieron por casi 200 ethers, por lo que confiamos en que nuestro precio de venta estaba bien ajustado. Sin embargo, el 5 y 6 de diciembre fue el mejor en todos los indicadores, y para finales del 6 de diciembre la popularidad estaba claramente en tendencia descendente. Observando esto, mantuvimos una llamada de emergencia el 6 de diciembre tratando de averiguar qué hacer con los Kitties, ninguno de los cuales se había vendido a nuestro precio de 250 ETH todavía. Quería volver a poner el Kitty a un precio más bajo de 100 ETH, mientras que Oleg se mantuvo firme con los 250 ETH. Dado nuestro desacuerdo sobre el valor del Kitty, hicimos el arbitraje obvio: le vendí mi participación del 20% a él considerando su valor en 100 ETH, duplicando así mi dinero en el acto. En ese momento no era consciente de que la felicidad solo me duraría 20 minutos…
Me quedé mirando el mercado por curiosidad. 20 minutos después de que Oleg me comprara mi parte, vi a nuestro Founder Cat #4 vendido al precio original de 250 ETH. Estaba tan seguro de que era Oleg que apenas me molesté en preguntarle. Cuando lo hice, sin embargo, me enteré de todo el poder del HODLing: era una compra genuina, no teníamos idea de quién era el comprador, y acababa de establecer el récord mundial de venta de un coleccionable en blockchain.
Arbitraje automático
Después de un inicio tan exitoso, decidimos pensar en qué otra manera podíamos beneficiarnos de este juego. El pico, obviamente, ya había pasado: nadie quería gastar mucho dinero ni siquiera por las mascotas virtuales más raras. Pero hubo una etapa de "cola larga", ya que los nuevos usuarios aún querían conseguir sus propios gatitos.
De esta manera decidimos intentar configurar un bot que ejecutaría un arbitraje automático de gatitos más baratos. Usamos la clásica estrategia de tres etapas:
- Determinar grupos de gatitos que deberían tener el mismo precio. Los parámetros que examinamos fueron Rarity, Cooldown y Generation (solo Gen 0 y Gen 1 eran lo suficientemente caros para justificar el esfuerzo). Los gatitos con los mismos valores de los tres parámetros se consideraron equivalentes.
- Comprar artículos con precios más bajos dentro de cada clase. En nuestro caso, solo compramos el Kitty más barato en cada conjunto de parámetros.
- Revender el artículo adquirido por más dinero. En nuestro caso, queríamos evitar una carrera con otros revendedores potenciales, así que pusimos a la venta cada Kitty a un precio ligeramente por debajo del segundo precio más barato.
Después de explorar varias librerías blockchain, nos dimos cuenta de que la refactorización de mi anterior código de Bancor funcionaba mejor. Al final, la estrategia elegida recordaba al entrenamiento frontal, solo que funcionaba al revés: el juego no permitía colocar una orden de compra antes de que los gatitos fueran transferidos a su propiedad. Por lo tanto, el bot tuvo que monitorear constantemente el mercado e inmediatamente comprar lotes que cumplían con los criterios especificados. En el nivel técnico, la solución podría implementarse de varias maneras:
- Después de ver el lote de espera, intente comprar el gatito en el mismo grupo. La cantidad de la compensación por su transacción puede ser ligeramente inferior al lote al que se dirige (por ejemplo, 24.999 GWEI frente a 25), o exactamente lo mismo. En el primer caso, corre el riesgo de no entrar en el bloque actual, y su transacción esperará la confirmación durante un tiempo prolongado, tal vez de varias horas. En el segundo caso, los mineros pueden darle a su solicitud una prioridad más alta, lo cual es bastante posible al mismo precio, y la transacción no se llevará a cabo.
- Espere la confirmación del lote e inmediatamente después coloque una orden de compra, estableciendo la recompensa más alta posible para que la oferta aparezca exactamente en el siguiente bloque.
¡Resulta difícil imaginar qué tipo de competencia se puede desarrollar en un juego aparentemente dulce! Los competidores usaron las mismas estrategias. Cada una de las opciones tenía sus propias ventajas, por lo que tuvimos que implementar todas las estrategias para aumentar las posibilidades de éxito (esto se puede hacer de la manera más simple posible ejecutando tres versiones del bot desde tres cuentas, una alternativa sería reutilizar el nonce en la misma cuenta, pero no vamos a detenernos en los aspectos técnicos).
Pseudocódigo del bot de arbitraje
Otra posibilidad que consideramos fue la siguiente: supongamos que desea comprar un gatito, y su precio disminuye lentamente de acuerdo con las reglas de la subasta. En lugar de hacer una compra, puede esperar hasta que aparezca otro postor por el lote, y luego intentar hacer bajar su precio. Implementar esta decisión hubiera sido divertido, pero el mercado se desplomó demasiado rápido.
Repercusiones
Más de un mes después de que el pico de publicidad desapareciera, recibimos una agradable sorpresa: alguien también había comprado el Kitty #6. 29 ETH estaba por debajo del precio de compra inicial, pero era una buena cantidad de dinero (además, el ethereum había duplicado su precio en ese momento).
El Kitty #8 restante recibe un gran cuidado y adoración por parte de Oleg. Tiene sus propias pegatinas para el portátil, camisetas e incluso un broche de plata hecho a medida. He oído que también está a punto de tener su propio canal de Instagram.
Al final, fue una lección muy práctica sobre manías especulativas. Aunque nos arriesgamos mucho, los dos casi duplicamos nuestro dinero, lo que fue un resultado bastante asombroso. Sí, no hay absolutamente ningún valor intrínseco garantizado o precio mínimo para los gatitos imaginarios. Sin embargo, todavía puede jugar este juego e incluso ganar. Y por supuesto, resultaba prácticamente imposible averiguar cuándo estallaría la burbuja.
Preparado por José Rodríguez