Многим хочется иметь трейдинг-бота — пусть для определённой стадии крипторынка, пусть даже примитивного, но своего, родного, под конкретную задачу, контролируемого и безопасного
(Python, свой комп\сервер, без экзэшников с хз какими защитами).
Захотелось и мне
. Особенно посмотрев битву ИИ по криптотрейдингу - с очень жесткими условиями.
Червячок, как говорится, точит душу - в том плане, что если боты без обучения сделали столько за неделю (доходило до 240%) то что можно сделать при тюнинге? (в целом, это отдельная история - как был эксперимент на Арене).
Чтобы проверить, "на кого можно опереться" из последних версий популярных ИИ я решила задать им одну и ту же задачу: написать с нуля backtest-скрипт (то есть симуляцию на исторических данных) на Python для стратегии пересечения EMA(9) и EMA(21) на минутных данных BTC/USDT с Binance. Почему так? Исторические данные - не текущие, бэктесты в крипте обязательны перед запуском любого софта, API не требуется.
Пояснение.
Комбинация EMA-9 и EMA-21 широко применяется в скальпинге и внутридневных стратегиях. Это классические индикаторы технического анализа (ТА), которые генерируют сигналы на покупку (когда быстрая EMA пересекает медленную снизу вверх) или продажу (сверху вниз). Такая логика встроена в большинство торговых систем — она не экзотична, не требует ML или сложной математики, и потому идеально подходит для тестирования базовой "финансовой грамотности" ИИ.
Задание было чётким по сути, но намеренно открытым в деталях:
«Напишите backtest с учётом комиссии 0.1% (taker), slippage 0.05%, без lookahead bias, без сторонних backtesting-фреймворков. Используйте только закрытые свечи. Выведите итоговую доходность, max drawdown и график equity curve».
Или по-простому: Напишите бэктест с учётом комиссии 0,1% (по рыночному ордеру), проскальзывания 0,05%, без использования данных из будущего, без сторонних библиотек для бэктестинга. Используйте только полностью сформировавшиеся (закрытые) свечи. Выведите итоговую доходность, максимальную просадку и график изменения капитала.
В чём заключалась сложность и даже некоторое коварство этой задачи?
1)Не уточнялось, разрешены ли short-позиции. Модель сама решала: long-only (спот) или long/short (маржинальная торговля).
Но если ИИ разрешал short, он обязан был корректно обрабатывать логику заимствования, возврата и оценки позиции — чего почти никто не сделал.
2)Расчёт комиссии был оставлен на усмотрение. Казалось бы — 0.1% от сделки. Но от чего именно? От всего капитала? От объёма позиции?
До или после учёта slippage? Оказалось, что у ИИ здесь огромная «волатильность»: одни вычитали комиссию от equity, другие — от оборота, третьи — вовсе забывали её в PnL.
3)Расчёт прибыли и убытков реальная ловушка. Чтобы он был правильным, нужно:
- отслеживать реальную цену входа,
-применять slippage к цене исполнения, а не к итоговому PnL,
Не нужно быть трейдером, чтобы понять, при неправильных расчетах этих параметров - такой алготрейдинг, если не бессмысленен, то просто опасен.
Большинство ИИ эти нюансы по факту - умно или тупо проигнорировали, заменив логику «правдоподобным» кодом. (Это DepSeek мне так и выдавал - главное не истина - главное ПРАВДОПОДОБИЕ).
Именно поэтому такая, на первый взгляд простая задача, стала тестом на финкомпетенции, ну и как бы на трудолюбие и честность: и в конечном счете на понимание у ИИ того, как на самом деле работает биржевая криптоторговля.
Kimi (Moonshot AI)
Плюсы: код структурирован, легко читается, содержит пояснения и даже прогресс-бар при загрузке данных. Быстро генерирует рабочий каркас для типовых задач.
Минусы: в первом варианте полностью игнорировал комиссию и slippage в расчётах, несмотря на их объявление. Во втором — добавил учёт издержек, но допустил критическую ошибку: при выходе из позиции использовал цену предыдущей свечи вместо реальной цены входа. Это делает доходность неправдоподобно завышенной. Kimi стремится выглядеть «готовым к production», но не проверяет внутреннюю логическую согласованность.
Алиса (Яндекс)
Плюсы: простой и понятный код, хорошая документация через docstrings, корректная генерация сигналов, визуализация результатов. Подходит для обучения или демонстрации.
Минусы: комиссия при входе рассчитывается от всего капитала, а не от объёма сделки. Это нарушает базовую финансовую логику и искажает результаты даже в simple long-only стратегии. Алиса действует как универсальный ассистент, но не как квант-инженер.
Claude Sonnet 4.5
Плюсы: отличная архитектура — ООП, модульность, кэширование, подробные графики, обработка ошибок. Код выглядит как production-ready.
Минусы: при открытии позиции комиссия берётся от всего equity, а не от объёма. PnL на сделку рассчитан как изменение общего капитала, а не прибыль операции. Это делает аналитику (win rate, средний профит) некорректной.
Вывод. Claude создаёт «инженерный театр» — форма без финансового содержания. Критические ошибки
Для иллюстрации разберем подробней работу claude-sonnet-4-5-20250929
Что плохого:
При входе — комиссия завышена (если не весь капитал), при выходе — правильно. Асимметричная ошибка, искажающая результат.
Вторая проблема: некорректный PnL при расчёте прибыли. Вместо PnL сделки взято изменение общего капитала, которое включает все предыдущие сделки и колебания equity.
Что сделано хорошо:
DeepSeek
Плюсы: богатая функциональность — демо-данные при ошибке, поддержка short, расчёт Sharpe ratio, волатильности и просадки. Гибкий и многослойный подход.
Минусы: логика short-позиции полностью нерабочая — используется абсурдная формула equity с ценой открытия. Комиссия при входе применена неверно. Short в споте невозможен, но это не учтено.
Вывод. DeepSeek имитирует глубину кодинга, маскируя фактические косяки.
Но по моему опыту хорош в мелких заданиях. И более-менее заточен на трейдинг - его используют команды в китае, но, видимо отдельные дообученные версии с тюнингом
Grok-4
Плюсы: использует реальные инструменты (ccxt), добавляет «практические» детали — warmup, паузы между запросами, обработка временных границ. Выглядит как код от трейдера.
Минусы: разрешает шорт в спот-режиме, что технически невозможно. При открытии short капитал искусственно удваивается — нарушается закон сохранения капитала.
Вывод: Grok-4 и здесь дерзкий, инициативный, но его код де-факто просто валит результат.
Qwen3
Плюсы: простой, прозрачный, "финансово честный", как он любит писать о себе, код. Комиссия и slippage корректно применены к объёму сделки.
Equity = кэш + стоимость BTC. Lookahead bias отсутствует. Код легко читать, отлаживать и модифицировать.
Минусы: исполнение по цене закрытия текущей свечи (а не open следующей), что чуть менее реалистично. Нет кэширования или продвинутой визуализации. Сам он считает, что это компенсируется надёжностью.
Вывод: моя рабочая лошадка средней руки, в гуманитарных вопросах не уступает никому, ассистент, как и задумано + аудитор всего и вся. Его активно используют Алибаба и дочерние группы в финтехе.
GPT-5 High
Плюсы: наиболее точная реализация. Исполнение по open-цене следующей свечи — максимально приближено к реальности. Комиссия учтена в расчёте объёма, а не как постфактум. Есть кэширование, UTC-обработка, продуманная структура.
Минусы: плохая доступность по дефолту, требует платного доступа.
Вывод. Избыточен, или необязателен для простых задач. Но для критически важных расчётов, полагаю что эталон.
Общий вывод
Большинство ИИ отлично имитируют структуру «правильного» backtest-кода, но проваливаются в базовой финансовой механике: комиссия, slippage, сохранение капитала, режим торговли. Они оптимизированы под поверхностное выполнение задачи, и дело не только в правильных промптах. А во внутренних установках разработчиков, недостаточной обученности, ну и разного рода лимитах.
Цель состояла именно в дефолтном применени всех ИИ, с одинаковым промптом. Все они признали свои ошибки, то есть критика- не голословна.
Только Qwen и GPT-5 продемонстрировали рабочие результаты. Остальные для алготрейдинга или слабы, или неоптимизированы, скажем так.
И требуют ручной проверки, тестирования и\или перепроверки у других ИИ. Если копнуть глубже - суть в том, что большинство моделей обучены на готовых примерах софта с github-a,
неглубоких по смыслу. Для написания эффективного кода модели должны быть отдельно оттренированы на торговых алгоритмах.
И в этом плане очень показательны результаты тестирования торговли на графике (выше).
Интересно также как интерпретировали сами ИИ свои плачевные результаты в битве.
Грок написал мне, что-то в стиле "цыплят по осени считают", мол, мало времени прошло и он бы отыгрался. Клод заявил что более примитивные модели выиграли случайно, ну а ChatGPT5
высказался как-то намекая на особую приверженность, козыри китайских моделей рыночной торговле .
Но факт остается фактом. При одинаковых условиях выиграли DeepSeek + Qwen.
Еще детали - даже хваленый Клод с красивым кодом и красивым визуальным выводом, с большим окном контекста и мокапами, структурированием задания, может подставить легко и глобально.
И именно в этом плане он может уступать той же ну-очень-ограниченной Алисе.
Тема алготрейдинга во всех аспектах, конечно очень интересна. Лично меня больше всего интересует полупассивный доход, а не проживание за монитором круглосуточно.
Сейчас готовлю и тестирую свои несложные алгоритмы, хотя папка с софтом и либами уже существенно выросла на экспериментах...
Если кому-то интересно поработать вместе - велкам (ЛС) =) Код того что получилось с удовольствием выложу здесь, если будет какой-то интерес.
п.с. Статья "некоммерческая".
(Python, свой комп\сервер, без экзэшников с хз какими защитами).
Захотелось и мне
Червячок, как говорится, точит душу - в том плане, что если боты без обучения сделали столько за неделю (доходило до 240%) то что можно сделать при тюнинге? (в целом, это отдельная история - как был эксперимент на Арене).
Чтобы проверить, "на кого можно опереться" из последних версий популярных ИИ я решила задать им одну и ту же задачу: написать с нуля backtest-скрипт (то есть симуляцию на исторических данных) на Python для стратегии пересечения EMA(9) и EMA(21) на минутных данных BTC/USDT с Binance. Почему так? Исторические данные - не текущие, бэктесты в крипте обязательны перед запуском любого софта, API не требуется.
Пояснение.
Комбинация EMA-9 и EMA-21 широко применяется в скальпинге и внутридневных стратегиях. Это классические индикаторы технического анализа (ТА), которые генерируют сигналы на покупку (когда быстрая EMA пересекает медленную снизу вверх) или продажу (сверху вниз). Такая логика встроена в большинство торговых систем — она не экзотична, не требует ML или сложной математики, и потому идеально подходит для тестирования базовой "финансовой грамотности" ИИ.
Задание было чётким по сути, но намеренно открытым в деталях:
«Напишите backtest с учётом комиссии 0.1% (taker), slippage 0.05%, без lookahead bias, без сторонних backtesting-фреймворков. Используйте только закрытые свечи. Выведите итоговую доходность, max drawdown и график equity curve».
Или по-простому: Напишите бэктест с учётом комиссии 0,1% (по рыночному ордеру), проскальзывания 0,05%, без использования данных из будущего, без сторонних библиотек для бэктестинга. Используйте только полностью сформировавшиеся (закрытые) свечи. Выведите итоговую доходность, максимальную просадку и график изменения капитала.
В чём заключалась сложность и даже некоторое коварство этой задачи?
1)Не уточнялось, разрешены ли short-позиции. Модель сама решала: long-only (спот) или long/short (маржинальная торговля).
Но если ИИ разрешал short, он обязан был корректно обрабатывать логику заимствования, возврата и оценки позиции — чего почти никто не сделал.
2)Расчёт комиссии был оставлен на усмотрение. Казалось бы — 0.1% от сделки. Но от чего именно? От всего капитала? От объёма позиции?
До или после учёта slippage? Оказалось, что у ИИ здесь огромная «волатильность»: одни вычитали комиссию от equity, другие — от оборота, третьи — вовсе забывали её в PnL.
3)Расчёт прибыли и убытков реальная ловушка. Чтобы он был правильным, нужно:
- отслеживать реальную цену входа,
-применять slippage к цене исполнения, а не к итоговому PnL,
- корректно обновлять размер позиции и остаток кэша,
- учитывать, что каждая сделка — это две операции (вход + выход → двойная комиссия).
Не нужно быть трейдером, чтобы понять, при неправильных расчетах этих параметров - такой алготрейдинг, если не бессмысленен, то просто опасен.
Большинство ИИ эти нюансы по факту - умно или тупо проигнорировали, заменив логику «правдоподобным» кодом. (Это DepSeek мне так и выдавал - главное не истина - главное ПРАВДОПОДОБИЕ).
Именно поэтому такая, на первый взгляд простая задача, стала тестом на финкомпетенции, ну и как бы на трудолюбие и честность: и в конечном счете на понимание у ИИ того, как на самом деле работает биржевая криптоторговля.
Kimi (Moonshot AI)
Плюсы: код структурирован, легко читается, содержит пояснения и даже прогресс-бар при загрузке данных. Быстро генерирует рабочий каркас для типовых задач.
Минусы: в первом варианте полностью игнорировал комиссию и slippage в расчётах, несмотря на их объявление. Во втором — добавил учёт издержек, но допустил критическую ошибку: при выходе из позиции использовал цену предыдущей свечи вместо реальной цены входа. Это делает доходность неправдоподобно завышенной. Kimi стремится выглядеть «готовым к production», но не проверяет внутреннюю логическую согласованность.
Алиса (Яндекс)
Плюсы: простой и понятный код, хорошая документация через docstrings, корректная генерация сигналов, визуализация результатов. Подходит для обучения или демонстрации.
Минусы: комиссия при входе рассчитывается от всего капитала, а не от объёма сделки. Это нарушает базовую финансовую логику и искажает результаты даже в simple long-only стратегии. Алиса действует как универсальный ассистент, но не как квант-инженер.
Claude Sonnet 4.5
Плюсы: отличная архитектура — ООП, модульность, кэширование, подробные графики, обработка ошибок. Код выглядит как production-ready.
Минусы: при открытии позиции комиссия берётся от всего equity, а не от объёма. PnL на сделку рассчитан как изменение общего капитала, а не прибыль операции. Это делает аналитику (win rate, средний профит) некорректной.
Вывод. Claude создаёт «инженерный театр» — форма без финансового содержания. Критические ошибки
Для иллюстрации разберем подробней работу claude-sonnet-4-5-20250929
Что плохого:
При входе — комиссия завышена (если не весь капитал), при выходе — правильно. Асимметричная ошибка, искажающая результат.
Вторая проблема: некорректный PnL при расчёте прибыли. Вместо PnL сделки взято изменение общего капитала, которое включает все предыдущие сделки и колебания equity.
Что сделано хорошо:
- ООП-структура — удобно для расширения.
- Обработка open-at-end — есть финальное закрытие позиции.
- Slippage — корректно применяется к цене исполнения.
- Lookahead bias — отсутствует (сигнал на основе shift).
DeepSeek
Плюсы: богатая функциональность — демо-данные при ошибке, поддержка short, расчёт Sharpe ratio, волатильности и просадки. Гибкий и многослойный подход.
Минусы: логика short-позиции полностью нерабочая — используется абсурдная формула equity с ценой открытия. Комиссия при входе применена неверно. Short в споте невозможен, но это не учтено.
Вывод. DeepSeek имитирует глубину кодинга, маскируя фактические косяки.
Но по моему опыту хорош в мелких заданиях. И более-менее заточен на трейдинг - его используют команды в китае, но, видимо отдельные дообученные версии с тюнингом
Grok-4
Плюсы: использует реальные инструменты (ccxt), добавляет «практические» детали — warmup, паузы между запросами, обработка временных границ. Выглядит как код от трейдера.
Минусы: разрешает шорт в спот-режиме, что технически невозможно. При открытии short капитал искусственно удваивается — нарушается закон сохранения капитала.
Вывод: Grok-4 и здесь дерзкий, инициативный, но его код де-факто просто валит результат.
Qwen3
Плюсы: простой, прозрачный, "финансово честный", как он любит писать о себе, код. Комиссия и slippage корректно применены к объёму сделки.
Equity = кэш + стоимость BTC. Lookahead bias отсутствует. Код легко читать, отлаживать и модифицировать.
Минусы: исполнение по цене закрытия текущей свечи (а не open следующей), что чуть менее реалистично. Нет кэширования или продвинутой визуализации. Сам он считает, что это компенсируется надёжностью.
Вывод: моя рабочая лошадка средней руки, в гуманитарных вопросах не уступает никому, ассистент, как и задумано + аудитор всего и вся. Его активно используют Алибаба и дочерние группы в финтехе.
GPT-5 High
Плюсы: наиболее точная реализация. Исполнение по open-цене следующей свечи — максимально приближено к реальности. Комиссия учтена в расчёте объёма, а не как постфактум. Есть кэширование, UTC-обработка, продуманная структура.
Минусы: плохая доступность по дефолту, требует платного доступа.
Вывод. Избыточен, или необязателен для простых задач. Но для критически важных расчётов, полагаю что эталон.
Общий вывод
Большинство ИИ отлично имитируют структуру «правильного» backtest-кода, но проваливаются в базовой финансовой механике: комиссия, slippage, сохранение капитала, режим торговли. Они оптимизированы под поверхностное выполнение задачи, и дело не только в правильных промптах. А во внутренних установках разработчиков, недостаточной обученности, ну и разного рода лимитах.
Цель состояла именно в дефолтном применени всех ИИ, с одинаковым промптом. Все они признали свои ошибки, то есть критика- не голословна.
Только Qwen и GPT-5 продемонстрировали рабочие результаты. Остальные для алготрейдинга или слабы, или неоптимизированы, скажем так.
И требуют ручной проверки, тестирования и\или перепроверки у других ИИ. Если копнуть глубже - суть в том, что большинство моделей обучены на готовых примерах софта с github-a,
неглубоких по смыслу. Для написания эффективного кода модели должны быть отдельно оттренированы на торговых алгоритмах.
И в этом плане очень показательны результаты тестирования торговли на графике (выше).
Интересно также как интерпретировали сами ИИ свои плачевные результаты в битве.
Грок написал мне, что-то в стиле "цыплят по осени считают", мол, мало времени прошло и он бы отыгрался. Клод заявил что более примитивные модели выиграли случайно, ну а ChatGPT5
высказался как-то намекая на особую приверженность, козыри китайских моделей рыночной торговле .
Но факт остается фактом. При одинаковых условиях выиграли DeepSeek + Qwen.
Еще детали - даже хваленый Клод с красивым кодом и красивым визуальным выводом, с большим окном контекста и мокапами, структурированием задания, может подставить легко и глобально.
И именно в этом плане он может уступать той же ну-очень-ограниченной Алисе.
Тема алготрейдинга во всех аспектах, конечно очень интересна. Лично меня больше всего интересует полупассивный доход, а не проживание за монитором круглосуточно.
Сейчас готовлю и тестирую свои несложные алгоритмы, хотя папка с софтом и либами уже существенно выросла на экспериментах...
Если кому-то интересно поработать вместе - велкам (ЛС) =) Код того что получилось с удовольствием выложу здесь, если будет какой-то интерес.
п.с. Статья "некоммерческая".
Последнее редактирование: