dynamictsco_case
engine: production ← портфолио
запись № 01 · статус: production-grade

DynamicTSCO — движок, который начался с неудачи

Первая попытка — одна общая модель на все символы и горизонты — провалилась. input_dim не совпадал, рыночная динамика разная, обучение сходилось плохо. Этот проект — про то, как из неудачной гипотезы собрался production-grade движок для предсказания цен криптовалют, и про то, как вокруг него уже работает локальный SaaS-MVP.

  • ML-модуль — production-grade · BTC 10d → 91.6%, SOL 10d → 96.3%
  • Локальный MVP работает · 127.0.0.1:8010, FastAPI + dark UI
  • SaaS в плане · Supabase, CryptoCloud, Next.js кабинет
  • Архитектура не привязана к крипте · применима к любым временным рядам
91.6%
BTC 10d
val_acc, warm-start
↑ +32.8 pp vs 1d
94.0%
ETH 10d
val_acc, BTC-base
↑ +18.2 pp vs 1d
96.3%
SOL 10d
best altcoin
★ top result
86.9%
TON 10d
limited, 10d only
↑ +50.7 pp vs 1d
20.7s
per epoch
single-GPU, AMP
↓ −21% vs base
ML production-grade Local MVP runs · 127.0.0.1:8010 SaaS in plan Supabase auth ready SQLite dev-runtime

Метрики — реально протестированные на разных горизонтах

Метрики получены на реальных данных Bybit (30-минутные свечи). val_acc считался на отложенной выборке, которой модель не видела при обучении. Это не модельные демо — это production-grade качество, зафиксированное в чекпоинтах и подтверждённое онлайн-прогнозами.

val_acc по 5 монетам × 4 горизонтам → развёрнутая таблица
Монета1d3d5d10dСтатус
BTC58.8%82.6%86.5%91.6%в продакшене
ETH75.8%88.0%92.7%94.0%в продакшене
SOL75.1%90.1%94.6%96.3%в продакшене (5d, 10d)
TON36.2%54.2%70.1%86.9%ограниченно (10d)
XRP37.5%42.3%43.7%70.8%осторожно (10d)
Online-прогнозы: BTC 10d — текущая $70 373, прогноз $73 407, +4.31%, уверенность 98.47%. ETH 10d — $2 143 → $2 246, +4.82%, 99.04%. SOL 5d и 10d согласованы в бычьем направлении, оба >98% уверенности.

Идея и пайплайн

Каждая монета × каждый горизонт — отдельная обученная модель. Bucketed ensemble из 4 моделей (2 архитектуры × 2 seed) на каждый прогноз. online fine-tune на свежих 2 000 свечах после каждого прогноза. production-policy в реестре говорит, какие монеты и горизонты выводить пользователю, а какие держать в режиме «ограниченно» или «осторожно».

STEP 01
Сбор данных
Bybit/OKX API, 30m свечи, последние 8 000 точек
STEP 02
Фичи
85 признаков: цена, объём, волатильность, on-chain
STEP 03
Ensemble
2 архитектуры × 2 seed, bucketed training
STEP 04
Online FT
2 000 свечей × 30m, 20 эпох, warm-start
STEP 05
Policy gate
production_enabled / limited / cautious
PyTorch · Transformer-LSTM FastAPI · 127.0.0.1:8010 Bybit API · 30m candles Supabase · auth + payments AMP + TF32 · single-GPU Bucketed ensemble · 2+2 Online fine-tune · warm-start

За пределами крипты — к любому временному ряду

В коде движка нет ни одного захардкоженного символа или биржевого тикера. Всё, что привязано к крипте — это слой источника данных (Bybit/OKX → свечи). Замените его на Yahoo Finance, биржевой API или CSV — и движок предсказывает что угодно.

Минимальные требования к новому домену:

  • История ≥ 2 000 точек с регулярным интервалом (15m / 1h / 1d)
  • Волатильность достаточная — стационарный шум бесполезен
  • Минимум 1 сильный признак — цена, объём, настроения, внешний регрессор
  • Out-of-time валидация — последние 20% выборки никогда не видны при обучении
📈
Акции и ETF
Дневные свечи, корреляция с секторами. Per-ticker × per-horizon.
Сырьё
Нефть, газ, зерно. Длинные горизонты 5d–10d, сезонность.
Энергия
Нагрузка серверов, спрос в сети. Короткие 1d, почасовые.
🌦
Погода
Температура, осадки, ветер. Бакет по сезону.
🚦
Трафик
Транспорт, задержки рейсов, склады. Per-location.
📊
Маркетинг
ROI кампаний, конверсии, LTV. Бакет по каналу.

Локальный MVP — уже работает

Это не макет и не мокап. Orion Forecast реально поднимается на 127.0.0.1:8010, тянет свечи, вызывает обученный предиктор, отдаёт результат в UI. Ниже — 6 скриншотов из живого локального запуска (admin-сессия через dev-login): 6 страниц, 6 разных ролей и flow. Все картинки кликабельные — открываются в полный размер.

Дальше — что в работе и в плане

Движок уже production-grade для части монет, но не финал. Дальше — расширение coverage, замена SQLite на Supabase в проде, и подключение реальных платёжных провайдеров вместо заглушек.

↑ в работе: BNB, LINK, AVAX (новые монеты)
↑ в работе: Supabase в проде, миграция из SQLite
↑ в работе: Whitelist email-only регистрация для первых 50 юзеров
→ план: CryptoCloud create-invoice + callback
→ план: NOWPayments recurring подписки
→ план: Agent API для OpenClaw / Hermes / MCP
→ план: WAF, rate limits, audit logging
→ идея: Перенос на нефть Brent — следующий домен