Encuesta de algoritmos automatizados de creación de mercado – Terra Money

Los creadores de mercado automatizados se adoptan habitualmente en una serie de contextos, desde los mercados financieros hasta los de apuestas, y recientemente se han propuesto como una forma eficiente de establecer precios en el espacio de las criptomonedas. Su papel es fundamental y encontrar el protocolo correcto es clave para el lanzamiento exitoso de cualquier nuevo mercado.

Existen muchos desafíos para encontrar el algoritmo correcto, ya que debería ser compatible con las características específicas del mercado, como su liquidez, y sus características deberían minimizar el alcance de las oportunidades de arbitraje y el comportamiento errático de los precios. En nuestro viaje hacia un sólido mercado en cadena Terra / Luna, hemos revisado varios algoritmos automatizados de creación de mercado. En esta publicación, compartiremos algunos de nuestros aprendizajes y discutiremos las características principales detrás de la Regla de puntuación de mercado logarítmica y el modelo Uniswap, ya que estos son los dos algoritmos de creación de mercado más populares. A continuación, analizamos la mecánica de cada enfoque y discutimos los posibles méritos y desventajas. También discutimos brevemente la aplicabilidad de estos enfoques al mecanismo de intercambio en cadena de Terra.

Regla de puntuación logarítmica del mercado ("LMSR")

El LMSR es un creador de mercado automatizado utilizado en mercados de predicción. Para ilustrar cómo funciona, considere apostar en un evento donde exactamente uno de los dos resultados debe ocurrir Por ejemplo, dos resultados en el mercado de apuestas deportivas podrían ser (1) los Patriotas de Nueva Inglaterra ganan el Super Bowl y (2) los Patriotas de Nueva Inglaterra pierden el Super Bowl. Los comerciantes pueden comprar acciones que cada una les paga $ 1 si se produce el resultado relevante. Esto significa que si un comerciante compró 3 acciones de "Los Patriots pierden", y los Patriots sí pierden el Super Bowl, él / ella ganará $ 3.

Una de las principales responsabilidades del creador de mercado es decidir los precios para cobrar a los posibles comerciantes. Lógicamente, el precio debe estar correlacionado con las probabilidades de cada resultado; por ejemplo, si "Patriots win" es un resultado muy probable, eso significaría que existe una alta probabilidad de que el creador del mercado tenga que hacer pagos a los tenedores de "Patriots win" comparte después del evento. Para compensar esto, el creador de mercado deberá cobrar montos más altos por esas acciones. Con ese principio establecido, ¿cómo decide el creador de mercado una evaluación de probabilidad sensata? La compra y venta que observa son insumos clave, ya que muchos comerciantes que compran acciones de "Patriots win" serían una señal de que el mercado percibe el precio como demasiado bajo en relación con la probabilidad del resultado. Para incorporar formalmente la información que obtiene de compradores y vendedores, el creador de mercado puede usar una función de costo, C (PW, PL). C se define mediante la siguiente fórmula, siendo b un número mayor que 0 elegido por el creador de mercado (más sobre eso más adelante):

Esta función de aspecto un tanto complicado asigna las acciones en circulación a las cantidades en dólares que el creador de mercado debe recibir para aceptar esas apuestas. Para ser más precisos, el precio de cada apuesta incremental se puede calcular observando cómo cambiará C. Una característica crítica de esta ecuación (y por qué se usa esto en lugar de una fórmula más simple) es que el precio de las apuestas incrementales cambiará en función del número de acciones en circulación en cada categoría, incorporando así las señales enviadas al comprar y vender en el mercado . Además de la compra y venta observada, b es la otra entrada. Se llama parámetro de liquidez y controla cuánto cambian los precios marginales en respuesta a las transacciones. Los precios cambian rápidamente cuando b es pequeño y lentamente cuando b es grande.

Ahora que hemos establecido algunos de los conceptos básicos, usemos números concretos para hacer que la mecánica sea un poco más tangible. Suponga que el creador de mercado establece b = 10, y que hasta ahora no se han vendido acciones de PW o PL. Un comerciante pregunta por el precio de PW. Como se mencionó anteriormente: el precio de una operación única o incremental se captura por el cambio en C. Como tal, el creador de mercado calculará la diferencia en C al pasar del estado inicial donde no se ha vendido nada, C (0 , 0), al estado donde se ha vendido una acción de PW, C (1,0). En números:

Para el comerciante, debe considerar la probabilidad de una victoria de los Patriots para determinar si quiere comprar esto al creador de mercado. Por ejemplo, si el comerciante cree que los Patriots tienen un 60% de posibilidades de victoria, entonces su beneficio esperado se compone de un 60% de posibilidades de que gane $ 0,49 (los $ 1,00 que recibe menos los $ 0,51 que paga), y un 40% de posibilidades de que pierda $ 0.51. La expectativa neta es 0.6 * (1–0.51) + 0.4 * (-0.51), o una ganancia de $ 0.09. Como se ilustra en este ejemplo, los comerciantes en este tipo de mercado serán incentivados a comprar acciones siempre que el precio implique una probabilidad menor que sus propias creencias. Esta es una característica importante: los comerciantes tienen un incentivo para ser sinceros y comerciar de acuerdo con sus creencias.

Ahora supongamos que pasa algo de tiempo, y en este punto el creador de mercado ha vendido 5 acciones de PW y 3 acciones de PL. Un nuevo operador viene a él buscando comprar 1 acción de PW. El creador de mercado automatizado determinará el precio calculando C (6, 3) – C (5, 3):

Tenga en cuenta que en esta segunda transacción, el precio de PW ha aumentado. Esto es un reflejo del hecho de que más comerciantes han comprado PW que PL. Con LMSR, los precios se mueven para reflejar las creencias del mercado.

Un inconveniente clave de este algoritmo es la discreción en torno a la elección del parámetro b. ¿Cuál es un buen valor para b? Con un valor pequeño para b, los precios cambiarán mucho más rápidamente (es decir, comprar una pequeña cantidad de acciones aumenta mucho el precio). Por el contrario, un gran valor para b hará que los precios se sientan más "rígidos", lo que requerirá una gran cantidad de acciones para cambiar el precio significativamente. Elegir un buen valor para b depende en gran medida de la naturaleza del mercado. El algoritmo podría modificarse para poder adaptarse a la liquidez, es decir, cuántos inversores están dispuestos a participar en el mercado, utilizando una variable b (q) que aumenta con el volumen del mercado como se ha propuesto aquí.

Uniswap / Blockdrop

Uniswap ha propuesto recientemente otro algoritmo para establecer precios y ha atraído rápidamente la atención de la comunidad de cifrado. Por lo general, un intercambio tiene una cartera de pedidos compuesta por órdenes limitadas, con órdenes de compra y venta de varias cantidades y precios. Los comerciantes que llegan a un intercambio revisan estos pedidos para encontrar cantidades y precios que se ajusten a sus necesidades. Por ejemplo, un operador que busca comprar 25 acciones en el intercambio a continuación compraría 10 acciones a un precio de 10.1 y 15 acciones a un precio de 10.2.

En contraste con el modelo tradicional, el modelo Uniswap / Blockdrop contiene un libro de pedidos donde todas las transacciones de provisión de liquidez se agrupan, y las transacciones tienen un precio de acuerdo con un mecanismo de "producto constante". En este sistema, la liquidez disponible en ambos lados del comercio potencial se multiplican entre sí, y eso producto Se celebra constante y se usa para determinar el precio de todas las transacciones. A continuación, ofrecemos un ejemplo para explicar mejor cómo funciona esto.

Comenzamos con un proveedor de liquidez que deposita 10 BTC y 500 ETH en el intercambio. El producto, 10 * 500 = 5,000, se convierte en el Producto que utilizamos para calcular el tipo de cambio de futuros intercambios.

Ahora suponemos que un comprador quiere usar 1 BTC para comprar ETH. El grupo de BTC aumenta de 10 a 11. Nuestro producto se fija en 5,000, por lo que dividimos 5,000 / 11 para calcular el nuevo grupo de ETH de 454.5.

A cambio de agregar 1 BTC al grupo, el comprador recibe una cantidad de ETH igual al cambio en ETH, o 500–454.5 = 45.5 ETH. Dado que los tipos de cambio son impulsados ​​por el Producto, esto significa que la próxima operación recibirá tasas ligeramente diferentes. Además, se puede introducir una pequeña tarifa comercial para compensar a los proveedores de liquidez.

En nuestro ejemplo, el comprador usó 1 BTC en su compra. Si hubiera comprado una cantidad diferente, el tipo de cambio que habría recibido también habría sido diferente, ya que el tipo de cambio refleja cuánto cambia una operación la relación "x" a "y". Consulte el cuadro a continuación para ver una representación gráfica de esta relación. A medida que aumenta el tamaño de la compra, el tipo de cambio se vuelve menos favorable. De esta manera, el resultado final finalmente tiene cierta similitud con los mercados tradicionales, donde los participantes del mercado ven que el mercado se mueve en su contra a medida que comercian de manera más agresiva.

Intuitivamente, en los mercados tradicionales, los precios y la liquidez se ven más fuertemente afectados por desequilibrios de orden más extremos, es decir, un interés unilateral en un activo, por dos razones. Primero, incluso un desequilibrio aleatorio de pedidos grandes exacerba el problema de inventario que enfrenta el creador de mercado, p. Después de una liquidación por parte de los inversores, el creador de mercado debe ser compensado por mantener estos activos durante mucho tiempo y, por lo tanto, asumir el riesgo de cualquier fluctuación en el valor de estos activos. Se esperaría que el creador de mercado respondiera cambiando los diferenciales de oferta y demanda y revisando las cotizaciones de precios. En segundo lugar, los desequilibrios de pedidos a veces señalan información privada, que debería reducir la liquidez al menos temporalmente y también podría mover el precio de mercado de forma permanente, p. El creador de mercado y los otros inversores podrían creer que la venta masiva refleja noticias sobre el flujo de caja futuro de los activos. Tenga en cuenta que en nuestro ejemplo inicial relativo a los mercados tradicionales, el comerciante hubiera preferido comprar todas sus acciones al precio más barato de 10.1, pero no había suficientes intereses de venta a ese nivel, y tuvo que recurrir a un precio menos favorable.

En general, hemos encontrado que Uniswap es un modelo más aplicable al mercado en cadena Terra / Luna en relación con LSMR. Aunque es muy eficiente y simple, el LSMR parece más adecuado para los mercados de predicción, y deja demasiada discreción en la determinación del parámetro de liquidez b, que sería difícil de calibrar en una aplicación criptográfica potencial, donde es probable que la liquidez cambie drásticamente hora. Una de las características clave del modelo Uniswaps, en cambio, la forma en que el tipo de cambio se vuelve menos favorable a medida que se demanda más liquidez en el mercado, puede emularse mediante la introducción de una función de diferencial que depende de la cantidad de liquidez en el marcador . Esto evitaría la introducción de algunas de las características adicionales que serían más engorrosas para afinar el caso de Luna, p. Introducir recompensas para aquellos que proporcionan liquidez. Estamos explorando activamente una aplicación del modelo Uniswap para la próxima iteración de Columbus, que puede leer aquí https://agora.terra.money/t/oracle-revamp-proposal-for-columbus-3/84.