Можно ли предсказать рынок моделью?
Частый вопрос: «а если взять всю теорию свечей и индикаторов, скормить модели и спросить вероятность роста?» Мы это сделали — честно. 19 фич price-action + деривативы, логистическая регрессия и градиентный бустинг, проверка walk-forward вне выборки (учим на прошлом, тестим на будущем, без перемешивания). Вот что получилось.
Результат: ≈монетка
| Набор фич | Сэмплов | AUC (вне выборки) | Точность (вне выборки) |
|---|---|---|---|
| Только свечи · Логистическая | 20 923 | 0.489 | 50.0% |
| Только свечи · Бустинг | 20 923 | 0.491 | 50.3% |
| Свечи + деривативы · Логистическая | 4 819 | 0.499 | 50.5% |
AUC 0.5 = монетка. Базовый расклад (всегда «вниз», т.к. рост лишь в 47.8% случаев) = 52.2% — его не побила ни одна модель.
Ловушка, ради которой нужен walk-forward
In-sample (на той же истории) одиночные фичи выглядят заманчиво — AUC до 0.55. Но вне выборки всё схлопывается в 0.49. Это переобучение: на прошлом «найти» край легко, на новых данных он исчезает. Если бы мы перемешали данные или смотрели только in-sample — обманули бы себя «находкой» 0.55. Именно поэтому единственный честный судья — проверка на будущем.
Свечи и деривативы ничего не добавили
Свечные паттерны (поглощение, молот, звезда) в модели имеют вес ≈0 — не добавляют сигнала. Деривативы (OI, funding, перекос толпы) на их коротком окне тоже не помогли (AUC 0.50 → 0.50). Дело не в нехватке одной волшебной фичи — предсказуемая часть рынка просто крошечная.
Единственный лид — позиционирование
Что вообще всплывает: экстремальный перекос толпы (crowd_z) контртрендом даёт ~57% в обе стороны — толпа набита в лонг → чаще вниз; в шорт → чаще вверх. Но это замер на ~6 днях: лид, а НЕ доказательство. Мы журналируем его вживую как сигнал «перекос толпы → контртренд» и честно смотрим, держится ли край. А вот поток продаж (CVD) не помогает — его впитывают покупатели (поглощение).
Вывод
Даже модель не предсказывает направление лучше монетки. Это не дефект модели — это свойство почти-эффективного рынка. Любой «грааль из индикаторов» вне выборки = 50/50. Единственное, что стоит мерить дальше, — редкие условные состояния (экстремум позиционирования), и только на будущих данных, а не верой.
→ Живая точность методов · → Скринер сигналов