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 for Algotrading: Benchmarks on Real Data

Polars vs Pandas for Algotrading: Benchmarks on Real Data

Detailed comparison of Polars and Pandas on algotrading tasks: benchmarks for filtering, aggregation, rolling signal computations, I/O, and memory consumption. Hybrid Polars + Numba architecture for maximum backtest performance.

Plateau Analysis: How to Distinguish a Robust Optimum from Overfitting

Plateau Analysis: How to Distinguish a Robust Optimum from Overfitting

Why finding the best strategy parameters is only half the work. How to visually and quantitatively distinguish a stable plateau from a fragile peak, and why Optuna contour plots are a mandatory step before launching an optimized strategy into production.

Coordinate Descent vs Bayesian Optimization: Which Finds Better Parameters

Coordinate Descent vs Bayesian Optimization: Which Finds Better Parameters

Why exhaustive search is impossible for 12+ parameters, how coordinate descent misses interactions, and how Optuna with a TPE sampler finds in 500 iterations what OAT cannot find in 96. Practical code examples, sampler comparison, and multi-objective optimization.

Multi-Symbol Validation: Test Your Strategy on All Pairs

Multi-Symbol Validation: Test Your Strategy on All Pairs

Why a strategy optimized on ETHUSDT may fail on altcoins. How to properly test across pair groups (blue chips, large caps, shitcoins) and what cross-symbol robustness score to consider sufficient.

Funding Rates Kill Your Leverage: Why PnL×50x Is a Fiction

Funding Rates Kill Your Leverage: Why PnL×50x Is a Fiction

How funding rates on Binance/Bybit turn beautiful high-leverage backtest results into guaranteed losses. Formulas, recalculation of real strategies, and the maximum leverage at which funding does not eat into profits.

Cascade Strategies: Priority Execution with Fallback Filling

Cascade Strategies: Priority Execution with Fallback Filling

Finale of the 'Backtests Without Illusions' series. How to build an orchestrator from N strategies x M pairs, implement cascade mode with priority and fallback filling, choose dual_size, and why strategy portfolios cannot be backtested by summing PnL.

Backtest-live parity: why your bot trades differently from the backtest

Backtest-live parity: why your bot trades differently from the backtest

Complete taxonomy of divergences between backtesting and live trading: from slippage and partial fills to codebase desynchronization. Architectural patterns for achieving parity, Python examples of a shared core module, and a production monitoring checklist.

Monte Carlo Bootstrap: How to Get Confidence Intervals for a Backtest in 10 Lines of Code

Monte Carlo Bootstrap: How to Get Confidence Intervals for a Backtest in 10 Lines of Code

Why a single-point estimate from a backtest is a dangerous illusion. How Monte Carlo bootstrap in 2 seconds of computation gives you a 95% confidence interval for PnL and MaxDD, and why this is a mandatory step before launching a strategy in production.

Funding Rate Arbitrage Across Exchanges: How to Profit from Rate Differences

Funding Rate Arbitrage Across Exchanges: How to Profit from Rate Differences

How funding rate arbitrage works across crypto exchanges, why rates differ on Binance, Bybit, OKX and dYdX, and how to build a monitoring and execution system to extract profit from these discrepancies.

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.