Блог им. Dmi3

Албанский HFT (c), итоги 2021 года

Аввт
★14
76 комментариев
Дмитрий, ты просто образец настоящего алготрейдера
avatar
vito333, 
вы мне льстите. январь меня сильно потрепал и я больших расстройствах по бОльшей части систем. хотя это меня очень сильно стимулирует к дальнейшей работе.
Дмитрий Овчинников, провалы эквити бывают у всех
avatar
Дмитрий, моё почтение. Как бы ни было, на смартлабе захожу именно в алго-раздел, в том числе и ради таких постов. Спасибо.
avatar
kommers, 
спасибо, я и сам захожу в раздел алго. но те, кого хочется почитать, пишут все реже и реже. зато пишут те, кого читать совсем не хочется. 
в разделе алго самое ценное это архив. читайте, пока тимофей не «оптимизировал» его в ноль.
Лет десять назад считал алго увлекательным занятием.
Пообщавшись с гуру тех времён и стерев глаза на графиках, пришёл к выводу, что работают только примитивные стратегии.
Все, кого знал, использовали разных роботов на разных периодах рынка и бились только над тем, чтобы быстрее определять «тренд-пила», всё тестили на Форексе, ввиду более сглаженного графика(скажу больше, чаще на фунт-доллар)
Успехов Вам в нелёгком деле.
П.с. слабоват в реализации идей
avatar
vinchida, 
те времена не застал, но на форексе думаю алго обречены. хотя есть здесь «знакомые друзей тех, кто когда-то знал парня, вроде как зарабатывающего на форекс»
Дмитрий Овчинников, ну да, помню их расстройства, когда кухня очередной раз их обула, нарисовав мнимый экстремум в контртренд.
Однако, уверяли, что в целом, в плюсе.
Торговали и нашим барахлишком, но тестили всё же пары.
Не берусь судить, просто слушал-верил
avatar
Январь выдался нервный, да. Но денег дал и пока не все отобрал.
Очень огорчаюсь, когда честно заработанное отбирают. Когда ж экспроприация производится в особо крупных размерах, ярости моей нет предела. 
Отличные у Вас эквити, с такими системами все будет путем. Если конечно сохранится то, к чему их можно приложить ))

avatar
bocha, 
ага, началось с НДФЛ и понеслось ;)
Если конечно сохранится то, к чему их можно приложить ))
Оптимистичненько :)
bocha, я кстати на вас и Дмитрия ориентируюсь. У нас крайне противоположные страты. И если вы жалуетесь, то у меня автоматом становится лучше. И наоборот. Интересная такая особенность

То есть у вас противопоказан рынок с определенными характеристиками
avatar
Андрей К, 
И если вы жалуетесь, то у меня автоматом становится лучше. И наоборот
@bocha, а давай не будем жаловаться? ;)

Дмитрий, здравствуйте!

Как пережили январь 2022 в числах?

У меня похоже будет первый убыточный месяц за 2.5 года с просадкой 6% по дороге. Внутри дня просадка доходила где-то до -10% от хаев эквити.
Сильно помог перевод всего счета в доллары. На данный момент считаю это оправданным хэджем.

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

В целом весь месяц начинается в 06:30 утра с просмотра новостей и отслеживанием аукционов открытия на признаки обвала (не напал ли Путин на Украину?). По-умолчанию роботы каждое утро отключены и включаются вручную. Все позиции принудительно закрываются в конце вечерки.

Утренняя сессия и ранние подъемы задолбали в край. Но на ней делается довольно ощутимый профит, так что (пока) приходится терпеть.

avatar
SaOLin, доброе утро!

в целом месяц пока в плюсе, но, волатильность эквити конечно зашкаливает, тяжело переношу это психологически. 
Просадку максимальную думаю обновил, то есть что-то около 6-7% думаю, потом буду считать- к концу года.
Максимально завалился на Казахстане, так как стоял полным сайзом, потом алгоритмы начали отключаться от экстремальной волатильности, но часть все равно работает. 
Руками не лезу, ничего не закрываю, работаю в штатном режиме.
У меня часть ГО в долларах, на подъеме курса это конечно помогает, теперь, видимо, будет мешать :)
В общем и целом по МАКРО цифрам и показателям неплохо, но внутри дня все конечно очень и очень криво и валидольно.
в целом месяц пока в плюсе

Отличный результат! ))

Я решил понизить риски. Т.к. в январе была как минимум одна планка по RI.
Меня пугает перспектива 3-4-5 планок подряд (в случае реального конфликта на Украине) и отсутствие возможности закрыть убыточные позиции в течение этого процесса. Задача не допустить катастрофических потерь в случае полной потери контроля над позициями. Никакие стоп-лоссы тут не помогут. Только жесткий, заранее продуманный мани-менеджмент.

В целом сейчас очень волатильный рынок, на котором можно рубить бабло по +1%..+2% в день. Последний раз такое было в марте-апреле 2020 года, я тогда сделал около +50% за два месяца, закрывая каждый торговый день в плюс.
Но тогда можно и нужно было рисковать, развитие ситуации не было молниеносным. А сейчас одна новость может обрушить рынок на 10-20% за полчаса. Так что я пока мыслю категориями защиты от планок, а не жадностью.
avatar
SaOLin, 
мы с вами уже дискутировали по теме рисков и так и не нашли взаимопонимания. Так, в размышлениях, можно дойти до идеи того, что черный лебедь может случится в любой момент, поэтому лучше вообще не включать алгоритмы или сидеть с рукой занесенной над кнопкой «закрыть все».
Понятно, что глобальная цель- не потерять катастрофически, но делать это надо через какое-то хеджирование хвоста. Я пока так и не научился, но рано или поздно это дао придется освоить.
Про риски в апреле 20-го конечно хорошо рассуждать, имея историю и результаты в «левой» части графика. Мне трудно дискутировать на эту тему, в то время моя система только сложилась в голове и частично в коде, я не участвовал в этом празднике трейдинга.
Про риски в апреле 20-го конечно хорошо рассуждать

Там легко могло быть 5 дней подряд по -10% каждый день. Но при этом можно было контролировать позиции и отключать роботов руками.
А сейчас может быть -10% за 5 минут. В этом ключевое отличие ситуаций.

Я просто для себя рассуждал, почему я тогда торговал полным сайзом, несмотря на просадку -15%. А сейчас не готов это делать при несравнимо меньшей фактической просадке -6%.
avatar
SaOLin, так отнормируйте сайз по волатильности / длине до статистически обоснованного стопа, не? скажем, если ходили в последний день больше, чем на 2%, то сайз сокращаем. Сходили на 8% — в 4 раза. Я благодаря этому вообще спокойненько и март 2020ого перенес, и сейчас (вообще системы игнорировали почти все колебания внутри обозначенных СКО). Из минусов — на отскоке заработок скромный.
avatar

krolix, Историческая волатильность, СКО и прочие статистические показатели — это всё глупость. Рынок не математическая модель. Здесь часто происходят события, расчетная вероятность которых стремится к нулю, так называемые «толстые хвосты».

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

Вот пример как было 03.03.2014:
www.youtube.com/watch?v=7P_RXKr7W0U
Причем тогда не все до конца понимали, что это за «зеленые человечки» и к чему это в итоге приведет. И курс рубля контролировался ЦБ, а сегодня он плавающий. Сейчас развитие событий и последствия для РФ будут жестче и более предсказуемы.

Нормировать сайз можно только исходя из простой логики. «Что будет с моим счетом, если рынок откроется на -20%, а сервера брокера/биржи уйдут в оффлайн».

avatar
SaOLin, Ещё можно стремиться в сторону нейтральности совокупной позиции, ну и с овернайтами аккуратней.
avatar
Replikant_mih, У меня hft. Тут нет нейтральности, т.к. она сожрет всю крошечную прибыль. Овернайтов правда тоже нет.

С нейтральностью можно и ошибиться. Например при обвале рубля 16.12.2014 в моменте было SBER -22%, GAZP -13%, LKOH +9%, GMKN +18%. Ну а индекс где-то посередине.
Сейчас к тому же появилось много высоко-волатильных акций типа YNDX, TCSG, OZON и подобных, которые будут летать как говно из пушки.
avatar
SaOLin, Ну нейтральность может быть и должна быть к разным факторам. Не только к направлению рынка. Ну и в любом случае это вероятностный механизм.
avatar
Пока писал, придумал торговую систему:
Каждое утро на аукционе открытия утренней сессии по рос. акциям кидаем рыночные заявки на продажу. Смотрим предполагаемые цены аукциона открытия. Если начнется война, то рынок сразу откроется обвалом, а мы окажемся в шорте. А если всё тихо — безболезненно снимаем заявки за минуту до окончания аукциона.
avatar
SaOLin, А у вас случаем нет функции, которая по стакану считает цену аукциона открытия?)
avatar
Replikant_mih, Цену аукциона открытия невозможно посчитать по стакану, т.к. в нем не отображаются рыночные заявки.
К тому же в этом нет необходимости, т.к. биржа сама транслирует данный показатель. В том числе через Quik.
avatar
SaOLin, вот я и хотел сказать, то рыночные если можно, то их не видно будет, ну вероятностно можно что-то считать и по лимиткам. Про то биржа транслирует не знал! А в какой таблице (и как столбец называется) в квике можно посмотреть?
avatar
А в какой таблице (и как столбец называется) в квике можно посмотреть?

В таблице текущих параметров. В моей устаревшей версии Квика она называется «Текущие торги». Параметры «Цена аукциона» и «Количество аукциона». Возможно в более свежих версиях что-то переименовали.
avatar
SaOLin, круто, спасибо, посмотрю.
avatar
(Крабы,

Вон пока парни спят, намохавшись за неделю клешнями, можно какое-то время побыть в топ 3 на главной).

avatar
Replikant_mih, 
да я в топ на главной никогда особо не стремлюсь. те, кому надо в алго прочитают :)
Кстати удобно по «албанскому» хэштегу искать посты прошлых лет, можно в динамике посмотреть.
avatar
Подскажи пож. — может я уже и спрашивал — вот эти эквити для портфелей это получается in-sample? Ну или может IS + OOS. Т.е. когда ты создаешь стратегии ты смотришь именно на этот период, когда оцениваешь как стратегия смотрится в портфеле и оставлять ли её там — тоже на этом, верно?
avatar
Replikant_mih, 
да нет никакого OOS. При создании стратегии я тестирую ее на всем промежутке, то есть от 01.01.2015 до н.в. и добавляю к портфелю. Если результат меня устраивает и есть свободные средства, то добавляю в продакшн.
Периодически перевзвешиваю стратегии в портфеле, выделяю больше денег лидерам и забираю у аутсайдеров.
А OOS получается уже на реальных торгах.
Дмитрий Овчинников, Ага, понял, спасибо.
avatar
Благодарю! Очень полезно! 
Расскажите, как дела у систем на лунных циклах? Реально интересно.
avatar
Андрей, 
с момента запуска системы начался «плохой» в целом цикл для сезонных систем. Так как эти системы построены на статистике, они, в целом, зарабатывают на спокойном и постепенном росте рынка. 
В моменты падения рынка такие системы, как правило, балансируют на грани или потихоньку сливают. 
В такие моменты, как сейчас, сезонные системы сливают «от души».
Именно поэтому в планах по сезонкам написал о разработке дополнительных фильтров, вырезающих неблагоприятные времена.

Эквити загнулась, что не удивительно. Буду продолжать наблюдения. Если интересно, спрашивайте через какое-то время.


Дмитрий Овчинников, печально, спасибо.
avatar
Андрей, 
это нормально. сезонка по сберу еще круче и раньше загнулась, хотя до этого работала больше полутора лет нормально. 
Дмитрий Овчинников, тоже сезонка на ри и сбере слила треть январского профита.
avatar

А зеленая линия на графиках, что обозначает? 

Неплохо бы, легенду к графику прикладывать. 

Dancing Orange Hyena, 
зеленая это mcftr отнормированный к текущему графику. добавлен в модель просто для того, чтобы видеть состояние рынка, в котором получены убытки/прибыли.
Дмитрий Овчинников, спасибо за пояснение. 
Добрый день, как определяете сайз на 1 стратежку? Как определяете когда выключать? Пользуетесь стопами? 
avatar
Nickel, 
сайз на каждую небольшой. зависит от показателей системы (для меня ключевой показатель- значение соотношения среднегодовая прибыль/максимальной просадке) И отличия системы от остальных. 
выключение системы=выделение системе 0 сайза. перевзвешивание производится регулярно, если вижу, что система льет и переосмысление не помогает улучшить результаты до необходимых, то система выключается.
стопы только аварийные.
Дмитрий, а подскажите — много ли систем работает на минутках? Хотя бы доля таких от общего числа систем. 
Сам при попытках построения алго выше минуток не заходил — предпочитаю больше сделки внутри дня. 
avatar
qadexys, 
на минутках у меня ничего нет.
Вообще выбор таймфрейма больше относится к индикаторным системам, а у меня таких и вовсе нет. 
То есть часть систем работает на любом таймфрейме, они просто не используют данные текущей таймсерии (и это правильно).
В части систем используются данные текущей таймсерии и это неправильно, но так уж исторически запрограммировал, а переделывать лень.
Дмитрий Овчинников, Благодарю за ответ. Пытаюсь подступиться к алго, были попытки строить свои системы но до боевой работы пока ничего не довел.
Кого порекомендуете почитать (кроме себя)? Понимаю что не из новых записей, но может посоветуете нескольких спецов из этой сферы. 
avatar
qadexys, 
рекомендую Ларри Вильямса. Из наших Пратрейдера и Уткина.
Дмитрий Овчинников, 
Ларри читал, блоги других нашел, буду изучать. Спасибо
avatar
Мне нравится ваш подход… А можно спросить
Вместо этого я делаю бесчисленное количество простых и тупых систем...

но тупая система должна же быть хоть как то прибыльной? Можно пример самой простой такой системы? Интересно понять принцип построения… :)
И что значит
«ни просто не используют данные текущей таймсерии»? 

Ведь все что использует прошлую доходность использует данные тайм серии, или я не улавливаю вашу мысль?
avatar
CloseToAlgoTrading, 
Можно пример самой простой такой системы? 
Пишу регулярно в блоге о каких-то системах. Вот, например, паттерновые:
https://smart-lab.ru/blog/739879.php

или я не улавливаю вашу мысль?
Наверное это специфика МТ5. Там каждый бот приписан к графику/инструменту/таймфрейму, как люди к поликлиникам :)
Внутри алгоритма я могу обращаться к любой таймсерии или к ТЕКУЩЕЙ, то есть к графику, на котором открыт бот.
Дмитрий Овчинников, Хм… полистал блог… что то яснее не стало :), т.е. системы все же прибыльные на долгосрочном тестировании, вы просто не обращаете внимания на то, что бы система давала очень уж гладкую иквити.. 

А, понятно таймсерии все же используете, но идея системы не привязана к таймфрейму. Я отчего то подумал, что все системы являются некоторыми производными от совершенно иных от цены данных. 
avatar
CloseToAlgoTrading, 
а зачем использовать неприбыльную систему? это из области теоретиков, типа Х.Х., который считает, что убыточный контртренд сглаживает ему общую эквити.
Дмитрий Овчинников, с моим подходом мне сложно представить как можно сделать бесчисленное количество прибыльных систем.  Попробую пояснить… Скажем широкоизвестная система моментум для инвестирования на долгосрок обгоняет рынок на ура на протяжении уж ста лет, однако является более волатильной и имеет довольно большой дродаун… Что бы торговать такую систему нужны крепкие нервы в такие дни как например сейчас :) или 2008… Система простая до ужаса, но совсем не тупая на мой взгляд. Опять же, ее вариация скажем с добавлением стопов, для меня это одна и таже система. 
Является ли вариация одной и той же идеи новой системой для вас? 
Тупой системой я бы назвал системы которые можно пытаться генерировать автоматически просто перебирая комбинацию разных параметров и индикаторов пытаясь найти статистическую зависимость… За такой стратегией нет никакой идеи :) .. 
Поэтому интересуюсь как делают други люди с подходом совершенно отличным от моего
avatar
CloseToAlgoTrading, 
тупые системы это не значит системы от тупых людей.
тупые системы, в моем понимании, это системы оперирующие одним/двумя факторами для входа/выхода, вот и все.
системы от тупых людей наоборот излишне сложные, именно поэтому они и сливают со временем.
Дмитрий Овчинников, это тащем-то моя идея была
avatar
ICWiener, 
так это ты начитался уважаемого теоретика.

CloseToAlgoTrading, Алгоритм может вообще не использовать понятие таймфрейм.
Например многие скальперские стратегии ориентируются на индексы-поводыри. Там по сути нет таймфрейма.

Или можно пересчитывать индикаторы при каждой обезличенной сделке. Таймфрейм = тик. Опять же нет привязки ко времени.

А.Г. когда-то писал что собирает графики по проторгованному объему, а не по временным интервалам. Т.е. одна свеча может длиться 1 тик, а может несколько часов, в зависимости от интенсивности торгов.

avatar
SaOLin, да, графики по объему или долорову объему, намного лучше подходят для статистических методов чем составленные по времени, там распределение более нормальное :) 

Меня смутило слово таймсерия, так как не работая с временными рядами (не обязятельно цена), мы врядли получим представление по динамики.
avatar
Дмитрий, ваши посты всегда читаю до дыр. Спасибо, что делитесь!
Верно понимаю, что в основном системы лонговые, поэтому все значительно лучше работает, когда рынок спокойный?
avatar
Павел Ку, 
да, большинство систем по индексам и широкому рынку от лонга, а как же иначе?
а по Си системы последний год особых денег не несут, поэтому их доля падает безостановочно.
Дмитрий Овчинников, да, согласен. Бакс скорее уносит, чем приносит последний год (( По доле — бакс мощно играет раз в 3 года, к тому времени доля может до 0 опустится?
avatar
Павел Ку, может быть и опустится, если не изобрету чего-то сильно иного. но обычно иное изобретается ПОСЛЕ :)
Дмитрий Овчинников, ага, у меня вообще все время ощущение, что я отстаю на 1-2 шага от действий рынка. Не успел с сайзами по si в 2020м, с лонгами и сезонками по акциям в 2021м, с шортами в 2022м
avatar
Павел Ку, 
так это у всех, не только у вас. мы всего лишь реагируем на изменившийся рынок. по крайней мере те, кто реагирует, многие до сих пор си торгуют, ждут повторения 2014-го.
Дмитрий Овчинников, да, и некоторые принципиально не меняют стратегии. У меня своего мнения нет, я продолжаю торговать в убыток, но срезаю сайз, чтобы «не было мучительно больно за бесцельно прожитые годы». Если снова пойдет работа стратегии — дам ей сайз. В прошлом году si не уменьшал, но сильно наращивал лонги-сезонки, это дало хороший профит.
avatar
Павел Ку, 
по си я, кстати, стал сильно резать где-то с середины лета прошлого года, одновременно увеличивая лонги и сезонки, так что осень прошел хорошо.
bocha, 
просто «так совпало»

Дмитрий, а можете пояснить пункт 2:

Я не пытаюсь строить модель, соотвествующую реальной торговле.

Имеете ввиду что не пытаетесь добиться исполнения роботом один в один с прогоном тестера на том же дне? Но само тестирование на истории то у вас есть, и оно классическое, просто немножко «небрежное»? Или я не так понял?
avatar
MoscowTrades, 

конечно тестирование у меня есть. и оно ничуть не хуже, чем у других алго. я имею ввиду следующее: я очень часто вношу изменения как в код систем, так и в развесовку систем в модели. Модель при этом перестраивается. так вот предыдущее состояние модели, после внесения изменений, меня уже не интересует. поэтому модель условное «вчера» будет всегда показывать не верно.
Дмитрий, при таком числе моделей, как сверяете результаты реальной работы стратегий с расчетными? Помню, вы ранее раз в месяц проводили сверку, но при 100+ стратегиях, а особенно быстрых, крайне сложно сверить все вручную. Есть какой-то тул для этого?
avatar
Павел Ку, 
тула пока нет и я ОЧЕНЬ несчастлив его отсутствием.

теги блога Дмитрий Овчинников

....все тэги



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