Блог им. Stagirit

Сделали AI Quant. Сам пишет код и бэктестит стратегии

Всем привет. Мы тут сделали сервис для быстрого создания стратегий. Пишешь задачу что хочешь протестировать — всякие ансамбли моделей делают ресеч, формулируют гипотезы, пишут код на питоне и бэктестируют. Делали больше для себя, пока еще сыроват. Но с простыми задачами справляется.
Если кто хочет погонять — можете зарегистрироваться, я дам доступ. С условием того что потом дадите фидбэк.

Тестируется все на наших данных (основное ограничение — цены дневки, к концу недели добавятся минутки). Помимо цен есть много всего разного — фундаментал, новости, записи конфколлов и тд и тп. Крипта есть, но сильно ограничена — тоже только дневки а из дополнительных данных — новости.

В общем, все тут: aiquantforge.com
582 | ★2
43 комментария
классно.  осталось вам только научить робота ЗАРАБАТЫВАТЬ.
avatar
ВВШ Free.Solo., ну это примерно как с человеком. В среднем доля удобоваримого будет как у обычного среднего кванта. Поверьте, мне есть с чем сравнивать.
avatar
Stagirit,  ---  мне приятно что появился ещё хоть один по настоящему зарабатывающий  трейдер, а не очередной попрошайка  чужих  хитро подлых  мыслей  на конфо стрелках.
avatar
Даю базовую стратегию: покупай дешево, продавай дорого. Все остальное — пыль.
avatar
Rational_Capital, да, согласен. Вот на графиках я всегда вижу — тут надо было купить, тут продать :)
avatar

Класс! Ветерок свежих креативных идей подул. RAG над пейперами — огонь). 

У вас получается есть какие-то инструменты — бэктестер и подобные и модели их через MCP юзают или модель под стратегию сама пишет бэктестер по-быстрому и как-то и считает результаты?

avatar
Replikant_mih, Спасибо! Модель сама пишет бэктестер. Для доступа к данным ей (вернее им — там кодер, несколько валидаторов и еще дополнительная логика ретраев) даем детальное описание таблиц и примеры запросов — MCP не разворачивали так как это все крутится в одном окружении, хотелось бы лэтенси не растить. На дневках в принципе пофиг, но с минутками и ниже уже будет чувствоваться. Код который получился -запускается отдельной задачей в авс, ну и потом артефакты в базу и с3.
avatar

Stagirit, Круто!

Модель сама пишет под задачу себе инструмент в моменте (если я конечно, правильно понял, как это работает) — мне кажется, это будет неплохо работать на простых стратегиях, на каких-то сложные может уже буксовать ну или нет. Просто когда я вайбкодил инструменты для алго — бэктестеры и вот это вот всё, было не прям просто — то модель подсунет какую-то имплементацию в 10 раз медленней чем можно было бы, то что-то забудет, то наоборот оверинженерит и т.д. Ну хотя я по сути делал тул для большого числа задач (универсальный инструмент), с этим сложности связаны. А под узкую задачу конкретной стратегии сделать себе бэктестер в моменте — наверно это и не сложная задача. В любом случае как будто для многих стратегий модель будет делать много одинакового и тут переиспользование каких-то инструментов могло бы помочь и модели и производительности и т.д. Ну типа фреймворк ей специализированный дать — где бэктестер, где какие-то типовые обработчики, враперы для интерпретации текстовой инфы, что-то такое. И модель уже оперирует как бы набором готовых инструментов, но если надо — дописывает себе инструмент.

 

Так, поразмышлял, может я вообще не понял, как у вас это работает и мимо кассы размышлял).

avatar
Replikant_mih, ага, про набор примитивов все так. Мы пока так не сделали (условно говоря можно давать готовые функции для повышения качества), но в планах. В целом применимость может быть разной — там хоть руками поправь готовый код если кажется что медленно или неправильно(или напиши это сделать в диалоге модели — это сейчас доделывается) — и заново нажми ретест.  Или можно засунуть в запрос вайтпейпер и попросить сделать стратку по ней.  Сейчас из того с чем столкнулись в плане проблем — не очень хорошо получаются стратегии с ML. Но там понятно — тот же тензорфло запаришься засовывать в каждый докерфайл..  Да и логика тестирование — валидация — тоже как правило сложнее какой-то обычной новостной или фундаментальной стратегии. Ну то есть он пытается что-то делать  — но доля успешных задач в таких случаях ниже. Но иногда прикольно получается -  даешь статью с какой-нибудь сложной конфигурацией сеток — он ее утилизирует до какой-то обычной регрессии. Сохраняя общую логику — фичи там и тп. И вполне торгуемо получается иногда:). 
avatar

Stagirit, 
В общем идеи точно интересные. 

Если для широких масс — это по сути ещё один скачок в сторону снижения порога для входа в алго-трейдинг. Ну по крайней мере имплементацию если причесать — чтобы этот человек не видел слова тип «докер» даже близко))).

 

Для опытного алго мне кажется, запрос ± один — убрать/упростить рутины, сократить время от идеи до готовой стратегии. Но вот у такого инструмента могут быть сложности с идеиями и реализацией за пределами небольшой сложности. Ну это как например, есть векторный бэктестер на пандас — он классный по скорости, интуитивный по пониманию, но вот список возможностей очень ограничен, и если ты не сильно выходишь за пределы логики «один индикатор пересекае другой», то тебе и норм. А если у тебя что-то посложнее в плане идей для стратегий, то ты либо не сможешь в принципе на векторные логики это перенести либо замучаешься это делать и все плюсы сведутся на нет. К чему я, думаю, тут похожая история — для простого может быть удобно — быстро, просто. А для сложного — возможно минусы от управления сложностью перетянут. Не могу без примеров) — вайб кодинг тот же — вау эффект от простого прототипа по короткому ТЗ, но при этом когда что-то сложное начинаешь пилить понимаешь, что «не всё так однозначно».

avatar
 А что у вас за… форма? В плане какая-то фирма и это её продукт или вы какое-то объединение трейдеров и т.д.?
avatar
Replikant_mih, я в хедж фонде работаю :). Это мы как внутреннюю историю делали, но в принципе под какой-то паблик заточить — было дело дня, поэтому тоже сделали посмотреть вдруг кому будет как продукт интересно.
avatar

Stagirit, 

>> я в хедж фонде работаю

 

Класс! Не скажу, что это какая-то моя прям мечта, но всегда хотел (раньше как минимум) в хэдж-фонде поработать. Но мой набор скиллов не особо подходит для прохождения собеседования на кванта, даже если внутри мне потом было бы что предложить).

avatar
__rtx, слушайте,  я не очень понимаю о чем вы… Обычный цикл прототипирования — тестирования у кванта дни-недели. Тут полчаса — час. Причем доля приемлимых результатов сравнима. Конечно сырой вариант и от кванта и от моделек в торговлю никто не пускает. Но сравнение скорости-качества — в пользу моделек. А уникальных и гениальных квантов — ну прям сильно сильно поискать.
avatar
А зачем нам ваши идеи? Вы считаете себя настолько гениальным? Мы его просто на постоянный пайплайн поставили с подачей рагом вайтпейперов. Вряд ли вы можете напридумывать больше идей чем статей в базе. 
Извините за нескромный вопрос...
Вы сами эти «вайтпейперы» то читали? Пусть не 9к, а хотя бы пару десятков? Хотя бы для того, чтоб в Вашей речи иногда проскальзывали специфические термины. Не про ML, AI, RAG, finetuning и прочие новомодные штучки, которые сейчас обсуждают даже продавцы пирожков на Киевском вокзале.
Как отвлеченный пример: Если Вы японский рисотрейдер в 1750г — «дневки» — Ваш выбор. Сегодня «квант» с «дневками» на «крипте»???  Боюсь что Ваш путь закончится на вокзале. И не факт что на Киевском.
Не воспринимайте написанное выше серьезно! Это у меня юмор такой. Сами же просили «фидбэк»)))
avatar
Synthetic, посмотрите по комментам. Не буду повторяться чем я занимаюсь. Бумажек уж несколько тысяч за 15 лет точно перечитал. А вы путаете подход (численный анализ) и таймфрейм. Страшная правда — но аномалии могут быть и в микросекундах и в месячных и годовых таймфреймах (к примеру всякие там динамические факторные модели для макро). Нет, я конечно понимаю обидно понимать что через несколько лет Вас заменят модельки… Но не делайте на этом основании прогнозов о чужом жизненном пути :).
avatar
Stagirit, 
 посмотрите по комментам. Не буду повторяться чем я занимаюсь.
Меня особо не интересует чем Вы занимаетесь. Интересно как. Вот есть у Вас 9к папирок. Они как правило в PDF. Как и в каком виде они в контекст попадают? Каков так сказать пайплайн?
avatar
Synthetic, pdf парсятся, кладутся в базу, формируются эмбеддинги. Дальше как обычно  — cosine similarity к задаче которую написал пользователь (ну или к областям аномалий если мы говорим про полностью автоматическую генерацию). Ну и дальше топ несколько (не помню сходу сколько, надо лезть смотреть, то ли 5 то ли 10) наиболее близких статей подаются как доп. контекст к задаче пользователя.
avatar
Stagirit, 
 pdf парсятся, кладутся в базу, формируются эмбеддинги.
 По старинке значит… По моему скромному мнению, нет более ущербного занятия, чем парсить PDF. Этот формат не для того создавался.
avatar
Synthetic, Не для того создавался, вы серьезно? Мне вообще полностью параллельно для чего он создавался. Мне нужна информация в нем содержащаяся. Были бы вайперперы на бересте — мы бы распознавали OCR и клали в базу. 
avatar
Stagirit, 
Не для того создавался, вы серьезно?
Абсолютно. «В первую очередь предназначен для представления полиграфической продукции» для человеческих глаз.
мы бы распознавали OCR и клали в базу.
Так чего же не распознаете?
Мне нужна информация в нем содержащаяся.
И как Вы графики парсите??
avatar
__rtx, по моделькам — мы пробовали файнтюнить разный опенсорс и сравнивать с коммерческими моделями (опенаи, антропик) — получалось что для финансового домена сырые опенсорс совсем плохо (у нас есть батарея тестов), после файнтюнинга — чуть-чуть похуже коммерческих. Почти на уровне, но чуть-чуть похуже. Так что в основном используем коммерческие модельки. На самом деле они совсем не дорого выходят. А опенсорс (всякий oss120 к примеру) — для небольших утилитарных задач, к примеру классификация и тп, для которых их точно достаточно.
avatar

ИИ каждый раз с нуля создает код для бэктеста гипотезы либо использует какой-то каркас затюненный вами ранее?

Просто по своему опыту требуется еще несколько итераций, чтобы даже представить итоговые результаты в нужном виде.

avatar
yurikon, создает с нуля (в промпте есть примеры чувствительных мест, особенно то что касается доступа к данным). Но если задача завершается неуспешно — делает несколько попыток исправить код, используя сам код и логи с ошибками
avatar

Читайте на SMART-LAB:
Фото
Смотрим какая на сегодняшний день доходность у юаневых облигаций и как она изменилась за последний месяц
💰 Одобрены дивиденды Займера за III квартал
На ВОСА Займера, которое состоялось 4 декабря, акционеры утвердили выплату дивидендов за III квартал 2025 года в размере 688 млн рублей или 6...
Фото
Угадайте компанию, которая готовит первый выпуск облигаций на Мосбирже
Подсказки: 📍 быстро закрывает вопросы с просроченными задолженностями; 📍 работает строго в рамках российского законодательства и ФЗ-230; 📍...

теги блога Stagirit

....все тэги



UPDONW
Новый дизайн