Используя возможность быстрой и легкой оптимизации стратегий с переборами десятков тысяч различных настроек для параметров роботов, многие стратегии могут быть излишне адаптированы под конкретный участок истории. А на других участках истории (включая будущие) работать перестанут.
Поэтому, в данном контексте, важно обсудить понятие Робастности (Robustness).
Термин «робастность» означает способность торговой стратегии повторять результаты своего тестирования в прошлом на других данных.
Рассмотрим примеры.
Вы оттестировали какую-то стратегию в тестере и видите результат, примерно такой, как в красном квадрате. Отлично! Включаем стратегию в торги, и в реальном времени за следующие два месяца стратегия дала примерно такой же результат по прибыльности, как и в тестере:
Я думал, что я окончательно закончил все работы по доработке индикаторов и роботов, но тут меня спросили, нет ли у меня робота, который совершал бы много сделок, пусть с небольшой прибылью, но для наработки оборота по счету.
Когда-то, в начале 2020 года, у меня был похожий робот, от количества сделок которого рябило в глазах.
В ту пору я пробовал применить алгоритмы сетки и контртрендовую торговлю на основе индикаторов SWT-метода.
Какие-то результаты были, и даже неплохие. Но я отказался от работы в этом направлении из-за рисков, плохо поддающихся контролю.
Отказался, программы забросил и выбросил и даже в архивах ничего не осталось. Кроме смутной идеи как все делалось.
После некоторой борьбы с прогрессирующей деменцией я все-таки кое-что вспомнил и за пару дней смог реализовать старые идеи в программном коде. Причем даже проще и с большей степенью универсальности, чем это было сделано в прошлом.
И вот что у меня получилось.
Модуль оптимизации предоставляет возможность выполнения различных видов оптимизации стратегии, включая простой перебор параметров и Walk-Forward тестирование. В этой статье мы рассмотрим первый вариант — простой перебор параметров.
Из главного меню запускаем «Оптимизатор»:
В OS Engine имеется возможность автоматического подключения к серверу после закрытия программы, что облегчает процесс. После настройки и выполнения подключения к бирже один раз, при последующем запуске OS Engine оно будет автоматически восстанавливаться.
Для использования этой удобной функции заходим в «Connection servers» в модулях Bot Station или Bot Station Light.
Акции Русал + 2,7 %
Акции Газпром + 1,5 %
Фьючерс на индекс РТС + 4,1 %(на вложенные)
Фьючерс на палладий + 7,4 %(на вложенные)
Торговые сигналы робота TN_bot онлайн в нашем канале @trades_now_active
💵Доход за прошедшую неделю 03.06 — 07.06: +$342,55 (+1,71%)
👉Доход с начала 2024 года: +$7 021,34 (+35,11%)
👉Доход с момента запуска системы (с 25.07.2022): +$39 931,67 +$40 302,30 (+258,18%)
📥Общая сумма инвестиций: $20 000,00
📤Общая сумма вывода: $38 762,67
▶️Баланс $21 539,63 / Эквити $20 686,63
___________________
📊Мониторинг MyFxBook: www.myfxbook.com/members/BEINMARKET/market-crowd-hunter/10586617
___________________
🕯Полное описание стратегии можно найти в моем телеграмм-канале: t.me/+Kk6-fx5JxuExMmYy
В этой статье разберем торговый интерфейс — «Bot Station Light».
Открываем OsEngine:
Итак, подытоживая: я писал про некую наработанную эвристику в разработке, которая вроде как сильно ускорила процесс, но позже я уточнял, что мой интеллект с таким ускорением уже не справляется. Эвристика подсказывает скорее не само решение, а то, где и как его искать. Но задачи становятся настолько сложными для моего ограниченного сознания, что решений приходится ждать от дефолт-системы мозга (ДСМ), а это значит ждать долго.
Однако, могу поклясться, все три года на R&D я провёл в ощущении, что вот тут разрешу проблему, вот тут доресёчу, вот там доделаю — и будет идеальная законченная безошибочная модель/алго. Но в конце концов сама эвристика в процессе разработки привела меня к переломному моменту, когда я искренне почувствовал, что это может длиться «вечно» и невозможно спрогнозировать какие-либо сроки.
Рассмотрим один из способов узнать оптимальное соотношение объёмов между роботами. Ансамблирование объёмов, которое можно делать вручную, в журнале OsEngine. Эта информация актуальна, если вы торгуете несколькими роботами одновременно.
Распределить объёмы между роботами равномерно – это самое простое, что можно сделать.
Если берем 10 роботов, то дробим все деньги, которые хотим торговать, на 10 и устанавливаем для торгов.
Это самый простой подход, и он работает.
Это способ распределения объёмов между роботами таким образом, чтобы уменьшить максимальную просадку.
Проводим тесты роботов на всей имеющейся истории и открываем журнал.
Для этого нужно иметь возможность динамически менять размер входа по позиции.
В OsEngine есть такая возможность!
1. Надо провести тесты с равномерным распределением объёма.
Ваши роботы должны торговать в % от депозита и иметь равномерную его часть на торговые операции во время тестирования.
Ничего конкретного, так, локальный поток мыслей.
Немножко стриггерено соседними постами про AI, убивающий алго, или трейдинг в целом, или рынок, не помню уже.
Буду стараться, говоря про AI оперировать понятием LLM, это намного предметней.
Исчезнет ли возможность зарабатывать на рынке в течение 10 лет — думаю, нет. Исчезнет ли рынок в течение 10 лет – думаю нет. Станет ли зарабатывать сложнее (в другой формулировке: станет ли рынок эффективней) – думаю, да, это общий тренд, он и до LLM был. Другое дело, что, возможно, не корректно оценивать просто эффективность рынка в вакууме. Корректно оценивать эффективность в контексте имеющихся технологий и знаний, с этой точки зрения эта некая «относительная эффективность» вероятна колеблется в районе константы. Другими словами, ты просто используешь другие технологии, подходы, концепции, вычислительные мощности для извлечения эджа, это делает твои действия в абсолютном значении намного более эффективными, но в относительном ты, по сути, стоишь на месте.