Análisis comparativo opcional del oráculo de Prisma

Intermedio4/7/2024, 12:46:07 PM
Este artículo evalúa el rendimiento histórico de la integración de Chainlink y la sustitución del Oráculo EMA de Curve Pool. Se encontró que la falta de fuentes de datos fiables de Chainlink para los activos de garantía ha afectado la integración con la plataforma Prisma. El estudio propone especificaciones preliminares para mejorar el Oráculo con el fin de mejorar la precisión y fiabilidad del precio. Además, la investigación analiza la importancia del Oráculo en los procesos de liquidación y redención de Prisma. Se recomienda utilizar con precaución la función de oráculo de precios de Curve. Por último, se propone una solución híbrida que combina el Oráculo de Curve y Chainlink para mejorar la flexibilidad y fiabilidad del mecanismo de fijación de precios. Este informe es aplicable únicamente al protocolo Prisma.

Introducción

Este estudio se originó a partir del desafío de obtener información de precios en cadena confiable que maximice la seguridad al tiempo que refleja los precios spot actuales de los activos objetivo. Nos centramos específicamente en los activos colaterales de Prisma Finance (wstETH, rETH, cbETH y sfrxETH), así como en derivados de participación líquida basados en Ethereum (LSD). Algunos de estos activos carecen de fuentes de datos de Chainlink (a menudo consideradas el estándar de oro para datos de precios confiables), lo que ha afectado su integración con la plataforma Prisma.

La última implementación de la piscina estable de Curve Finance incluye un Oráculo de piscina interna, que calcula la Media Móvil Exponencial (EMA) para derivar datos de precios a prueba de manipulaciones. Si bien los integradores han comenzado a explorar el uso de Oracle en otras aplicaciones DeFi, el Oracle se utiliza principalmente para garantizar la seguridad del colateral en el propio mercado crvUSD de Curve.

El objetivo principal de este informe es determinar si el Oracle de Curve Finance puede servir como una alternativa confiable a Chainlink para tokens ETH LSD. Este estudio implica un análisis estadístico de la eficacia del oráculo de precios de Curve, comparando su volatilidad, precisión y rendimiento general con los precios de referencia de Uniswap (se supone que son precios precisos on-chain).

El análisis se divide en dos estudios relacionados:

Análisis residual de los oráculos stETH: Un estudio comparativo entre Chainlink y Curve, utilizando datos históricos para determinar la desviación del oráculo en relación al promedio y la desviación estándar del precio de referencia.

Análisis de redención de stETH MEV: Un estudio comparativo entre Chainlink y Oracle on-chain, utilizando datos históricos para examinar eventos de redención en Prisma y estimar la rentabilidad de robots y el comportamiento esperado utilizando Oracles alternativos.

Después del análisis, proporcionamos especificaciones preliminares para el Oracle, esperando mejoras en la desviación del precio del Oracle mientras se asegura la fiabilidad del Oracle. La solución propuesta puede servir como un plan inicial para otros estudios que buscan optimizar el Oracle.

Sección 1: Antecedentes relevantes

1.1 Funciones de Oracle en el protocolo Prisma

La efectividad de los oráculos se evalúa dentro del entorno específico del uso de Prisma: liquidación y redención. (Además, tenga en cuenta que los mismos oráculos también se utilizan para las tarifas de emisión de tokens y la venta de tokens adquiridos al 'pool estable tokenizado', cuya importancia aumentará una vez lanzado).

El rendimiento del Oracle es crucial para los usuarios de Prisma, ya que los arbitrajistas pueden tener oportunidades de obtener ganancias a partir de las discrepancias entre los precios del Oracle y los precios al contado. Asegurar el uso del feedback de precios más preciso durante la liquidación y redención, sin sacrificar la seguridad de las fuentes de precios, se alinea con los mejores intereses del protocolo Prisma y sus depositantes del tesoro.

Dos funciones de Oracle dentro de Prisma se describen de la siguiente manera:

1.1.1 Liquidación

Para proteger Gate de la insolvencia, donde las posiciones de deuda superan el valor de su garantía, el contrato LiquidationManager ejecuta la lógica de liquidación en todos los TroveManagers activos (tesorerías de Gate). La liquidación puede ser desencadenada de una de tres maneras, dependiendo de la relación de garantía de la cuenta objetivo y la relación de garantía en todo el sistema.

Tasa de colateral individual (ICR) <= 100%: La cuenta (tesorería) tiene un colateral insuficiente. Toda la deuda y el colateral se redistribuyen entre las tesorerías activas restantes, socializando efectivamente la pérdida.

100% < ICR < Relación de colateral mínimo (MCR): El tesoro cae por debajo del umbral de liquidación pero puede ser liquidado de manera segura. La piscina estable se utiliza como reserva para manejar las liquidaciones (incentivando la piscina de liquidación). El colateral se asigna a los depositantes de la piscina estable. Si el saldo de la piscina estable es insuficiente para reembolsar completamente al tesoro, la deuda restante y el colateral se redistribuyen entre los tesoros activos restantes.

MCR <= ICR < Global Total Collateral Ratio (GTCR) && GTCR < 150%: El sistema está en modo de recuperación, lo que significa que los tesoros pueden ser liquidados cuando el CR está por debajo del GTCR en lugar del MCR. Los depósitos del grupo estable se utilizan primero para liquidar el tesoro. El equivalente de colateral al valor de la deuda en MCR se distribuye entre los depositantes del grupo estable. El colateral restante puede ser reclamado por el propietario del tesoro.

La posibilidad de liquidación de Prisma aumenta cuando ETH o ETH LSD experimentan fluctuaciones de precios significativas, especialmente caídas, en condiciones de mercado altamente volátiles. Si bien las fallas o manipulaciones del Oráculo pueden afectar el protocolo en cualquier momento, el riesgo de falla del Oráculo puede aumentar en los momentos más cruciales. Los activos de garantía pueden no actualizar los precios de manera oportuna debido a picos de tarifas de gas, o la metodología de fijación de precios del Oráculo puede no rastrear adecuadamente la volatilidad creciente, lo que resulta en una fijación incorrecta de precios. Las insolvencias pueden aumentar, lo que requiere redistribución entre tesorerías activas, o los prestatarios pueden ser liquidados injustamente (en casos en los que el Oráculo informa erróneamente precios por debajo de los precios justos de mercado).

1.1.2 Redención

Los árbitros siempre pueden iniciar redenciones, eligiendo canjear 1 mkUSD por valor de garantía por 1 dólar estadounidense (+ tarifas de redención dinámicas), comenzando desde la tesorería con la ratio de garantía más baja en el sistema. Esto ayuda a fortalecer su anclaje cuando el precio del mkUSD cae por debajo de 1 dólar estadounidense. El proceso de redención reduce el riesgo de garantía de la tesorería objetivo y aumenta su ratio de garantía. La parte que ejecuta la redención paga una tarifa llamada tarifa de redención. El rango de tarifas de redención es por TroveManager y es la suma del límite de tarifa de redención + la baseRate. Las variables almacenadas en TroveManager aumentan proporcionalmente con el suministro total de mkUSD redimido y disminuyen linealmente con el tiempo. Esta tarifa dinámica, la baseRate, ajusta la tasa de redención rentable.

Si bien las liquidaciones en Prisma han sido históricamente raras, los redentores son comunes y merecen una consideración especial para los Oráculos. Los bots de MEV buscan activamente estas oportunidades para obtener ganancias rápidamente a través de los préstamos flash.

Además de la inconveniencia de la redención forzosa de sus tesoros, los usuarios pueden experimentar alguna extracción de valor debido a las desviaciones entre el Oráculo y los precios spot. La incorrecta fijación de precios puede llevar a los usuarios a perder más activos de lo necesario, especialmente cuando el Oráculo informa precios por debajo del valor de mercado justo. Por otro lado, los precios informados por el Oráculo superiores a los precios del mercado justo pueden obstaculizar las redenciones, anulando el propósito del mecanismo de redención que hace cumplir el piso de anclaje mkUSD.

1.2 opciones de Oracle

Aquí tienes un breve vistazo a los principales candidatos para los feeds de precios de Oracle en Prisma.

1.2.1 Chainlink (fuera de la cadena)

Chainlink es una red de oráculos descentralizados que recopila datos de una amplia gama de fuentes de mercado y conecta estos datos a contratos inteligentes. Su arquitectura se basa en operadores de nodos independientes que recopilan y transmiten datos de varios intercambios y API de agregadores de datos de mercado, minimizando puntos únicos de fallo y mejorando la seguridad. La integridad de los datos se garantiza mediante métodos criptográficos y mecanismos de consenso que verifican la precisión de los datos antes de la transmisión. Su enfoque implica la fijación de precios de activos ponderados por volumen (VWAP) para agregar valores de mercado justos que mejor representen los precios de los activos spot.

Las redes de nodos regularmente (latido) o basadas en umbrales de desviación de precios empujan los precios a la cadena. Esta limitación, debido a las altas comisiones de gas en la red principal, puede hacer que las actualizaciones de precios sean costosas y puede llevar a aumentar la latencia, reduciendo así el rendimiento del Oráculo. El costo de mantener tales Oráculos puede ser alto, especialmente durante períodos de alta volatilidad, lo que hace que las actualizaciones oportunas del Oráculo sean cruciales.

1.2.2 Curva pool EMA Oracle (en cadena)

Las implementaciones recientes de las piscinas de Curve (piscinas StableSwap y CryptoSwap) incluyen cálculos de precios EMA expuestos por funciones getter como price_oracle()Estas piscinas no dependen de oráculos externos, sino que calculan los precios de los activos en relación con el token en el índice 0 de la piscina en función de sus propias actividades comerciales internamente. El EMA aumenta los costos de manipulación a través de ajustes de precios suavizados, logrando un equilibrio entre la resistencia a la manipulación y la desviación de precios del spot. Cada piscina tiene una ma_exp_timeque se puede configurar a través de la votación de Curve DAO.

Como se reveló en la documentación del Oráculo de Curve, el Oráculo EMA ha estado activamente en desarrollo:

Si desea utilizar la funcionalidad del 'oráculo de precios' de Curve o cualquier oráculo de precios para proporcionar datos de precios en cadena en su aplicación descentralizada que está construyendo, le sugerimos que tenga especial cuidado.

Las diferentes implementaciones de pool modifican versiones del código de EMA Oracle, por lo que los integradores deben comprender la implementación del Oracle del pool de destino.

En noviembre de 2023, se descubrió un error que afectaba al Oráculo del pool durante la implementación del pool stableswap-ng. Este error fue encontrado poco después de la implementación del pool por yAudit durante una auditoría secundaria. Esto provocó una propuesta para actualizar la implementación y descontinuar algunos pools afectados. No se corrió ningún riesgo con los fondos, pero este evento resaltó el desarrollo activo de los oráculos de pools de Curve y la posibilidad de inconsistencias entre los pools, a pesar de las extensas auditorías, y la posibilidad de que sigan existiendo errores que podrían hacer que los oráculos sean vulnerables a manipulaciones o inexactitudes.

1.3 Historial de canje de MEV

La tercera parte de este informe es un análisis de la redención del TroveManager wstETH. Dado el impacto significativo de la redención en los usuarios de Prisma, esta sección presenta observaciones sobre redenciones históricas, que serán evaluadas en comparación con el Oráculo EMA de Curva Alternativa en el análisis comparativo.

1.3.1 Comportamiento del BOT

Consultar eventos de redención en el TroveManager wstETH revela más de 200 transacciones de redención en total, con 190 transacciones identificadas como transacciones de BOT (el método utilizado para identificar transacciones ejecutadas por BOTs se explicará más adelante en la misma sección). A continuación se muestra una visualización que muestra la frecuencia de estas transacciones a lo largo del tiempo.

Fuente: Consulta de Dune_3402461

Solo hay 3 BOTs que intercambian frecuentemente mkUSD:

Fuente: Dune query_3402461

Cada BOT sigue un proceso general similar de adquisición de mkUSD y canje. A continuación se muestra una de las transacciones de BOT, revelando algunas ideas útiles:

Origen: Explorador de Tx de Phalcon

El patrón de transacción BOT se puede subdividir aún más de la siguiente manera:

Obtener préstamos flash de Uniswap V3: USDC.

Convertir USDC a mkUSD usando la Curve.fi Factory USD Metapool: Prisma mkUSD.

Intercambia mkUSD por wstETH en el TroveManager de wstETH.

Desenvuelva wstETH en stETH en el wstETH.

Intercambia stETH por ETH en la piscina Curve stETH/ETH.

Envuelva ETH, devuelva el préstamo y distribuya beneficios y comisiones.

La rentabilidad de MEV depende de las diferencias de precio en los pasos 2, 3 y 5:

2: A medida que el precio de mkUSD disminuye, la rentabilidad de la redención aumenta.

3: A medida que las tarifas de redención dinámicas disminuyen como función de las cantidades de redención recientes y el tiempo transcurrido desde la redención, la rentabilidad de la redención aumenta.

-5: A medida que el deslizamiento en los intercambios de activos (por ejemplo, stETH) aumenta, la rentabilidad de la redención disminuye. LSD como stETH se puede intercambiar directamente por ETH subyacente, pero este proceso requiere un período de espera, lo que hace que la liquidez en el mercado secundario sea crucial

Prisma emplea un mecanismo para limitar las oportunidades de beneficio de la redención de mkUSD a wstETH a través de tarifas dinámicas. El paso 3 implica tarifas dinámicas para evitar redenciones frecuentes y excesivas. A pesar de este mecanismo, las redenciones aún pueden ocurrir debido a una mala fijación de precios del Oráculo para extraer MEV. Las cotizaciones del Oráculo para la redención de mkUSD pueden ofrecer a los propietarios del tesoro tasas de colateral subóptimas, lo que conduce a una experiencia de usuario negativa.

1.3.2 Validez de los cambios en el oráculo de wstETH

La propuesta de cambio de fijación de precios de Prisma Oracle para stETH ha sido aprobada. Inicialmente, Prisma utilizaba el oráculo Chainlink stETH/USD, con un umbral de desviación del 1% para el TroveManager de wstETH. Se descubrió que el uso de una combinación de oráculos Chainlink stETH/ETH y ETH/USD podría llevar a una mejora, con un umbral de desviación del 0,5% para cada oráculo.

Por favor, consulte la desviación entre el nuevo Oráculo y el antiguo Oráculo con una resolución de 15 bloques:

Fuente: Gráfico por @wavey

Se ha observado que cuando el precio de negociación del mkUSD cae por debajo de su tasa anclada, se producen redenciones excesivas debido a una desviación del Oráculo que excede el 1%. En estos casos, encontramos que las tarifas dinámicas eran insuficientes para evitar redenciones excesivas causadas por desviaciones de precios. Consulte el ajuste de las tarifas de redención para eventos de redención por debajo.

Fuente: Gráfico por@wavey

Estos rescates pueden incurrir en costos indirectos para los usuarios de Prisma, ya que pueden recibir tasas desfavorables cuando se canjean sus tesoros. El análisis de Wavey indica que el oráculo stETH/USD es más propenso a desviaciones en comparación con las combinaciones de oráculos validadas en los datos anteriores. Las desviaciones transitorias que superan el 1,2% han creado oportunidades para que los bots de MEV las aprovechen.

La propuesta de cambiar el Oracle (PIP-004) se ejecutó el 17 de noviembre de 2023, a las 7:15:35 PM +UTC, junto con esta transacción. Según el gráfico de precios de mkUSD a continuación y la fecha de ejecución de la propuesta, se puede observar que después de la ejecución de la propuesta, el precio real de mkUSD en USDC ha disminuido. La disminución de la rentabilidad de los redimibles debido a las mejoras en el oráculo puede resultar en una disminución en la fuerza de la fijación al precio.

Origen: Consulta de Dune_5685458

También se deben considerar otros factores influyentes, incluidas las limitaciones del modelo de tasa de interés del protocolo, los casos de uso para mkUSD y las medidas de incentivo desalineadas. Otra propuesta significativa que restringe los canjes es PIP-019, ejecutada el 31 de enero. Esta propuesta aumentó la tarifa base de canje para todos los TroveManagers al 1%-1.5%, reduciendo la elasticidad de anclaje de mkUSD pero a costa de disminuir el riesgo de canje para los propietarios de troves de Prisma.

Parte 2: Análisis Residual de Oráculos

2.1 Objetivos

El análisis tiene como objetivo evaluar el rendimiento de los oráculos de Prisma implementados y evaluar el rendimiento hipotético de los oráculos de Curve EMA en cadena alternativos utilizando datos históricos. Los hallazgos del estudio proporcionarán información inicial sobre el comportamiento de los oráculos fuera de la cadena y en cadena, lo que permitirá una evaluación más detallada en investigaciones posteriores.

El propósito de este análisis es determinar si el oráculo actual proporciona la solución de rendimiento más óptima o si se pueden realizar mejoras mediante la implementación de soluciones en cadena o híbridas utilizando el oráculo de la piscina EMA de Curve.

2.2 Metodología

El análisis se centrará específicamente en stETH, ya que es el LSD más comúnmente utilizado, con un feed de precios maduro de Chainlink y una liquidez profunda en la piscina de Curve. Se ha realizado un análisis de otros colaterales listados en Prisma, y los resultados se proporcionan en el Apéndice B del informe para referencia.

El análisis comparativo implica evaluar el grado de alineación entre los datos del ensayo y el conjunto de datos de referencia. En este caso, se consideran dos conjuntos de datos: los datos del ensayo de interés y el conjunto de datos de referencia. Si bien se espera que los datos del ensayo sigan de cerca los datos de referencia, pueden producirse desviaciones.

Para cuantificar el alineamiento, examinamos los residuos, que básicamente representan la diferencia entre los datos del ensayo y los datos de referencia. El análisis de residuos tiene como objetivo revelar patrones o tendencias en estas diferencias.

Al analizar los residuos (desviaciones de los valores de referencia), se realizan observaciones basadas en la desviación estándar de los residuos. La desviación estándar (SD) es una medida estadística utilizada para cuantificar la variabilidad o dispersión de un conjunto de valores. Proporciona una indicación de la distribución de valores alrededor de la media (promedio). Una desviación estándar baja implica que los puntos de datos tienden a estar cerca de la media, mientras que una desviación estándar alta indica que los puntos de datos están dispersos en un rango más amplio.

En nuestro caso, una media cercana a 0 es deseable ya que indica que los precios proporcionados no están sobreestimando ni subestimando los precios de referencia. Sin embargo, una media cercana o igual a 0 con una desviación estándar relativamente alta sugiere fluctuaciones significativas, que son indeseables ya que corresponden a una mala fijación de precios. Un feed de oráculo con una media de cero y la desviación estándar mínima es el resultado ideal, lo que indica que el feed sigue con precisión los precios spot.

Para monitorear y evaluar la precisión de la actividad de precios del oráculo en cadena, las cotizaciones obtenidas de los destinos de comercio más líquidos (excluyendo Curve) sirven como referencia para el análisis residual. Específicamente, las cotizaciones del par de divisas LSD/ETH en Uniswap son los puntos de referencia principales en este escenario.

Nuestro análisis incluye dos estrategias para derivar los precios de stETH Chainlink. Esto se hace porque se encontró que la desviación del feed original de Chainlink stETH/USD es mayor que la desviación usando stETH/ETH + ETH/USD. Los oráculos se actualizaron según las propuestas de gobernanza. Posteriormente, el análisis que involucra el precio mejorado de stETH/ETH Chainlink en ETH se denomina stETHv1, mientras que el feed de combinación stETH/USD + ETH/USD (replicando el rendimiento original del oráculo stETH, estandarizado a ETH) se denomina stETHv2.

2.3 Recopilación de datos

Para fines analíticos, se obtuvieron datos del último trimestre de 2023 de todos los activos respectivos (desde el bloque 18331000 hasta el bloque 18931000, con una resolución de 250 bloques para el conjunto de datos). Esto crea un conjunto de datos que contiene 2401 puntos de datos para todos los activos.

El activo principal bajo consideración es stETH, ya que es el tipo de colateral actualmente aceptado por Prisma, con tanto el feed de Chainlink como el pool de Curve StableSwap-ng disponibles como referencia (consulte el Apéndice B para análisis sobre rETH y cbETH, que utiliza la implementación anterior del pool CryptoSwap). Todos los datos se obtuvieron consultando precios para el rango de bloques especificado.

Los precios de Oracle se analizan a partir de las siguientes fuentes:

Pool de liquidez de Curve

Chainlink Precio Comentarios

La dirección de la piscina minera de Uniswap como agente de referencia de precio spot es la siguiente:

precio spot de Uniswap

Para estandarizar LSD a su ETH subyacente, utilizamos la tasa de cambio interna LSD/ETH:

Tasa de cambio interna LSD/ETH

2.4 Análisis residual de la máquina oracle stETH

2.4.1 Chainlink y Curve

En esta sección, compararemos la precisión del feed de precio de Chainlink stETH con Curve.

Feed de Chainlink stETHv1 vs. Curve

Chainlink: feed stETH/ETH

Curva: piscina stETH/ETH

A continuación se muestra una comparación directa de los precios de stETH de Chainlink y Curve. Debido al ciclo de latido de 24 horas de stETH/ETH de Chainlink, el precio fluctúa cada pocos bloques. Comparativamente, las fluctuaciones son más fácilmente observables en el feed de Chainlink (visualizado de mejor manera en el feed de Chainlink stETH/USD) en comparación con Curve, ya que Curve utiliza un tiempo de EMA de 10 minutos (ma_exp_time) para derivar su precio.

Si restamos el precio de Curve del precio de Chainlink, obtendremos los residuos, como se muestra a continuación:

El valor promedio de desviación es ~-0.000305.

Una observación importante que se puede hacer aquí es que Curve Oracle sobreestima ligeramente sus datos de precios en comparación con Chainlink.

Chainlink stETHv2 y Curve

Chainlink: feed stETH/USD / feed ETH/USD

Curve: piscina stETH/ETH

A continuación se muestra una comparación de precios de feeds alternativos de Chainlink normalizados a ETH (stETH/USD y ETH/USD) frente a la curva stETH. Dado que Chainlink stETH/USD tiene un umbral de desviación del 1% (en comparación con el 0,5% en el feed stETH/ETH), el precio muestra una mayor desviación alrededor del precio de anclaje.

Como se observó anteriormente, las fluctuaciones de precios de stETH/USD de Chainlink son más pronunciadas en comparación con Curve.

El valor promedio de desviación es ~-0.000171.

Dependiendo de la escala, este feed tiene residuos más grandes, es decir, más volatilidad, que stETH/ETH.

2.4.2 Uniswap y Chainlink

En esta sección, compararemos la precisión histórica del feed de precio de Chainlink stETH con el precio de referencia spot de Uniswap.

Suponiendo que los datos de precios de la piscina UniswapV3 sirvan como un proxy confiable para los precios al contado, podemos comparar los datos de referencia previamente obtenidos para verificar la proximidad del feed del Oráculo de Chainlink a los valores de referencia.

Uniswap Spot vs. Chainlink stETHv1

Chainlink: feed de stETH/ETH

Uniswap: tasa de cambio de intercambio interno de wstETH/ETH pool / wstETH/stETH

Aquí está la desviación real entre el precio spot de Uniswap y Chainlink stETH/ETH:

Residual mean = 0.000415

Desviación estándar de las diferencias de precios = 0.000601

Uniswap Spot vs. Chainlink stETHv2

Chainlink: alimentación stETH/USD / ETH/USD

Uniswap: tasa de cambio interna de la piscina wstETH/ETH / intercambio interno wstETH/stETH

Aquí está la desviación real entre Uniswap stETH y Chainlink stETH (stETH/USD):

Diferencia de precio media = 0.000281

Desviación estándar de la diferencia de precio = 0.002747

Aquí comparamos Chainlink stETHv1 (es decir, stETH/ETH) y stETHv2 (es decir, stETH/USD) con datos de Uniswap, y los resultados indican que la desviación de stETHv2 es significativamente mayor que la de stETHv1.

La misma observación también se hizo en la propuesta de gobernanza de Prisma (PIP-004) cuando el oráculo cambió de stETH/USD a stETH/ETH + ETH/USD para reducir las desviaciones en la alimentación de precios.

2.4.3 Uniswap y Curve

En esta sección, compararemos la precisión histórica del Oráculo stETH Curve con el precio de referencia spot de Uniswap.

Suponiendo que los datos de precios del pool UniswapV3 sirvan como un proxy confiable para los precios al contado, podemos comparar los datos de referencia previamente obtenidos para verificar la proximidad del suministro del Oráculo de Curve a los valores de referencia.

Uniswap Spot vs. Curve

Curve: piscina stETH/ETH

Uniswap: tasa de cambio del pool wstETH/ETH / intercambio interno wstETH/stETH

Basándonos en un análisis residual similar al anterior, obtenemos las siguientes métricas para comparar con el punto de referencia previamente establecido:

La diferencia media de precios = 0.000110.

La desviación estándar de las diferencias de precio = 0.000141.

Como se observa, el precio promedio reportado por Curve es ligeramente inferior al spot de Uniswap, con una desviación estándar significativamente menor en comparación con cualquiera de las fuentes de Chainlink.

2.5 Resultados

Al comparar estas métricas, encontramos que la desviación de los datos de Chainlink es significativamente mayor que la de Curve al hacer referencia a los datos de Uniswap como un proxy para los precios spot.

Dado que las observaciones anteriores se basan en las desviaciones de cada fuente de precios, es posible que el feed del Oráculo de Curve muestre desviaciones positivas mientras que el feed de Chainlink muestre desviaciones negativas, y viceversa. Este escenario se anula por completo ya que los rangos de desviación de los feeds de Chainlink y Curve Oracle son más pequeños en comparación con los rangos de desviación de Uniswap & Chainlink y Uniswap & Curve.

La tabla a continuación muestra el análisis residual realizado sobre los datos recopilados. La media residual, multiplicada por 100, produce el porcentaje de desviación promedio del activo objetivo respecto al de referencia (en términos de USD, en comparación con los precios de ETH denominados en USD).

La tabla compara directamente el rendimiento relativo de Chainlink y Curve con la referencia de Uniswap en términos de promedio y desviación estándar para cada activo. En todos los casos, Curve muestra valores más bajos de promedio y desviación estándar. El multiplicador de precisión muestra la precisión relativa de cada valor observado.

Los puntos principales aquí son los siguientes:

  1. Basado en la desviación estándar de los residuos, Curve muestra una volatilidad más baja en comparación con Chainlink en relación con los precios referenciales, y esto se mantiene constante en los activos observados, aunque la desviación estándar entre cbETH para Chainlink y Curve es similar.
  2. Según la tabla anterior, al analizar los medios, se puede observar que Chainlink subestima los precios de los activos en comparación con los precios de referencia de Uniswap. Curve se alinea más estrechamente con los precios de referencia, pero también tiende a subestimar ligeramente los precios en comparación con los precios de referencia de Uniswap.
  3. Una advertencia sobre estos hallazgos es que, a pesar de la superioridad general del Oracle de Curve sobre Chainlink observada aquí, rETH y cbETH experimentaron desviaciones agudas y de corta duración, como se menciona en el Apéndice B: Análisis Residual rETH/cbETH. Esto se atribuye a la relativa iliquidez de las pools, la baja actividad y la insuficiencia de las implementaciones antiguas de las pools para la integración. Sin embargo, se necesita más investigación para determinar las métricas de referencia necesarias para Oráculos de pools de Curve apropiadamente confiables.

Sección 3: Análisis de Redención MEV stETH

3.1 Objetivos

El análisis tiene como objetivo comparar los precios de implementación de eventos de redención en el Gate.io wstETH TroveManager con los precios hipotéticos cotizados utilizando datos históricos por oráculos alternativos en cadena. Los resultados del estudio proporcionarán ideas iniciales sobre el comportamiento de los oráculos fuera de la cadena y en cadena, lo que permitirá una evaluación más detallada en investigaciones posteriores.

El propósito de este análisis es determinar si el oráculo actual proporciona la mejor solución de rendimiento en escenarios específicos de redención o si se pueden realizar mejoras a través de la implementación de soluciones en cadena o híbridas, utilizando oráculos de la piscina EMA de Curve.

3.2 Metodología

Este análisis se centrará específicamente en stETH, ya que es el LSD más comúnmente utilizado y tiene feeds de precios maduros de Chainlink y una liquidez profunda en la pool de Curve. El estudio agregará todos los eventos de redención, comparando los precios oráculo realizados de stETH con varios precios oráculo alternativos, cotizados en USD, y utilizando el precio oráculo stETH/ETH de Curve.

Para este análisis, el precio stETH realizado se calcula dividiendo la cantidad redimida de mkUSD por la cantidad de stETH perdida en el Administrador de Trove en forma de wstETH. Para determinar la cantidad de stETH, debemos considerar el wstETH recibido de la redención más el wstETH gastado en tarifas y convertirlos a stETH. Si alguna fuente alternativa ofrece consistentemente menores ganancias a los redentores, podemos decir que su rendimiento de MEV es mejor que el precio actual.

El TroveManager wstETH se utiliza para recuperar todos los hashes de transacciones al obtener mkUSD a cambio. Las transacciones en las que la dirección que canjea mkUSD recibe y quema mkUSD se consideran transacciones BOT. Las consultas detalladas de los eventos de canje se pueden encontrar aquí: consulta de Dune_3352919. Esta consulta es esencial para recuperar todos los datos de las transacciones BOT.

3.3 Recopilación de datos

La consulta Dune se utiliza para identificar transacciones BOT que obtienen todos los valores hash de transacción, la tasa de cambio wstETH realizada para la redención de mkUSD y el número de bloque de los eventos de redención. Los números de bloque obtenidos de la consulta se utilizan como entradas para consultar los siguientes datos, que se utilizan para comparar la implementación actual con los cambios en el precio de alimentación Curve stETH.

Basándonos en los datos anteriores, podemos construir tres feeds de precios utilizando el precio del oráculo Curve stETH/ETH, y fusionarlos con ETH/USD para derivar stETH/USD. Después de esta operación, obtenemos los siguientes datos para la visualización:

Los datos anteriores proporcionan el precio de stETH en USD, que se puede analizar en base a los precios de stETH realizados de todas las transacciones BOT. El stETH realizado (en USD) se utiliza simplemente para calcular el precio de stETH para cada mkUSD proporcionado durante el canje.

Análisis de redención de 3.4 stETH MEV

A continuación se muestran 4 fuentes de precios de stETH para el bloque de trading BOT (1 referencia y 3 alternativas discutidas anteriormente). Los feeds de precios realizados son precios de oráculos de precios implementados (es decir, Chainlink). Esto se compara con 3 feeds que utilizan Curve stETH/ETH como núcleo. Aquí, una cotización más alta resultará en una disminución en el valor de stETH intercambiado por mkUSD y viceversa.

Basándonos en la información anterior, podemos modelar la cantidad relativa de stETH recibida al canjear mkUSD y normalizarla en función de la cantidad real recibida del oráculo existente. El siguiente gráfico muestra el stETH obtenido de mkUSD antes de aplicar las comisiones y procesa los datos para eliminar los valores atípicos con el fin de mejorar la visualización:

3.5 Resultados

El análisis revela una tendencia clara: al combinar Curve stETH/ETH con Uniswap ETH/USDC y Chainlink ETH/USD, la cantidad de stETH disponible para el canje de mkUSD disminuye. En consecuencia, una reducción en el número de unidades de stETH por canje de mkUSD conlleva a una disminución en las ganancias de BOT. La visualización proporcionada ilustra la comparación entre las ganancias de BOT bajo varios precios de alimentación asumidos y el precio de alimentación real, excluyendo las tarifas:

Es evidente que la combinación de Curve stETH/ETH, Uniswap ETH/USDC y Chainlink ETH/USD reduce la rentabilidad de los canjes en comparación con el precio de alimentación realizado.

Parte 4: Mejoras propuestas del Oráculo

Solución híbrida de Oracle 4.1

Reconociendo los riesgos inherentes de depender únicamente del oráculo de Curve, especialmente durante períodos de baja liquidez o fluctuaciones de liquidez, la solución propuesta integra estratégicamente el oráculo de Chainlink como medida de salvaguarda (es decir, un plan de respaldo) en caso de desviaciones. Teniendo en cuenta la posibilidad negligente de que Chainlink proporcione datos incorrectos, puede servir como una opción de respaldo confiable.

Esta solución actúa como un filtro, considerando tanto los precios de Curve como de Chainlink. Las condiciones se establecen dentro de una función, sirviendo como un interruptor. Para diseñar esta condición, se introduce el concepto de un rango aceptable. Este rango representa la diferencia aceptable entre los precios de oracle de Chainlink y Curve. Cuando la diferencia observada excede este rango, indica un posible sesgo o manipulación en los datos del Oracle de Curve. En tales casos, la función mitiga los riesgos potenciales favoreciendo los precios más seguros de Chainlink. Por el contrario, cuando la diferencia cae dentro del rango aceptable, la función se basa en la precisión y exactitud del Oracle de Curve.

Vale la pena señalar que el rango aceptable se puede configurar como estático o dinámico, dependiendo de la volatilidad de los activos subyacentes (por ejemplo, ETH y LSD relacionado). La naturaleza dinámica permite la adaptación a las condiciones del mercado volátil, garantizando elasticidad y mecanismos de respuesta en la determinación de precios. Esta estrategia de doble filo minimiza la dependencia de una única fuente de datos, mejorando así la resistencia y confiabilidad general del mecanismo de precios.

4.2 solución de verificación

4.2.1 Estático acceptable_range

La solución introduce un método estático, acceptable_range, para abordar posibles vulnerabilidades al depender únicamente del Oráculo de Curve. Si bien los precios generados por el Oráculo de Curve pueden ser más precisos que los de Chainlink, podrían ser susceptibles a manipulaciones. Por otro lado, Chainlink es robusto y probado, considerado una elección más segura en la industria. Cuando la diferencia entre el Oráculo de Curve y Chainlink excede un valor fijo, el acceptable_range sirve como umbral para cambiar al feed de Chainlink.

Estratégicamente, el acceptable_range acepta cotizaciones que están dentro de ±1% de las cotizaciones de Chainlink. Esto está casi tres desviaciones estándar de la diferencia promedio entre Curve y Chainlink, considerando los feeds mejorados de stETH/ETH y ETH/USD en comparación con el feed anterior de stETH/USD.

4.2.2 Función de salida derived_price

El derived_price es una función o mecanismo diseñado para determinar la cotización final de un activo dado, especialmente en escenarios que involucran el Oracle de Curve y el Oracle de Chainlink.

En la solución descrita, esta función evalúa cotizaciones tanto del Oráculo de Curve como del Oráculo de Chainlink. Según la diferencia observada entre estos dos precios y si cae dentro o excede el rango aceptado predefinido, la función produce diferentes precios derivados.

Aquí hay una comparación de derived_price con las otras fuentes de precios previamente mostradas:

Las ganancias del BOT pueden ser visualizadas por este precio derivado (ya que no hay desviación, este precio será exactamente igual a Curve stETH/ETH y CL stETH/ETH) como se muestra a continuación:

Analizar las ganancias totales puede revelar el panorama general. Se identificaron seis valores atípicos y se calculó la ganancia total para cada caso antes y después de filtrar los valores atípicos.

Curve stETH/ETH y Uniswap ETH/USDC son los que mejor reducen el beneficio disponible para los BOTs. El precio derivado que proporcionan tiene el mismo potencial de beneficio que la implementación actual del oráculo stETH, pero limita el beneficio, asumiendo que ahorra a los usuarios aproximadamente 35.4 ETH en las 189 transacciones analizadas.

4.3 Conclusión

Debido a la fuerte dependencia de las cotizaciones de los intercambios descentralizados más líquidos para las actividades en cadena y al hecho de que los bots de MEV también siguen las mismas cotizaciones al cambiar mkUSD por LSD, la precisión de las cotizaciones (utilizadas para fijar los precios de redención por parte del Oráculo) es de suma importancia.

Los datos históricos sugieren que los precios del oráculo de la piscina de Curve están más cerca de la referencia (datos de precios de UniswapV3) en comparación con los precios de Chainlink. Los datos indican que la implementación del Oráculo de Curve reduciría el MEV para los bots y proporcionaría mejores tasas de cambio para los usuarios que canjean sus tesoros.

Si bien utilizar Curve Oracle como un Oracle independiente puede ser tentador, la efectividad de la retroalimentación de precios de Curve depende de la profundidad de liquidez de activos específicos y la interacción con la piscina. Una solución híbrida de Oracle con Curve Oracle y Chainlink Oracle puede utilizarse para igualar los precios en cadena mientras se mantiene la fiabilidad y la amplia cobertura de mercado heredada de Chainlink Oracle.

La solución híbrida de Oracle que proponemos evalúa la desviación estándar (SD) para generar derived_price. Si la SD se acerca a 0, indica adherencia a los valores de referencia de derived_price, lo que lo hace digno de consideración. Esto asegura que cuando Curve Oracle se desvíe de los umbrales predefinidos, la solución cambie dinámicamente a la fuente más segura de Chainlink. Dado que esta solución casi siempre produce la cotización de Curve de stETH, se asume que la actividad de MEV es la misma que usar Curve stETH/ETH, sin ninguna alternativa.

Apéndice A: Scripts de Procesamiento de Datos

Los scripts utilizados para generar el análisis en este informe son los siguientes:

  1. OracleAnalysisV4: Cuaderno de colaboración para recopilación de datos
  2. OracleAnalysisPlayground: Cuaderno de Colab para trazar gráficos usando archivos de datos pickle
  3. PrismaOracleModelingV1: Cuaderno de colaboración para trazar gráficos de actividad de intercambio de MEV
  4. DerivedPriceModeling: Cuaderno Colab para probar y modelar soluciones de Oracle alternativas

Apéndice B: análisis residual rETH/cbETH

Otras Gráficas rETH

Chainlink y Curve

Uniswap y Curve

Uniswap y Chainlink

Verificar pico rETH

Durante el período de observación, el precio del oráculo de la curva rETH experimentó varios picos. Esto resultó en un aumento significativo de la discrepancia de precios entre el precio del oráculo y la referencia al contado. A continuación se muestra un gráfico más detallado que muestra la proporción del pool de liquidez/flujo de tokens y el comportamiento del precio del oráculo durante los períodos de aumento de precios.

start_block = 18824000

end_block = 18827000

interval_blocks = 100

Proporción de la piscina minera:

Precio de Oracle:

start_block = 18850000

end_block = 18858000

interval_blocks = 100

Ratio del grupo de minería:

Precio de Oracle:

start_block = 18880000

end_block = 18885000

interval_blocks = 100

Proporción de la piscina minera:

Precio de Oracle:

Otros Gráficos cbETH

Chainlink y Curve

Uniswap y Curve

Uniswap y Chainlink

Comprueba Peak cbETH

Durante el período de observación, los precios del Oráculo Curve cbETH experimentaron varios picos. En varias ocasiones, esto resultó en incrementos significativos en la desviación de precio entre el precio del Oráculo y la referencia spot. A continuación se muestra un gráfico más detallado que muestra el comportamiento de las ratios de la piscina de liquidez/liquidez del token durante estos periodos de aumentos de precio y el comportamiento de los precios del Oráculo.

start_block = 18693500

end_block = 18696000

interval_blocks = 10

Proporción de la piscina minera:

Precio de Oracle:

start_block = 18814000

end_block = 18816500

interval_blocks = 10

Proporción del grupo de minería:

Precio de Oracle:

start_block = 18800000

end_block = 18805000

interval_blocks = 10

Proporción del grupo de minería:

Precio de Oracle:

Declaración:

  1. Este artículo es reproducido de [Gatemarsbit] original title “Análisis comparativo de los oráculos opcionales de Prisma”, los derechos de autor pertenecen al autor original [PrismaRisk], si tiene alguna objeción al reimpresión, por favor contacteEquipo de Aprendizaje GateEl equipo lo manejará tan pronto como sea posible de acuerdo con los procedimientos pertinentes.

  2. Descargo de responsabilidad: Las vistas y opiniones expresadas en este artículo representan solo las opiniones personales del autor y no constituyen ningún consejo de inversión.

  3. Otras versiones del artículo son traducidas por el equipo de Gate Learn, no mencionadas enGate.io, el artículo traducido no puede ser reproducido, distribuido o plagiado.

Análisis comparativo opcional del oráculo de Prisma

Intermedio4/7/2024, 12:46:07 PM
Este artículo evalúa el rendimiento histórico de la integración de Chainlink y la sustitución del Oráculo EMA de Curve Pool. Se encontró que la falta de fuentes de datos fiables de Chainlink para los activos de garantía ha afectado la integración con la plataforma Prisma. El estudio propone especificaciones preliminares para mejorar el Oráculo con el fin de mejorar la precisión y fiabilidad del precio. Además, la investigación analiza la importancia del Oráculo en los procesos de liquidación y redención de Prisma. Se recomienda utilizar con precaución la función de oráculo de precios de Curve. Por último, se propone una solución híbrida que combina el Oráculo de Curve y Chainlink para mejorar la flexibilidad y fiabilidad del mecanismo de fijación de precios. Este informe es aplicable únicamente al protocolo Prisma.

Introducción

Este estudio se originó a partir del desafío de obtener información de precios en cadena confiable que maximice la seguridad al tiempo que refleja los precios spot actuales de los activos objetivo. Nos centramos específicamente en los activos colaterales de Prisma Finance (wstETH, rETH, cbETH y sfrxETH), así como en derivados de participación líquida basados en Ethereum (LSD). Algunos de estos activos carecen de fuentes de datos de Chainlink (a menudo consideradas el estándar de oro para datos de precios confiables), lo que ha afectado su integración con la plataforma Prisma.

La última implementación de la piscina estable de Curve Finance incluye un Oráculo de piscina interna, que calcula la Media Móvil Exponencial (EMA) para derivar datos de precios a prueba de manipulaciones. Si bien los integradores han comenzado a explorar el uso de Oracle en otras aplicaciones DeFi, el Oracle se utiliza principalmente para garantizar la seguridad del colateral en el propio mercado crvUSD de Curve.

El objetivo principal de este informe es determinar si el Oracle de Curve Finance puede servir como una alternativa confiable a Chainlink para tokens ETH LSD. Este estudio implica un análisis estadístico de la eficacia del oráculo de precios de Curve, comparando su volatilidad, precisión y rendimiento general con los precios de referencia de Uniswap (se supone que son precios precisos on-chain).

El análisis se divide en dos estudios relacionados:

Análisis residual de los oráculos stETH: Un estudio comparativo entre Chainlink y Curve, utilizando datos históricos para determinar la desviación del oráculo en relación al promedio y la desviación estándar del precio de referencia.

Análisis de redención de stETH MEV: Un estudio comparativo entre Chainlink y Oracle on-chain, utilizando datos históricos para examinar eventos de redención en Prisma y estimar la rentabilidad de robots y el comportamiento esperado utilizando Oracles alternativos.

Después del análisis, proporcionamos especificaciones preliminares para el Oracle, esperando mejoras en la desviación del precio del Oracle mientras se asegura la fiabilidad del Oracle. La solución propuesta puede servir como un plan inicial para otros estudios que buscan optimizar el Oracle.

Sección 1: Antecedentes relevantes

1.1 Funciones de Oracle en el protocolo Prisma

La efectividad de los oráculos se evalúa dentro del entorno específico del uso de Prisma: liquidación y redención. (Además, tenga en cuenta que los mismos oráculos también se utilizan para las tarifas de emisión de tokens y la venta de tokens adquiridos al 'pool estable tokenizado', cuya importancia aumentará una vez lanzado).

El rendimiento del Oracle es crucial para los usuarios de Prisma, ya que los arbitrajistas pueden tener oportunidades de obtener ganancias a partir de las discrepancias entre los precios del Oracle y los precios al contado. Asegurar el uso del feedback de precios más preciso durante la liquidación y redención, sin sacrificar la seguridad de las fuentes de precios, se alinea con los mejores intereses del protocolo Prisma y sus depositantes del tesoro.

Dos funciones de Oracle dentro de Prisma se describen de la siguiente manera:

1.1.1 Liquidación

Para proteger Gate de la insolvencia, donde las posiciones de deuda superan el valor de su garantía, el contrato LiquidationManager ejecuta la lógica de liquidación en todos los TroveManagers activos (tesorerías de Gate). La liquidación puede ser desencadenada de una de tres maneras, dependiendo de la relación de garantía de la cuenta objetivo y la relación de garantía en todo el sistema.

Tasa de colateral individual (ICR) <= 100%: La cuenta (tesorería) tiene un colateral insuficiente. Toda la deuda y el colateral se redistribuyen entre las tesorerías activas restantes, socializando efectivamente la pérdida.

100% < ICR < Relación de colateral mínimo (MCR): El tesoro cae por debajo del umbral de liquidación pero puede ser liquidado de manera segura. La piscina estable se utiliza como reserva para manejar las liquidaciones (incentivando la piscina de liquidación). El colateral se asigna a los depositantes de la piscina estable. Si el saldo de la piscina estable es insuficiente para reembolsar completamente al tesoro, la deuda restante y el colateral se redistribuyen entre los tesoros activos restantes.

MCR <= ICR < Global Total Collateral Ratio (GTCR) && GTCR < 150%: El sistema está en modo de recuperación, lo que significa que los tesoros pueden ser liquidados cuando el CR está por debajo del GTCR en lugar del MCR. Los depósitos del grupo estable se utilizan primero para liquidar el tesoro. El equivalente de colateral al valor de la deuda en MCR se distribuye entre los depositantes del grupo estable. El colateral restante puede ser reclamado por el propietario del tesoro.

La posibilidad de liquidación de Prisma aumenta cuando ETH o ETH LSD experimentan fluctuaciones de precios significativas, especialmente caídas, en condiciones de mercado altamente volátiles. Si bien las fallas o manipulaciones del Oráculo pueden afectar el protocolo en cualquier momento, el riesgo de falla del Oráculo puede aumentar en los momentos más cruciales. Los activos de garantía pueden no actualizar los precios de manera oportuna debido a picos de tarifas de gas, o la metodología de fijación de precios del Oráculo puede no rastrear adecuadamente la volatilidad creciente, lo que resulta en una fijación incorrecta de precios. Las insolvencias pueden aumentar, lo que requiere redistribución entre tesorerías activas, o los prestatarios pueden ser liquidados injustamente (en casos en los que el Oráculo informa erróneamente precios por debajo de los precios justos de mercado).

1.1.2 Redención

Los árbitros siempre pueden iniciar redenciones, eligiendo canjear 1 mkUSD por valor de garantía por 1 dólar estadounidense (+ tarifas de redención dinámicas), comenzando desde la tesorería con la ratio de garantía más baja en el sistema. Esto ayuda a fortalecer su anclaje cuando el precio del mkUSD cae por debajo de 1 dólar estadounidense. El proceso de redención reduce el riesgo de garantía de la tesorería objetivo y aumenta su ratio de garantía. La parte que ejecuta la redención paga una tarifa llamada tarifa de redención. El rango de tarifas de redención es por TroveManager y es la suma del límite de tarifa de redención + la baseRate. Las variables almacenadas en TroveManager aumentan proporcionalmente con el suministro total de mkUSD redimido y disminuyen linealmente con el tiempo. Esta tarifa dinámica, la baseRate, ajusta la tasa de redención rentable.

Si bien las liquidaciones en Prisma han sido históricamente raras, los redentores son comunes y merecen una consideración especial para los Oráculos. Los bots de MEV buscan activamente estas oportunidades para obtener ganancias rápidamente a través de los préstamos flash.

Además de la inconveniencia de la redención forzosa de sus tesoros, los usuarios pueden experimentar alguna extracción de valor debido a las desviaciones entre el Oráculo y los precios spot. La incorrecta fijación de precios puede llevar a los usuarios a perder más activos de lo necesario, especialmente cuando el Oráculo informa precios por debajo del valor de mercado justo. Por otro lado, los precios informados por el Oráculo superiores a los precios del mercado justo pueden obstaculizar las redenciones, anulando el propósito del mecanismo de redención que hace cumplir el piso de anclaje mkUSD.

1.2 opciones de Oracle

Aquí tienes un breve vistazo a los principales candidatos para los feeds de precios de Oracle en Prisma.

1.2.1 Chainlink (fuera de la cadena)

Chainlink es una red de oráculos descentralizados que recopila datos de una amplia gama de fuentes de mercado y conecta estos datos a contratos inteligentes. Su arquitectura se basa en operadores de nodos independientes que recopilan y transmiten datos de varios intercambios y API de agregadores de datos de mercado, minimizando puntos únicos de fallo y mejorando la seguridad. La integridad de los datos se garantiza mediante métodos criptográficos y mecanismos de consenso que verifican la precisión de los datos antes de la transmisión. Su enfoque implica la fijación de precios de activos ponderados por volumen (VWAP) para agregar valores de mercado justos que mejor representen los precios de los activos spot.

Las redes de nodos regularmente (latido) o basadas en umbrales de desviación de precios empujan los precios a la cadena. Esta limitación, debido a las altas comisiones de gas en la red principal, puede hacer que las actualizaciones de precios sean costosas y puede llevar a aumentar la latencia, reduciendo así el rendimiento del Oráculo. El costo de mantener tales Oráculos puede ser alto, especialmente durante períodos de alta volatilidad, lo que hace que las actualizaciones oportunas del Oráculo sean cruciales.

1.2.2 Curva pool EMA Oracle (en cadena)

Las implementaciones recientes de las piscinas de Curve (piscinas StableSwap y CryptoSwap) incluyen cálculos de precios EMA expuestos por funciones getter como price_oracle()Estas piscinas no dependen de oráculos externos, sino que calculan los precios de los activos en relación con el token en el índice 0 de la piscina en función de sus propias actividades comerciales internamente. El EMA aumenta los costos de manipulación a través de ajustes de precios suavizados, logrando un equilibrio entre la resistencia a la manipulación y la desviación de precios del spot. Cada piscina tiene una ma_exp_timeque se puede configurar a través de la votación de Curve DAO.

Como se reveló en la documentación del Oráculo de Curve, el Oráculo EMA ha estado activamente en desarrollo:

Si desea utilizar la funcionalidad del 'oráculo de precios' de Curve o cualquier oráculo de precios para proporcionar datos de precios en cadena en su aplicación descentralizada que está construyendo, le sugerimos que tenga especial cuidado.

Las diferentes implementaciones de pool modifican versiones del código de EMA Oracle, por lo que los integradores deben comprender la implementación del Oracle del pool de destino.

En noviembre de 2023, se descubrió un error que afectaba al Oráculo del pool durante la implementación del pool stableswap-ng. Este error fue encontrado poco después de la implementación del pool por yAudit durante una auditoría secundaria. Esto provocó una propuesta para actualizar la implementación y descontinuar algunos pools afectados. No se corrió ningún riesgo con los fondos, pero este evento resaltó el desarrollo activo de los oráculos de pools de Curve y la posibilidad de inconsistencias entre los pools, a pesar de las extensas auditorías, y la posibilidad de que sigan existiendo errores que podrían hacer que los oráculos sean vulnerables a manipulaciones o inexactitudes.

1.3 Historial de canje de MEV

La tercera parte de este informe es un análisis de la redención del TroveManager wstETH. Dado el impacto significativo de la redención en los usuarios de Prisma, esta sección presenta observaciones sobre redenciones históricas, que serán evaluadas en comparación con el Oráculo EMA de Curva Alternativa en el análisis comparativo.

1.3.1 Comportamiento del BOT

Consultar eventos de redención en el TroveManager wstETH revela más de 200 transacciones de redención en total, con 190 transacciones identificadas como transacciones de BOT (el método utilizado para identificar transacciones ejecutadas por BOTs se explicará más adelante en la misma sección). A continuación se muestra una visualización que muestra la frecuencia de estas transacciones a lo largo del tiempo.

Fuente: Consulta de Dune_3402461

Solo hay 3 BOTs que intercambian frecuentemente mkUSD:

Fuente: Dune query_3402461

Cada BOT sigue un proceso general similar de adquisición de mkUSD y canje. A continuación se muestra una de las transacciones de BOT, revelando algunas ideas útiles:

Origen: Explorador de Tx de Phalcon

El patrón de transacción BOT se puede subdividir aún más de la siguiente manera:

Obtener préstamos flash de Uniswap V3: USDC.

Convertir USDC a mkUSD usando la Curve.fi Factory USD Metapool: Prisma mkUSD.

Intercambia mkUSD por wstETH en el TroveManager de wstETH.

Desenvuelva wstETH en stETH en el wstETH.

Intercambia stETH por ETH en la piscina Curve stETH/ETH.

Envuelva ETH, devuelva el préstamo y distribuya beneficios y comisiones.

La rentabilidad de MEV depende de las diferencias de precio en los pasos 2, 3 y 5:

2: A medida que el precio de mkUSD disminuye, la rentabilidad de la redención aumenta.

3: A medida que las tarifas de redención dinámicas disminuyen como función de las cantidades de redención recientes y el tiempo transcurrido desde la redención, la rentabilidad de la redención aumenta.

-5: A medida que el deslizamiento en los intercambios de activos (por ejemplo, stETH) aumenta, la rentabilidad de la redención disminuye. LSD como stETH se puede intercambiar directamente por ETH subyacente, pero este proceso requiere un período de espera, lo que hace que la liquidez en el mercado secundario sea crucial

Prisma emplea un mecanismo para limitar las oportunidades de beneficio de la redención de mkUSD a wstETH a través de tarifas dinámicas. El paso 3 implica tarifas dinámicas para evitar redenciones frecuentes y excesivas. A pesar de este mecanismo, las redenciones aún pueden ocurrir debido a una mala fijación de precios del Oráculo para extraer MEV. Las cotizaciones del Oráculo para la redención de mkUSD pueden ofrecer a los propietarios del tesoro tasas de colateral subóptimas, lo que conduce a una experiencia de usuario negativa.

1.3.2 Validez de los cambios en el oráculo de wstETH

La propuesta de cambio de fijación de precios de Prisma Oracle para stETH ha sido aprobada. Inicialmente, Prisma utilizaba el oráculo Chainlink stETH/USD, con un umbral de desviación del 1% para el TroveManager de wstETH. Se descubrió que el uso de una combinación de oráculos Chainlink stETH/ETH y ETH/USD podría llevar a una mejora, con un umbral de desviación del 0,5% para cada oráculo.

Por favor, consulte la desviación entre el nuevo Oráculo y el antiguo Oráculo con una resolución de 15 bloques:

Fuente: Gráfico por @wavey

Se ha observado que cuando el precio de negociación del mkUSD cae por debajo de su tasa anclada, se producen redenciones excesivas debido a una desviación del Oráculo que excede el 1%. En estos casos, encontramos que las tarifas dinámicas eran insuficientes para evitar redenciones excesivas causadas por desviaciones de precios. Consulte el ajuste de las tarifas de redención para eventos de redención por debajo.

Fuente: Gráfico por@wavey

Estos rescates pueden incurrir en costos indirectos para los usuarios de Prisma, ya que pueden recibir tasas desfavorables cuando se canjean sus tesoros. El análisis de Wavey indica que el oráculo stETH/USD es más propenso a desviaciones en comparación con las combinaciones de oráculos validadas en los datos anteriores. Las desviaciones transitorias que superan el 1,2% han creado oportunidades para que los bots de MEV las aprovechen.

La propuesta de cambiar el Oracle (PIP-004) se ejecutó el 17 de noviembre de 2023, a las 7:15:35 PM +UTC, junto con esta transacción. Según el gráfico de precios de mkUSD a continuación y la fecha de ejecución de la propuesta, se puede observar que después de la ejecución de la propuesta, el precio real de mkUSD en USDC ha disminuido. La disminución de la rentabilidad de los redimibles debido a las mejoras en el oráculo puede resultar en una disminución en la fuerza de la fijación al precio.

Origen: Consulta de Dune_5685458

También se deben considerar otros factores influyentes, incluidas las limitaciones del modelo de tasa de interés del protocolo, los casos de uso para mkUSD y las medidas de incentivo desalineadas. Otra propuesta significativa que restringe los canjes es PIP-019, ejecutada el 31 de enero. Esta propuesta aumentó la tarifa base de canje para todos los TroveManagers al 1%-1.5%, reduciendo la elasticidad de anclaje de mkUSD pero a costa de disminuir el riesgo de canje para los propietarios de troves de Prisma.

Parte 2: Análisis Residual de Oráculos

2.1 Objetivos

El análisis tiene como objetivo evaluar el rendimiento de los oráculos de Prisma implementados y evaluar el rendimiento hipotético de los oráculos de Curve EMA en cadena alternativos utilizando datos históricos. Los hallazgos del estudio proporcionarán información inicial sobre el comportamiento de los oráculos fuera de la cadena y en cadena, lo que permitirá una evaluación más detallada en investigaciones posteriores.

El propósito de este análisis es determinar si el oráculo actual proporciona la solución de rendimiento más óptima o si se pueden realizar mejoras mediante la implementación de soluciones en cadena o híbridas utilizando el oráculo de la piscina EMA de Curve.

2.2 Metodología

El análisis se centrará específicamente en stETH, ya que es el LSD más comúnmente utilizado, con un feed de precios maduro de Chainlink y una liquidez profunda en la piscina de Curve. Se ha realizado un análisis de otros colaterales listados en Prisma, y los resultados se proporcionan en el Apéndice B del informe para referencia.

El análisis comparativo implica evaluar el grado de alineación entre los datos del ensayo y el conjunto de datos de referencia. En este caso, se consideran dos conjuntos de datos: los datos del ensayo de interés y el conjunto de datos de referencia. Si bien se espera que los datos del ensayo sigan de cerca los datos de referencia, pueden producirse desviaciones.

Para cuantificar el alineamiento, examinamos los residuos, que básicamente representan la diferencia entre los datos del ensayo y los datos de referencia. El análisis de residuos tiene como objetivo revelar patrones o tendencias en estas diferencias.

Al analizar los residuos (desviaciones de los valores de referencia), se realizan observaciones basadas en la desviación estándar de los residuos. La desviación estándar (SD) es una medida estadística utilizada para cuantificar la variabilidad o dispersión de un conjunto de valores. Proporciona una indicación de la distribución de valores alrededor de la media (promedio). Una desviación estándar baja implica que los puntos de datos tienden a estar cerca de la media, mientras que una desviación estándar alta indica que los puntos de datos están dispersos en un rango más amplio.

En nuestro caso, una media cercana a 0 es deseable ya que indica que los precios proporcionados no están sobreestimando ni subestimando los precios de referencia. Sin embargo, una media cercana o igual a 0 con una desviación estándar relativamente alta sugiere fluctuaciones significativas, que son indeseables ya que corresponden a una mala fijación de precios. Un feed de oráculo con una media de cero y la desviación estándar mínima es el resultado ideal, lo que indica que el feed sigue con precisión los precios spot.

Para monitorear y evaluar la precisión de la actividad de precios del oráculo en cadena, las cotizaciones obtenidas de los destinos de comercio más líquidos (excluyendo Curve) sirven como referencia para el análisis residual. Específicamente, las cotizaciones del par de divisas LSD/ETH en Uniswap son los puntos de referencia principales en este escenario.

Nuestro análisis incluye dos estrategias para derivar los precios de stETH Chainlink. Esto se hace porque se encontró que la desviación del feed original de Chainlink stETH/USD es mayor que la desviación usando stETH/ETH + ETH/USD. Los oráculos se actualizaron según las propuestas de gobernanza. Posteriormente, el análisis que involucra el precio mejorado de stETH/ETH Chainlink en ETH se denomina stETHv1, mientras que el feed de combinación stETH/USD + ETH/USD (replicando el rendimiento original del oráculo stETH, estandarizado a ETH) se denomina stETHv2.

2.3 Recopilación de datos

Para fines analíticos, se obtuvieron datos del último trimestre de 2023 de todos los activos respectivos (desde el bloque 18331000 hasta el bloque 18931000, con una resolución de 250 bloques para el conjunto de datos). Esto crea un conjunto de datos que contiene 2401 puntos de datos para todos los activos.

El activo principal bajo consideración es stETH, ya que es el tipo de colateral actualmente aceptado por Prisma, con tanto el feed de Chainlink como el pool de Curve StableSwap-ng disponibles como referencia (consulte el Apéndice B para análisis sobre rETH y cbETH, que utiliza la implementación anterior del pool CryptoSwap). Todos los datos se obtuvieron consultando precios para el rango de bloques especificado.

Los precios de Oracle se analizan a partir de las siguientes fuentes:

Pool de liquidez de Curve

Chainlink Precio Comentarios

La dirección de la piscina minera de Uniswap como agente de referencia de precio spot es la siguiente:

precio spot de Uniswap

Para estandarizar LSD a su ETH subyacente, utilizamos la tasa de cambio interna LSD/ETH:

Tasa de cambio interna LSD/ETH

2.4 Análisis residual de la máquina oracle stETH

2.4.1 Chainlink y Curve

En esta sección, compararemos la precisión del feed de precio de Chainlink stETH con Curve.

Feed de Chainlink stETHv1 vs. Curve

Chainlink: feed stETH/ETH

Curva: piscina stETH/ETH

A continuación se muestra una comparación directa de los precios de stETH de Chainlink y Curve. Debido al ciclo de latido de 24 horas de stETH/ETH de Chainlink, el precio fluctúa cada pocos bloques. Comparativamente, las fluctuaciones son más fácilmente observables en el feed de Chainlink (visualizado de mejor manera en el feed de Chainlink stETH/USD) en comparación con Curve, ya que Curve utiliza un tiempo de EMA de 10 minutos (ma_exp_time) para derivar su precio.

Si restamos el precio de Curve del precio de Chainlink, obtendremos los residuos, como se muestra a continuación:

El valor promedio de desviación es ~-0.000305.

Una observación importante que se puede hacer aquí es que Curve Oracle sobreestima ligeramente sus datos de precios en comparación con Chainlink.

Chainlink stETHv2 y Curve

Chainlink: feed stETH/USD / feed ETH/USD

Curve: piscina stETH/ETH

A continuación se muestra una comparación de precios de feeds alternativos de Chainlink normalizados a ETH (stETH/USD y ETH/USD) frente a la curva stETH. Dado que Chainlink stETH/USD tiene un umbral de desviación del 1% (en comparación con el 0,5% en el feed stETH/ETH), el precio muestra una mayor desviación alrededor del precio de anclaje.

Como se observó anteriormente, las fluctuaciones de precios de stETH/USD de Chainlink son más pronunciadas en comparación con Curve.

El valor promedio de desviación es ~-0.000171.

Dependiendo de la escala, este feed tiene residuos más grandes, es decir, más volatilidad, que stETH/ETH.

2.4.2 Uniswap y Chainlink

En esta sección, compararemos la precisión histórica del feed de precio de Chainlink stETH con el precio de referencia spot de Uniswap.

Suponiendo que los datos de precios de la piscina UniswapV3 sirvan como un proxy confiable para los precios al contado, podemos comparar los datos de referencia previamente obtenidos para verificar la proximidad del feed del Oráculo de Chainlink a los valores de referencia.

Uniswap Spot vs. Chainlink stETHv1

Chainlink: feed de stETH/ETH

Uniswap: tasa de cambio de intercambio interno de wstETH/ETH pool / wstETH/stETH

Aquí está la desviación real entre el precio spot de Uniswap y Chainlink stETH/ETH:

Residual mean = 0.000415

Desviación estándar de las diferencias de precios = 0.000601

Uniswap Spot vs. Chainlink stETHv2

Chainlink: alimentación stETH/USD / ETH/USD

Uniswap: tasa de cambio interna de la piscina wstETH/ETH / intercambio interno wstETH/stETH

Aquí está la desviación real entre Uniswap stETH y Chainlink stETH (stETH/USD):

Diferencia de precio media = 0.000281

Desviación estándar de la diferencia de precio = 0.002747

Aquí comparamos Chainlink stETHv1 (es decir, stETH/ETH) y stETHv2 (es decir, stETH/USD) con datos de Uniswap, y los resultados indican que la desviación de stETHv2 es significativamente mayor que la de stETHv1.

La misma observación también se hizo en la propuesta de gobernanza de Prisma (PIP-004) cuando el oráculo cambió de stETH/USD a stETH/ETH + ETH/USD para reducir las desviaciones en la alimentación de precios.

2.4.3 Uniswap y Curve

En esta sección, compararemos la precisión histórica del Oráculo stETH Curve con el precio de referencia spot de Uniswap.

Suponiendo que los datos de precios del pool UniswapV3 sirvan como un proxy confiable para los precios al contado, podemos comparar los datos de referencia previamente obtenidos para verificar la proximidad del suministro del Oráculo de Curve a los valores de referencia.

Uniswap Spot vs. Curve

Curve: piscina stETH/ETH

Uniswap: tasa de cambio del pool wstETH/ETH / intercambio interno wstETH/stETH

Basándonos en un análisis residual similar al anterior, obtenemos las siguientes métricas para comparar con el punto de referencia previamente establecido:

La diferencia media de precios = 0.000110.

La desviación estándar de las diferencias de precio = 0.000141.

Como se observa, el precio promedio reportado por Curve es ligeramente inferior al spot de Uniswap, con una desviación estándar significativamente menor en comparación con cualquiera de las fuentes de Chainlink.

2.5 Resultados

Al comparar estas métricas, encontramos que la desviación de los datos de Chainlink es significativamente mayor que la de Curve al hacer referencia a los datos de Uniswap como un proxy para los precios spot.

Dado que las observaciones anteriores se basan en las desviaciones de cada fuente de precios, es posible que el feed del Oráculo de Curve muestre desviaciones positivas mientras que el feed de Chainlink muestre desviaciones negativas, y viceversa. Este escenario se anula por completo ya que los rangos de desviación de los feeds de Chainlink y Curve Oracle son más pequeños en comparación con los rangos de desviación de Uniswap & Chainlink y Uniswap & Curve.

La tabla a continuación muestra el análisis residual realizado sobre los datos recopilados. La media residual, multiplicada por 100, produce el porcentaje de desviación promedio del activo objetivo respecto al de referencia (en términos de USD, en comparación con los precios de ETH denominados en USD).

La tabla compara directamente el rendimiento relativo de Chainlink y Curve con la referencia de Uniswap en términos de promedio y desviación estándar para cada activo. En todos los casos, Curve muestra valores más bajos de promedio y desviación estándar. El multiplicador de precisión muestra la precisión relativa de cada valor observado.

Los puntos principales aquí son los siguientes:

  1. Basado en la desviación estándar de los residuos, Curve muestra una volatilidad más baja en comparación con Chainlink en relación con los precios referenciales, y esto se mantiene constante en los activos observados, aunque la desviación estándar entre cbETH para Chainlink y Curve es similar.
  2. Según la tabla anterior, al analizar los medios, se puede observar que Chainlink subestima los precios de los activos en comparación con los precios de referencia de Uniswap. Curve se alinea más estrechamente con los precios de referencia, pero también tiende a subestimar ligeramente los precios en comparación con los precios de referencia de Uniswap.
  3. Una advertencia sobre estos hallazgos es que, a pesar de la superioridad general del Oracle de Curve sobre Chainlink observada aquí, rETH y cbETH experimentaron desviaciones agudas y de corta duración, como se menciona en el Apéndice B: Análisis Residual rETH/cbETH. Esto se atribuye a la relativa iliquidez de las pools, la baja actividad y la insuficiencia de las implementaciones antiguas de las pools para la integración. Sin embargo, se necesita más investigación para determinar las métricas de referencia necesarias para Oráculos de pools de Curve apropiadamente confiables.

Sección 3: Análisis de Redención MEV stETH

3.1 Objetivos

El análisis tiene como objetivo comparar los precios de implementación de eventos de redención en el Gate.io wstETH TroveManager con los precios hipotéticos cotizados utilizando datos históricos por oráculos alternativos en cadena. Los resultados del estudio proporcionarán ideas iniciales sobre el comportamiento de los oráculos fuera de la cadena y en cadena, lo que permitirá una evaluación más detallada en investigaciones posteriores.

El propósito de este análisis es determinar si el oráculo actual proporciona la mejor solución de rendimiento en escenarios específicos de redención o si se pueden realizar mejoras a través de la implementación de soluciones en cadena o híbridas, utilizando oráculos de la piscina EMA de Curve.

3.2 Metodología

Este análisis se centrará específicamente en stETH, ya que es el LSD más comúnmente utilizado y tiene feeds de precios maduros de Chainlink y una liquidez profunda en la pool de Curve. El estudio agregará todos los eventos de redención, comparando los precios oráculo realizados de stETH con varios precios oráculo alternativos, cotizados en USD, y utilizando el precio oráculo stETH/ETH de Curve.

Para este análisis, el precio stETH realizado se calcula dividiendo la cantidad redimida de mkUSD por la cantidad de stETH perdida en el Administrador de Trove en forma de wstETH. Para determinar la cantidad de stETH, debemos considerar el wstETH recibido de la redención más el wstETH gastado en tarifas y convertirlos a stETH. Si alguna fuente alternativa ofrece consistentemente menores ganancias a los redentores, podemos decir que su rendimiento de MEV es mejor que el precio actual.

El TroveManager wstETH se utiliza para recuperar todos los hashes de transacciones al obtener mkUSD a cambio. Las transacciones en las que la dirección que canjea mkUSD recibe y quema mkUSD se consideran transacciones BOT. Las consultas detalladas de los eventos de canje se pueden encontrar aquí: consulta de Dune_3352919. Esta consulta es esencial para recuperar todos los datos de las transacciones BOT.

3.3 Recopilación de datos

La consulta Dune se utiliza para identificar transacciones BOT que obtienen todos los valores hash de transacción, la tasa de cambio wstETH realizada para la redención de mkUSD y el número de bloque de los eventos de redención. Los números de bloque obtenidos de la consulta se utilizan como entradas para consultar los siguientes datos, que se utilizan para comparar la implementación actual con los cambios en el precio de alimentación Curve stETH.

Basándonos en los datos anteriores, podemos construir tres feeds de precios utilizando el precio del oráculo Curve stETH/ETH, y fusionarlos con ETH/USD para derivar stETH/USD. Después de esta operación, obtenemos los siguientes datos para la visualización:

Los datos anteriores proporcionan el precio de stETH en USD, que se puede analizar en base a los precios de stETH realizados de todas las transacciones BOT. El stETH realizado (en USD) se utiliza simplemente para calcular el precio de stETH para cada mkUSD proporcionado durante el canje.

Análisis de redención de 3.4 stETH MEV

A continuación se muestran 4 fuentes de precios de stETH para el bloque de trading BOT (1 referencia y 3 alternativas discutidas anteriormente). Los feeds de precios realizados son precios de oráculos de precios implementados (es decir, Chainlink). Esto se compara con 3 feeds que utilizan Curve stETH/ETH como núcleo. Aquí, una cotización más alta resultará en una disminución en el valor de stETH intercambiado por mkUSD y viceversa.

Basándonos en la información anterior, podemos modelar la cantidad relativa de stETH recibida al canjear mkUSD y normalizarla en función de la cantidad real recibida del oráculo existente. El siguiente gráfico muestra el stETH obtenido de mkUSD antes de aplicar las comisiones y procesa los datos para eliminar los valores atípicos con el fin de mejorar la visualización:

3.5 Resultados

El análisis revela una tendencia clara: al combinar Curve stETH/ETH con Uniswap ETH/USDC y Chainlink ETH/USD, la cantidad de stETH disponible para el canje de mkUSD disminuye. En consecuencia, una reducción en el número de unidades de stETH por canje de mkUSD conlleva a una disminución en las ganancias de BOT. La visualización proporcionada ilustra la comparación entre las ganancias de BOT bajo varios precios de alimentación asumidos y el precio de alimentación real, excluyendo las tarifas:

Es evidente que la combinación de Curve stETH/ETH, Uniswap ETH/USDC y Chainlink ETH/USD reduce la rentabilidad de los canjes en comparación con el precio de alimentación realizado.

Parte 4: Mejoras propuestas del Oráculo

Solución híbrida de Oracle 4.1

Reconociendo los riesgos inherentes de depender únicamente del oráculo de Curve, especialmente durante períodos de baja liquidez o fluctuaciones de liquidez, la solución propuesta integra estratégicamente el oráculo de Chainlink como medida de salvaguarda (es decir, un plan de respaldo) en caso de desviaciones. Teniendo en cuenta la posibilidad negligente de que Chainlink proporcione datos incorrectos, puede servir como una opción de respaldo confiable.

Esta solución actúa como un filtro, considerando tanto los precios de Curve como de Chainlink. Las condiciones se establecen dentro de una función, sirviendo como un interruptor. Para diseñar esta condición, se introduce el concepto de un rango aceptable. Este rango representa la diferencia aceptable entre los precios de oracle de Chainlink y Curve. Cuando la diferencia observada excede este rango, indica un posible sesgo o manipulación en los datos del Oracle de Curve. En tales casos, la función mitiga los riesgos potenciales favoreciendo los precios más seguros de Chainlink. Por el contrario, cuando la diferencia cae dentro del rango aceptable, la función se basa en la precisión y exactitud del Oracle de Curve.

Vale la pena señalar que el rango aceptable se puede configurar como estático o dinámico, dependiendo de la volatilidad de los activos subyacentes (por ejemplo, ETH y LSD relacionado). La naturaleza dinámica permite la adaptación a las condiciones del mercado volátil, garantizando elasticidad y mecanismos de respuesta en la determinación de precios. Esta estrategia de doble filo minimiza la dependencia de una única fuente de datos, mejorando así la resistencia y confiabilidad general del mecanismo de precios.

4.2 solución de verificación

4.2.1 Estático acceptable_range

La solución introduce un método estático, acceptable_range, para abordar posibles vulnerabilidades al depender únicamente del Oráculo de Curve. Si bien los precios generados por el Oráculo de Curve pueden ser más precisos que los de Chainlink, podrían ser susceptibles a manipulaciones. Por otro lado, Chainlink es robusto y probado, considerado una elección más segura en la industria. Cuando la diferencia entre el Oráculo de Curve y Chainlink excede un valor fijo, el acceptable_range sirve como umbral para cambiar al feed de Chainlink.

Estratégicamente, el acceptable_range acepta cotizaciones que están dentro de ±1% de las cotizaciones de Chainlink. Esto está casi tres desviaciones estándar de la diferencia promedio entre Curve y Chainlink, considerando los feeds mejorados de stETH/ETH y ETH/USD en comparación con el feed anterior de stETH/USD.

4.2.2 Función de salida derived_price

El derived_price es una función o mecanismo diseñado para determinar la cotización final de un activo dado, especialmente en escenarios que involucran el Oracle de Curve y el Oracle de Chainlink.

En la solución descrita, esta función evalúa cotizaciones tanto del Oráculo de Curve como del Oráculo de Chainlink. Según la diferencia observada entre estos dos precios y si cae dentro o excede el rango aceptado predefinido, la función produce diferentes precios derivados.

Aquí hay una comparación de derived_price con las otras fuentes de precios previamente mostradas:

Las ganancias del BOT pueden ser visualizadas por este precio derivado (ya que no hay desviación, este precio será exactamente igual a Curve stETH/ETH y CL stETH/ETH) como se muestra a continuación:

Analizar las ganancias totales puede revelar el panorama general. Se identificaron seis valores atípicos y se calculó la ganancia total para cada caso antes y después de filtrar los valores atípicos.

Curve stETH/ETH y Uniswap ETH/USDC son los que mejor reducen el beneficio disponible para los BOTs. El precio derivado que proporcionan tiene el mismo potencial de beneficio que la implementación actual del oráculo stETH, pero limita el beneficio, asumiendo que ahorra a los usuarios aproximadamente 35.4 ETH en las 189 transacciones analizadas.

4.3 Conclusión

Debido a la fuerte dependencia de las cotizaciones de los intercambios descentralizados más líquidos para las actividades en cadena y al hecho de que los bots de MEV también siguen las mismas cotizaciones al cambiar mkUSD por LSD, la precisión de las cotizaciones (utilizadas para fijar los precios de redención por parte del Oráculo) es de suma importancia.

Los datos históricos sugieren que los precios del oráculo de la piscina de Curve están más cerca de la referencia (datos de precios de UniswapV3) en comparación con los precios de Chainlink. Los datos indican que la implementación del Oráculo de Curve reduciría el MEV para los bots y proporcionaría mejores tasas de cambio para los usuarios que canjean sus tesoros.

Si bien utilizar Curve Oracle como un Oracle independiente puede ser tentador, la efectividad de la retroalimentación de precios de Curve depende de la profundidad de liquidez de activos específicos y la interacción con la piscina. Una solución híbrida de Oracle con Curve Oracle y Chainlink Oracle puede utilizarse para igualar los precios en cadena mientras se mantiene la fiabilidad y la amplia cobertura de mercado heredada de Chainlink Oracle.

La solución híbrida de Oracle que proponemos evalúa la desviación estándar (SD) para generar derived_price. Si la SD se acerca a 0, indica adherencia a los valores de referencia de derived_price, lo que lo hace digno de consideración. Esto asegura que cuando Curve Oracle se desvíe de los umbrales predefinidos, la solución cambie dinámicamente a la fuente más segura de Chainlink. Dado que esta solución casi siempre produce la cotización de Curve de stETH, se asume que la actividad de MEV es la misma que usar Curve stETH/ETH, sin ninguna alternativa.

Apéndice A: Scripts de Procesamiento de Datos

Los scripts utilizados para generar el análisis en este informe son los siguientes:

  1. OracleAnalysisV4: Cuaderno de colaboración para recopilación de datos
  2. OracleAnalysisPlayground: Cuaderno de Colab para trazar gráficos usando archivos de datos pickle
  3. PrismaOracleModelingV1: Cuaderno de colaboración para trazar gráficos de actividad de intercambio de MEV
  4. DerivedPriceModeling: Cuaderno Colab para probar y modelar soluciones de Oracle alternativas

Apéndice B: análisis residual rETH/cbETH

Otras Gráficas rETH

Chainlink y Curve

Uniswap y Curve

Uniswap y Chainlink

Verificar pico rETH

Durante el período de observación, el precio del oráculo de la curva rETH experimentó varios picos. Esto resultó en un aumento significativo de la discrepancia de precios entre el precio del oráculo y la referencia al contado. A continuación se muestra un gráfico más detallado que muestra la proporción del pool de liquidez/flujo de tokens y el comportamiento del precio del oráculo durante los períodos de aumento de precios.

start_block = 18824000

end_block = 18827000

interval_blocks = 100

Proporción de la piscina minera:

Precio de Oracle:

start_block = 18850000

end_block = 18858000

interval_blocks = 100

Ratio del grupo de minería:

Precio de Oracle:

start_block = 18880000

end_block = 18885000

interval_blocks = 100

Proporción de la piscina minera:

Precio de Oracle:

Otros Gráficos cbETH

Chainlink y Curve

Uniswap y Curve

Uniswap y Chainlink

Comprueba Peak cbETH

Durante el período de observación, los precios del Oráculo Curve cbETH experimentaron varios picos. En varias ocasiones, esto resultó en incrementos significativos en la desviación de precio entre el precio del Oráculo y la referencia spot. A continuación se muestra un gráfico más detallado que muestra el comportamiento de las ratios de la piscina de liquidez/liquidez del token durante estos periodos de aumentos de precio y el comportamiento de los precios del Oráculo.

start_block = 18693500

end_block = 18696000

interval_blocks = 10

Proporción de la piscina minera:

Precio de Oracle:

start_block = 18814000

end_block = 18816500

interval_blocks = 10

Proporción del grupo de minería:

Precio de Oracle:

start_block = 18800000

end_block = 18805000

interval_blocks = 10

Proporción del grupo de minería:

Precio de Oracle:

Declaración:

  1. Este artículo es reproducido de [Gatemarsbit] original title “Análisis comparativo de los oráculos opcionales de Prisma”, los derechos de autor pertenecen al autor original [PrismaRisk], si tiene alguna objeción al reimpresión, por favor contacteEquipo de Aprendizaje GateEl equipo lo manejará tan pronto como sea posible de acuerdo con los procedimientos pertinentes.

  2. Descargo de responsabilidad: Las vistas y opiniones expresadas en este artículo representan solo las opiniones personales del autor y no constituyen ningún consejo de inversión.

  3. Otras versiones del artículo son traducidas por el equipo de Gate Learn, no mencionadas enGate.io, el artículo traducido no puede ser reproducido, distribuido o plagiado.

即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!