Hace poco publicamos una entrada en nuestro blog donde se expone un uso posible de las nuevas mejoras de scripting de Liquid: contratos de opción totalmente garantizados que eliminan la necesidad de contar con intermediarios de confianza. Dicha publicación explica en detalle el ciclo de vida de las opciones y los términos de uso más frecuentes, así que si necesita familiarizarse con ellos, le recomendamos que empiece por ahí. Además, el artículo contextualiza y define el proceso de emisión y gestión de un contrato de opción en Liquid.
“Los contratos de opción son un tipo de instrumento financiero derivado mediante el cual el emisor de la opción vende el derecho (pero no la obligación) de comprar un activo a un precio determinado hasta cierto momento en el futuro (denominado fecha de caducidad). Después de esa fecha, si no se ha ejercido este derecho, el otorgante puede reclamar la garantía. Los contratos de opción pueden usarse para obtener ingresos de un activo cuando el titular esté dispuesto a venderlo a un precio más alto en el futuro o como una forma de que el beneficiario de la opción gane exposición a un activo arriesgando fondos mínimos”.
En esta oportunidad, queremos dar a conocer el lanzamiento de un nuevo cliente para opciones Liquid. El cliente se ejecuta localmente, se conecta a Liquid Network y puede recibir llamadas desde el front-end de un sitio web sencillo o desde una aplicación local por RPC. También publicamos documentación nueva que explica cómo instalar y utilizar el cliente.
Si desea informarse sobre los detalles técnicos del funcionamiento del cliente para opciones, lo invitamos a leer el informe “Non-Custodial Options using Elements”, coescrito por Allen Piscitello, Sanket Kanjalkar y Andrew Poelstra.
La versión actual del cliente para opciones está planteada como prueba de concepto, por lo cual no recomendamos utilizarla como base de una plataforma de opción de fase final, dado que por ahora existen limitaciones manifiestas. No obstante, este lanzamiento constituye un buen ejemplo del tipo de instrumentos financieros avanzados que posibilita Liquid.
La documentación detalla cómo:
- Instalar, ejecutar y actualizar el cliente para opciones.
- Conectar el cliente para opciones a un nodo de la red de prueba de Elements.
- Operar la interfaz RPC con distintos lenguajes de programación.
El sitio ilustra cómo efectuar llamadas al cliente para opciones mediante Python y Node.js, y contiene enlaces a otros ejemplos referidos a lenguajes como C#, Ruby, Java, Go y Perl. También se incluye un sitio web local, a modo de ejemplo, que emplea el cliente para opciones y demuestra lo fácil que es utilizarlo como base para programar.
Ejemplo de sitio web de contratos de opción, donde se observan los detalles del contrato y las acciones disponibles.
Las acciones actualmente habilitadas por el cliente para opciones mediante RPC —que, en su conjunto, permiten la gestión del ciclo de vida completo de un contrato de opción— aparecen a continuación:
- Inicializar, financiar, cancelar, caducar, ejercer y liquidar.
- Visualizar los contratos creados e importados localmente.
- Visualizar los datos del contrato (activos, precio de ejercicio, etcétera).
- Exportar, importar y eliminar un contrato.
Construimos una API HTTP de muestra en Python mediante el esquema Flask, que otorga acceso al cliente para opciones a través de llamadas HTTP y que utiliza datos en formato JSON para cumplir con las solicitudes. El ejemplo incluye plantillas de acceso a datos y tareas programadas para desarrolladores, que les permiten ajustar la lógica adicional, preservar datos ajenos al cliente para opciones e integrar servicios externos para que resulten accesibles desde el front end.
Además, incluimos un sitio web de muestra que ilustra un uso posible de la API mencionada. Dicho sitio se programó en Python mediante el esquema Flask, pero cualquier lenguaje capaz de efectuar llamadas HTTP a la API (como JavaScript) puede utilizarse para interactuar con la API.
Estos ejemplos están pensados como demostraciones de los usos posibles del cliente para opciones en una aplicación basada en la web, no como aplicaciones de fase final. La idea es ayudar a los usuarios a dar sus primeros pasos y a entender el flujo de trabajo de los contratos de opción posibilitados por los convenios de Liquid.
Esperamos que la documentación y los ejemplos demuestren lo fácil que es comenzar a aprovechar toda la funcionalidad de los contratos inteligentes de Liquid.
Actualizaciones adicionales
Vamos a seguir actualizando la documentación en la medida en que se añadan características nuevas al cliente para opciones. Para más información, póngase en contacto con nosotros mediante el canal de Telegram para programadores Liquid y/o la nueva plataforma comunitaria Build On L2.