Sobre el proyecto
Qué es
FlashLoanArbitrage es un script de línea de comandos local (goflash.js) para experimentar con el arbitraje de flash-loans en mercados DeFi de estilo Ethereum. Se ejecuta en la máquina del usuario, se maneja mediante un menú interactivo y se distribuye a través de un repositorio que contiene el script, un package.json y un README. El README presenta el proyecto como material educativo para ser utilizado bajo el propio riesgo del usuario.
Cómo funciona
Al iniciar, el script ofrece opciones de billetera: generar una nueva o importar una existente mediante una clave privada. La clave resultante se escribe en un archivo wallet.json en la misma carpeta. El menú ofrece entonces cuatro back-ends de flash-loan (Aave, dYdX, Uniswap V3, Balancer), un ajuste del monto del préstamo expresado en ETH, recreación e importación de billetera, un control de inicio/parada para el arbitraje y salida.
Mientras se ejecuta, el script consulta los precios de referencia de ETH/USDC aproximadamente cada 60 segundos desde cinco fuentes: Chainlink como base del oráculo, además de Uniswap V2, SushiSwap, Curve Finance y Balancer como sedes. Muestra los valores actuales con indicadores de subida/bajada/sin cambios e informa el diferencial máximo entre las fuentes. Solo cuando el diferencial alcanza aproximadamente el 0.9% se transfiere al contrato de arbitraje; de lo contrario, continúa esperando. El README indica que tales diferenciales son raros en los mercados reales y que ocasionalmente se muestra una oportunidad simulada con fines de demostración.
El flujo del contrato descrito es: tomar un flash loan en USDC, comprar ETH en la sede más barata, vender en la más cara, pagar el préstamo y su comisión, liquidar las comisiones de trading, el deslizamiento (slippage) y el gas, y luego convertir la ganancia restante nuevamente a ETH.
Configuración y dependencias
Las únicas dependencias enumeradas son ethers, inquirer y chalk. El uso es: colocar goflash.js y package.json en una carpeta, ejecutar npm install, luego node goflash.js y seguir las instrucciones. Las notas de solución de problemas en el README cubren errores de formato de módulo, validación de formato de clave privada, fondos insuficientes para el gas, reconexión de RPC y pares de trading faltantes.
Qué tener en cuenta
- El README describe un contrato on-chain, pero la estructura del proyecto que enumera contiene solo el script, package.json, wallet.json y el propio README; el código fuente del contrato no se muestra allí, por lo que la parte on-chain no puede inspeccionarse desde el listado.
- El archivo de la billetera almacena una clave privada en texto plano en el disco. El propio README aconseja agregar wallet.json a .gitignore, mantener copias de seguridad fuera de línea, usar una billetera dedicada y nunca compartir la clave.
- El README advierte que una billetera con menos de aproximadamente 0.1 ETH no debe tomar préstamos superiores a 10 ETH porque es posible que el gas no esté cubierto, y que los costos incluyen comisiones de flash-loan, aproximadamente 0.1% de comisiones de trading, 0.05% de slippage y gas.
- No hay evidencia de afirmaciones independientes sobre rendimiento, rentabilidad o corrección en el contenido del repositorio; el comportamiento descrito es el relato del propio autor y el proyecto está explícitamente etiquetado como compartido tal cual para fines educativos.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.