Добрый день, коллеги!
Очень приятно, что на СЛ обитают люди, которые умеют включать мозги).
В
Конкурс на 50,000 руб.! (smart-lab.ru) объявился победитель. Всего на 2-й день. Это
Юрий Ч.
Он уже получил свой выигрыш. Конкурс закрыт.
Поскольку вся переписка велась в чате конкурса, нет смысла скрывать результ. Правда, я его немного причешу.
Итак, у нас есть ценовые массивы High(t), Low(t), Close(t) и абсолютно любая ТС
Введем вспомогательную функцию Pos(X) = if X>0 then 1 else 0 end (почти функция Хевисайда)
и 2 вспомогательных массива
Alpha(t) = Pos(Close(t-1)-Low(t))
Beta(t) = Pos(High(t)-Close(t-1))
Тогда отрицательный снос на каждом баре выглядит так:
1. Версия
Юрий Ч. (причесано мной)
Drift(t) = -abs(Close(t)-Close(t-1)) * if Alpha(t)+Beta(t)=1 then 1 else 0 end
2. Моя версия
Drift(t) = (Close(t)-Close(t-1)) * (Alpha(t)-Beta(t))
Для получения интегрального сноса надо просто просуммировать Drift(t) за нужный временной период.
Мне кажется, что моя формула проще и изящнее, но (как говорится) победителей не судят.
То, что два эти выражения совпадают всегда — это простое логическое упражнение
Теперь пару слов о том, почему я считаю это важным.
Посчитанный снос не зависит от индикатора (если система реверсивная — т.е. стоит либо вверх, либо вниз одинаковым объемом).
Если взять евро и посчитать (результаты в топике конкурса внизу) мы получим снос примерно 3 прайсстеп/бар.
Это больше или равно спрэду на спокойном рынке.
Для HFT такая цифра — это овердохуа.
И если ваша стратегия при обычном моделировании (финрез = приращение цены * знак индикатора или ТС) дает в среднем меньший результат — ее можно смело отправлять в утиль.
Для крипты все так же плохо.
Для акций и фьючерсов на них все гораздо гуманнее.
P.S. Днем раньше этот же человек
Юрий Ч. заработал на мне 1,000 руб., победив в локальном киноконкурсе (https://smart-lab.ru/blog/714546.php#comment12837726). Мораль: на СЛ тоже можно зарабатывать деньги, причем не только Тимофею)
да большой булыжник в огород Тимофея)))
Надо Тимофею поднимать расценки за конкурс по 10тыщ каждому а не по штуке)))
Всегда неположительное слагаемое в эквити (не зависящее от индикатора или торговой системы) при работе лимитниками (если система реверсивная, т.е. всегда стоит вверх или вниз одинаковым объемом).
Из этого следует масса выводов
1. Если система зарабатыват мало, то при попытке уменьшить накладные расходы, перейдя на лимитки, она будет сливать
2. Если система работает в минус, то инвертированная система не обязана работать в плюс (очень странно, да?)
3. И многое, многое другое...
С уважением
Если народ не хочет учить математику забесплатно, будет учить за деньги)
Деньги у меня пока есть)
С уважением
С уважением
Чего-то знаю
Но (поскольку это знание получено кровью) оно не особо и радует...
С уважением
Предпродакшн на matlab
Продакшн на C#
С уважением
P.S. Все немного не так. В нашем (общем) деле для оптимизации эквити нужно либо точное аналитическое решение, либо квантовый комп на 512+ кубит. Последнее недоступно ни за какие деньги (((
В продакшне работают простенькие машинки
А в ресерче мне уже 2xEpyc и 2Tb RAM не хватает (((
С уважением
P.S. В конце концов — главное результат. А способ его получения пусть останется за кадром.
Пацан сказал — пацан сделал! ©
Для этого я просто выписываю явную формулу для приращения эквити на баре и выделяю член, свободный от индикатора. Но саму формулу приводить нет никакого желания.
Если надо — могу кинуть в личку (осторожно — многобукофф).
Бар не может уходить в дрифт. Более того, на таком баре в твоем случае будет положительный финрез. Но в этом финрезе есть постоянная компонента — и она неположительна.
С уважением
1. Положительный финрез мы получим потому, что если Альфа = 1 и Бета = 0, то приращение цены всегда отрицательно (простая логическая задачка). Если ты в шорте, по идее это плюс. Не?
2. Финрез на баре = приращение цены * индикатор (если смогли открыться по новому сигналу) либо приращение цены * предыдущая поза (если не смогли открыться — тянем предыдущую позу)
3. Смогли/не смогли открыться выражается через Альфу и Бету в зависимости от направления открытия (они, собссно для этого и введены)
4. Дальше сам посчитаешь
С уважением
Я запутался
Если Альфа = 0 и Бета = 1, то приращение цены ВСЕГДА положительно.
Следовательно шортовая поза убыточна.
С уважением
Мальчик Buybuy, все, догнал). спасибо. действительно некоторым нужно сначала внимательно читать. а уж потом писать. я искал снос от пнл чистого сигнала, а не общий постоянный снос в грязном сигнале
Когда решишь — отпишись, плз
Хотя оптимизация лимитных эквити — это дорога в Ад
Вычисления устрашающие...
С уважением
Объясните, что за дрифт?
Я так понял что если я в момент t, выставляю заявку по Close(t-1), то судя по картинке у меня всё исполнится с нулевым проскальзыванием?
А по формулам получается что будет -1, то есть надо проскальзывание -1 брать вниз? Или что тогда «физически» значит Drift?
На вашей картинке на баре t по цене close(t-1) открыться вообще нельзя. Причем ни в какую сторону (надо, чтобы low(t) хотя бы на 1 прайсстеп была ниже close(t-1)).
Дрифт — это систематический убыток, который накапливается независимо от сигналов индикатора.
С уважением
это исскуственное ограничение какое-то
Так это работает в реале
Хотя оптимизатор ТСЛаб покажет Вам, что Ваш ордер исполнен)
С уважением
но ведь у вас даже объемы никак не учитываются.
вобщем слишком элитная математика. огородились собственными допущениями-аксиомами, и давай решать кто прав кто виноват.
извините!
Давайте по порядку
1. Эти вычисления (подобные, но более сложные) приносят мне очень хороший рыночный доход
2. Данное конкретное рассуждение показывает, что если система, работающая лимитными ордерами, сливает бабло, то обратная к ней система также будет (обычно, за редким исключением) сливать бабло. Я долго не мог понять причину этого феномена, пока не провел все необходимые вычисления
3. Я тестировал объемы в части их корреляции с приращениями цен — она отсутствует.
4. Более того, я могу сэмулировать объемы только по данным ценового ряда (получить очень похожую и сильно коррелированную штуку). Толку от этого — ноль
С уважением
Я с 2012 (вроде бы) не работаю на российском рынке.
Планировал повторно начать в августе 2021, но ввиду систематического срыва сроков пока передвинул планы на март 2022 (есть более вкусные темы).
Но если освою интерфейсы NYSE/Nasdaq, м.б. и вообще не вернусь на росрынок. Он маленький на самом деле, а комисы очень дорогие.
С уважением
P.S. Тренировать мозги всегда полезно. Учить математику — еще полезнее
или оно тока на Вашенских миллисекундах работает?… тогда энто мне ни к чему...
Но на дневках пропадает стационарность/эргодичность, так что все вычисления становятся сильно сложнее.
А доход меньше.
Вопрос: на хрена зачем козе баян?
С уважением
все равно посмотрю, что можно сделать -может быть Вы еще сами не представляете, что вышли на получение Нобелевки по Математике....
Если только по экономике — но мне до этого пахать и пахать...
Причина в том, что (по легенде) известный математик Миттаг-Леффлер увел жену у Нобеля...
Так что зря говорят, что мы, математики, сухари. В любви мы — Эйнштейны! © 17 мгновений весны
С уважением
но, возможно, из-за Вас и Вашенского изобретения Комитет изменит завещание Нобеля...
Мои расчеты показывают, что нет
Более того, дополнительный параметр только усложняет и без того громоздкие (в моем случае) вычисления
С уважением
Дополнительно обращаю на всякий случай внимание, что знак "@" перед никнеймом используется для прямой ссылки на пользователя и не несет никакого негативного смысла, а то мне тут (в другом треде другого пользователя) как-то пост уже удалили, посчитав оскорбительным, обжегшись на молоке, дую на воду :)))))))
Сам я, кстати, считаю, что «объем» вообще первичен — мы, все-таки, наблюдаем за процессом торгов, где участники какие-то сделки друг с другом совершают, а не за перемещением виртуальной цены по оси времени. Вопрос только в том, что это за «объем» и как он соотносится с членом V в кортеже OHLCV данных
1. это понятно и внушает уважение, я просто лично люблю более простые проверяемые объяснения на пальцах.
и у меня тоже более менее получается извлекать доход, роботом, пусть и небольшой, вот
2. над этим я глубоко не думал, для меня это как аксиома и всё
3. мм, вот тут мне кажется не факт, даже из простых рассуждений, но скорее всего вам лучше знать
4. хорошо, это вообще для неподготовленного человека выглядело бы как волшебство, буквально переворот мировоззрения — что объёмы следуют за ценой, а не цена за объёмами. признаться об этом я не думал и это противоречит моим допущениям-гипотезам. интересная тема!
Никто ни за кем не следует, просто цена и объем путешествуют вместе.
На тонком рынке одна микроструктура цен, на толстом — другая.
И все это можно упаковать во вполне компактные формулы.
Когда-то я думал, что это Грааль. Оказало, что нет...
С уважением
Я так торговал в плюс, но не устроила доходность.
Возможно мы говорим о разных классах систем и разных принципах торговли. И п.2 работает не везде?
Вы говорите о торговле лимитными ордерами?
С уважением
Еще раз перечитал статью и разобрался в деталях, мой пример был не к месту.
Это чисто лимитный феномен
Огромное спасибо за честность (на СЛ это встречается нечасто)
С уважением
PS. Кстати, где-то недавно читал на С.Л. про такое…
Про алгоритм торговли я вообще ничего не написал
Мой будет стоять в это время в шорте — поверьте на слово)
С уважением
Я вот это имел ввиду:
Не нравится - не ешьте работайте по маркету
Издержки при этом будут выше
С уважением
На самом деле
Просто не в классическом смысле, а в более широком
Нужно уметь суммировать расходящиеся ряды по Эйлеру (2 раза) или по Борелю
Отсюда и взялось утверждение (в которое Вы не поверили) о возможности описания распределения приращений цен относительно простой формулой с 2-мя параметрами...
С уважением
— не пойму смысла использования лимиток, когда можно просто котировать рынок, выставляя стандартные заявки в стакан;
— совсем необязательно торговать исключительно по закрытию свечки, достаточно знать свой «спред» из расчётный модели.
0. Пост был теоретический, без намека на использование в торговле. Но он, в частности, объясняет, почему инвертирование убыточной системы, работающей лимитками, может не сделать ее прибыльной.
1. Бары — это удобный способ упаковки тиков. Никто не мешает работать на тиках. Смысл рассуждения — что проскальзывание есть и там, где его не должно быть по определению ордера.
2. В стакане есть ровно аналогичные проблемы (если, конечно, Вы, как и я, пытаетесь ударить заявкой в область мейка, а не в область тейка. Что разумно, т.к. комиссии в этом случае отличаются разительно. И только любимая МосБиржа не платит за предоставление ликвидности). К сожалению, в стакане сложнее математика. Но я работаю над этим)
3. Это неверно, IMHO. У меня есть модель для маркапов (смещений цен ордеров относительно close). Это работает хуже (оптимальный маркап = 0). Возможно, при более сложной модели выставления заявки (как у А.Г., но я так и не понял, что он делает) результаты будут другие. В любом случае, это можно промоделировать, в т.ч. аналитически.
С уважением
Речь идет, насколько я понимаю, о том, что по последней котировке исполниться получится далеко не всегда (абсолютно неважно, пришлась эта невозможность на CLOSE или нет, просто в случае HLC графика это событие можно отследить только на CLOSE), что, в общем-то, самоочевидно, так как в противном случае график цены представлял бы собой бесконечную горизонтальную линию :). Все это мощно завязано на HLC бары, которые я не люблю :), поэтому пришлось позависать :))). Автору в любом случае спасибо за разминку :) .
И этот факт, собственно, совсем не означает, что в случае лимитного ордера у нас возникает «проскальзывание», в общем случае это, разумеется, не так, тредстартер, намеренно или нет, вводит сообщество в заблуждение.
Однако задача абсолютно прикладная
У меня ежедневно идет сверка финреза с теормоделью. И если отклонение превышает $3 на $10,000 условного депо (плечо пока 12) — загорается красный сигнал светофора. Это маленькие доли процента.
С уважением
P.S. Без вычислений такого сорта гарантировать качественное исполнение — unreal
И, кстати, у меня тут же вопрос по адекватности результатов ее решения. Если разговор идет о невозможности исполниться по текущей котировке и эта невозможность отслеживается только на CLOSE минутного бара, тогда как по факту она может возникнуть в любой момент, зачем ее рассчитывать только на CLOSE?
1. Если мы попытаемся ввести фиксированное отклонение от close (маркап, бывает как положительный, так и отрицательный), то с удивлением выясним, что максимальный финрез достигается при маркап = 0. Могу пояснить, но это будет #многобукофф
2. Если мы будем использовать кастомные сценарии цены открытия (как уважаемый А.Г. это делает на дневках, я, к сожалению, так и не смог понять как), то возможны приятные нюансы. Обозначьте любой разумный сценарий — думаю, я смогу обсчитать его аналитически.
С уважением
Колдун всегда просил картинки показывать, и только потом разные формуле…
Формула в этом топике, массив котировок EURUSD — в топике про конкурс (пост победителя). Если вкратце — практически прямая вниз )))
С уважением
P.S. Там же (в топике про конкурс) финальный минус от меня и от победителя ))) И они, сцуко, совпадают )))
А еще заметил такую закономерность, если выигрывают квартиры, то они не в мегаполисах, а где-то чуть ли не на крайнем севере, чтобы не нашлось желающий удостоверится в правдивости выигрыша.
И этот Юрий Ч. ничего не пишет на «Смартлабе». Ну как так можно?
Зато Олейник пишет всякую срамоту.