Сегодня темой нашей очередной статьи будет пример попытки улучшения своей доходности, при торговле по тренду.
Начальный алгоритм достаточно прост и стандартен — хай/лоу с периодом в 2000 баров. Тикер РТС Фьючерс. Специально был взят отрезок из прошлого, так как на нем он лучше всего «летал».
Параметр не подогнанный — начальный период в блоках TSLab обычно 20 и мы приписали пару нулей для увеличения продолжительности сделки.
Эквити в начальном виде.
Результаты показывать не будем, так как они будут более интересными, чем график дохода. Рекомендуем посмотреть как это работает на практике лично, если вы уже пользователь нашей программы)
Да — это не плохой график, но попытаемся сделать лучше! Выводим следующую формулу — открываем позицию, считаем доход/количество удерживаемых баров. Если значение растет, — значит рынок двигается с хорошей скоростью в нашу сторону. Если же начинает медленно падать или уходит в минус — значит перестал двигаться в нужном направлении. Пользуясь таким методом, алгоритм приближает стоп-лосс на 1 шаг цены с каждым баром. Для заметки: если работаете с историческими данными, то перепроверьте какой шаг цены вы указали. Иначе рискуете искать долго причину почему стоп не двигается ближе, как это было у меня!)
Вот таким образом меняется эквити с учетом вышеописанной логикой
Но есть один нюанс. Сделки, которые совершаются по тренду, чаще всего, будут закрываться намного быстрее. Если же рынок хорошо движется в нашу сторону, то может быть так, что уровень максимум за период, или минимума, обгонит наш стоп и это нормально!
Вот так это выглядит визуально
График становится лучше, но мы добавим фильтр, чтобы отсеять шум. Рынок в редких случаях однонаправленно движется, а иногда и вовсе простаивает на месте. Поэтому была добавлена проверка, где наша формула снижается на 6 баров подряд, только после этого начинаем приближать стоп.
Смотрим наглядно как это выглядит
Как этот же алгоритм будет выглядеть в последующих годах можно посмотреть предварительно скачав скрипт. В комментариях можете отписаться и показать скрины, если робот провалил форвард тест.
Напоминаем о нашем телеграмм канале, на который можно подписаться и следить за обновлениями и полезной информацией. Будем также рады комментариям и дополнениям.
и прямо в статье написать что не подогнан.
взять отрезок == уже подогнать.
Антон Б, Мы попробовали взять в 2021 году отрезок из 22года, но боялись что это сильно удивит форумчан...
Ну, а если серьезно, то предполагается отсутствие подгонки в виде оптимизации. На той истории можно включить оптимизацию и показать результаты в 10 раз выше например. Именно в таком контексте имелось ввиду про подгонку)
Susanin, https://docs.tslab.pro/pages/viewpage.action?pageId=38961169#id-ПримерыреализациискриптоввTSLab-ПримерпримененияиндикаторовHigh-Low
Скопируйте ссылку в браузере, минимальное описание алгоритма.) ну или в любом поисковике можно найти описание
Если в КВИКе поставить оповещение, то оно сработает 1 раз и всё, потом становится неактивным.
Теперь по теме:
объясните это
Как выгрузить в текстовый файл эквити по результатам теста?
Вроде все перекопал — но не нашел, осталась только версия, что надо для этого написать специальный модуль. Может есть готовое решение, просто я до него не добрался?
Компания TSLab, а можете уточнить такой момент...
Если писать свой модуль, то будут-ли в нем будут работать операции ввода/вывода в файл в процессе выполнения оптимизации?
kachanov, слишком обобщенно сложно ответить. Если бы мы имели такую практику, то сказали бы наверняка ДА или НЕТ, иначе сложно рассуждать.
но например у нас есть возможность делать оптимизацию в ексель сразу а не в тслаб — по сути работать с готовым файлом в ексель — не составит труда