Комментарии к постам oreshkinalexey

Мои комментарии:в блогах в форуме
Ответы мне:в блогах в форуме
Все комментарии: к моим постам
Йоганн, к сожалению и такое тоже бывает, и даже наверное не так редко как хотелось бы.
avatar
  • 04 августа 2026, 11:58
  • Еще
SergeyJu, 

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

Я бы столкнул лоб в лоб два полностью определённых процесса:

  1. Три общих порога для всех 12 ETF.
  2. Три отдельных порога для каждого ETF.

На каждом шаге оба варианта оптимизируются на одном и том же прошлом участке, после чего параметры фиксируются и проверяются на следующем OOS-отрезке. Затем окно сдвигается. В результате нас интересует не общий Sortino за 25 лет, а то, насколько преимущество раздельной настройки регулярно выживает на новых данных.

В качестве грубой, но понятной оценки можно взять:

прирост раздельной настройки на обучении минус её прирост на OOS.

Допустим, отдельные параметры дали относительно общих +1 к Sortino внутри выборки, а на последовательных OOS-участках осталось только +0,1. Значит, примерно 90% красивого преимущества испарилось после выхода на новые данные. Я бы называл это не универсальной мерой переподгонки, а эмпирической оценкой оптимизма конкретной процедуры.

Второй тест, на мой взгляд, ещё интереснее: построить матрицу переноса параметров. Параметры, подобранные на XLI, применить к остальным ETF, параметры XLK — тоже ко всем и так далее.

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

При этом 12 ETF нельзя считать двенадцатью полностью независимыми подтверждениями: они связаны общим рынком. Поэтому сравнивать лучше не только результаты отдельных систем, но и временной ряд всего портфеля, а доверительные интервалы строить блоками по датам.

Я бы ещё добавил промежуточный вариант: не один набор параметров на всех и не отдельный набор на каждый инструмент, а несколько групп похожих ETF. Возможно, реальный максимум устойчивости окажется именно посередине.

В общем, здесь согласен с вами: считать количество параметров недостаточно. Гораздо полезнее посмотреть, сколько преимущества раздельной настройки переживает перенос во времени и на соседние инструменты. Такой результат уже можно пощупать руками, а не только обсуждать на уровне степеней свободы.

avatar
  • 04 августа 2026, 11:57
  • Еще
oreshkinalexey, зачастую рабочий код живет меньше, чем нужно времени на то, чтоб отбить трудозатраты на его создание))
avatar
  • 04 августа 2026, 02:05
  • Еще
oreshkinalexey, все правильно, но, на мой вкус, через чур академично, я бы привнес  больше эмпирики. Вот тут я попытался в качестве затравки предложить модельный пример. Дискуссия получилась, но не особо. 
smart-lab.ru/blog/1013172.php
avatar
  • 03 августа 2026, 11:42
  • Еще
SergeyJu, 

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

В первом варианте есть четыре явно подбираемых параметра: два периода индикаторов и два порога. Во втором числовой параметр действительно один, но взаимодействие двух состояний индикатора с пятью днями недели делит выборку уже на десять режимов — если каждая «краска» используется как отдельное торговое состояние.

Где больше подгонки, по числу параметров или цветов заранее не определить. Важен весь класс проверенных гипотез:

— были ли индикаторы выбраны заранее или отобраны из десятков вариантов;
— был ли день недели включён до теста или после просмотра результатов;
— перебирались ли отдельные дни и их комбинации;
— назначались ли разные действия каждой из десяти ячеек;
— сколько независимых сделок осталось внутри каждого режима.

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

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

Проверять при этом нужно весь процесс целиком. Выбор индикатора, порога, дней недели и правил взаимодействия выполняется только на обучающем окне, после чего всё фиксируется и проверяется на следующем OOS-участке. Затем окна сдвигаются вперёд. Если день недели или схема раскраски выбирались с учётом результатов тестового периода, это такая же подгонка, как и оптимизация обычного коэффициента.

Поэтому во втором варианте подгонки вполне может оказаться больше, несмотря на один формально настраиваемый параметр. Само число коэффициентов — слишком грубая оценка сложности.

avatar
  • 03 августа 2026, 10:40
  • Еще
Йоганн, Рабочий код продать несложно. Устойчивое и подтверждённое преимущество обычно не продают — его используют.
avatar
  • 03 августа 2026, 10:43
  • Еще
Йоганн, так это возврат к средней с усреднением позиции. Ничего плохого в таких стратегиях не вижу, но не везде их можно использовать. 
avatar
  • 03 августа 2026, 10:27
  • Еще

oreshkinalexey, 

преимущество, которое просто неинтересно крупному капиталу из-за ограниченной ёмкости

Но, именно крупный капитал разрабатывает мощные системы, которые прочесывают рынок ежечасно и как синий кит собирают эти мелкие профиты.

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

Я бы приобрел что-то подобное или поучаствовал в разработке.

 

avatar
  • 02 августа 2026, 01:59
  • Еще

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

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

Первый уровень прогнозирования базируется на экстраполяции ценовых рядов и возврате к среднеквадратичному в процессе движения к прогнозным уровням. И все бы было очень неплохо, если бы не свопы)))

avatar
  • 02 августа 2026, 01:43
  • Еще
SergeyJu, ценовой ряд (пункты-бары) уложите в определенную стандартную матрицу, и тогда всё заработает. На выходе всегда одни и те же числа-параметры. 
avatar
  • 01 августа 2026, 23:28
  • Еще
oreshkinalexey, конечно сравнивал не один раз, с разными эффективными величинами окон, на разных ценовых рядах. 
И то, что число параметров у ЕМА минимально, тоже большой плюс. А всякие дополнительные подпорки к системам с небольшим числом параметров я очень не люблю. Обычно, за небольшой прибыток получаем риск неустойчивости. 
Вообще, тема числа параметров интуитивно понятная, но лично у меня не формализована. 
Вот пример. Допустим, есть два однопараметирических индикатора, у каждого свой порог. Итого 4 подбираемых параметра и ценовой ряд раскрашивается в 4 цвета. 
Допустим также, что у нас есть один однопараметрический индикатор без порога (вернее, порог естественный и не является переменным). И есть день недели. Подбираемый параметр 1, а ценовой ряд красится в 10 красок. 
Вопрос, где больше подгонки. 
avatar
  • 01 августа 2026, 20:28
  • Еще
SergeyJu, 

это показательный результат. Фильтрация и прогнозирование — всё-таки разные задачи. Баттерворт, преобразование Гильберта, вейвлеты или SSA могут красиво разложить либо сгладить уже наблюдаемый ряд, но сами по себе не создают информацию о следующем движении цены.

В реальном времени за сглаживание обычно приходится платить задержкой: уменьшаем лаг — возвращаем шум. Адаптивные AMA, KAMA и подобные методы дополнительно оценивают текущее состояние ряда, то есть добавляют параметры и ещё один источник нестабильности.

Поэтому EMA оказывается сильным базовым вариантом: один понятный параметр, прозрачный лаг и минимум возможностей для переоптимизации.

Сравнивать более сложные фильтры с EMA, на мой взгляд, нужно при сопоставимом эффективном лаге и степени сглаживания. Параметры каждого метода подбираются только на прошлом участке, затем фиксируются и проверяются на следующем, ранее не использованном отрезке. После этого обучающее и тестовое окна сдвигаются вперёд, а итог строится только из последовательных тестовых участков. То есть речь идёт о walk-forward OOS-проверке, а не об одном удачно выбранном тестовом периоде.

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

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

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

Интересно, вы сравнивали методы при примерно одинаковом эффективном лаге и степени сглаживания? И параметры фиксировались один раз или перенастраивались последовательно по мере движения по истории?

avatar
  • 01 августа 2026, 20:07
  • Еще
oreshkinalexey, деталей я уже не помню, но я пытался использовать прогноз как индикатор направления движения. Лучше обычной EMA не получилось, и я не стал больше напрягаться.  Тем более, что ждал гораздо большего. 
Вообще, меня удивило, что почти весь стандартный арсенал фильтрации, от фильтра НЧ баттерворта до численной реализации преобразования Гильберта не превзошли в моих исследованиях обычную скользяшку. И все АМА, КАМА и прочие адаптивные штучки тоже я счел малополезными. Даже на вейвлеты потратил время впустую.
И это при том, что и сами скользяшки тоже не подарок, но хотя бы проще — некуда.  


avatar
  • 01 августа 2026, 18:40
  • Еще
SergeyJu, 

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

Для меня любая более сложная схема распределения капитала должна сначала обыграть такой baseline вне выборки — после учёта оборота, ограничений и издержек. Коммерческие детали вашего варианта раскрывать, конечно, не прошу.

По Фурье и SSA тоже согласен с основной оговоркой: математически разложить можно любой ряд, но красивый спектр или набор собственных компонент ещё не означает, что у рынка существует устойчивый физический базис.

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

Дальше проверка одна: улучшился ли rolling out-of-sample результат после издержек. Если нет, SVD просто красиво переписал тот же шум.

Интересно, у вас всё развалилось уже на устойчивости выделенных компонент или компоненты выглядели убедительно, но не давали прогноза вне выборки?

avatar
  • 01 августа 2026, 17:51
  • Еще
oreshkinalexey, что преобразование Фурье, что разложение ковариационной матрицы на собственные вектора и числа работают тогда, когда во внешней системе есть реальный собственный базис или что-то ему подобное. 
ТО есть это хорошо ложится на радиофизику, на акустику, на фазированные антенные решетки и так далее. Когда я начинал на рынке, это  было у меня в бэкграунде. И когда все вот это не стало работать на ценовых рядах, был сильно разочарован. Возможно и можно тут подъехать на какой-нибудь кривой козе, но у меня нет идей на эту тему. 
avatar
  • 01 августа 2026, 07:27
  • Еще
oreshkinalexey, 
В целом замечание правильное: я бы действительно уточнил в статье, что речь идёт о конечном историческом диапазоне, а не об универсальном законе рынка.
Вам эти Знания пока не доступны, о универсальном законе. Вы в школе плохо учились!  Это так, шутка. Хотя Закон есть. Все формулы давным давно в открытом доступе. Рынок же это вибрация цены вверх-вниз, а вибрацию давным давно физики научились препарировали по полной. Ещё акустики тоже быстро тему вкуривают. Круги на воде, от брошенного камня… А камень это или прошлое движение, или первый импульс. 
Пипец, как тяжело общаться с прогульщиками, мнящими себя супер кодерами... 

avatar
  • 31 июля 2026, 22:50
  • Еще
oreshkinalexey, и мы все знаем, что преимущество существует. Как охотник знает, что дичь есть, только поди, найди, добудь и сам дичью не стань. 
avatar
  • 31 июля 2026, 19:14
  • Еще
oreshkinalexey, первый выбор — равный на момент расчета весов риск (в амплитудных единицах) на каждую систему. То есть вес обратно пропорционален оценке риска. Минус понятен, связи между системами игнорируются. Многие так и торгуют, только вводят поправки на то, что системы похожие, дают похожий риск и их веса приходится как-то сокращать. Но в принципе, неплохо. 
Я действую иначе, но описывать не могу. Тут уже, как префе, «карты к орденам».
avatar
  • 31 июля 2026, 19:16
  • Еще
SergeyJu, 

лично с группой Голяндиной не пересекался, хотя сам метод «Гусеница»-SSA знаком. Насколько понимаю, там идея существенно интереснее обычного поиска корреляции: ряд укладывается в траекторную матрицу, затем через SVD выделяется низкоранговая структура — трендовые и колебательные компоненты, а остаток трактуется как шум. Для нескольких связанных рядов используется MSSA.

Для нашей задачи это может быть интересно как минимум в двух местах: как предварительное выделение структуры перед поиском похожих участков и как способ построения более содержательного признакового пространства вместо сравнения сырых цен.

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

В любом случае направление интересное. Посмотрю их работы по многомерной SSA подробнее. А что именно вы называете «лобовым подходом» к портфельной задаче — равные лимиты риска, фиксированное число систем или собственная схема отбора?

avatar
  • 31 июля 2026, 18:17
  • Еще
oreshkinalexey, 
Главный вопрос вообще не в том, можно ли найти одинаковые пропорции. Найти их можно сколько угодно. Главный вопрос — дают ли они устойчивое условное распределение будущего на данных вне выборки, после комиссий, спреда и проскальзывания.
Прошлое определяет будущее! Любой первоначальный импульс уже несет в себе все будущие точки разворота по цене и времени. 
Ссылка на Ганна и бесплатные индикаторы MT4 этого не доказывает. Покажите формальные правила, независимый тест и статистику — тогда будет предметный разговор. Без этого «математические пропорции» остаются обычным рисованием по уже сформированному графику.
Так и хочется ответить, и ключи от квартиры тоже?!  Вы хотите, чтобы я вам показал как с помощью простых формул, которые мы проходим в школе на уроках геометрии, рассчитывать где с большой вероятностью развернется тренд? Ню ню... 
А аргумент «это написал Ганн сто лет назад» в техническом обсуждении весит примерно столько же, сколько возраст самого аргумента.
Так я сразу написал, что он скорее всего не для Вас и вашей команды. Вы же ищете там где ищут все, вместо того чтобы искать там где надо найти! 
Так и быть, дам два скрина… Ваша вумная ТС так умеет?


Остальное в ветке smart-lab.ru/blog/1299966.php было.
avatar
  • 31 июля 2026, 16:06
  • Еще
Выберите надежного брокера, чтобы начать зарабатывать на бирже:
....все тэги
UPDONW
Новый дизайн