Не очень понимаю цель картинки с двумя квадратными диаграммами, размять глаза? Потому что это почти базовая головоломка easy level, найди цифру на диаграмме, вспомни или посмотри значение осей, вспомни или посмотри расшифровку значения и так 20 раз, 20. И если корреляция виртуального бессмертия и жизни после смерти ну да, может быть интересна, то корреляция свободы воли и возможности разумного ИИ что-то вне пределов моего понимания :)
Давайте о самом главном сомнении, я один вижу тут ссылки, которые эмм, несколько нерелевантны тексту статьи? Это вообще никого не волнует? Плюсы ставят с пониманием этого факта, или напротив с неведением?
И все же тема, почему этот парадокс называется Санкт-Петербургским раскрыта недостаточно, может есть какой-то лор?
А вообще парадокс с монеткой становится интереснее со стороны "казино". Допустим казино берет как взнос 1024 рубля, и у нас играет 1024 человека. Бюджет 2^20. Вероятность того, что хотя бы один игрок выбъет весь бюджет казино, подкинув 19 решек подряд 1 - (1 - 2^(-19))^1024 ~= 0.195%
Есть еще сценарий где два игрока выбивают по 2^19, но лень точно считать, интуитивно это на порядок меньшая вероятность, чем один, выбивший 2^20 и ей можно просто пренебречь, а во всех остальных случаях казино будет в плюсе.
Вот это как парадокс меня еще больше впечатляет. То есть при этих конкретных вводных, шанс для казино не заработать денег всего 0.2%
Если еще посчитать матожидание его выигрыша (что уже немного тяжело стало под вечер, а чатик тупит), да нет, оно минус бесконечность, то я думаю можно на ровном месте еще раз удивиться.
Но! Если отмести исходы, когда игрок более 399 раз подряд выбрасывает решку, как физически невозможные, тут спасибо чатик напомнил:
В физике условно невероятными (и потому игнорируемыми) считаются события с вероятностью меньше примерно 10^−120 — предела, связанного с максимальным числом квантовых операций во Вселенной.
То все прекрасно с матожиданием выигрыша казино, оно будет аж 638 976 рублей.
Можно, но и смысла нет. Была бы дискуссия "моментум против чего-то еще" (конкретного) можно было бы конструктивно спорить. Сказать, что это самый худший подход к торгам я не могу, это было бы не правдой. Говорить, что он один из хороших не буду. И по сути не понравилось, что в статье он, ну конечно, не как Святой Грааль Трейдинга подается, но опасно близко к тому.
Такая "Народная хомячья мудрость".
Так она и народная потому, что хомякам сначала смешно, а потом когда сами прокатились, уже не смешно. А бывает это очень часто.
А что говорят реальные тесты? То, что контр-трендовые системы (это то, что вы предлагаете) часто проигрывают трендовым.
Это, кстати, правда. Но на таком уровне работать, это выбирать между "ложкой в лоб" и "ложкой по лбу". Проблема в том, что для примитивных трендовых систем тесты показывают, что в среднем не торговать выгоднее, чем торговать. И чем больше ребалансировок портфеля, тем выше вероятность его просрать. И несколько довольно глобальных исследований на эту тему публиковалось, если так надо будет, то ссылки поищу, но пока оставлю как тезис.
Если надо покупать "на дне", а не "на хаях", то почему...
Потому что за дном "новое дно" в подарок, если весь фундаментал сводится к тому, что "ну не можииит же еще дешевле стоить, не могёёт". Надо хотя бы пытаться разбираться, почему может стоить дешевле, почему не будут другие откупать, и вот такие активы избегать. Но тут не о чем спорить, я согласен, что бездумно откупать дно еще хуже, чем бездумно собирать хаи на самых популярных активах (там-то хоть есть шанс в свое время нарваться на биткоин или нвидию), но это не причина узаконить систематическую ошибку выжившего:
Если надо покупать "на дне", а не "на хаях", то почему моментум портфели (в том числе и мой тоже), которые закупаются "на хаях" показывают такие впечатляющие результаты?
Да еще и основанную на недоказанных тезисах. Я поискал Ваш портфель, ну нет его. Есть пдф-ка с "отчетом о доходности", а где когда и что куплено, как, например, у Алексея Яковлева из ваших ссылок я не нашел. И вот у Алексея получилось 4.6% за предыдущий год, он даже инфляцию не обогнал. А у вас единственный (прошлый) год, и получилось +18%. Не буду старательно пытаться этому не доверять, проблема не в этом. А проблема в том, что если портфель существует всего один год и вы выбили +18%, то это вообще не что-то, что всерьез интересно обсуждать. У меня тоже есть портфель, я им вообще не занимался в прошлом году, и вышло +15%. Это никакущий результат, если он не будет стабилен на протяжении многих лет. А будет ли?
Всю воду засунул под спойлер. Нет смысла добавлять воду в воду, чтобы она была более водянистая.
Почему первые страницы комона по доходности занимают алгошники с их количественными моделями (такие как моментум) а не фундаменталисты, которые покупают по дешевке?
Потому что этот комон это что-то, хмм, своеобразное, ну очень на тоненьком от скама?
Может во мне дело, но я не вижу там "кладбища" сдохших стратегий, а это бы сказало куда больше, чем те, которые сейчас выжили. Но понятно, раз даже Т так не делает, то им то зачем. У Т есть инвест-конкурсы, и нет, алгошники там не занимают первые места. Первые места занимают мартингейлеры. Впрочем, понятное дело, как и последние.
Но вот смотрю я там эти моментум стратегии. По порядку:
Sinitsin Russia Momentum Index по итогу слегка отрицательная доходность, график неотличим от индекса мосбиржи (но за период 02.2024 - 03.2024 она реально каким-то чудом сделала небольшой профит и дальше его тащила). А где стратегия Sinitsin Russia Momentum Index DEAD, которая в то же окно сделала лосс? А, ну ее либо не было, либо уже нет.
Momentum investment - а там точно все правильно работает в этом комоне? Она с 15.07.2024 по нынешнее время красивую линейность рисует. Абсолютную, хоть линейку приложи. А я знаю во что она вложилась, она вложилась в время! Ведь из всех историй только время имеет абсолютно линейную зависимость от времени.
QuantPro Momentum - могло бы заинтриговать... если бы не то, что она запущена 07.2025. И полгода не прошло.
Факторная на Импульс цены (Dual Momentum) - а это почти наверняка ваша. График реально красивый, спору нет. Но какая разница, она вообще 08.2025 запущена. 4 месяца, 4 месяца, Карл! И даже за это время есть момент где мосбиржа падает с -3.36% до -7.97%, а моментум с 8.89% до -2.95%. Падать, значит она все-таки может быстрее мосбиржи, агрессивненько, что ж.
Так это Вы к крайности ведете, с посыла что мол 'навык "реально всю работу на себе вывозить" стал базовым'. Как это должно работать? Вот приходит к вам в команду очередная говорящая голова, которая не привыкла такие вот базовые навыки качать и придется вам свой навык 'вывозить работу' апгрейдить дальше. Вы скажете, нуу я таких к себе в команду не пущу! Но пока эта говорящая голова не умеет программировать так, чтобы всю работу на себе вывозить, как вы вообще проверите, что она может и будет это?
эра ""крутых" асоциальных прогеров, вывозящих всё в соло" закончилась лет 15 назад
А это кстати тоже бабка надвое сказала, если ИИ еще прокачается, то в соло можно будет на порядок более сложные проекты вывозить, пока другие на митингах треплются. А если не только треплются, но и мнения свои (всем очень важные) выражают, то вполне может сработать идея, что "чем больше поваров - тем хуже суп".
Если совсем просто, то моментум-трейдинг это технически при определенных условиях лонгать от самых больших цен, и шортить от самых маленьких. Кроме того, что это противоречит некоторой кровью слезами писанной мудрости, которую я в виде шутки комментарием ниже написал (и вот теперь наверняка мне за него прилетит в панамку, потому что эффектнее сначала шутить, а потом душнить, но строго не наоборот), это само по себе "разбалтывает" рынок, то есть и создает его неэффективность. Что-то растет - "моментум-трейдеры" лонгают, это что-то растет дальше, и как правильно пишет uvelichitel, вера их создается лишь благодаря существенной массе игроков, действующих ровно так же, а действие, в свою очередь не обосновано ничем, кроме веры в постулат (моментум может сработать), и в свою очередь дальнейший рост цены идет лишь за счет обратной связи этих эффектов. Это и есть неэффективный рынок.
Только размотать в моментум-трейдинге может так конкретненько, что и мартингейл покажется детской забавой. Каждый, кто хочет этим заниматься, должен подумать, а что если он залонгает актив, который после этого упадет, и никогда больше не вернется к этой цене, буквально никогда. У вас есть план действий на такой прикол? Хеджировать "моментум-трейдингом" на понижение это буквально самоубийство. Тут даже без плеч, достаточно что бы актив с нашего захода в шорт вырос в два раза, а именно упавшие достаточно сильно активы нередко так отрастают. Причем "размотать" может и вверх и вниз одновременно.
Ну а моментум-инвестинг это немного проще называется. Это называется вера в вечный рост рынка. "Да пофиг, что пузырь ИИ лопнет, я вот вкладываюсь в энергетику, в технологические компании, которые делают реальные практические вещи, а не во всякую ерунду", ага, ага.
Звук да, было моно, причем весьма захлебывающееся уже даже на средних уровнях громкости (совсем не громких по сравнению с E398), причем, несмотря на поддержку блютус, по блютус он тоже звучал довольно плохо (в сравнении с компьютером хотя бы), вроде бы формально не моно, но с какой-то околонулевой стереопанорамой. Прошивать его пришлось довольно-таки сразу, внешний дисплейчик, хоть и штука прикольная, даже подсветка была, но периодически "зависал", то есть подсветка реагировала, а вот текст никакой не отображался до перезагрузки. Что и было одной из мотиваций залезть на motofan за прошивками, и вероятно, одной из причин, почему мне удалось достаточно дешево купить его с рук. Ну а с прошивками, конечно огонь. Там и пользовательский интерфейс можно было менять, шрифты-значочки, и бинарники разные полезные запускать, да, все так. Вот только сомневаюсь я в стоимостях из статьи, что про C350, ну да, он $60 стоил, но доллар был примерно по 30 рублей, итого 1800. Что про E398, $150 при долларе по 28 итого 4200. Где-то половина от средней зарплаты на тот момент. Что как бы немного должно менять восприятие, хоть и для самой компании Motorola это был среднебюджетный сегмент, для нашего рынка ну что-то ближе к лайтовым флагманам. V360 на старте еще чуть дороже была, но быстро начала дешеветь, а мой "косячный" мне достался вообще за 1600. Для студента, который только начал подрабатывать, как бы тоже немало, на самом деле, но оно того стоило. Года три с ним отходил и даже удалось продать почти за косарь, хотя вот об этом сейчас жалею :) наверняка с тех пор немало приколюх на motofan придумали.
Да, статья отличная! И телефон просто легендарный. В те времена вместо него удалось достать V360 с хорошей скидкой, так что эпоха монстрпаков не прошла мимо меня, но друзьям с E398 немного завидовал. Звук, наверное самое главное, но, кроме того, насколько же он хорошо ощущался в руках...
Так вывозить-то и приходится, потому что кто-то работает головой, а кто-то только "говорящей головой". Только, поскольку вторых все устраивает, то, как в анекдоте: - значит, папа, ты будешь меньше пить? - нет, сынок, значит ты будешь меньше есть.
Хорошо, правильнее было сказать, что их применимость к веб утечкам с каждым годом падает. Хотя и 10 лет назад вызывало массу вопросов, почему крупные сервисы хранят пароли как md5(password), так что, конечно, не значит, что ровно все уже точно перестали так делать.
Такой момент должен был наступить после открытой и массовой продажи специализированных устройств для брутфорса, и, хоть и попытки были, у компании Bitmain в свое время, но "не взлетело". Энтузиасты что-то там делали, но совсем давно и для древних алгоритмов типа NTLM и SHA1. Фиг знает, что там у спецслужб, но у рядовых пользователей нет значимого числа этих ASIC-ов на руках. Но это про простые алгоритмы, которые в принципе уже мало распространены. Своевременно ставшие популярными bcrypt, scrypt, Argon2, PBKDF2 не очень-то и удобны для ASIC-имплементации. И они от сотен до миллионов раз медленнее, чем SHA1/SHA256 (их ошибочно применять уже годов эдак с 2010).
Те же самые не подходят. Даже если и хеш от пароля в SHA256 и устройство изначально было для того, чтобы биткоины майнить (тоже SHA256), тут смена прошивки не подойдет. У них именно на блоках интегрированной логики физически забито очень конкретно хеширование строки конкретного размера с конкретным местом nonce, которое можно перебирать. Не умеют они в строки произвольной длины, не умеют в словари, не умеют сравнивать хеш с заданным. И реализовать это все можно, только тогда такой девайс "двойного назначения", в свою очередь либо биткоины будет майнить значительно медленнее (переиспользуем общую логику, но появляются дополнительные условные операции), либо логики в нем будет значительно больше (в худшем случае, она даже по реализации самого алгоритма SHA256 не пересечется*) и стоит он будет значительно дороже.
* потому что вообще в майнерах считается конкретно SHA256(SHA256(x)), и поскольку выход первой итерации аккурат попадает ему же на вход можно оптимизировать шаг по заполнению padding (это просто часть алгоритма), конкретно прописав откуда мы берем этот байт входа из конкретного байта выхода без дополнительных реинициализаций, ну и там буквально десяток "лишних" операций становятся не нужными, но в контексте майнинга оно того стоит.
Ну тут аккуратно надо, 8 слов из топ-1000 это тоже немало, конечно. log2(1000^8) ~= 79.7. Даже если хеширован пароль самым простым (и быстрым) алгоритмом, то даже для кластера из 1000 GPU перебор займет сотни лет. Или около месяца для миллиона GPU. Теоретически это уже не невозможно, но, что сказать, это реально невероятно дорого.
Но добавим хотя бы пару цифр/спецсимволов (буквально вот одну цифру и один спецсимвол) и это уже log2(1020^10) ~= 100. А это буквально в миллион раз больше предыдущей оценки. И вот это уже запредельно много, сотни (скорее тысячи) лет, даже если все цифровые устройства в мире будут ломать Ваш пароль.
Ну, ради справедливости, радужные таблицы померли уже довольно давно. Они не работают с солеными хешами (а кто сейчас хеши не солит?), их нужно иметь под каждый алгоритм, а мы уже давно отошли как от MD5/SHA1 как стандарт, генерятся офигеть как долго, весят дофига, и все это во время, когда после майнинга/в процессе ИИ бума GPU-шки стали на порядки быстрее и можно просто арендовать небольшой кластер. Который, правда, все равно, по хешу пароль вида " FljkmaTcn15LtntqPf28$LkzCneltynfRhtvfnjhbqGhjlf;b" подберет примерно ровно никогда.
Но да, про уровень "correcthorsebatterystaple", конечно, смешно говорить; утек хеш - утек и пароль. А вот с 2FA, в принципе, ну и так сойдет.
Минусы я вообще невероятно редко ставлю, но и плюсов пока эта разработка не особо заслуживает. Вот я в 13 тоже писал свой язык программирования, но там с нуля было абсолютно все, и лексер и парсер и разбор AST, и компилятор в свою виртуальную машину (очень редуцированный ассемблер по сути) и интерпретатор этого байт-кода. ООП в свой язык я завезти не смог (да и не особо желал), а вот из фукнциональной парадигмы много чего удалось реализовать. Для тех, кто жаловал APL, конечно не удивительно, но вот таким однострочником, например, можно было простые числа до 1000 напечатать
Читаемость всей APL-подобной функциональщины конечно write once & throw away, да и ужасно некрасивый тернарный оператор подводит (пришлось сделать его таким уродцем, чтобы любое выражение однозначно определялось слева направо). Хотя вот fold симпатичный, map прям красивый (кажется будто его нет), появился не очень красивый оператор "точка" (который проще всего трактовать как отключение дефолтного применения map к функциям или их аргументам (немного дичь, да)). Но вполне можно было писать императивные программки на по сути паскалевском синтаксисе, но это не совсем интересно (хотя, потому что на том же APL так делать было вовсе нельзя, я считал это большой фичей). Потом я этот проект забросил, но его же с совсем небольшими добработками потом засчитали за курсовую аж третьего курса :) Потом несколько раз еще вспоминал, что может доделать язык немного, ради прикольного code golf, но, признаем, кому оно надо на языке который только под это-то и заточен, и, ох, даже не без багов.
Конечно у меня небольшая положительная ностальгия и прилив странной гордости за себя мелкого, и, конечно я бы написал бы тогда, в 13 лет статью на хабр, если бы он был, но, пожалуй понятно, что в хаб "ненормальное программирование".
А тут точно хочется пожелать Владиславу дальнейших успехов, но как бы академической ценности в статье вообще нет. Причем, если код из репозитория и правда, окей, не подвиг конечно, но и недурно для 13 лет, то статья, к сожалению, даже сам проект как-то слабо преподносит. Тут многим кажется, что это просто переименовашка для ключевых слов js и всякие evaluateCallExpression() они даже смотреть не будут.
Ну и почему так много и написал, чувствую от этого всего некоторую боль. Немало времени я на идеи стратегий, связанных с OBI потратил, и иногда казалось, что я что-то получаю, к чему-то близок уже, но по пост-фактум ощущениям это все один из самых жестоких путей "не туда".
а) даже если мы берем рынки, где нет HFT, и минимальная свеча секундная, за эту секунду мы можем максимум десятки раз сгрузить изменения ордербука, и они в активных фазах могут рисовать совершенно разные картины. "Мигающие стенки" в большинстве случаев будут, при этом цена активно не реагирует, но в зависимости от фазы луны мы получаем то огромный дисбаланс, то полное его отсутсвие в ордербуке за ту же самую секунду. На некоторых биржах можно сгрузить то, что называется L2 (aggregated order book) (и нередко платно), но это мало отличается от того, что можно "надергать" скриптом, все равно порядок выполнения ордеров там отражен не будет. Опять же, часто это просто данные о стакане раз в секунду (это не промышленный стандарт а просто Level2 order book history, что бы это ни значило). А вот L3 (full order-by-order data) (где исполнение каждого конкретного ордера логируется) мало где выдают, и это стоит денег, доступно только для юридических лиц, чаще всего под NDA, ну и тут уже слабее разбираюсь, но по сути это только NASDAQ и дает. CME как бы тоже дает, но там как раз информации об отмененных ордерах как раз и нет. Но что там, что там орды HFT скальперов, которые эту же информацию (на тарелочке) использют при своих больших деньгах (и как следствие возможностях). А для остальных случаев...
Из-за этого бэктестить алгоритмы, основанные на OBI близко к невозможному. По сравнению с классическим бэктестом, где нам достаточно свечек из истории надергать и аккуратно на них прогнать алгоритм, то тут пришлось бы писать симулятор движка биржи по обрывочным данным. Ну не так страшен рогатый, как его малюют, но мы же как раз важные нюансы-то не выдумаем, если мы не знаем алгоритмов маркетмейкеров. Более того, маркетмейкеров может быть (скорее в значении точно будет) несколько на одном рынке, они могут постоянно меняться, и, самое главное... если мы выдумываем их стратегии так, чтобы они "играли против" нашей стратегии, то да, мы в итоге и проигрываем, без вариантов. Если мы выдумываем их, исходя из "здравого смысла", то откуда знать, что мы не заблуждаемся на все 100%. Какая-то мега сложная борьба с ветряными мельницами.
б) не важно, выбрали ли мы сложный путь с этим псевдобэктестом или просто на него забили, следующая фаза, это обкатка нашей стратегии на реальных счетах на бирже. И на каких-то единицах долларов это может довольно неплохо работать, а потом, при повышении размера сделки, уже ломаться. Потому что уже наш ордер в свою очередь начинает оказывать какое-то влияние на картину выполнения ордеров.
Спору нет, эта проблема вообще с любыми стратегиями возникает при переходе к реальным торгам, но если раньше у нас был хотя бы (несколько иллюзорный конечно) путь, который начинается с сравнения бэктеста и торгов, подразумевая, что бэктест правильный (после кучи проверок), то тут нам заведомо придется сравнивать теплое с мягким. Подгонять бэктест под новую информацию? Ну нам все равно никто не придет и не расскажет нюансы алгоритмов маркетмейкеров.
Формально, при по свечном анализе да, мы теряем уйму информации. Но после того как уже ее потеряли, мы используем информацию ровно так, как она есть.
При анализе на базе неполной истории ордербука, мы либо не должны на ордербук сильно опираться вообще, либо должны как-то точно заполнить отсуствующие данные методом выдумывания. А это не вариант.
Так что когда OBI перерастает фазу "ой, ну тут вверх стеночка большая, а вниз маленькая, значит вниз и пойдем" (вершина наивности), то это все становится огромной головной болью. Price action тупо проще. Но сравнить формально не выйдет, потому что, ну я банально ни одного рабочего алгоритма на OBI не щупал. Подписан в телеге на челика, который очень это дро..., в смысле активно в это пытается, ну, в том что бы хоть одна из его стратегий работает я его не уличил. Зато задним числом можно кладезь полезных знаний уйму говностратегий генерить.
Ну и само собой, я не доказал, да и в общем-то не доказываю, что OBI ерунда. Это ж вопрос веры, как обычно.
Хороший вход в мысли о нематериальном. У меня было по сути то же, но через обратный образ: "обязано ли существо, не понимающее смерти, ее принять?".
Не очень понимаю цель картинки с двумя квадратными диаграммами, размять глаза? Потому что это почти базовая головоломка easy level, найди цифру на диаграмме, вспомни или посмотри значение осей, вспомни или посмотри расшифровку значения и так 20 раз, 20. И если корреляция виртуального бессмертия и жизни после смерти ну да, может быть интересна, то корреляция свободы воли и возможности разумного ИИ что-то вне пределов моего понимания :)
Давайте о самом главном сомнении, я один вижу тут ссылки, которые эмм, несколько нерелевантны тексту статьи? Это вообще никого не волнует? Плюсы ставят с пониманием этого факта, или напротив с неведением?
И все же тема, почему этот парадокс называется Санкт-Петербургским раскрыта недостаточно, может есть какой-то лор?
А вообще парадокс с монеткой становится интереснее со стороны "казино". Допустим казино берет как взнос 1024 рубля, и у нас играет 1024 человека. Бюджет 2^20. Вероятность того, что хотя бы один игрок выбъет весь бюджет казино, подкинув 19 решек подряд 1 - (1 - 2^(-19))^1024 ~= 0.195%
Есть еще сценарий где два игрока выбивают по 2^19, но лень точно считать, интуитивно это на порядок меньшая вероятность, чем один, выбивший 2^20 и ей можно просто пренебречь, а во всех остальных случаях казино будет в плюсе.
Вот это как парадокс меня еще больше впечатляет. То есть при этих конкретных вводных, шанс для казино не заработать денег всего 0.2%
Если еще посчитать матожидание его выигрыша
(что уже немного тяжело стало под вечер, а чатик тупит),да нет, оно минус бесконечность, то я думаю можно на ровном месте еще раз удивиться.Но! Если отмести исходы, когда игрок более 399 раз подряд выбрасывает решку, как физически невозможные, тут спасибо чатик напомнил:
То все прекрасно с матожиданием выигрыша казино, оно будет аж 638 976 рублей.
P.S. Ну да, и не казино, а игорный дом, конечно.
Скрытый текст
Можно, но и смысла нет. Была бы дискуссия "моментум против чего-то еще" (конкретного) можно было бы конструктивно спорить. Сказать, что это самый худший подход к торгам я не могу, это было бы не правдой. Говорить, что он один из хороших не буду. И по сути не понравилось, что в статье он, ну конечно, не как Святой Грааль Трейдинга подается, но опасно близко к тому.
Так она и народная потому, что хомякам сначала смешно, а потом когда сами прокатились, уже не смешно. А бывает это очень часто.
Это, кстати, правда. Но на таком уровне работать, это выбирать между "ложкой в лоб" и "ложкой по лбу". Проблема в том, что для примитивных трендовых систем тесты показывают, что в среднем не торговать выгоднее, чем торговать. И чем больше ребалансировок портфеля, тем выше вероятность его просрать. И несколько довольно глобальных исследований на эту тему публиковалось, если так надо будет, то ссылки поищу, но пока оставлю как тезис.
Потому что за дном "новое дно" в подарок, если весь фундаментал сводится к тому, что "ну не можииит же еще дешевле стоить, не могёёт". Надо хотя бы пытаться разбираться, почему может стоить дешевле, почему не будут другие откупать, и вот такие активы избегать. Но тут не о чем спорить, я согласен, что бездумно откупать дно еще хуже, чем бездумно собирать хаи на самых популярных активах (там-то хоть есть шанс в свое время нарваться на биткоин или нвидию), но это не причина узаконить систематическую ошибку выжившего:
Да еще и основанную на недоказанных тезисах. Я поискал Ваш портфель, ну нет его. Есть пдф-ка с "отчетом о доходности", а где когда и что куплено, как, например, у Алексея Яковлева из ваших ссылок я не нашел. И вот у Алексея получилось 4.6% за предыдущий год, он даже инфляцию не обогнал. А у вас единственный (прошлый) год, и получилось +18%. Не буду старательно пытаться этому не доверять, проблема не в этом. А проблема в том, что если портфель существует всего один год и вы выбили +18%, то это вообще не что-то, что всерьез интересно обсуждать. У меня тоже есть портфель, я им вообще не занимался в прошлом году, и вышло +15%. Это никакущий результат, если он не будет стабилен на протяжении многих лет. А будет ли?
Всю воду засунул под спойлер. Нет смысла добавлять воду в воду, чтобы она была более водянистая.
Потому что этот комон это что-то, хмм, своеобразное, ну очень на тоненьком от скама?
Может во мне дело, но я не вижу там "кладбища" сдохших стратегий, а это бы сказало куда больше, чем те, которые сейчас выжили. Но понятно, раз даже Т так не делает, то им то зачем. У Т есть инвест-конкурсы, и нет, алгошники там не занимают первые места. Первые места занимают мартингейлеры. Впрочем, понятное дело, как и последние.
Но вот смотрю я там эти моментум стратегии. По порядку:
Sinitsin Russia Momentum Index по итогу слегка отрицательная доходность, график неотличим от индекса мосбиржи (но за период 02.2024 - 03.2024 она реально каким-то чудом сделала небольшой профит и дальше его тащила). А где стратегия Sinitsin Russia Momentum Index DEAD, которая в то же окно сделала лосс? А, ну ее либо не было, либо уже нет.
Momentum investment - а там точно все правильно работает в этом комоне? Она с 15.07.2024 по нынешнее время красивую линейность рисует. Абсолютную, хоть линейку приложи. А я знаю во что она вложилась, она вложилась в время! Ведь из всех историй только время имеет абсолютно линейную зависимость от времени.
QuantPro Momentum - могло бы заинтриговать... если бы не то, что она запущена 07.2025. И полгода не прошло.
Факторная на Импульс цены (Dual Momentum) - а это почти наверняка ваша. График реально красивый, спору нет. Но какая разница, она вообще 08.2025 запущена. 4 месяца, 4 месяца, Карл! И даже за это время есть момент где мосбиржа падает с -3.36% до -7.97%, а моментум с 8.89% до -2.95%. Падать, значит она все-таки может быстрее мосбиржи, агрессивненько, что ж.
И зачем я в это полез.
Так это Вы к крайности ведете, с посыла что мол 'навык "реально всю работу на себе вывозить" стал базовым'. Как это должно работать? Вот приходит к вам в команду очередная говорящая голова, которая не привыкла такие вот базовые навыки качать и придется вам свой навык 'вывозить работу' апгрейдить дальше. Вы скажете, нуу я таких к себе в команду не пущу! Но пока эта говорящая голова не умеет программировать так, чтобы всю работу на себе вывозить, как вы вообще проверите, что она может и будет это?
А это кстати тоже бабка надвое сказала, если ИИ еще прокачается, то в соло можно будет на порядок более сложные проекты вывозить, пока другие на митингах треплются. А если не только треплются, но и мнения свои (всем очень важные) выражают, то вполне может сработать идея, что "чем больше поваров - тем хуже суп".
Если совсем просто, то моментум-трейдинг это технически при определенных условиях лонгать от самых больших цен, и шортить от самых маленьких. Кроме того, что это противоречит некоторой
кровьюслезами писанной мудрости, которую я в виде шутки комментарием ниже написал (и вот теперь наверняка мне за него прилетит в панамку, потому что эффектнее сначала шутить, а потом душнить, но строго не наоборот), это само по себе "разбалтывает" рынок, то есть и создает его неэффективность. Что-то растет - "моментум-трейдеры" лонгают, это что-то растет дальше, и как правильно пишет uvelichitel, вера их создается лишь благодаря существенной массе игроков, действующих ровно так же, а действие, в свою очередь не обосновано ничем, кроме веры в постулат (моментум может сработать), и в свою очередь дальнейший рост цены идет лишь за счет обратной связи этих эффектов. Это и есть неэффективный рынок.Только размотать в моментум-трейдинге может так конкретненько, что и мартингейл покажется детской забавой. Каждый, кто хочет этим заниматься, должен подумать, а что если он залонгает актив, который после этого упадет, и никогда больше не вернется к этой цене, буквально никогда. У вас есть план действий на такой прикол? Хеджировать "моментум-трейдингом" на понижение это буквально самоубийство. Тут даже без плеч, достаточно что бы актив с нашего захода в шорт вырос в два раза, а именно упавшие достаточно сильно активы нередко так отрастают. Причем "размотать" может и вверх и вниз одновременно.
Ну а моментум-инвестинг это немного проще называется. Это называется вера в вечный рост рынка. "Да пофиг, что пузырь ИИ лопнет, я вот вкладываюсь в энергетику, в технологические компании, которые делают реальные практические вещи, а не во всякую ерунду", ага, ага.
Звук да, было моно, причем весьма захлебывающееся уже даже на средних уровнях громкости (совсем не громких по сравнению с E398), причем, несмотря на поддержку блютус, по блютус он тоже звучал довольно плохо (в сравнении с компьютером хотя бы), вроде бы формально не моно, но с какой-то околонулевой стереопанорамой. Прошивать его пришлось довольно-таки сразу, внешний дисплейчик, хоть и штука прикольная, даже подсветка была, но периодически "зависал", то есть подсветка реагировала, а вот текст никакой не отображался до перезагрузки. Что и было одной из мотиваций залезть на motofan за прошивками, и вероятно, одной из причин, почему мне удалось достаточно дешево купить его с рук. Ну а с прошивками, конечно огонь. Там и пользовательский интерфейс можно было менять, шрифты-значочки, и бинарники разные полезные запускать, да, все так. Вот только сомневаюсь я в стоимостях из статьи, что про C350, ну да, он $60 стоил, но доллар был примерно по 30 рублей, итого 1800. Что про E398, $150 при долларе по 28 итого 4200. Где-то половина от средней зарплаты на тот момент. Что как бы немного должно менять восприятие, хоть и для самой компании Motorola это был среднебюджетный сегмент, для нашего рынка ну что-то ближе к лайтовым флагманам. V360 на старте еще чуть дороже была, но быстро начала дешеветь, а мой "косячный" мне достался вообще за 1600. Для студента, который только начал подрабатывать, как бы тоже немало, на самом деле, но оно того стоило. Года три с ним отходил и даже удалось продать почти за косарь, хотя вот об этом сейчас жалею :) наверняка с тех пор немало приколюх на motofan придумали.
Да, статья отличная! И телефон просто легендарный. В те времена вместо него удалось достать V360 с хорошей скидкой, так что эпоха монстрпаков не прошла мимо меня, но друзьям с E398 немного завидовал. Звук, наверное самое главное, но, кроме того, насколько же он хорошо ощущался в руках...
Так вывозить-то и приходится, потому что кто-то работает головой, а кто-то только "говорящей головой". Только, поскольку вторых все устраивает, то, как в анекдоте: - значит, папа, ты будешь меньше пить? - нет, сынок, значит ты будешь меньше есть.
"Закупился на хаях - прокатился на х**х", а они говорили Моментум.
Хорошо, правильнее было сказать, что их применимость к веб утечкам с каждым годом падает. Хотя и 10 лет назад вызывало массу вопросов, почему крупные сервисы хранят пароли как md5(password), так что, конечно, не значит, что ровно все уже точно перестали так делать.
Такой момент должен был наступить после открытой и массовой продажи специализированных устройств для брутфорса, и, хоть и попытки были, у компании Bitmain в свое время, но "не взлетело". Энтузиасты что-то там делали, но совсем давно и для древних алгоритмов типа NTLM и SHA1. Фиг знает, что там у спецслужб, но у рядовых пользователей нет значимого числа этих ASIC-ов на руках. Но это про простые алгоритмы, которые в принципе уже мало распространены. Своевременно ставшие популярными bcrypt, scrypt, Argon2, PBKDF2 не очень-то и удобны для ASIC-имплементации. И они от сотен до миллионов раз медленнее, чем SHA1/SHA256 (их ошибочно применять уже годов эдак с 2010).
Те же самые не подходят. Даже если и хеш от пароля в SHA256 и устройство изначально было для того, чтобы биткоины майнить (тоже SHA256), тут смена прошивки не подойдет. У них именно на блоках интегрированной логики физически забито очень конкретно хеширование строки конкретного размера с конкретным местом nonce, которое можно перебирать. Не умеют они в строки произвольной длины, не умеют в словари, не умеют сравнивать хеш с заданным. И реализовать это все можно, только тогда такой девайс "двойного назначения", в свою очередь либо биткоины будет майнить значительно медленнее (переиспользуем общую логику, но появляются дополнительные условные операции), либо логики в нем будет значительно больше (в худшем случае, она даже по реализации самого алгоритма SHA256 не пересечется*) и стоит он будет значительно дороже.
* потому что вообще в майнерах считается конкретно SHA256(SHA256(x)), и поскольку выход первой итерации аккурат попадает ему же на вход можно оптимизировать шаг по заполнению padding (это просто часть алгоритма), конкретно прописав откуда мы берем этот байт входа из конкретного байта выхода без дополнительных реинициализаций, ну и там буквально десяток "лишних" операций становятся не нужными, но в контексте майнинга оно того стоит.
Ну тут аккуратно надо, 8 слов из топ-1000 это тоже немало, конечно. log2(1000^8) ~= 79.7. Даже если хеширован пароль самым простым (и быстрым) алгоритмом, то даже для кластера из 1000 GPU перебор займет сотни лет. Или около месяца для миллиона GPU. Теоретически это уже не невозможно, но, что сказать, это реально невероятно дорого.
Но добавим хотя бы пару цифр/спецсимволов (буквально вот одну цифру и один спецсимвол) и это уже log2(1020^10) ~= 100. А это буквально в миллион раз больше предыдущей оценки. И вот это уже запредельно много, сотни (скорее тысячи) лет, даже если все цифровые устройства в мире будут ломать Ваш пароль.
Но она есть. Бэкап генератора сойдет любой древности, а вот бэкап конфига нужен свежий.
Это однозначно лучше, чем то, что автор предлагает в статье, но нет, это не правильное решение. Правильное решение - многофакторка.
Ну, ради справедливости, радужные таблицы померли уже довольно давно. Они не работают с солеными хешами (а кто сейчас хеши не солит?), их нужно иметь под каждый алгоритм, а мы уже давно отошли как от MD5/SHA1 как стандарт, генерятся офигеть как долго, весят дофига, и все это во время, когда после майнинга/в процессе ИИ бума GPU-шки стали на порядки быстрее и можно просто арендовать небольшой кластер. Который, правда, все равно, по хешу пароль вида " FljkmaTcn15LtntqPf28$LkzCneltynfRhtvfnjhbqGhjlf;b" подберет примерно ровно никогда.
Но да, про уровень "correcthorsebatterystaple", конечно, смешно говорить; утек хеш - утек и пароль. А вот с 2FA, в принципе, ну и так сойдет.
В мире без комиссий за операции :)
Минусы я вообще невероятно редко ставлю, но и плюсов пока эта разработка не особо заслуживает. Вот я в 13 тоже писал свой язык программирования, но там с нуля было абсолютно все, и лексер и парсер и разбор AST, и компилятор в свою виртуальную машину (очень редуцированный ассемблер по сути) и интерпретатор этого байт-кода. ООП в свой язык я завезти не смог (да и не особо желал), а вот из фукнциональной парадигмы много чего удалось реализовать. Для тех, кто жаловал APL, конечно не удивительно, но вот таким однострочником, например, можно было простые числа до 1000 напечатать
Скрытый текст
Читаемость всей APL-подобной функциональщины конечно write once & throw away, да и ужасно некрасивый тернарный оператор подводит (пришлось сделать его таким уродцем, чтобы любое выражение однозначно определялось слева направо). Хотя вот fold симпатичный, map прям красивый (кажется будто его нет), появился не очень красивый оператор "точка" (который проще всего трактовать как отключение дефолтного применения map к функциям или их аргументам (немного дичь, да)). Но вполне можно было писать императивные программки на по сути паскалевском синтаксисе, но это не совсем интересно (хотя, потому что на том же APL так делать было вовсе нельзя, я считал это большой фичей). Потом я этот проект забросил, но его же с совсем небольшими добработками потом засчитали за курсовую аж третьего курса :) Потом несколько раз еще вспоминал, что может доделать язык немного, ради прикольного code golf, но, признаем, кому оно надо на языке который только под это-то и заточен, и, ох, даже не без багов.
Конечно у меня небольшая положительная ностальгия и прилив странной гордости за себя мелкого, и, конечно я бы написал бы тогда, в 13 лет статью на хабр, если бы он был, но, пожалуй понятно, что в хаб "ненормальное программирование".
А тут точно хочется пожелать Владиславу дальнейших успехов, но как бы академической ценности в статье вообще нет. Причем, если код из репозитория и правда, окей, не подвиг конечно, но и недурно для 13 лет, то статья, к сожалению, даже сам проект как-то слабо преподносит. Тут многим кажется, что это просто переименовашка для ключевых слов js и всякие evaluateCallExpression() они даже смотреть не будут.
Ну и почему так много и написал, чувствую от этого всего некоторую боль. Немало времени я на идеи стратегий, связанных с OBI потратил, и иногда казалось, что я что-то получаю, к чему-то близок уже, но по пост-фактум ощущениям это все один из самых жестоких путей "не туда".
а) даже если мы берем рынки, где нет HFT, и минимальная свеча секундная, за эту секунду мы можем максимум десятки раз сгрузить изменения ордербука, и они в активных фазах могут рисовать совершенно разные картины. "Мигающие стенки" в большинстве случаев будут, при этом цена активно не реагирует, но в зависимости от фазы луны мы получаем то огромный дисбаланс, то полное его отсутсвие в ордербуке за ту же самую секунду. На некоторых биржах можно сгрузить то, что называется L2 (aggregated order book) (и нередко платно), но это мало отличается от того, что можно "надергать" скриптом, все равно порядок выполнения ордеров там отражен не будет. Опять же, часто это просто данные о стакане раз в секунду (это не промышленный стандарт а просто Level2 order book history, что бы это ни значило). А вот L3 (full order-by-order data) (где исполнение каждого конкретного ордера логируется) мало где выдают, и это стоит денег, доступно только для юридических лиц, чаще всего под NDA, ну и тут уже слабее разбираюсь, но по сути это только NASDAQ и дает. CME как бы тоже дает, но там как раз информации об отмененных ордерах как раз и нет. Но что там, что там орды HFT скальперов, которые эту же информацию (на тарелочке) использют при своих больших деньгах (и как следствие возможностях). А для остальных случаев...
Из-за этого бэктестить алгоритмы, основанные на OBI близко к невозможному. По сравнению с классическим бэктестом, где нам достаточно свечек из истории надергать и аккуратно на них прогнать алгоритм, то тут пришлось бы писать симулятор движка биржи по обрывочным данным. Ну не так страшен рогатый, как его малюют, но мы же как раз важные нюансы-то не выдумаем, если мы не знаем алгоритмов маркетмейкеров. Более того, маркетмейкеров может быть (скорее в значении точно будет) несколько на одном рынке, они могут постоянно меняться, и, самое главное... если мы выдумываем их стратегии так, чтобы они "играли против" нашей стратегии, то да, мы в итоге и проигрываем, без вариантов. Если мы выдумываем их, исходя из "здравого смысла", то откуда знать, что мы не заблуждаемся на все 100%. Какая-то мега сложная борьба с ветряными мельницами.
б) не важно, выбрали ли мы сложный путь с этим псевдобэктестом или просто на него забили, следующая фаза, это обкатка нашей стратегии на реальных счетах на бирже. И на каких-то единицах долларов это может довольно неплохо работать, а потом, при повышении размера сделки, уже ломаться. Потому что уже наш ордер в свою очередь начинает оказывать какое-то влияние на картину выполнения ордеров.
Спору нет, эта проблема вообще с любыми стратегиями возникает при переходе к реальным торгам, но если раньше у нас был хотя бы (несколько иллюзорный конечно) путь, который начинается с сравнения бэктеста и торгов, подразумевая, что бэктест правильный (после кучи проверок), то тут нам заведомо придется сравнивать теплое с мягким. Подгонять бэктест под новую информацию? Ну нам все равно никто не придет и не расскажет нюансы алгоритмов маркетмейкеров.
Формально, при по свечном анализе да, мы теряем уйму информации. Но после того как уже ее потеряли, мы используем информацию ровно так, как она есть.
При анализе на базе неполной истории ордербука, мы либо не должны на ордербук сильно опираться вообще, либо должны как-то точно заполнить отсуствующие данные методом выдумывания. А это не вариант.
Так что когда OBI перерастает фазу "ой, ну тут вверх стеночка большая, а вниз маленькая, значит вниз и пойдем" (вершина наивности), то это все становится огромной головной болью. Price action тупо проще. Но сравнить формально не выйдет, потому что, ну я банально ни одного рабочего алгоритма на OBI не щупал. Подписан в телеге на челика, который очень это дро..., в смысле активно в это пытается, ну, в том что бы хоть одна из его стратегий работает я его не уличил. Зато задним числом можно
кладезь полезных знанийуйму говностратегий генерить.Ну и само собой, я не доказал, да и в общем-то не доказываю, что OBI ерунда. Это ж вопрос веры, как обычно.