Блог им. IgorMushtriev

Вопрос Новичка: можно ли заработать на рынке Forts? – Мой ответ: ДА!

Добрый день, коллеги!

Ответ на вопрос дан уже в теме.

Ответ на вопрос: «Каким образом?»  тоже дам сразу – применяя регулярную Ротацию систем.

Читателям смартлаба, не желающим читать много букв и смотреть картинки, дальше можно не читать.

Предлагаю остаться только тем, кто хочет понять, как часто надо проводить Ротацию систем?Итак,

Цель данной статьи:

Понять, как часто необходимо проводить Ротацию систем, чтобы регулярно заработать на рынке Forts?

1.Что я понимаю под Ротацией систем в данной статье.

Если мы имеем две системы с одинаковым кодом, но с разными параметрами, значит у нас две разные системы.

Меняя параметры системы, мы фактически меняем торговые системы. Именно это я понимаю под Ротацией в узком понимании.

Ротация систем в широком понимании – это не только замена параметров систем,  но  и замена собственно систем. Рассмотрение вопроса «как часто менять системы в портфеле?»  выходит за рамки этой статьи.

2. Какая система использовалась в тестах.

В качестве испытуемой я взял реально работающую торговую систему, написанную по мотивам бюллетений Чака Лебо. Система имеет 3 собственных параметра. По ним шла оптимизация. И параметр, который я не менял, – размер риска в одной сделке (MPR). Во всех тестах MPR=3%  Почему выбрал систему с большим количеством параметров? Хочу показать, что системы с  3-4 параметрами  тоже имеют право на жизнь. Что это не является «подгонкой под кривую».

3. Инструмент для тестирования: фьючерс на доллар/рубль (Si).

4.Программное обеспечение для тестов.

Тесты проводились с использованием популярного ПО: Wealth-Lab.
Исторические данные получены с помощью CognitumUpdater. Результаты тестирования обрабатывались с помощью ScoreCard MasterGroup.

5.Прочие условия.

Тестовые Тайм-Фреймы.

Для проверки гипотезы проводил тесты на двух ТФ: 10 мин и 30 мин.

Почему именно эти – так исторически сложилось, что мои системы работают на 10, 30 и 60 мин.

Тест на подбор самого оптимального ТФ не проводил. Думаю, что это будет отдельным исследованием.

Условия тестирования

Период тестирования 3 года. Начал с 01.01.2012 по 01.01.2015 г. По полученным результатам выбирал параметры по 3-м правилам. Два правила используют результаты, которые можно получить только с помощью ScoreCard MasterGroup. Одно правило использовало результаты, аналогичные тем, что можно получить в ТСлаб. Они же есть и в базовой ScoreCard Wealth-Lab.

Технология проведения тестов:

1.Установил Тайм фрейм = 10 мин и диапазон дат тестирования 01.01.2012 – 01.01.2015 (IS) и запускаю оптимизацию на основе Генетического оптимизатора.

2.По окончанию оптимизации расширяю диапазон дат до 01.06.2017 г. (OOS). Июнь не включаем.

3.Результаты оптимизации сортирую и отбираю по Правилу №1.

4.Выбираю закладку с результатами “By Period” c диапазоном  «помесячно» и  результаты переношу в таблицу.

Затем делаю цикл по п.3 и 4 по Правилам №2 и 3.

5.Устанавливаю новый диапазон тестирования, сместившись на 1 месяц.

6.Повторяю алгоритм, пока не пройду все месяцы до мая 2017 включительно.

7. Имея заполненную табличку с ежемесячными данными, создаю таблички для других типов тестов:

— оптимизация 1 раз в 3 месяца;

— по окончанию действия контракта;

— оптимизация 1 раз в 6 месяцев

— оптимизация 1 раз в год.

8.Выполняю аналогичные тесты для ТФ=30 мин.

Обработка результатов.

Таблица 1 Сводные итоги для ТФ=10: для различных типов тестов для 3-х лет по 3-м правилам 

Вопрос Новичка: можно ли заработать на рынке Forts? – Мой ответ: ДА!

Из этой таблички можно сделать много выводов:

— используя любой из выбранных методов оптимизации мы за 3 года не слились бы.
  Более того, даже заработали.

— разные правила и при одной и той же периодичности оптимизации дали бы разные результаты,
  разница составляет до 40%

— использование одного и того же правила, но с разной периодичностью, также дает разные результаты с разбросом до 40%

— для системы был удачным 2015 год. Оно и понятно — год хороших трендов.
— неудачный для многих систем 2016 год стал нехорошим и для тестируемой.
  Но только в одном случае системы слила 25%. Во всех других — закончила год
  с положительным результатом на уровне %% банковского вклада.

График 1 Эквити системы, оптимизированной по Правилу 1 при различной периодичности оптимизации. 
Вопрос Новичка: можно ли заработать на рынке Forts? – Мой ответ: ДА!

Наглядно видно, что при использовании оптимизации по Правилу1 ежемесячная оптимизация опережает по доходности все остальные.


График 2 Эквити системы для ТФ=10 мин с ежемесячной оптимизацией по 3-м правилам

Вопрос Новичка: можно ли заработать на рынке Forts? – Мой ответ: ДА!


Таблица 2 Сводные итоги для ТФ=30: для различных типов тестов для 3-х лет по 3-м правилам.

Вопрос Новичка: можно ли заработать на рынке Forts? – Мой ответ: ДА!

Из таблицы видно, что ТФ=30 минут лидеры оптимизации сменились.
Для данного ТФ наилучшим будет ежеквартальный период оптимизации.

График 3 Эквити системы для ТФ=30 мин с ежеквартальной оптимизацией по 3-м правилам

Вопрос Новичка: можно ли заработать на рынке Forts? – Мой ответ: ДА!

 

Как было уже сказано, для отбора параметром применялись 3 правила.

Если первые 2 можно применять исключительно в Wealt-Lab с использованием MasterGroup ScoreCard от Дмитрия Власова и Игоря Чечета, то Правило 3 можно использовать как в Велсе, так  и в ТСлаб.  
Поэтому уже работающие в ТСлаб системы можно оптимизировать сразу в ТСлаб.

Это предположение я проверил (провел такое же исследование) и получил подтверждение.

Чтобы не мучить читателей, решил не выкладывать сюда таблицы и графики.
Думаю, что достаточно просто упомянуть об этом.

О просадке системы. Из таблиц видно, что в целом все системы работали в плюс.

В колонке 2017 есть отрицательные значения, но год еще не закончился. Главные тренды еще впереди.

 

Общие выводы:

1.Заработать на фондовом рынке, в частности на Фортс, можно.

2.Необходимо для СВОЕЙ системы провести анализ и понять на каком тайм-фрейме с какой периодичностью необходимо проводить оптимизацию для получения максимального результата с приемлемой просадкой. 

3.Технология тестирования приведена по-шагам.


Успехов в торговле! Больших попутных трендов!

★11
41 комментарий
Игорь, отличная статья, спасибо! По сути мануал для тех, кто сомневается) не имея ScoreCard MasterGroup, можно ориентироваться и на такие базовые метрики, как RF.
avatar
да, совершенно верно

avatar
IgorMushtriev, конечно можно, разве кто-то с этим спорит? Вероятность 50% МИНИМУМ! )

Небольшое замечание:
Один и тот-же алгоритм, с одними и теми-же параметрами, но на двух разных тайм-фреймах это две разные системы.

avatar

Вероника, да, согласен.

Но, такого не бывает.

Скорее: разные ТФ и разные параметры. И это тоже разные системы.

avatar
Вероника, в большинстве случаев это будет контрграаль,
если только параметры ТС не взаимоувязаны через %.
Очень уж большая разница между ТП и СЛ разных таймов.
avatar

 Был вопрос про Правила оптимизации.

Я намеренно не раскрываю их, т.к. эти правила для моей системы.

Подойдут ли они Вашей — не знаю. Пробуйте разные. Например, как написал выше Ярослав- можно использовать RF, PF, Доходность, просадка.

Мои правила содержать по 3-4 показателя + какая-то «чуйка». 

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

avatar

Kolyan, заработал, не переживай :)

здесь есть в том числе и мои системы

tslab.comon.ru/show.aspx?id=F0DABF317E3D7ECF0644C140F71C93F0

реальный счет, реальные системы

avatar
IgorMushtriev, а что это за управление агентами?
avatar
qwerty,  не понял вопрос
avatar
IgorMushtriev, ну Вы ссылку скинули
tslab.comon.ru/show.aspx?id=F0DABF317E3D7ECF0644C140F71C93F0
а что это такое я не понял, и вот спросил.
avatar

qwerty, 

это счет мастер группы на реальном счете на реальных деньгах с реальными системами.

Агенты работают с Управлением Капитала 2-х типов: MPR — количество лотов в данной позиции учитывает размер риска в сделке и POE — количество лотов в данной позиции учитывает размер риска от текущего размера депозита.

avatar
IgorMushtriev, поправьте если я не правильно понял, агенты это различные вариации роботов?
А то я сначала подумал — это люди, связанные единой системой мани-менеджмента.
Я просто никогда не сталкивался с TSLAB.
avatar

qwerty, Да, всё верно.

 В ТСлаб есть понятие «Скрипт» — это реализация идеи торговой системы. Может быть как в виде паутины из встроенных кубиков, так и в виде «Внешнего скрипта» — кубика, в который загружен код системы на языке программирования С#.

Скрипт можно запустить в Лаборатории. Посмотреть работу системы на истории: на графике свечек, таблицы «Результаты», «Сделки», посмотреть график Дохода.

Чтобы Скрипт начал торговать необходимо настроить Торгового Агента. 1 скрипт = 1 Агент. Правда, можно внешний код подключить в разные Скрипты и сделать разных Агентов. Например на разные тайм фреймы и/или инструменты.

Но, лучше так не делать. Лучше 1=1. Для каждого Скрипта свой файл с кодом системы. Но, это уже практика торговли в ТСлаб.

 

avatar
IgorMushtriev, Спасибо, теперь понятно. :)
avatar

Kolyan, это трансляция с реального счета систем, разработанных сообществом трейдеров «Финансовая лаборатория».

Трансляцию со своего счета, извини, показывать не буду. 

avatar
Игорь, Вы колбасите в своем кружке уже более 4-х лет. Одна картинка эквити своего живого счета лучше десяти с тестов :)
avatar

MegaFan, согласен.

Но, почему-то никто не делится, а только просит показать других.

Интересно, почему?

avatar

Игорь, немного конструктивной (на мой взгляд, конечно) критики:

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

Далее, как я понял, здесь или только один график реальной эквити или ни одного, а учитывая нестройность теоретической доказательной части, отсутствие верификации практикой критично.

Ну и чисто субъективное — не люблю много отсылок к понятиям, авторитетам, литературе и прочему. 

Это я всё по-доброму пишу, может манера выглядит немного агрессивно или как-то ещё, это не так).

avatar

Replikant_mih, 

Михаил, это не докторская и даже не кандидатская диссертация.

Я поделился мыслями/идеями.

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

но, зачем?

основные выводы сделал. как для себя, так и озвучил в статье.

Теперь те, кто заинтересовался, что-то аналогичное сделают сами и либо возьмут на вооружение, либо нет.

avatar
IgorMushtriev, Ну тоже верно).
avatar

Replikant_mih, 

соглашусь, что можно было потратить еще день и вычитать статью, Что-то добавить в тексте, добавить графики и таблички.

Главные таблички я не показал — базовые. Боялся напугать объемом работы. Было сделано 60 тестов: по 30 для каждого тайм фрейма. Каждый тест был трижды проанализирован по разным правилам. Т.е. фактически было сделано 180 анализов систем.

А иначе как? 

avatar
IgorMushtriev, меня такие вещи очень пугают)), не зря говорят, что лень двигатель прогресса)), я если вижу что-то очень трудоемкое, сразу начинаю думать, как это можно обойти или автоматизировать и т.д.
avatar
1. Деление на OS и IS — бессмысленно применительно к трейдингу. Это не избавляет от переоптимизации.
2. Заниматься ротацией систем также бессмысленно кроме случаев, когда явно плохая заменяется явно лучшей.
avatar
Sergey Pavlov, про OS и IS немного чересчур категорично на мой взгляд. В конце концов, разделение датасета на обучающие и проверочные выборки — это практически всё, что у нас есть для борьбы ) Но конечно красных клеток в табличках быть не должно. Ну ладно, одну можно )
Zweroboi, вот поделили вы выборку на две части, чтобы потом что? Посмотреть, какая из моделей дает лучшие результаты? Или чтобы вывести усреднение оптимизируемых величин? Так это та же самая оптимизация-обучение-адаптация… только разбитая на две стадии и реально тут всё IS с точки зрения практики.
avatar
Sergey Pavlov, разумеется, не для того, чтобы посмотреть, какая из моделей даёт лучшие результаты. Мы хотим в первую очередь удостовериться, что сама наша модель и наш способ подбора параметров для неё вообще имеют смысл в плане появления у модели предсказательной способности. Поэтому да, делим выборку на две части, на одной обучаем, на другой проверяем — считаем чиселку какую-то; повторяем некоторое количество раз, получаем распределение этой чиселки, смотрим на него и думаем ) А как можно ещё по-другому?
Zweroboi, что потом после удостоверения? Варианта два. Первый: годится. Второй: не годится. Чтобы узнать, нам пришлось проделать все эти расчеты, т.е. функционально это та же IS, только вид сбоку. По Ивахненко мы будем звать её контрольной выборкой, но реально в рамках общего процесса построения модели это будет лишь продолжения обучения. И в этом проблема. Нужны иные критерии (внешние по отношению к выборке). Например, если бы я получил, что у меня скользящая средняя дает среднюю сделку в 2% на РИ при 500 сделках в год за десять лет, то я бы не стал ничего делать… никакой оптимизации, прогонов, а срочно это в торги…
avatar
Sergey Pavlov, не совсем понял логику про вид сбоку. Если модель и алгоритм её настройки годится, то OS уже не нужен, можно брать и обучать модельку хоть на всём IS что есть. Если не годится, то мы это хотя бы тоже опять же знаем, для того все эти вычисления и делаем.
Zweroboi, еще раз с точки зрения практики. Запустили мы систему какую-то (неважно, как она была создана). Она поторговала какое-то время. Неизбежно, что мы её через сколько-то времени будем менять. Этот факт навсегда для любых последующих систем отменяет для нас идею деления на IS и OS.

Более подробно нашел у Ивана Шестакова: http://www.jc-trader.com/2016/11/oos.html
avatar

Sergey Pavlov, да, у Ивана написано довольно здраво, но это всё-таки махровый олд-скул. Всё вот это вот про изучать рынок, искать торговые идеи и т.д. Кому-то это может быть и интересно, и в просадках сидеть по полгода, но мне например совершенно нет.

Я считаю, что лучше, проще и интереснее майнить торговую систему прямо из данных алгоритмом. Там столько всего найти можно, что головой не придумаешь такое никогда. А где машобучение — там от IS и OOS никуда не деться.

Zweroboi, и ещё важный момент — полная выборка за несколько лет просто очень здоровая и очень долго её обсчитывать. У меня каждую секунду например появляется новая точка данных, это 50К точек в день. А датацентра у меня пока нет )
Sergey Pavlov, Я бы использовал менее категоричные формулировки, что-нибудь типа:

1. Деление на OS и IS имеет ограниченное назначение и не грааль, только лишь добавление OS и IS в любом виде не избавляет от переоптимизации.
2. Ротация систем не грааль, и из топора кашу не сваришь, если не других ингредиентов, ну и ротация ротации рознь — важны критерии для включения-выключения важны другие факторы.
avatar
Replikant_mih, перемена между уроками? )
Zweroboi, Чиво?)
avatar
У автора топика в табличках как раз чиселки ) только их распределение выглядит довольно удручающе, иными словами торговля идёт случайно )
спасибо
«Мы хотим в первую очередь удостовериться, что сама наша модель и наш способ подбора параметров для неё вообще имеют смысл в плане появления у модели предсказательной способности» — Здорово! Само наличие идеи ротации систем говорит лишь об одном — не имеют смысла Ваши системы в плане стабильной предсказательной способности — иначе зачем ротировать??? -)))) Хорошие системы не нуждаются в ротации, у них просто смещается вероятность и то на какой то прогнозируемый период. Но ее не нужно «ротировать» и она ничего не «предсказывает» а просто зарабатывает…
avatar

теги блога IgorMushtriev

....все тэги



UPDONW