Versión del protocolo Reserve 2021

El trabajo de documentación de la nueva versión del protocolo sigue en curso. Sigue nuestra cuenta @reserveprotocol en Twitter para ser notificado sobre la fecha de lanzamiento del protocolo.

Resumen

El protocolo de Reserve permite a cualquier persona crear criptomonedas estables respaldadas por criptoactivos de la cadena de bloques de Ethereum. Las criptomonedas creadas con el protocolo de Reserve son llamadas RTokens.

Como ocurre con cualquier sistema de contratos inteligentes de la cadena de bloques, el resultado final puede desviarse un poco del plan inicial, y por lo tanto es más seguro esperar que una aplicación sea usada por un período largo de tiempo antes de confiar en que se obtendrá el resultado esperado. Este resumen y la subsiguiente documentación describen el resultado esperado de nuestro protocolo.

Cuando se crea un nuevo RToken, los tokens de esa implementación pueden ser emitidos proveyendo todos los colaterales requeridos o en sentido inverso, la totalidad del circulante puede ser redimido por colateral en cualquier momento. Por lo tanto, un RToken va a tender a tener el mismo valor de mercado que el valor de la cartera de colaterales que lo respalda, dado que cualquier valor más alto o bajo terminará siendo arbitrado rápidamente.

Los RTokens pueden ser asegurados, lo que significa que si uno de los criptoactivos que lo respalda entra en default, hay un fondo de garantía de libre participación que asegura cualquier pérdida. Este fondo es construido por los tenedores de RSR, quienes pueden elegir qué RToken asegurar según la relación riesgo/beneficio que perciban de cada uno. En caso de que un colateral entre en default, parte o la totalidad del fondo de garantía será automáticamente confiscado de manera proporcional según el nivel de participación de cada tenedor y según el tamaño de la pérdida, y el protocolo automáticamente usará el valor confiscado para defender el ratio de respaldo del RToken.

Los RTokens pueden generar una renta, la cual puede ser usada para incentivar a los tenedores de RSR a participar en su fondo de garantía. La renta puede provenir de comisiones por transacciones, de incentivos proveídos por las entidades que emiten ciertos colaterales o por el interés obtenido del préstamo de colaterales dentro de la cadena de bloques. A través de la gobernanza del RToken se puede dirigir parte o la totalidad de esta renta a los participantes del fondo de garantía como incentivo. Si un RToken no tiene renta o si no dirige ninguna proporción de su renta a los participantes de su fondo de garantía, es muy poco probable que tenga tenedores de RSR interesados en participar en su fondo de garantía y por lo tanto no estaría asegurado en caso de que algún colateral entre en default.

Cada RToken está gobernado de manera independiente y cada uno tiene un modelo de gobernanza propio. Los RTokens iniciales que el equipo de Reserve lanzará van a tener modelos de gobernanza relativamente simples, los cuales probablemente evolucionen con el tiempo. Esa evolución dependerá de los que tengan el control de la gobernanza.

La gobernanza de un RToken no solo define la cartera principal de colaterales que lo respaldará, sino también la jerarquía en forma de árbol de los tokens alternativos de respaldo que se comprarán en caso de default de cada uno de los activos colaterales. Por lo tanto, existe una cartera de colaterales y un conjunto de tokens de respaldo, seleccionados algorítmicamente, que se comprarán automáticamente en caso de que un colateral entre en default. Se considera que un colateral ha entrado en default si su valor ha disminuido un porcentaje predeterminado por un período de tiempo predeterminado en comparación con alguno de los tokens de respaldo disponibles.

En el caso de los RTokens que el equipo de Reserve está concibiendo, entrar en default será una situación extremadamente rara (en inglés también llamado “black swan event” o “evento cisne negro”), no será algo que ocurra regularmente. Pero aún así, podría ocurrir, y esa es la función del fondo de garantía.

La gobernanza de un RToken puede hacer cambios en la composición de la cartera de colaterales regularmente. Cuando la cartera es modificada, o en el caso de un default, el protocolo hace compra-ventas automáticas en la cadena de bloques para lograr la nueva composición de colaterales deseada. Estas compra-ventas son hechas gradualmente, de acuerdo a la disponibilidad de liquidez de la cadena de bloques, a través de mercados automatizados de liquidez mejor conocidos como AMMs por sus siglas en inglés, y a través de subastas por lote.

Tokens iniciales

El equipo de Reserve lanzará, junto con el protocolo, dos RTokens:

El primero es una criptomoneda estable 100% equivalente al dólar americano, respaldada únicamente por criptomonedas fiat (como por ejemplo USDC, etc.), muy similar a la actual RSV. Este RToken será prácticamente igual al RSV que conocemos hoy, su valor estará ligado al dólar americano, no generará renta, no estará asegurado, y continuará siendo gobernado por el equipo de Reserve a través de un sistema multisig con timelock, de la misma forma que RSV lo está actualmente.

El segundo RToken es una criptomoneda estable ligada al dólar americano (USD) que sí generará renta, la cual estará colateralizada por tokens USD del ecosistema “DeFi”, como por ejemplo: cUSDC, cDAI, aDAI, cUSDT, aUSDT, and aBUSD. Debido a que estos tokens generan renta, el RToken naturalmente se apreciará con respecto al dólar americano (USD), siempre y cuando los protocolos subyacentes y las entidades emisoras trabajen de la forma esperada.

Una porción de la renta de este RToken puede ser ofrecida como incentivo a los participantes del fondo de garantía, a través de la reducción de la cartera de colaterales por la cual el RToken se puede canjear, y otra porción puede ofrecerse a los tenedores del RToken. Esto significa que la renta producida por el colateral estaría dividida entre los tenedores del RToken y los participantes del fondo de garantía.

El segundo RToken va a ser gobernado por los participantes del fondo de garantía, a través de un sistema de votación similar al del protocolo Compound, donde un RSR equivale a un voto.

Video explicativo del protocolo

Este video ofrece un tour del nuevo protocolo de Reserve y detalla las diferencias que hay con la antigua versión del protocolo:

Funciones del protocolo

La presente documentación es una versión simplificada. Más adelante, junto con el lanzamiento del protocolo o quizás antes, se publicará una versión más completa de la misma.

Lanzamiento de un RToken

A través del contrato Factory cualquier persona puede crear un RToken en Ethereum, de manera similar a como cualquiera puede crear un par en Uniswap. Esto puede hacerse interactuando directamente con el contrato Factory a través de cualquier herramienta que permita ejecutar transacciones en Ethereum, o a través de alguna dApp o interfaz web que facilite este proceso.

Gobernanza

La persona, grupo o entidad que lance un nuevo RToken determinará cómo este será gobernado. Este gobierno pudiese ser una organización autónoma descentralizada (o “DAO” por sus siglas en inglés), un “multi-sig”, o incluso una simple dirección de Ethereum. El gobierno puede ser reemplazado por otro cuando éste así lo decida.

Por lo tanto, algunos RTokens pueden ser gobernados de manera central, y otros pueden ser gobernados a través de un sistema descentralizado de manera arbitraria siguiendo una estructura compleja de reglas, incluyendo “timelocks” o cualquier otro mecanismo que pueda ser programado en un contrato inteligente. Si se define el gobierno como una simple dirección de Ethereum nadie lo controla. Los RTokens también pueden ser estáticos y sin gobierno.

El gobernanza del RToken define la cartera de colaterales que respaldará la criptomoneda y todos los criptoactivos de respaldo que el protocolo comprará de manera automática si se produce algún default. También podrá modificar la cartera de colaterales de acuerdo a sus propias reglas.

La gobernanza puede definir muchos otros parámetros entre los que se pueden mencionar:

Y otros, dependiendo del tipo de módulo de compra-venta en la cadena de bloques se use.

La gobernanza puede configurar un rol de pausa global, el cual es capaz de pausar todas las funciones del RToken instantáneamente en caso de que se detecte un bug. Dado que la gobernanza puede re-asignar este rol, en caso de que este sea abusado, puede ser transferido a otra entidad para despausar.

La gobernanza también puede reemplazar los contratos del RToken con unos nuevos completamente distintos. Esto significa que por defecto, la gobernanza tiene el poder de cambiar radicalmente la funcionalidad del RToken que gobierna. Esto podría no siempre ser deseable. Mayor facilidad para el cambio implica más flexibilidad, pero esa flexibilidad acarrea más incertidumbre. A medida que los contratos del RToken maduren, la gobernanza puede elegir limitarse a sí misma en su poder de cambiar los contratos que controlan, para ofrecer más certidumbre a los tenedores del RToken y a los que participan en el fondo de garantía.

Emisión y Canje

Los RTokens tienen una relación uno a uno con el colateral que los respalda. Para poder emitir 100 RTokens, se tiene que depositar el valor equivalente a 100 RTokens de colateral en el protocolo. Estos RTokens luego pueden ser canjeados por el colateral que los respalda. Esto es similar a un ETF, excepto que no hay ningún custodio a cargo asegurándose de que se reciba el colateral, todo se hace a través de contratos inteligentes que automáticamente emiten nuevos RTokens cuando se recibe el colateral requerido.

La emisión no es inmediata. Para poder prevenir un ataque que de otra forma existiría durante el default de un colateral, la emisión tiene un límite global por bloque definido por la gobernanza. Imagina que el límite es 25 mil RToken por bloque, y tu quieres obtener 1 millón, tendrías que generar la orden de emisión y luego esperar 1.000.000/25.000 = 40 bloques, para poder obtener todos los RTokens. Si hay alguien más haciendo lo mismo, entrarías en una línea de espera. Revisa la sección “Defaults” para aprender más acerca del porqué de esto.

Renta

Los Rtokens pueden generar renta en 3 formas distintas.

1. Prestando activos colaterales

Los tokens colaterales pueden ser entregados en préstamo a cambio de tokens con una relación de respaldo alta, similar a sistemas como Compound y Aave.

O alternativamente los productos de Compound y Aave pueden ser incluídos como colateral, por ejemplo, cUSDC, aDAI, etc. Esto es esencialmente lo mismo, pero paga una porción de la renta obtenida de los prestatarios a estos otros protocolos por el trabajo que realizan operando mercados de préstamos, y simplifica la lógica del RToken. Para registrar renta con este método, se monitorea el valor en USD del colateral y se reduce el ratio de respaldo del RToken cada vez que el colateral se aprecie, de tal forma que cualquier apreciación sea usada como renta y el RToken mantenga el mismo valor de respaldo medido en USD. De esta forma la apreciación puede ser usada para los tenedores del RToken y para los participantes del fondo de garantía. El efecto de esto es que los tenedores del RToken tenderán a canjear cada vez menos unidades de colateral pero con un valor monetario cada vez más alto, ya que la cartera de colaterales se apreciará más de lo que el ratio de respaldo es reducido.

2. Renta compartida con los emisores de colateral (tokenizadores de activos)

Es común que ciertos activos tokenizados, como por ejemplo las monedas fiduciarias, tengan un modelo de negocio que les permite obtener intereses de los activos que tienen en custodia. Por ejemplo, un emisor de criptomoneda estable ligada al USD, puede tener títulos de deuda de corto plazo del tesoro americano que le generan intereses. Si un RToken se vuelve muy popular y alcanza un circulante muy grande, los emisores de activos van a competir para obtener un porción en la cartera de colaterales de ese RToken, de tal forma que sus depósitos crezcan y puedan obtener más intereses. Por lo tanto, es de esperarse que el emisor de activos esté interesado en ofrecer parte de su renta al RToken. Los RTokens pueden aceptar contratos de renta compartida de estos emisores de activos a cambio de incrementar su participación en la cartera de colaterales.

Como en muchos aspectos de la gobernanza, existe un espacio para la corrupción. Un emisor de activos pudiese ofrecer una renta directamente a los que están a cargo de la gobernanza a cambio de incrementar su participación, y de esta a forma dejando a los tenedores RToken sin obtener ninguna renta. Este es un ejemplo a tener en cuenta al momento de elegir y evolucionar un sistema de gobernanza.

3. Comisiones por transferencias

Se pudiesen cobrar comisiones por las transferencias de un RToken. Estas no necesariamente tienen que ser fijas, cualquier función pudiese ser usada para calcularlas siempre y cuando sean computacionalmente eficientes.

Sin embargo, las comisiones a las transacciones presentan dos problemas. Muchos contratos inteligentes asumen que los tokens ERC-20 no tienen comisiones sustraídas durante el proceso de transferencia, así que incluir una comisión puede afectar la integración con el ecosistema DeFi. Y lo que es más importante, si los tokens terminan siendo usados en cadenas paralelas como L2 o “sidechains”, generalmente no es práctico o posible cobrar comisiones, dado que el proceso de traspaso de propiedad está fuera del control del contrato en la cadena principal o nivel 1. Es una situación similar a que si intentases cobrar comisiones por las transferencias de un token en la cadena de bloques que puedes evadir comprandolo o vendiéndolo dentro de una plataforma de intercambio centralizada que funciona de forma independiente de la cadena de bloques y normalmente no cobra comisiones por compra-ventas de tokens. Por esta razón, no está planteado incluir comisiones a las transacciones en los contratos de nuestros RTokens, aunque pudieran habilitarse en algún RToken hecho por un tercero a través de la gobernanza.

Distribución de renta

La renta de un RToken puede ser asignada en cualquier proporción a cualquier conjunto de direcciones de red. Los principales destinos de esta renta típicamente serán:

  1. Los participantes del fondo de garantía (como incentivo)
  2. El tesoro de ese RToken

El tesoro de un RToken puede ser usado para pagar costos operativos, como por ejemplo oráculos, o incentivos relacionados a procesos operativos.

Los gobernantes y creadores del RToken también pueden asignarse una porción de la renta a sí mismos. Por lo tanto, una persona, un equipo, o una compañía pudiese crear y promover un RToken como negocio, y ser recompensado si este resulta ser exitoso. Los RTokens iniciales creados por Reserve no pagarán ninguna renta al equipo o al proyecto, dado que ya como tenedores de RSR, estos tendrán la oportunidad de obtener beneficios participando en fondos de garantía, pero otros en el futuro pudiesen ser motivados por esta mecánica, y es bueno estimular la innovación con el pasar del tiempo.

Participación en fondos de garantía con RSR

Los tenedores de RSR pueden elegir participar en el fondo de garantía de cualquier RToken si así lo desean, lo que en inglés se conoce como “staking”. También son libres de no participar en ninguno.

Los tenedores de RSR se pueden unir al fondo de garantía de un RToken ofreciendo sus RSR al fondo a cambio de incentivos. Al momento de unirse, los RSR son depositados en un contrato inteligente específico a ese RToken en particular y al tenedor se le entrega otro token ERC-20 que hace las veces de comprobante o título de participación que representa su posición en ese fondo de garantía. Estos títulos de participación son igualmente fungibles y transferibles por lo que pueden ser comprados y vendidos en el mercado y cualquier tenedor puede salirse del fondo en cualquier momento canjeandolos por RSR.

Los RSR ofrecidos en garantía puede obtener beneficios de acuerdo a tres factores:

  1. La cantidad de renta que genera el RToken.
  2. La proporción de renta que la gobernanza del RToken ha asignado a los participantes del fondo de garantía.
  3. El tamaño de tu posición en el fondo con respecto al tamaño del fondo.

El siguiente es un ejemplo usando números arbitrarios:

En este ejemplo simple, tu obtendrías $10020%(100/1000) = $2 por ese período.

El protocolo almacena renta en RTokens, pero cuando los incentivos del fondo son distribuidos, este compra RSR en los mercados descentralizados (AMMs) de la cadena de bloques con esos RTokens para distribuir los incentivos en RSR a los participantes. De esta forma cada ronda de distribución de incentivos incrementa los balances de RSR de los participantes. El RSR que es ofrecido en garantía puede ser confiscado por el protocolo en el improbable caso de que un colateral entre en default, para poder cubrir las pérdidas del mismo y proteger el valor de los tenedores del RToken. Se confiscará solo lo necesario para cubrir la pérdida del colateral que entró en default y el monto confiscado a cada participante será proporcional a la posición de éste con respecto al total.

Retirarse del fondo de garantía tiene un retraso programado el cual es configurado por la gobernanza, y se espera que normalmente sea entre 7 y 30 días. Este retraso programado es necesario para que durante un default, el RSR ofrecido esté disponible para cubrir cualquier pérdida.

Durante el retraso programado el participante no obtiene incentivos. Esto es para evitar que el sistema sea abusado.

Monitores de precio

Un RToken depende de la fluctuación de los precios si está asegurado y necesita reaccionar a los incumplimientos de los tokens de garantía.

La fluctuación óptima del precio dependerá del tipo de tokens de garantía dentro de un RToken. En el caso de los tokens defi como cUSDC, los precios deben calcularse con la combinación del ratio de reembolso entre cUSDC, y el valor de mercado de USDC. Se puede acceder al ratio de reembolso a través de los contratos Compound directamente, y el valor de mercado del USDC puede tomarse de fuentes de oráculo como ChainLink o de los precios medios ponderados por tiempo (PMPT) de los grupos de liquidez en la cadena como Uniswap.

Entradas en default

El protocolo tiene un parámetro binario llamado “default flag” o bandera de entrada en default, que se puede activar o desactivar, para alertar que un activo colateral ha entrado en default.

Cualquier persona puede iniciar una transacción para activar el parámetro “default flag” si algún colateral tiene un precio en el corto plazo lo suficientemente inferior a uno de sus correspondientes tokens de respaldo en una cartera de colaterales. La definición de corto plazo y la variación en precio son parámetros de gobernanza, se pueden esperar valores de alrededor de 5 minutos y 5% de desviación en el precio.

Al momento de levantarse la bandera, la emisión queda pausada. Esto es para prevenir malos actores aprovecharse del sistema emitiendo RTokens a descuento con colaterales que ya no valen lo mismo, para después revender los RTokens luego de que su valor de mercado sea recuperado a través del fondo de garantía.

El precio reportado del RToken es recuperado después de un lapso configurable de 6 horas, cualquier persona puede iniciar una transacción para bajar la bandera de default. Si la bandera de default permanece alzada por 24 horas (este valor se puede configurar), todas las carteras de colaterales que contienen el token que entró en default son deshabilitadas. Después de que una cartera es deshabilitada es reemplazada por la siguiente cartera activa que queda en la cola, y luego la bandera es bajada.

Una vez que la cartera de colaterales ha sido actualizada y la bandera bajada, la emisión es activada de nuevo. El canje nunca se pausa, aunque canjear durante un default no sería atractivo para el que lo hace dado que recibiría un colateral de menos valor. Una vez que la cartera ha sido actualizada, tanto la emisión como el canje pasan a realizar con los activos colaterales de la nueva cartera.

La nueva cartera es capitalizada canjeando colateral de la antigua cartera y tanto RSR como sea necesario para poder compensar por la pérdida del default. Los tenedores del RToken pudiesen asumir una pequeña pérdida dado que es probable que la nueva cartera de colaterales termine valiendo menos que la antigua. Esto se debe a que las carteras de respaldo van a tender a incluir activos más conservadores que no se aprecian igual de rápido.

En caso de que no haya suficiente RSR en el fondo de garantía para cubrir la pérdida, los tenedores del RToken tendrán que asumirla. Y por esto es que es importante ofrecer suficientes incentivos a los participantes del fondo. Para que la participación en el fondo sea atractiva para los tenedores de RSR, el potencial de pérdida en caso de default debe ser menor que la ganancia esperada por incentivos. Esto será lo común en muchos tipos de colaterales, pero puede que no sea el caso con algunos tokens nuevos o de alto riesgo del ecosistema DeFi, lo cual debe ser considerado en la gobernanza de los RTokens y al momento de diseñar RTokens nuevos.

Interfaz de usuario

Como con cualquier aplicación de Ethereum, cualquier persona puede crear una interfaz que interactúe con nuestro protocolo. Inicialmente, LC Labs, una compañía aliada a nuestro proyecto y que está ayudando con el desarrollo del protocolo, será la primera en publicar una interfaz web. Esta interfaz web inicial soportará la emisión y canje de RTokens además de mostrar estadísticas de uso y números de interés sobre los RTokens.

Casos de uso de los RTokens

El software RToken es una herramienta que permite agrupar activos relativamente estables para crear criptomonedas estables respaldadas por carteras de colaterales. Nuestra intención en el largo plazo es facilitar la creación de una moneda 100% colateralizada independiente de los sistemas fiduciarios nacionales. Creemos que esto será posible una vez suficientes tipos de activos sean tokenizados.

Estamos desarrollando el trabajo preliminar, dado que no muchos activos están tokenizados todavía. En la actualidad, los principales casos de uso que nosotros vemos son (1) una criptomoneda respaldada por USD más descentralizada que las tradicionales que ya existen, la cual reduce la dependencia en un único emisor, y (2) una criptomoneda simple ligada al USD que encapsula protocolos del ecosistema DeFi y por lo tanto puede aprovechar su renta. Estos dos casos son los que implementaremos nosotros mismos inicialmente.

La principal motivación que existe en permitir la creación de muchos RTokens es para que la libre competencia y libre exploración puedan llevar al descubrimiento del mejor tipo de cartera de colaterales y sistema de gobernanza. Hay mucho por explorar, y es mejor que esta exploración se dé sin la tutela del equipo fundador. Con el paso del tiempo, sin embargo, pensamos que un RToken en particular terminará dominando al resto, quizás uno de los que ofrezca el equipo o quizás no, y pensamos que esta consolidación en uno o dos RTokens será positiva, dado que la simplicidad y la ubicuidad son importantes para que un activo sea usado como moneda.

También esperamos ver compañías del sector fintech usando el protocolo para lanzar sus propias criptomonedas estables respaldadas por carteras de colaterales, aunque esto fue lo que se buscó al abrir la plataforma.

No esperamos ver muchos RTokens creándose al poco tiempo de lanzar el protocolo. Más bien, pensamos que si uno o dos RTokens se vuelven lo suficientemente populares y conocidos, eso va a fomentar la creación de otros con el paso del tiempo.