Модуль f.3 · Урок 1
Урок 1: NL→стратегия→бэктест на Vibe-Trading
Чему вы научитесь
- Находить инвест-идеи через российские AI-скринеры (FinGPT Мосбиржи, Финам, брокерские ассистенты)
- Формулировать торговую идею как проверяемую гипотезу для агента
- Получать первый бэктест за один промпт на Vibe-Trading
- Читать базовые метрики результата: доходность, просадка, число сделок
- Понимать, что бэктест — это безопасная зона без реальных денег
- Распознавать, когда результат слишком хорош, чтобы быть правдой
От идеи к проверке за один промпт
Vibe-Trading — это open-source ресёрч-воркспейс: запрос на естественном языке превращается в данные, стратегию, бэктест и отчёт. Живые сделки он не исполняет — это именно исследовательский инструмент (источник: README Vibe-Trading, лицензия MIT).
Классический первый запрос звучит так: «Протестируй пересечение скользящих средних 20 и 50 по BTC-USDT за 2024 год, дай доходность и просадку». Агент собирает данные, пишет код стратегии и возвращает метрики.
flowchart LR
NL[Запрос на естественном языке] --> ST[Код стратегии]
ST --> BT[Бэктест на истории]
BT --> M[Метрики: доходность, просадка]
M --> R[Отчёт человеку]
Где взять идею: скрининг по-русски
Прежде чем тестировать стратегию, нужно выбрать актив или гипотезу. Для российской аудитории это самый доступный слой: AI-инструменты подбора идей работают рублями и без VPN, в отличие от зарубежного open-source, которому нужен платный ключ к LLM.
| Инструмент | Что делает | Доступ |
|---|---|---|
| FinGPT от «Финуслуг» Мосбиржи | Инвест-ассистент на нескольких агентах: отчётность РФ-эмитентов, котировки Мосбиржи, облигации, ПИФы, фьючерсы | Бесплатно, без VPN (finuslugi.ru) |
| Финам AI-скринер | Подбор инвест-идей по рыночным данным и прогнозным моделям | Через брокера (broker.finam.ru) |
| AI-ассистенты крупных брокеров | Подбор бумаг и аналитика внутри приложений Сбера, ВТБ, Т-Банка, БКС, «Цифра брокер», Альфа-банка | В приложении брокера (РБК) |
Сценарий простой: задаёте критерий на естественном языке — «облигации с погашением до 2 лет и доходностью выше ключевой ставки» — и получаете список кандидатов с обоснованием. Дальше уже идёт проверка гипотезы бэктестом, о которой этот урок.
Как выглядит логика стратегии
Даже если агент пишет код за вас, полезно понимать, что именно проверяется. Вот ядро стратегии MA cross в псевдокоде на Python.
# Быстрая и медленная скользящие средние по цене закрытия
df["ma_fast"] = df["close"].rolling(20).mean()
df["ma_slow"] = df["close"].rolling(50).mean()
# Сигнал: 1 — держим позицию, 0 — вне рынка
df["signal"] = (df["ma_fast"] > df["ma_slow"]).astype(int)
# Доходность стратегии = доходность актива * вчерашний сигнал
df["ret"] = df["close"].pct_change()
df["strategy_ret"] = df["ret"] * df["signal"].shift(1)
Обратите внимание на signal.shift(1) в последней строке: сигнал применяется к следующему дню. Без этого сдвига стратегия «знает» сегодняшнее закрытие до того, как оно случилось — это lookahead-bias, разберём его в следующем уроке.
Как читать первый результат
Агент вернёт таблицу метрик. На старте смотрите на три цифры и не обольщайтесь одной доходностью.
| Метрика | О чём говорит |
|---|---|
| Итоговая доходность | Сколько заработала бы стратегия на истории |
| Максимальная просадка | Насколько глубоко падал капитал по пути |
| Число сделок | Достаточно ли сделок, чтобы результат был не случайным |
Если стратегия показывает огромную доходность при двух-трёх сделках или нулевой просадке — это сигнал не радоваться, а искать ошибку в данных или в логике.
Следующий урок
Урок 2: Метрики и честная валидация — Sharpe, бенчмарк, Monte-Carlo, walk-forward и как не обмануть себя.