Розробка AI-моделі прогнозування напрямку тренду

Проектуємо та впроваджуємо системи штучного інтелекту: від прототипу до production-ready рішення. Наша команда поєднує експертизу в машинному навчанні, дата-інжинірингу та MLOps, щоб AI працював не в лабораторії, а в реальному бізнесі.
Показано 1 з 1Усі 1566 послуг
Розробка AI-моделі прогнозування напрямку тренду
Середній
~3-5 днів
Часті запитання

Напрямки AI-розробки

Етапи розробки AI-рішення

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1284
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1196
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    901
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1119
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    586
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    853

Розроблення AI-моделі прогнозування напрямку тренду

Прогнозування напрямку руху ціни (бінарна класифікація: вверх/вниз) простіше, ніж точна оцінка величини зміни. Навіть умірна точність 52-55% на горизонті кількох днів дає позитивне математичне очікування при правильному управлінні ризиками.

Постановка як класифікаційна задача

Бінарний таргет:

df['target'] = (df['close'].shift(-N) > df['close']).astype(int)
# 1 = ціна виросте за N днів, 0 = впаде або залишиться

Проблема незбалансованих класів: ринки часто мають bias (наприклад, акції у довгостроковому тренді росту). Потрібна калібровка або балансування.

Альтернативна постановка: 3-класова (ріст / боковик / падіння) з зоною невизначеності ±0.2% — дозволяє утримуватися від торгівлі при невпевненому сигналі.

Feature Engineering

Momentum фічи (найпередбачливіші):

  • Relative Strength: дохідність за 1/3/6/12 місяців
  • Rate of Change (ROC): log return за різні горизонти
  • Acceleration: зміна momentum (momentum of momentum)

Mean Reversion фічи:

  • Deviation from SMA: (Close - SMA_20) / SMA_20
  • Bollinger %B: (Close - Lower) / (Upper - Lower)
  • RSI: рівні перекупленості/перепроданості

Volatility-adjusted фічи:

  • Sharp/Smooth: ratio волатильності на короткому vs. довгому вікні
  • Позиція ціни в N-денному діапазоні (Williams %R)

Regime фічи:

  • VIX рівень (risk-on / risk-off)
  • Market breadth: % акцій вище SMA200
  • Treasury yield curve slope (10y-2y)

Ансамблеві моделі

Базові класифікатори:

from sklearn.ensemble import VotingClassifier
from lightgbm import LGBMClassifier
from xgboost import XGBClassifier
from sklearn.linear_model import LogisticRegression

ensemble = VotingClassifier(
    estimators=[
        ('lgbm', LGBMClassifier(n_estimators=300, class_weight='balanced')),
        ('xgb', XGBClassifier(n_estimators=300, scale_pos_weight=ratio)),
        ('lr', LogisticRegression(C=0.1, class_weight='balanced'))
    ],
    voting='soft'  # ймовірносне голосування
)

Чому ансамбль: різні моделі захоплюють різні аспекти передбачуваності. LightGBM — нелінійні взаємодії. Logistic Regression — лінійні сигнали. Ансамбль стабілізує, зменшує overfit.

Калібровка ймовірностей

Raw прогнозування моделей часто погано откалібровано. Для торгових стратегій це важливо: передбачена ймовірність 0.6 повинна означати реальну частоту 60%.

Щільність сигналу: Цікавить торгове правило: торгуємо тільки при впевненості моделі > threshold. Precision-Recall крива допомагає вибрати поріг.

from sklearn.calibration import CalibratedClassifierCV
calibrated = CalibratedClassifierCV(ensemble, method='isotonic', cv=3)
calibrated.fit(X_train, y_train)

Управління ризиками при торгівлі за сигналом

Умови торгівлі:

  • P(up) > 0.55: лонг
  • P(up) < 0.45: шорт
  • 0.45-0.55: немає позиції

Position sizing за впевненістю:

Position = (2 × P - 1) × Max_Position_Size × Volatility_Adjustment

Kelly-подібна формула: чим вище P, тим більша позиція.

Stop-loss: при лонге, stop при -2 × ATR(14). Механічний exit, незалежний від переобученої моделі.

Метрики та оцінка

Метрика Значення Інтерпретація
Accuracy 52-56% Краще випадкового
Precision Long > 55% Лонги прибуткові
AUC-ROC > 0.55 Ранжування працює
IC (prediction correlation) > 0.03 Слабкий, але стабільний edge

Backtesting з реальними параметрами:

  • Slippage: 0.05-0.1% на виконання
  • Комісія: 0.02-0.05% per side
  • Фінансування для шорта: annual rate / 365 per day

Після врахування TC модель повинна показувати Sharpe > 0.8 на out-of-sample.

Поширені пастки:

  • Overfitting до історичних паттернів: CPCV (Combinatorial Purged CV) допомагає
  • Нестабільність: переобучена модель деградує за 1-3 місяці
  • Regime change: модель, обучена на боковику, руйнується при трендовому ринку

Строки: baseline модель з momentum фічами — 3-4 тижні. Повноцінна система з ансамблем, калібровкою, backtesting та моніторингом — 8-12 тижнів.