Блог им. fxsaber

Рыночные закономерности и ТС их описывающие.

    • 15 октября 2019, 01:27
    • |
    • fxsaber
  • Еще

Допустим, что существует какая-то рыночная закономерность. Это может характеризоваться тем, что можно написать несколько ТС с разной логикой и они будут улавливать профит, но только с разной эффективностью.

Эффективность улавливания прибыли измеряю, например, профитом наилучшего прохода при оптимизации постоянным лотом. Выше профит — выше эффективность. Т.е. чем выше профит, тем точнее накладываются сделки на график цены.


Классика vs НС

Интересно, что разные ТС — это не только разные наборы входных параметров, но и логика. Сама логика может быть описана через НС со своим количеством входных в универсальной внутренней логике.

 

Когда оптимизирую классическую ТС, где логика из головы, то не возникает вопроса подгонки логики под рынок. Т.е. логика уже создана, а дальше просто оптимизируешь ее малочисленные входные параметры.

Однако, когда имеешь дело с ТС на НС, то там идет подгон огромного количества входных параметров «универсальной ТС». Соответственно, вероятность подгона гораздо выше интуитивно, чем у классических ТС.

 

Где изъян в моих рассуждениях?

 

Торговые издержки

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

 

Ну и, соответственно, если боевая ТС менее эффективно описывает рыночную закономерность, то и вероятность слиться у нее выше, чем у той, что показывает замечательный профит без комиссии (мат. ожидание выше комиссии).

 

Сравнение ТС



Допустим, ТС1 имеет такое же количество явных входных параметров, как и ТС2. Но при этом лучший проход ТС1 получает на 10% больше прибыли, чем ТС2. Пусть это будут тысячи переворотных сделок, чтобы сильно не отвлекаться на стат. значимость.

10% — это много или мало, чтобы сказать, что ТС1 лучше описывает рыночную закономерность, чем ТС2? Как понять, где идет речь о стат. погрешности профита, а где о, действительно, более точном алгоритме описания рынка?

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

15 комментариев
Про подгонку логики — правильно написано. Каждый переключатель, который настраивается, увеличивает число степеней свободы и, соответственно, уровень (пере)подгонки. 
avatar
Идеальную модель «рыночной закономерности» даёт индикатор Зигзаг, который полностью «отслеживает» все тренды рынка, превышающие заданную силу тренда. Задав Зигзаг с силой тренда в 1%, получаем ломаную, каждая вершина которой по высоте отстоит от предыдущей не менее 1% высоты этой предыдущей вершины.
Чем меньшую силу тренда задать, тем ближе Зигзаг прижимается к истории котировок. Торговая система, меняющая направление позиции в каждой вершине Зигзага, — идеальная ТС. Её выигрыш тем больше, чем меньшую силу тренда она отслеживает.

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

Так вот, нарисовав на истории котировок такую идеальную торговую систему, «оптимальным» образом учитывающую затраты на комиссию, сможет ли кто-нибудь выявить соответствующие «рыночные закономерности»?
avatar
Rostislav Kudryashov, описанный ЗЗ просто показывает максимальную потенциальную прибыль при заданном размере мин. колена.
avatar
Практический интерес представляют лишь те закономерности, которые можно эксплуатировать. Соответственно, тестировать нужно с комиссиями.
Практический интерес представляет логика, которая наиболее точно описывает поведение цены. Для этого и нужно убрать комиссию. Получив эту логику, можно дальше от нее плясать в сторону боевого применения.

Тесты без комиссий можно принимать во внимание, если есть много стратегий, сигналы которых в дальнейшем смешиваются, что приводит к уменьшению оборота. Но всё равно — при этом хорошо бы было, чтобы исходные стратегии были прибыльными с учётом комиссий (если это не выполняется — их понадобится весьма дохрена, чтобы в достаточной степени снизить оборот).
Не понял, как увеличение количества ТС с такими характеристиками может в итоге получить мат. ожидание выше комиссии? Математически не сходится.
Анализировать при этом лучше не распределения сделок, а распределения доходностей, сосчитанных из эквити на одной и той же сетке (например, дневной).
Спасибо, никогда по временной сетке не строил распределение. Надо будет попробовать.
avatar
Eugene Logunov, что-то не понимаю совсем. Если, 10 систем сливают по комиссии, то от объединения их слив не прекратится. Что имеется в виду под оборотом? Если возможно, дайте, пожалуйста, ссылку по этой теме.
avatar
Eugene Logunov, Спасибо большое за столь подробный ответ!

Правильно ли понимаю, что sum(i=1..N; w[i](t)) = 1 ?
После каждого delta-периода идет перебалансировка весов в портфеле ТС? Ведь без перебалансировки слив 100%.

Например, в начале имеем 10 ТС, каждой даем одинаковый вес 0.1. Далее по мере торговли веса меняются: более прибыльные (без комиссии) ТС увеличивают свои веса, остальные — уменьшают.

Интуитивно не вижу причин, почему мат. ожидание портфеля станет выше комиссии. Но утверждать это без доказательства не буду.
В результате изменения цен инструментов за период (t-delta_t;t]вес i-того инструмента на конец периода станет равен w[i](t)*(1+r[i](t))/(1+r_portfolio(t)). Тогда оборот по i-тому инструменту в результате перебалансировки веса к новому целевому весу w[i](t+1) в момент времени t будет равен turnover[i](t)=abs(w[i](t+1)-w[i](t)*(1+r[i](t))/(1+r_portfolio(t))).
Тут, похоже, что-то не то, т.к. под abs ноль.

Фактически, задача сводится к тому, чтобы на вероятно убыточные входы уменьшать вес, а прибыльные — увеличивать. Вроде, здесь даже портфель особо ни при чем. Грубо говоря, вес w[i](t) = Func(r[i](t)). Можно взять ЕМАшку для сглаживания или что-то иное. При этом не обязательно опираться на время, можно и по счетчику сделок идти.

Грубо говоря, нужно исследовать распределение доходностей (либо по сделкам, либо по интервалам времени) и написать функцию предсказания профитности следующего значения от предыдущих. Натравить ту же НС на эту стандартную задачу предсказания. Возможно, в распределении гораздо больше стационарности, чем в цене.
avatar
Eugene Logunov, попробую разобраться, прочтя еще Ваши записи в блоге. Увидел, что они пересекаются с темой. Спасибо.
avatar
3) Целевой вес на следующий день — 0.55.
Не понимаю, откуда это значение берется? В данном случае предлагается доливка по тренду.

Вообще, как-то странно выходит. Я говорил про много ТС (при этом все могут быть на одном инструменте). А Вы говорите про много инструментов, подразумевая много ТС.

Многомерный случай поддержания веса видится таким. Строится спред и запускается на нем флетовая ТС (не тупо ловить отклонения). Через дельту-время спред перестраивается, при этом перестаиваются целевые веса входящих в незакрытую синтетическую позицию инструментов.

Но это почти классическая торговля спредом. И совсем не имеет отношения к повышению мат. ожидания портфеля ТС. Похоже, не сумел понять Вас.
avatar
Eugene Logunov, пусть есть переворотная ТС по одному инструменту постоянным объемом показывающая мат. ожидание ниже комиссии.

Если не противоходе делать доливку под видом перебалансировки, то мат. ожидание не растет в случае, если ТС оптимально настроена.

Это утверждаю, т.к. пробовал различные ММ применять к ТС. Вариант без доливок всегда был лучше во время оптимизации.
avatar

теги блога fxsaber

....все тэги



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