Eugen Soloviov

Eugen Soloviov

Trading-systems engineer

Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.

Articles

Signal Correlation: How Many Pairs to Monitor

Signal Correlation: How Many Pairs to Monitor

Why 10 crypto pairs don't provide 10x diversification, how to calculate effective_N via correlation_factor, and how many pairs you really need to monitor for 80-90% orchestrator slot utilization.

Polars vs Pandas para Algotrading: Benchmarks con Datos Reales

Polars vs Pandas para Algotrading: Benchmarks con Datos Reales

Comparación detallada de Polars y Pandas en tareas de algotrading: benchmarks de filtrado, agregación, cálculos de señales rolling, I/O y consumo de memoria. Arquitectura híbrida Polars + Numba para el máximo rendimiento en backtests.

Análisis de meseta: cómo distinguir un óptimo robusto del overfitting

Análisis de meseta: cómo distinguir un óptimo robusto del overfitting

Por qué encontrar los mejores parámetros de una estrategia es solo la mitad del trabajo. Cómo distinguir visual y cuantitativamente una meseta estable de un pico frágil, y por qué los gráficos de contorno de Optuna son un paso obligatorio antes de lanzar una estrategia optimizada a producción.

Descenso por Coordenadas vs. Optimización Bayesiana: Cuál Encuentra Mejores Parámetros

Descenso por Coordenadas vs. Optimización Bayesiana: Cuál Encuentra Mejores Parámetros

Por qué la búsqueda exhaustiva es imposible con 12+ parámetros, cómo el descenso por coordenadas pasa por alto las interacciones, y cómo Optuna con un sampler TPE encuentra en 500 iteraciones lo que OAT no puede encontrar en 96. Ejemplos de código prácticos, comparación de samplers y optimización multiobjetivo.

Validación multi-símbolo: prueba tu estrategia en todos los pares

Validación multi-símbolo: prueba tu estrategia en todos los pares

Por qué una estrategia optimizada en ETHUSDT puede fallar en altcoins. Cómo probar correctamente en grupos de pares (blue chips, large caps, shitcoins) y qué puntuación de robustez cross-symbol se considera suficiente.

Las Funding Rates matan tu apalancamiento: por qué PnL×50x es una ficción

Las Funding Rates matan tu apalancamiento: por qué PnL×50x es una ficción

Cómo las funding rates en Binance/Bybit convierten hermosos resultados de backtest con alto apalancamiento en pérdidas garantizadas. Fórmulas, recálculo de estrategias reales y el apalancamiento máximo al que el funding no se come las ganancias.

Estrategias en cascada: ejecución prioritaria con relleno de respaldo

Estrategias en cascada: ejecución prioritaria con relleno de respaldo

Final de la serie 'Backtests sin ilusiones'. Cómo construir un orquestador a partir de N estrategias x M pares, implementar el modo cascada con prioridad y ejecución de respaldo, elegir dual_size, y por qué las carteras de estrategias no pueden retrocederse sumando el PnL.

Paridad backtest-live: por qué tu bot opera diferente al backtest

Paridad backtest-live: por qué tu bot opera diferente al backtest

Taxonomía completa de las divergencias entre backtesting y trading en vivo: desde el slippage y las ejecuciones parciales hasta la desincronización del código. Patrones arquitectónicos para lograr paridad, ejemplos en Python de un módulo core compartido y una lista de verificación para monitoreo en producción.

Monte Carlo Bootstrap: cómo obtener intervalos de confianza para un backtest en 10 líneas de código

Monte Carlo Bootstrap: cómo obtener intervalos de confianza para un backtest en 10 líneas de código

Por qué una estimación puntual de un backtest es una ilusión peligrosa. Cómo el bootstrap Monte Carlo, en 2 segundos de cómputo, te da un intervalo de confianza del 95% para el PnL y el MaxDD, y por qué es un paso obligatorio antes de lanzar una estrategia a producción.

Arbitraje de Funding Rate entre Exchanges: Cómo Sacar Provecho de las Diferencias de Tasas

Arbitraje de Funding Rate entre Exchanges: Cómo Sacar Provecho de las Diferencias de Tasas

Cómo funciona el arbitraje de funding rate entre exchanges de criptomonedas, por qué las tasas difieren en Binance, Bybit, OKX y dYdX, y cómo construir un sistema de monitoreo y ejecución para extraer beneficios de estas discrepancias.

QuestDB for Algorithmic Trading: SQL Extensions That Change the Game

QuestDB for Algorithmic Trading: SQL Extensions That Change the Game

Deep dive into QuestDB's time-series SQL extensions: SAMPLE BY, ASOF JOIN, HORIZON JOIN, WINDOW JOIN, LATEST ON, and real-world trading query patterns.

QuestDB for Algorithmic Trading: From Order Books to Production Architecture

QuestDB for Algorithmic Trading: From Order Books to Production Architecture

Materialized views, 2D array order book analytics, and reference architecture for a QuestDB-powered algorithmic trading platform.