Thorchain (RUNE): Un protocolo que busca ser un DEX cross-chain

CTF Capital
14 min readOct 16, 2020

--

Intro

Con el crecimiento exponencial de los DEXs que se ha visto este año, la duda que podía surgir hace un poco menos de un año sobre el product market fit y la utilidad de estos protocolos de intercambio descentralizados quedó completamente inválida.

Uniswap, Balancer, Synthetix, Curve o Aave por citar solo a algunos, se posicionan hoy en día, gracias a la cantidad de tokens soportados, la liquidez disponible y el volumen transaccional diario como la base fundamental del ecosistema descentralizado.

Sin embargo, todos estos protocolos se enfocan en la blockchain de ethereum, pudiendo dar soporte únicamente a tokens ERC-20 y dejando de lado lo que es el comercio multi-blockchain, mercado completamente dominado por los CEX (Exchanges centralizados).

Thorchain es un proyecto que intenta atacar esta misma problemática, se presenta como un marketplace descentralizado cross-chain, permitiendo intercambiar criptomonedas de diferentes blockchains sin custodia de tercero y sin favorecer ninguna blockchain en particular.

Si bien existen muchas blockchains, el mercado más importante y de mayor interés hoy en día, es sin duda el puente Ethereum/Bitcoin. Con el crecimiento de DEFI, la sinergia entre los dos proyectos es más grande que nunca, y si bien las soluciones como RenBTC, WBTC, sBTC o tBTC permiten usar una versión sintética o ‘’pegged/wrapped’’ de bitcoin, estos proyectos demuestran el interés creciente de poder pasar de una blockchain a otra de manera descentralizada. Además de la posibilidad de puente entre las dos cadenas, todos los proyectos citados anteriormente que buscan traer a bitcoin sobre la blockchain de Ethereum demuestran que los Bitcoiners buscan generar rendimientos pasivos con los bitcoins que tienen. Thorchain sería uno de los primeros proyectos donde se podrían stakear Bitcoins nativos y generar rendimientos aportando liquidez al protocolo de Thorchain sin tener que otorgar la custodia a un ente centralizado y sin la necesidad de transformarlo en una versión sintética (RenBTC, WBTC, sBTC o tBTC).

Actores principales del protocolo

Como en cualquier protocolo descentralizado, para que el sistema pueda correr solo se necesita la participación de varios actores con incentivos propios pero que de manera conjunta crean un marketplace seguro, descentralizado, líquido y escalable.

En esta etapa, la blockchain de Thorchain tiene un funcionamiento bastante clásico, que se viene viendo en muchas DAOs, encontramos la participación de 4 actores mayores con distintos roles.

Sin entrar en excesivos detalles se va a enumerar quiénes son, qué roles tienen y qué incentivos los lleva a cumplir las tareas que hacen.

Los Stakers o Liquidity Prooviders

El staker, de la misma manera que se pueden encontrar en cualquier DEX hoy en día, es el encargado de aportar liquidez al sistema. El rol del staker es simplemente comprometer una cantidad de su capital en un pool de liquidez para que los usuarios puedan comprar/vender entre un asset y otro.

Por haber aportado liquidez, los stakers tienen dos tipos de recompensas, el primero es el swap fee, osea la comisión que se les cobra a los usuarios por cambiar un asset por otro. La segunda recompensa que cobran los stakers es lo que se llama la recompensa del sistema, es simplemente la emisión del token de governance y de solvencia del sistema llamado RUNE.

Queda claro que el retorno generado por los stakers al comprometer su capital depende de muchos factores, por un lado, mirando únicamente la parte del swap fee, podemos nombrar los siguientes puntos:

  • el porcentaje de capital del pool
  • el volumen del pool
  • el tamaño de los trades
  • cambio de precio de los assets del pool
  • Incentivo pendulum (Se explicará más adelante)

Por el lado de la recompensa de sistema, depende principalmente de los tokenomics de RUNE osea el programa de emisión, y por supuesto el precio del token ya que la recompensa es simplemente: Cantidad de token entregado*precio del token.

Es importante citar los riesgos que los stakers incurren a la hora de llevar a cabo esta tarea o mejor dicho el costo de oportunidad que incurren haciendo esta tarea en vez de un simple Buy and hold. Aquí entra en juego el ‘’Impermanent Loss’’, al usar un algoritmo de AMM, el cambio pronunciado de precio entre los dos assets aportados al pool puede llevar al staker a quedarse con más o menos porcentaje de un token cuyo valor ha bajado notoriamente y por ende el valor total redimible de sus assets es menor en dólares que simplemente haberse quedado con los assets sin haber participado a un pool de liquidez.

Los usuarios o Swappers

El usuario es sin duda el actor más importante, que por el uso y las funcionalidades que va utilizando afecta directamente al resto de los actores.

El usuario, mediante la blockchain de Thorchain puede intercambiar cualquier asset por otro, siempre y cuando estos dos estén listados y las blockchains estén conectadas con la blockchain de Thorchain.

Es importante notar lo siguiente, RUNE el token de governance, es el encargado de la solvencia pero también de la función cross-chain.

Cuando uno quiere intercambiar dos assets de distintas blockchains, en realidad el protocolo de Thorchain usa lo que se llama continuous liquidity pools, cada pool está compuesto de un asset de blockchain conectada con Thorchain y del token RUNE.

En realidad, cada asset del protocolo tiene su propio pool con RUNE; y un intercambio entre bitcoin y monero por ejemplo, conlleva la venta de bitcoin por RUNE en el pool Bitcoin/RUNE y después la venta de RUNE por monero en el pool Monero/RUNE.

Obviamente esta operatoria está completamente automatizada por el protocolo, y ni el staker ni el usuario ven efectivamente este mecanismo ocurrir, con lo cual no toman posesión de los RUNEs en ningún momento.

El costo que tiene que pagar el usuario para poder intercambiar los assets se divide en dos partes, la primera es el swap fee que incentiva los stakers a seguir aportando liquidez, y la segunda es el slippage que depende exclusivamente del tamaño del trade efectuado.

Los traders/arbitradores

Como se viene viendo en cualquier protocolo descentralizado, los traders son una parte fundamental del ecosistema, ya que en búsqueda de ganancia, actúan como balanzas del sistema, comprando activos desvalorizados en ciertos protocolos y vendiendolos más caros en otra plataforma de manera de rebalancear los pools usados y restablecer el precio justo de mercado.

Esta búsqueda constante de oportunidades de arbitraje en distintas plataformas por parte de los traders es el mecanismo que le otorga los precios a los activos de la blockchain de Thorchain, ya que el protocolo no requiere de Oráculos como se pueden encontrar en otros protocolos.

Estos actores no son inherentes al protocolo, pero supervisan los precios de los activos para que no ocurran desfasajes muy grandes entre el precio de mercado y el precio en el protocolo.

Es importante notar que estos actores no están incentivados por el protocolo en si, no se les otorga ningún tipo de rendimiento por hacer el trabajo que hacen, gozan únicamente del rendimiento que el trabajo de arbitraje les puede dar, en comparación con los stakers por ejemplo no se les otorga ningún token de RUNE.

Los operadores de nodos

Los nodos, como en cualquier blockchain, son los que están encargados de monitorear y validar los movimientos de los activos de la red. Los nodos de Thorchain trabajan en conjunto para establecer una red que monitorea, válida y transmite las transacciones en una red de varias blockchains (Bitcoin, Monero, Ethereum, ERC-20, etc).

Más allá de los activos digitales que uno tiene que comprometer al sistema, operar un nodo requiere de una infraestructura de servidores importante y de conocimientos de informática avanzada, con lo cual es una tarea que lógicamente pocos actores pueden emprender.

Hablando de capital, los nodos necesitan comprometer y lockear en el sistema un mínimo de 1 Millón de RUNE, estos RUNE sirven como fianza y permiten incentivar el nodo a comportarse de manera justa y cumplir las reglas del sistema.

El protocolo tiene una serie de reglas y penalidades que los nodos pueden incurrir cuando estos últimos se comportan maliciosamente.

Los nodos con capital comprometido y con activos lockeados en el sistema, al igual que los stakers, son recompensados con el token RUNE.

La política de emisión del token es pública y va variando según el incentive pendulum, pero inicialmente los operadores de nodo ganarían los ⅔ de los tokens emitidos, mientras que los stakers ganarían el resto, es decir ⅓.

Es importante notar que si bien las recompensas son emitidas en cada bloque, la recompensa es entregada a los nodos únicamente cuando estos salen de la red y dejan de operar. La cantidad de nodos que operan es fija y va rotando en lo que se llama un ‘’ Churning event’’, en este evento una cantidad de nodos salen de la red y otros entran, este método permite maximizar la descentralización pero también expulsar los nodos maliciosos.

Funcionamiento del protocolo

El diseño del funcionamiento de la blockchain de Thorchain se basa en la conexión de blockchains mediante pools de liquidez conectados uno con el otro mediante el token RUNE. El protocolo no favorece ninguna blockchain en particular y su estructura hace que el trading, el swapping y el staking se puedan hacer de manera libre.

Thorchain usa el framework Cosmos SDK basado en el Byzantine Fault Tolerant (BFT) que usa el Tendermint engine, conocido por aplicaciones de blockchains PoS y PoA.

La red obliga a los nodos a lockear una cantidad de RUNE para poder ser operativos, este punto es de suma importancia, ya que es precisamente esta fianza que permite asegurar el comportamiento esperado. Las penalidades por proponer bloques maliciosos, o robar los assets de los pools están contempladas y usan el capital de RUNE para penalizar económicamente a estos nodos.

La totalidad de las operaciones más importantes están construidas sobre Cosmos SDK, herramienta ya comprobada y testeada para manejar puentes multi blockchains.La estructura del protocolo se puede ver en la siguiente imagen, cada blockchain conectada al protocolo tiene el módulo Bifrost que es un módulo que se ocupa del puente con cada cadena, configuraciones y detalles de las transacciones.

Los nodos conectados empiezan a monitorear los Vaults de cada cadena conectada, cuando notan una transacción entrante, esta transacción viene convertida en una transacción testigo en la blockchain de Thorchain. Los parámetros de esta transacción testigo son casi lo mismos para cada cadena conectada y se pueden ver bajo esta estructura en la imagen siguiente.

La red de Thorchain procesa cualquier transacción observada y verifica la cantidad de nodos que reportan la misma transacción, cuando se llega a una gran mayoría de nodos con una transacción idéntica entonces la red válida la transacción.

Cada cadena tiene su cliente, que sirve para conectarse al módulo del observador que es el que posee la mayoría de la lógica operativa y que se ocupa de generar las transacciones testigo cuando se registran cambios en el Vault de cada cadena.

La máquina de estado de Thorchain se ocupa de generar la lógica una vez que se registra la transacción, puede ordenar txs, computar cambios de estado y sobretodo crear Tx salientes (Tx out) y almacenarlas en el Key-Value store.

La transacción saliente contiene información sobre por ejemplo la cadena a donde se debería mandar la Tx, la Address de destino o desde que Vault salen los fondos. También guarda información sobre la transacción que inició el proceso y la que lo cierra.

Se pueden ver los distintos módulos presentes, con el ‘’signer’’ que descarga la transacción y la configura para cada cliente de cadena respectivamente, o por ejemplo el módulo TSS que coordina la firma de la transacción, y finalmente la transmisión de la transacción a la cadena adecuada.

Estos estados cross-chain es lo que conecta la blockchain de Thorchain a las otras blockchains, y permite tener pools de assets donde pueda haber transacciones entrantes y salientes hacia los distintos actores del protocolo. Estos estados llamados ‘’ 1 way state pegs’’, se denominan así porque justamente los distintos assets no están vinculados entre sí como por ejemplo en WBTC, pero sino que existe un vínculo entre los distintos estados de las blockchains. El consenso en la blockchain de Thorchain se consigue por mayoría, y no por prueba matemática; cuando la gran mayoría de los nodos ven lo mismo, esto se considera verdadero. Los nodos ejecutan clientes para cada blockchain conectada y estos registran parámetros claves para poder demostrar lo que pasa y lo que vieron en cada cadena.

Threshold signature scheme

Al usar un sistema de firmas, la necesidad de mover fondos on-chain en diferentes blockchains conlleva una cantidad de limitaciones y riesgos.

Para que los nodos manejen millones de dólares on-chain en diferentes blockchains y velen por la seguridad de la totalidad de la red, Thorchain usa un sistema de Threshold signatures.

Este sistema provee un nivel de seguridad muy alto y una toma de riesgo mínima para poder generar y firmar direcciones al querer mover fondos on-chain. El sistema TSS, de manera más general permite que N actores compartan el poder de firmar digitalmente bajo una misma Pub Key. La TSS permite evitar el uso de una única llave/firma y reparte la responsabilidad entre varios actores/nodos.

Incentive Pendulum

Como ya se pudo comentar anteriormente, los stakers y los nodos son dos actores primordiales de este protocolo y de cualquier protocolo DEFI en general. Los incentivos económicos de estas dos partes dependen drásticamente de la emisión de RUNE.

El incentive pendulum es un sistema que mantiene la red segura y eficiente mediante el cambio de la política de emisión de RUNE que impacta directamente los retornos de los stakers y los nodos. La cantidad y la repartición de RUNE en la red puede quedar muy desbalanceada y por ende insegura, pudiendo haber demasiado capital en los pools de liquidez o demasiados RUNE lockeados por los nodos. En el primer caso la red se vuelve insegura, en el segundo caso se vuelve altamente ineficiente, más adelante se explicará porqué.

La misión del incentive pendulum es simplemente aumentar la recompensa de los nodos y bajar el de los stakers cuando el sistema es inseguro y viceversa cuando el sistema es ineficiente.

La gran mayoría de las veces el protocolo se puede encontrar en un estado óptimo, inseguro o ineficiente

Estado optimo

En el estado óptimo, se puede ver que 50% del capital está lockeado por los nodos y este está compuesto en su totalidad por el 67% de los RUNE, mientras que la parte de los liquidity pools está compuesta por 50% de RUNE (33% de la totalidad) y 50% de assets.

Estado inseguro

En este estado, se puede ver que el capital en los pools es mayor que el capital lockeado por los nodos, osea que la cantidad de RUNE en los pools es igual a los RUNE colateralizados por los nodos. Este estado es altamente peligroso, ya que los Nodos están económicamente incentivados a quedarse con los fondos de los pools y perder los RUNE lockeados.

En este estado el incentive pendulum aumenta la parte de recompensa para los nodos y disminuye la de los stakers, de esta manera más nodos están incentivados a participar y menos stakers son dispuestos a aportar fondos ya que las recompensas son menores.

Estado ineficiente

En este estado, se puede ver que el capital en los liquidity pools es muy inferior al capital colateral de los nodos. Este estado es altamente ineficiente ya que el capital usado para asegurar los assets es mucho mayor al valor de los assets mismos. Haciendo una analogía más didáctica, sería como comprar un bóveda de 10 000 dólares para guardar un objeto de 7 dólares de valor, es altamente ineficiente y sin sentido.

En este caso, el incentive pendulum se encarga de hacer el ajuste inverso al que se vio anteriormente; aumentando la recompensa para los stakers y bajando el reward de los nodos, incentivando un mayor aporte de liquidez por parte de nuevos stakers.

Governance

El protocolo de Thorchain comparado con otras DAOs apuesta a una política de governance muy sencilla y minimalista.

Al querer mantener la seguridad de la red, asegurándose que los nodos no se comuniquen entre sí, los cambios que se pueden llevar a cabo son pocos pero esenciales. Se pueden llevar a cabo 4 tipo de cambios:

  • Assets listados en Thorchain
  • Cadenas listadas en Thorchain
  • Upgrade del protocolo
  • Cantidad de nodos participantes en la red

El token RUNE

Los tokens de governance hoy en día son moneda corriente, cualquier protocolo DEFI lanzado este año tiene su propio token. Casi la totalidad de estos tokens tienen una sola función que les otorga el único valor semi-intrínseco que pueden tener: la votación.

Al poseer estos tokens, el usuario puede proporcionalmente a la cantidad que tiene, participar en la decisiones más importantes del protocolo como por ejemplo los upgrades, cambios de emisión, cantidad de nodos o nuevas funcionalidades.

Sin embargo estos tokens no tienen valor ni utilidad económica intrínseca, es por esta razón que el token RUNE y su función económica en la red, se destaca y vale la pena analizar comparado a otros protocolos.

Los tokenomics de RUNE son simples de entender cuando uno analiza la función del incentive pendulum y lo que eso significa.

El protocolo de Thorchain como se pudo ver anteriormente, se encuentra en el estado óptimo cuando los assets en los liquidity pools y los fondos lockeados por los nodos son aproximadamente iguales.

Sabiendo que los liquidity pools están formados por pools de xToken/RUNE balanceados 1:1 en USD, se puede afirmar que en estado óptimo en los pools, se tiene la misma cantidad de assets listados que de token RUNE.

Por otro lado, los fondos lockeados por los nodos son equivalentes a la totalidad del valor de los pools y están compuestos 100% por tokens RUNE.

Por ende se puede deducir que hay un ratio de RUNE/Assets de 3 a 1 en el sistema cuando este está en estado óptimo, esto quiere decir que si hay 300 millones USD de assets en los liquidity pools se necesitan 900 millones USD de RUNE en el protocolo para que este funcione bien.

Al haber una cantidad finita de RUNE en circulación, este ratio dolarizado de 3 a 1 le confiere directamente un valor intrínseco al token porque es el encargado de mantener el protocolo colateralizado y líquido.

Conclusión

Los DEXes sobre la blockchain de ethereum para tokens ERC-20 son numerosos y ya están ampliamente establecidos en la industria, sin embargo las soluciones cross-chain son técnicamente complicadas de crear sin tener que contar con un custodio o un elemento centralizado en el protocolo. Hoy en día, Thorchain es uno de los protocolos que está más avanzado en transacciones cross-chain con una descentralización importante y que cuenta con un proof of concept exitoso en Bepswap.

Logrando transacciones cross-chain descentralizadas, uno puede imaginarse que un porcentaje muy alto de las operaciones en exchange centralizados tendrán lugar en opciones descentralizadas como Thorchain. Estas soluciones son el último escalón que le falta al ecosistema DEFI para poder separarse y ser verdaderamente independiente de los exchanges centralizados. El lanzamiento de la mainnet de Thorchain está agendado para el Q1 de 2021, será sumamente interesante ver cómo el proyecto avanza, que traccion generará cerca de la fecha de lanzamiento y si algunos protocolos competidores surgen en este segmento.

Lorenzo Valente — Analyst CTF

--

--

CTF Capital

CTF Capital is a fund manager specializing in crypto assets