Блог им. 3Qu

Ретростратегия ретро ТС.

    • 11 января 2021, 23:49
    • |
    • 3Qu
  • Еще
Сегодня решил проверить работоспособность своей старой стратегии, проработавшей с большими изменениями с 2008г, и снятой с эксплуатации в 2014 г.
Вначале стратегия была сделана на Excel с ручным исполнение сделок, затем глубоко модифицирована, и стала уже Excel-VBA, затем еще раз модифицирована и была перенесена на C#. Ну, а самая последняя версия на C# в 2014 г успешно прошла месячный прогон на виртуальных сделках, но вывод ее на реал был признан нецелесообразным из за известных событий, и пару лет я рынком вообще не занимался. Ну, а по возвращении на рынок появились новые мысли, и я занялся совсем другими стратегиями.
Сегодня я решил проверить, а работает ли подобная стратегия сейчас. В Python это заняло примерно час, благо заготовок и индикаторов уже написано много и скомпоновать их дело нехитрое, и ничего специально придумывать не надо. Тест стратегии безо всяких ее настроек сразу оказался прибыльным на двух 3-х месячных интервалах фьючерсов Сбера и Газпрома. Критики могут не писать, что интервал тестирования недостаточен. Я знаю ваше мнение, однако, считаю иначе. Недостаточен? — сами делайте и сами тестируйте.
Т.к., саму стратегию я в дальнейшем использовать не планирую, решил рассказать вам о ней. Умолчу только о элементах используемых по сей день, а на них, собственно, и построена вся стратегия. 
Однако, многие, возможно обоснованно, считают, что стандартных индикаторов представленных тех.анализом вполне достаточно, и ничего изобретать не надо. Если это мнение соответствует действительности, то стратегия будет работать и у вас.
Итак, о самой стратегии.
Основу стратегии составляют 4 МА (думаю, что в вашем случае целесообразно использовать ЕМА). Параметры МА не подбирались, а выбирались еще до начала проектирования, и далее никак не менялись. Все МА нестандартные, и представляют собой классические фильтры ФНЧ. Параметр Т этих МА никак не соответствуют стандартным МА, и как они пересчитываются в стандартные — я об этом не думал, т.к. вообще не использую стандартные индикаторы.
Итак, рисуем на графике четыре МА, выбрав их периоды таким образом, чтобы из них можно было сделать гребенчатый фильтр (сам фильтр делать не надо)
Стратегия для лонга (для шорта все наоборот):
Далее, ждем когда все 4 МА будут в своем минимуме, т.е., не будут продолжать падать.
Дожидаемся, когда 2 или 3 младших МА начнут расти с более-менее приличной скоростью, особенно младшая и входим в лонг.

Стопа, как такового нет. Открытие/закрытие сделок осуществляется лимитниками по рынку. Выход из сделки осуществляется по анализу ситуации. Если начинается падение, и уже по прогнозу понятно, что оно будет продолжаться дальше, то закрываемся немедленно — с прибылью или убытком.
Если падение достаточно медленное и есть вероятность разворота в нашу сторону, ждем до достижения некоторого критического уровня, который выбирается в зависимости от инструмента, ну, и опять закрываемся, с прибылью или убытком.
В принципе, дополнительно можно установить защитный стоп, если стратегия используется в ручном режиме и вам нужно отойти, или на случай обрыва инета или проблем у брокера-биржи.
ТФ выбираем любой, от 1м до 15м или 1Н. На 15м и 1Н при входе в сделку хорошо бы анализировать данные младших ТФ или хотя бы свечи.
Да, и упаси вас боже оптимизировать это в каком-нибудь оптимизаторе (уже были такие попытки у тех, кому я передавал стратегию). Вы получите замечательную прибыль на истории, но от стратегии ничего не останется — реально работать это не будет. Подбор параметров возможен, но только руками, по результатам анализа сделок на тесте стратегии.
Собственно, и все. Все основное о стратегии вы уже знаете.
А мне интересно было бы сравнить свои результаты с результатами стратегий на стандартных индикаторах сделанными независимыми разработчиками. И вообще узнать, а будет ли это работать у кого нибудь.
Удачи!
★9
67 комментариев
это какой-то… палеолит!©
avatar
Tуземец, это будет работать и сейчас, а судя по тестам, работать вполне прилично. И вообще, новое — хорошо забытое старое.)
avatar
3Qu, возможно )



avatar
Tуземец, главное не процесс, а результат.©
avatar

Дожидаемся, когда 2 или 3 младших МА начнут расти с более-менее приличной скоростью, особенно младшая и входим в лонг.
Почему бы тогда  просто  не войти в лонг  на   пробоее младшей МА с низу в верх старшей МА, тем легче  в Python  так сделать.
avatar
Вельвет, делайте. Я рассказал как было сделано, а тестировалось это. Я написал, — В дальнейшем этим заниматься не планирую.
Но, вообще, всяческие пересечения не катят. В изложенной стратегии тем более.
avatar
Это пост — издевка :)

На самом деле все сводится к поиску инвариантов. Если я правильно понял то, что тут написано, тредстартер их нашел, выразил через них достаточно простую мысль и тяп ляп готова ТС :). Но без подсвечивания этих самых инвариантов (а тредстартер их подсвечивать по очевидным причинам не станет) все резко и сразу теряет смысл, отсюда недоумение общественности :)
avatar
PSH, вся техническая часть вполне полно описана, и, повторюсь, это реально работало раньше, и на тестах работает и сейчас.
Отсылка к гребенчатому фильтру почти однозначно дает нам выбор параметров для составляющих его ФНЧ.
Анализ тоже более менее расписан. Уж не хуже, чем это делается в книгах по ТА.
Если правы сторонники того, что индикаторов сложнее чем в ТА и не нужно, то все должно работать. Вот этого я действительно не знаю.
avatar
3Qu, АЧХ смежных фильтров пересекаются на -3 дБ?  
avatar
SergeyJu, если вы гребёнку будете делать из набора ФНЧ, у вас однозначно 6 дБ по АЧХ получится.
avatar
3Qu, почему однозначно? И почему ФНЧ, обычно гребенки делают из полосовых фильтров (возможно, один, нижний, ФНЧ)
avatar
SergeyJu, обычно делают оч по разному.
avatar
3Qu, но Вы же и написали — однозначно. 
avatar
SergeyJu, я про полосовые фильтры.
А с гребенкой, в нашем случае, выбор оч небгльшой.
avatar
3Qu, в каком смысле небольшой? Фурье с окнами, Баттеруорта, эллиптические, вейвлеты…
avatar
SergeyJu, вейвлеты воще из другой оперы.)
Ещё раз, мы не делаем сам ГФ, мы делаем набор ФНЧ из которого можно сделать гребёнку. А гребёнка, при необходимости вычислений сама получится там где надо.
avatar
3Qu, мы-то с Вами понимаем, как из набора ФНЧ слепить гребенку, но без подробного объяснения большинство вообще ничего не поймет. 
Что до вейвлетов, то Вы неправы, вейвлет как порождает набор (гребенку) фильтров специального вида, в том числе и похожих на полосовые с переменной полосой пропускания (зависящей от центральной частоты). 
avatar
SergeyJu, вейвлеты — это вообще другой базис, типа шляпы и более сложных. С частотами это мало связано.
Я смотрел вейвлеты на рынке — все те же краевые эффекты (что ожидаемо), и ничего толкового.
avatar
3Qu, на самом деле связано. Окно гаусса тоже похоже на шляпу. Да и окно Хэмминга. Согласен в том, что на рынке я тоже пользы от вейвлетов не нашел.
avatar
SergeyJu, этак можно все интегральные преобразования в одну кучу свалить.)
avatar
3Qu, там две смежных кучи. Фильтры с конечной импульсной характеристикой. И с бесконечной. 
Чем БПФ отличается от ДПФ? В первую очередь вычислительной эффективностью. Тоже касается вейвлетов. За счет ограничений получаем быстрый счет. А новой сущности не возникает. 
avatar
SergeyJu,  jurikres.com JMA на истории выглядит идеально. Такая скользящая будет работать индикатором на реальных торгах? В сигналах вижу, что FIR заменяет Delay фильтра на Lаtency всего прибора и подмены на hires сигналах никто не замечает.



avatar
MPlus, она выглядит красиво, не спорю. Описание алгоритма не видел, типа секрет, разбираться в том, что люди как бы декодировали, желания не было. 
А вообще, мой опыт попыток использования адаптивных СС не положительный. 
avatar
SergeyJu,  Джурики — это задачка для студента 4-го курса.) На уровне лабораторной работы.
Но Джурик молодец — использует всеобщую техническую неграмотность трейдеров и впаривает это от 15 до 30 баксов.
Не думал, что он до сих пор ещё существует. Лет 10 назад его поделки видел.
ЗЫ но, вообще, глядя на его графики МАшек, там явная подтасовка с частотами среза ( они же, периоды сглаживания).
Если сравнивать с одинаковыми частотами среза, тогда можно о чем-то говорить, а так, графики ни о чем.
avatar
3Qu, не так все просто, у него фильтр с переменными коэффициентами. Впрочем, не думаю, чтобы это было реально полезно. 
avatar
SergeyJu, эт ясно, что с переменным, но тогда при малых отклонениях он должен вырождаться в обычный, чего он не делает. Это касается и остальных картинок, а не только Джурика.
Это может быть полезно для конкретных задач, но если нет алгоритма фильтра, то он и для этого бесполезен.
avatar
SergeyJu, 
большинство вообще ничего не поймет. 
Я всегда говорил, что опубликовав даже работающую стратегию, шансы что ее повторят практически нулевые.
А растолковать все нюансы практически нереально.
avatar
Вообще, я начал подумывать, а не воскресить ли эту стратегию из небытия. Тем более, что ее относительно просто и быстро, в течение пары месяцев, можно будет вывести на реал.
Но тогда нужно будет выбирать между текущим проектом, с которым не все до конца ещё ясно, и этим ретро.
Кстати, спасибо PSH, без его коммента меня бы эта крамольная мысль вряд ли бы посетила. Вообще, лучше бы не посещала.
avatar
ФНЧ — это фильтр нижних частот? — мне нравится как к случайным процессам технари-электрнощики прикручивают все подряд… на тренде любая стратегия на машках работает, да только тренд не всегда есть. 
avatar
Valday, а кто-то заставляет торговать на стоящем рынке? Разве нельзя отличить, стоит рынок или движется и достаточно такое движение для торговли или нет?
Это настолько просто решается, что и говорить об этом нет смысла.
avatar
3Qu, Вот Билл и придумал аллигаторы.В боковике они переплетаются, а в тренде раскрывают пасть.
avatar
ну как нет смысла? -  вот есть тренд все двигается -и раз  рынок встал или зарождается кажется сигнал и тут же разворот. как это решается в твоем случае? — если бы это так все просто решалось — за окном бы бесновались трейдеры-миллиардеры.
avatar
Valday, 
вот есть тренд все двигается -и раз  рынок встал
Я не экстрасенс, и не могу знать чего там будет вдруг. Ошибки при торговле неизбежны.
Их надо только, каким-то способом, минимизировать. Либо их последствия.
avatar
Valday, для графика 5 мин полезно ставить 30 мин средние и 2х часовые  и тд. Но главное ставить средние именно под циклы именно этого уникального графика. На других графиках будут другие циклы.Например есть в Сбере цикл 20 дней. Так надо поделить его на 4  или 8 до нужного тайма и… ключик у тебя в руках !? Получаем 20 дн- 5 дн — 1.2 дн -0.3 дн и тд Вот эти средние и будут работать.Да и кстати 80 дн тоже добавь и 320 дн.Да и можно от 360 календ дней посчитать.У Ганна ведь один градус за 1 день считается.
avatar
Как? способ фильтрации? как в этом случае решается? — Чуйка, индикатор, паттерны, временной интервал, новостной фон? была офигенна стратегия для форекс кухни трендовая, но лили во флете по черному — флет видно — когда он уже флет.  
avatar
Valday, эти вдруг решаются только для конкретной стратегии, лучше на тестах, на статистике множества конкретных сделок. Возможно кто-то знает другие способы.
avatar
3Qu, есть другие способы.Есть средняя на синусах.Ну ооочень закругленная.
avatar
Valday, во флете только зигзаг работает… не индикатор, а форма графика из волнового анализа.
avatar
ясно — пошли из пустого в порожнее . 
avatar
Valday, 
ясно — пошли из пустого в порожнее
Если вы вполне конкретные рекомендации воспринимаете как переливание «из пустого в порожнее», то могу вам только посочувствовать. Помочь ничем не могу.
avatar
А почему Phiton, а не Lua
avatar
Jmaks, потому что надо вначале отработать стратегию, а потом уже переносить не на рабочий язык ТС. На Питон это сделать проще всего.
avatar
Сэр Айван, интересно, где вы увидели магические константы или упоминания о них?
avatar
Сэр Айван, если вы знаете, что такое гребёнка, то параметры выбираются почти однозначно.
Можете и 10 сделать, если хотите. Хуже не будет, но будет много сложней, а эффект сомнителен.
avatar
3Qu, Я что то не пойму, как из, допустим, 2-х нч сделать пф? Вычитанием? И сколько полос можно реализовать используя 4 нч? 2 полосы?
avatar
Андрей, выход ПФ = выход ФНЧ_High — выход ФНЧ_Low.
Полоса ПФ ~ от Low до High.
avatar
Сэр Айван, вас учили находить максимумы/минимумы функций? По моему, ещё в школе были такие задачи по алгебре.
avatar
Сэр Айван, а кто кроме вас писал о нахождении минмаксов в будущем?
avatar
Сэр Айван, экспериментально, как ещё? На si это одно, Сбер другое, Газпром третье.
avatar
Сэр Айван, да, скорость от волатильности и ликвидности.
Как считать — эт неважно. Это тоже самое что в чем мерить, в метрах или попугаях.
avatar
Сэр Айван, это вам решать. У меня таких задач нет. Да и Грааль посвежее.)
avatar
Мысли на свежую голову. МА — очень примитивный фильтр нижних частот. Поэтому полосы пропускания этих фильтров существенно перекрывают друг друга. Обычно гребенками называют наборы полосовых фильтров. Из МА можно, в принципе, скомбинировать полосовые фильтры...
Тут был такой персонаж, Николай С. из Минска (кажется, Скриган). Он как раз брал за основу своего Метода (именно с большой буквы) несколько (кажется, 4) полосовых фильтра. И отрывался по полной с ними. По моему, у него это была нерабочая конструкция.
avatar
SergeyJu, апологеты ТА считают, что круче индикаторов представленных ТА ничего и нет, и, что что-то сложнее и не нужно. Это их право.
Я тоже ничего не вижу при затухании 3дБ/октаву.
avatar
3Qu, стоп, я написал не про затухание, а про границы полос пропускания смежных фильтров. 
Затухание можно делать и 12 и 18, да хоть 70 дБ на октаву. Ценой, естественно, ширины полосы пропускания и длины импульсной характеристики. 
avatar
SergeyJu, а я про ЕМА, у которого 3дБ/октаву, и даже ФНЧ из нее никакой, а ПФ тем более.
avatar
Средняя на синусах . 

End Formula Gann

SD:=180/6;
S1:=Sin(1*180/6)*C;
S2:=Sin(2*180/6)*Ref(C,-1);
S3:=Sin(3*180/6)*Ref(C,-2);
S4:=Sin(4*180/6)*Ref(C,-3);
S5:=Sin(5*180/6)*Ref(C,-4);
Num:=S1+S2+S3+S4+S5;
Den:=Sin(SD)+Sin(2*SD)+Sin(3*SD)+Sin(4*SD)+Sin(5*SD);

Num/Den

\\\\\\\\\\\\\\\\\\\\\\\\\\
Есть еще вариант 

SD:=Sin(7.5);
S1:=Sin(1*7.5)*C;
S2:=Sin(15)*Ref(C,-1);
S3:=Sin(18.75)*Ref(C,-2);
S4:=Sin(26.25)*Ref(C,-3);
S5:=Sin(45)*Ref(C,-4);
S6:=Sin(63.75)*Ref(C,-5);
S7:=Sin(71.25)*Ref(C,-6);
S8:=Sin(75)*Ref(C,-7);
S9:=Sin(82.5)*Ref(C,-8);

Num:=S1+S2+S3+S4+S5+S6+S7+S8+S9;

Den:=Sin(7.5)+Sin(15)+Sin(18.75)+Sin(26.25)+Sin(45)+Sin(63.75)+Sin(71.25)+Sin(75)+Sin(82.5);

Num/Den



avatar

теги блога 3Qu

....все тэги



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