Разработка AI-бота для копитрейдинга с ранжированием трейдеров
Копитрейдинг — автоматическое повторение сделок другого трейдера. Ключевая проблема: отличить стабильного прибыльного трейдера от временно удачливого. ML решает задачу ранжирования трейдеров на основе многомерного анализа их истории.
Проблема выбора трейдера
Топ по доходности — ненадёжный критерий. Трейдер с +300% за год может быть:
- Гений стратегии с воспроизводимым edge
- Удачливый спекулянт, рискующий всем в одной ставке
- Будущий банкрот при изменении рыночного режима
ML строит многомерный профиль трейдера, не зависящий от одной метрики.
Feature Engineering для ранжирования
Метрики доходности
- Sharpe Ratio (annual): доходность / волатильность
- Sortino Ratio: штрафует только за downside volatility
- Calmar Ratio: CAGR / максимальная просадка
- Omega Ratio: взвешенная вероятность gain vs. loss
Drawdown характеристики
- Maximum Drawdown (MDD)
- Average Drawdown
- Drawdown Duration
- Recovery Time: сколько времени от MDD до новых максимумов
Стабильность через рыночные режимы
- Доходность в bull market vs. bear market vs. sideways
- Consistency across different volatility regimes
- Performance correlation с рыночными индексами (beta)
Торговые паттерны
- Win Rate vs. Average Win/Loss Ratio (важно оба)
- Trade frequency (стабильность активности)
- Holding period distribution
- Position sizing consistency
Red Flags
- High leverage (опасность)
- Концентрация нескольких крупных выигрышных сделок vs. стабильные малые
- Long streaks без trades (неактивность → нет данных)
- Drawdown > 50% (непригодно для копирования)
ML-модель ранжирования
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import GradientBoostingClassifier
import numpy as np
features = [
'sharpe_ratio_6m', 'sortino_ratio_6m', 'calmar_ratio_6m',
'max_drawdown', 'avg_drawdown', 'recovery_time_avg',
'win_rate', 'profit_factor', 'trade_consistency',
'bull_market_return', 'bear_market_return',
'correlation_with_btc', 'leverage_avg',
'monthly_return_std', # Volatility of monthly returns
'streak_max_win', 'streak_max_loss', # Behavioral consistency
]
# Target: 1 if trader continued good performance in next 90 days
# 0 if performance degraded significantly
model = GradientBoostingClassifier(
n_estimators=200, learning_rate=0.05, max_depth=4
)
model.fit(X_train, y_train)
trader_score = model.predict_proba(trader_features)[:, 1]
Time-series cross-validation: обучение на периодах T1, тест на T2, обучение на T1+T2, тест на T3. Предотвращает lookahead bias.
Portfolio of Traders
Копирование одного трейдера — концентрированный риск. Оптимальный портфель трейдеров:
- ML отбирает топ-N по score
- Корреляционный анализ: предпочтительны некоррелированные стратегии
- Risk parity allocation: больший капитал — трейдерам с меньшей волатильностью
При падении score трейдера ниже порога — автоматическое исключение из портфеля.
Execution копитрейдинга
Sizing адаптация
Трейдер открыл 10% от своего портфеля → копировщик открывает 10% от своего (с учётом собственного leverage лимита).
Entry/Exit timing
Минимальная задержка между оригинальной сделкой и копией. Slippage в highly liquid рынках при небольших размерах — незначителен. В неликвидных — significant.
Copy trading platforms интеграция
eToro, Bybit, Binance имеют нативные copy trading механизмы. Кастомная система: подключение к нескольким брокерам через API для самостоятельного ранжирования и копирования.
Срок разработки: 8–12 недель для полной системы ранжирования + execution.







