Обсуждение статьи "Множественный регрессионный анализ: генератор стратегий и тестер в одном флаконе" - страница 2

 

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

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

К сожалению, не затрагивается самая главная составляющая (анализ остатков - совсем не то) подобных исследований - насколько найденные "закономерности" живучи.

"Закономерности" тем живучей, чем дольше "держатся" (минимально изменяются) найденные весовые коэффициенты (в терминах МР и любых НС). Ничего не стоит на СБ (где отсутствуют закономерности по определению) на любом окне найти замечательные коэффициенты. Но именно динамика их изменений позволит с высокой долей истины сказать, что мы имеем дело с СБ, а не с чем-то другим.

Т.е. динамика изменения весов является неким критерием наличия закономерностей в исходном ВР.

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

 

Наблюдается некоторая плавность иногда (что есть очень хорошо), а так же ситуации дерганий весов (что крайне плохо).

Более того, рыночные закономерности колоссально зависят от времени суток, сезонности и т.д. Поэтому при их поиске следует отдельно учитывать временные зоны. Прибыльно-используемая крайние несколько лет ночная торговля некоторых кроссов - яркий пример наличия РЕАЛЬНОЙ закономерности, которая присутствует лишь только в определенном интервале суток. И ее никогда бы не нашли, если бы исследовали весь исходный ВР, без фильтра временных зон.

P.S. Что-то понесло (видимо, атмосфера "Дня знаний" сказывается) на много букв, поэтому обрываю пост.

 

Во множестве ТС торговый сигнал образуется на основании линейной комбинации индикаторов.

Это значит, что если стоит задача разгадывания ТС из результатов ее торгов (стейтмента), то МР - хороший инструмент для таких целей.

Можно на задачу посмотреть и с другой стороны:

Трейдер на истории расставляет торговые сигналы. Это может быть результатом его неформализованной ручной торговли, или же некоторые из вершин ЗигЗага. Вообщем, все, что угодно.

Далее решается все та же задача: автоматическая формализация ТС по ее торговым сигналам. Т.е. нахождение через МР неких линейных закономерностей в ТС.

P.S. На такую задачу можно натравить и НС. Но интерпретация результатов НС много сложнее, нежели МР. 

 
hrenfx:

Можно на задачу посмотреть и с другой стороны:

Трейдер на истории расставляет торговые сигналы. Это может быть результатом его неформализованной ручной торговли, или же некоторые из вершин ЗигЗага. Вообщем, все, что угодно.

Далее решается все та же задача: автоматическая формализация ТС по ее торговым сигналам. Т.е. нахождение через МР неких линейных закономерностей в ТС.

Да, идея интересная. Даже предлагал написать статью, которая делает первоначальную обработку для этого.

Rosh:

На днях опубликована статья Визуализируй стратегию в тестере MetaTrader 5, в которой показана обработка результатов оптитмизации "на лету". Но тема до конца не раскрыта,  конечно, же. Тут лежит целый пласт возможностей, и в связи с этим есть темы для статей:

  1. Анализ показаний осцилляторов для входов и выходов. После окончания одиночного прохода получаем для каждого треейда время открытия и находим для него значения стандартных осцилляторов. Во время оптимизации выводим в виде графиков/гистограмм/круговых диаграмм распредление прибыльных/убыточных сделок по значениям этих осциллторов. Таким образом, можно будет визуально оценить как данная стратегия дружит с этими осцилляторами и можно ли их использовать в качестве дополнительно фильтра.

Но пока никто не откликнулся.

 
hrenfx:

...

Далее решается все та же задача: автоматическая формализация ТС по ее торговым сигналам. Т.е. нахождение через МР неких линейных закономерностей в ТС.

...

 

Господа, как вы это представляете? Что-то типа факторного анализа. А какие факторы? Все индикаторы со всеми возможными наборами параметров со всех возможных символов? 

 

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

Для начала допустим, что торговые сигналы формируются исключительно линейной комбинацией неких индикаторов. Более того, о исследуемой ТС у нас есть ненулевые предположения (пожелания). Например, что скорее всего там используются МАшки, Фибо, PriceChannel и т.д. Либо наоборот, мы хотим видеть формализацию ТС с обозначенными входами через определенный список индикаторов.

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

Сам торговый сигнал предсталяет из себя три значения: BUY, SELL, LOVE. По этой (и другим) причине имеет смысл рассматривать по отдельности ТС с одним лишь типом сигнала. Пусть далее это будет BUY.

Сам BUY сигнал формируется, когда какой-то порог пересекается в определенную сторону. Для удобства этот порог принимается за ноль.

Подводим итоги вышесказанному:

Берем только BUY-сигналы рассматриваемой ТС, в этих точках берем множество значений интересуемых нас индикаторов. И через изученный мат. метод пытаемся выразить линейную комбинацию:

K[1] * Value[1] + .... + K[n] * Value[n] = 0, при этом наложив на веса ограничение Sum(Abs(K[i])) = 1. МР не совсем решает поставленную задачу, т.к. призвана выражать Value[j] через остальные. А посему для каждого j вектор решений будет разного направления - не колинеарные. Однако, это все равно позволит получать пусть и не идеальные, но решения. Помимо МР могут, конечно, использоваться и другие мат. методы.

После нахождения весов нужно будет построить график остатков: для каждого сигнала рассчитать значение R[i] =  K[1] * Value[1] + .... + K[n] * Value[n]. Получим своего рода график формализации исследуемой ТС, который будет из себя представлять колеблющуюся вокруг нуля кривую. Естесственно, буду присутствовать выбросы. Которые желательно выкинуть - на простом языке это обозначало бы игнорироваие определенных торговых сигналов.

После этого стоит применить мат. метод повторно. В итоге, если большая часть сигналов ТС поддается формализации через выбранный список индикаторов, то мы получим окончательный ответ в виде весов, где R[i] будет "узко" колебаться вокруг нуля.

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

Вот вкратце начальные наивные представления об автоматической формализации некоторых (распространенных) типов ТС.

 
Суть мысли понятна - все возможные индикаторы (или их ограниченный список), все их возможные параметры... А польза, нужно ли такое?
 

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

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

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

 
hrenfx:K[1] * Value[1] + .... + K[n] * Value[n] = 0, при этом наложив на веса ограничение Sum(Abs(K[i])) = 1.

очень похоже на нейронные сети

ЗЫ: и даже если это будет не НС, то результат такого инструмента будет схож с работой НС - на истории положительные результаты

 
IgorM:

очень похоже на нейронные сети

ЗЫ: и даже если это будет не НС, то результат такого инструмента будет схож с работой НС - на истории положительные результаты

Да, именно.  Поэтому подобных методов недостаточно. (но таки необходимо!)

;-)

 

Integer:.

А какие факторы? Все индикаторы со всеми возможными наборами параметров со всех возможных символов? 

Все не надо.  Надо только перспективные.  И потому решающий фактор - умение находить эти самые "перспективные". 

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

Что, строго говоря, тоже ценно. 

// "Убей надежду вовремя!"  (ц) я

Причина обращения: