Обсуждение статьи "Быстрая интеграция большой языковой модели и MetaTrader 5 (Часть I): Создаем модель"

 

Опубликована статья Быстрая интеграция большой языковой модели и MetaTrader 5 (Часть I): Создаем модель:

Статья исследует революционную интеграцию больших языковых моделей (LLM) с торговой платформой MetaTrader 5, где AI не просто прогнозирует цены, а принимает автономные торговые решения, анализируя контекст рынка подобно опытному трейдеру. Автор раскрывает фундаментальное отличие LLM от классических моделей машинного обучения вроде CatBoost — способность к метапознанию и саморефлексии, что позволяет системе учиться на собственных ошибках и улучшать стратегию.

Вы создали торгового бота. Бэктест — идеальный: кривая растёт, винрейт — 70%. Но на реальном счёте — убытки. Алгоритм покупает на перепроданности RSI перед решением ФРС, открывает сделки в пятницу вечером и игнорирует новости, способные перевернуть рынок. Он видит паттерн, но не видит контекст.

Даже машинное обучение не спасает. CatBoost может предсказать направление свечи с точностью 73%, но не понимает, что сегодня низкая ликвидность, и спред удвоился. Модель знает куда, но не знает когда.

Нужна система, которая думает — учитывает графики, время, день недели, новости, волатильность. Которая способна сказать: "Сигнал есть, но риск не оправдан — пропущу".

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

Автор: Yevgeniy Koshtenko

 
И как фильтровать галлюцинации? Даже гуглбот в своих ответах часто меняет "да" на "нет" (как будто упускает в исходных документах во фразах типа "фича не поддерживается" отрицание и строит ответ из логики "фича поддерживается"), берет характеристики не от того объекта, про который спрашиваешь и т.д. Каждое слово в ответе приходится выверять по первоисточникам - благо они там предоставляются.
 
Stanislav Korotky #:
И как фильтровать галлюцинации? Даже гуглбот в своих ответах часто меняет "да" на "нет" (как будто упускает в исходных документах во фразах типа "фича не поддерживается" отрицание и строит ответ из логики "фича поддерживается"), берет характеристики не от того объекта, про который спрашиваешь и т.д. Каждое слово в ответе приходится выверять по первоисточникам - благо они там предоставляются.

Я начал разрабатывать эту тему не так давно. OpenAI API пишу на чистом MQL5. И сервер для модели - llama.cpp.

Надо модели давать максимально математически чёткие инструкции, требовать чётких ответов, без воды. Снижать температуру до предела (0-0.2), чтобы не фантазировала. Выбирать максимально большие локальные модели, какие тянет система (на моём VRAM 12 Gb - до 15B, а с небольшим замедлением - до 30B). Тестировать и выбирать лучшую (а их очень много). Пока занимаешься этим, идёт прогресс в моделях, появляются маленькие умные модели. Затем можно дообучать модель (LoRA). Если, не дай бог, появится подозрение на потенциальную прибыльность проекта, можно перейти на платные большие онлайн-модели. Или хотя бы сделать апгрейд компьютера на 2 GPU с 24 Gb и много памяти.

Работы - выше крыши. Посмотрим. Пробуем работать с моделями, учитывая их милые особенности.

 

Читаю исследование применимости различных видов LLM и их обучения/донастройки для прогнозирования таймсерий:

Резюме из текста (извините за английский, нажмите кнопочку для перевода):

"Pretraining + Finetune" method performed the best 3 times, while "Random Initialization + Finetune" achieved this 8 times. This indicates that language knowledge offers very limited help for forecasting. However, "Pretrain + No Finetuning" and the baseline "Random Initialization + No Finetuning" performed the best 5 times and 0 times, respectively, suggesting that Language knowledge does not contribute meaningfully during the finetuning process.

В переводе на русский - не имеет смысла брать готовую языковую модель для прогнозирования таймсерий, а лучше взять пустую заготовку с тучей связей (чем больше, тем лучше, ясное дело) и обучить её на своих таймсериях, без донастройки. Судя по публикациям, тип эмбеддинга сильно влияет на качество - я не в курсе, можно ли его выбирать в llama.

Остается вопрос по поводу применимости подхода для доступного локального железа.

 
MetaQuotes:
Yevgeniy Koshtenko
Отличная статья.
Я так же исследую возможности LLM для торговли на рынках.
Работа через API вроде OpenAI быстро становится дорогой: тысячи запросов в день — сотни долларов в месяц. Плюс лимиты, простои и риск утечки данных: ваши стратегии уходят на чужие серверы.

Для среднесрочной торговли API не так уж и дорого. Например взять часовой таймфрейм. Анализ торговой ситуации после закрытия свечи = 24 запроса. У меня получается за сутки 0,20-0,50 центов (зависит от размера промпта). Модель Open AI gpt-5-mini.

 

А каковы минимальные требования к железу для запуска конфигурации, описанной в статье? 

Най сайте ollama.com не могу что-то их найти ...