Прошу советов у опытных алготрейдеров касательно этого непростого ремесла
Начнём с предыстории
На протяжении всей своей трейдинговой карьеры я руководствовался исключительно фундаменталом (старался анализировать показатели макроэкономики) и некоторыми паттернами на рынке, которые старался обторговывать ручками. Стоит сказать, что делал (и продолжаю делать) я это относительно успешно (стабильно 20-27% годовых), но в последнее время моё внимание очень привлёк алготрейдинг. Имея многолетний опыт в программировании и сильный интерес к математике, идея использования этих подходов на рынках меня очень заинтриговала.
А теперь, собственно, основная часть
Я прекрасно понимаю, что на смартлабе есть уже куча постов на данную тематику, но в силу постоянного прогресса в технологиях я предположил, что технологический стэк для алготрейдинга тоже меняется время от времени, оттого я решил написать этот пост.
Уважаемые господа, успешные алготрейдеры! Подскажите, пожалуйста, с чего стоит начать свой путь в этой сфере торговли? Какие хорошие источники посоветуете? Какие технологии здесь нынче в моде? Откуда стоит брать данные для анализа? С радостью и благодарностью постараюсь перенять лучшее из вашего опыта.
Дело сказали 3Qu и Тимофей. Для тестирования стратегий можно крякнутые WealthLab 5 и 6. Книг, источников по стратегиям — море, всех не перетестируешь.
Мне, как и большинству, пришлось остановиться в точке, далёкой от исчерпания всего.
Самое модное нейросети и Питон. Под них книга «Deep Learning with Python 2Ed» Fransois Chollet. Для инстоляции miniconda. После установки около 3Гб на диске.
3Qu, 21:50 мини это Питон + команды conda install numpy, conda install matplotlib, conda install tensorflow. Больше ничего не требуется.
Анаконда больше 6 Гб невесть чего.
Rostislav Kudryashov, все тоже самое через pip. Без разницы.
Да, и конды отстают по версиям Python, что иногда существенно. В 3.11 быстродействие на 25-75% выше. На конде еще 3.10.
Но начинал я с Анаконды (чтоб не заморачиваться) и долго на ней сидел.
3Qu, 22:03 Питон в нейросети не играет роли. Tensorflow используетграфический процессор NVidia. У меня на ПК — использует 8 ядер ЦПУ.
PS к 6+ Гб Анаконды придётся добавить ещё 1.5 Гб Tensorflow с Kerasо'м.
Rostislav Kudryashov, Хайкин — наше все.) Больше ничего и не нужно. Если по Хайкину ничего не получается, то, в нашем деле, и продвинутые методы не помогут.
Для scikit-learn нормальная документация у них на сайте.
Инструментарий должен использоваться в соответствии с моделью. Если Хайкин помогает спать спокойно и не на голодный желудок — то (извиняюсь заранее) это самые примитивные модели рынка (IMHO)
С уважением
P.S. Нет никаких продвинутых методов. Есть
1. Феноменологический подход. Берем рынок и пытаемся понять (а не представить) его действующие закономерности
2. Модельный подход (мы вообразили, что знаем, как устроен рынок). Берем рынок — и пытаемся натянуть Хайкина на глобус )))
1. Применимость аппарата случайных процессов к рыночным ценам вообще неочевидна. Т.к. мы имеем дело ровно с одной реализацией случайного процесса, а для применимости в таком разрезе нужна строгая стационарность. На рынках никакой строгой стационарности процессов нет и в помине (легко проверяется), но есть стационарность в некоем широком смысле
2. Неустойчивость — есть свойство не самого случайного процесса, но используемых статистик. Если статистики неустойчивые (а они все неустойчивые, кроме МО — и выборочная дисперсия, и выборочные АКФ, и т.д.) — то они ничего умного и не покажут...
Так что в данном конкретном случае дело не в зауми, а в использовании плохоработающего или неработающего инструментария.
Лично я (IMHO) уверен, что традиционный инструментарий вообще не работает, поэтому и разрабатываю свой.
Лично я (IMHO) уверен, что традиционный инструментарий вообще не работает, поэтому и разрабатываю свой.
Безусловно, успехов. Но я что-то сильно сомневаюсь.
Я использую то, что есть. Но в вашей специальности это не изучается. Назовем это — теория сигналов.
Даже книги приводил тебе, по которым я обучался
(моя бытность работы в ВПК)
Просто пытался пояснить тебе, что
1. На реальных рынках модель сигнал + аддитивный шум не работает ввиду соотношения (мощности) 1:50 в пользу шума
2. Модель сигнал * мультипликативный шум ты точно не рассматриваешь (судя по твоим приведенным выкладкам)
3. Именно для этого и нужны кастомные статистики
4. А еще проще от модели сигнал+шум отказаться вообще )))
4. А еще проще от модели сигнал+шум отказаться вообще )))
Это по вкусу.))
Да шум не совсем аддитивный, но и аддитивная компонента присутствует и не маленькая.
У меня другая модель рынка (хотя, твою достоверно не знаю).
Rostislav Kudryashov, источников по (работающим) стратегиям — 0
Тот простой факт, что данная стратегия, которая работала в прошлом, останется работающей в будущем — это сложная теорема.
Отдельно доказываемая для каждого вида стратегии.
1. При маркетном исполнении работают безусловно, давая средний результат на сделку меньше спрэда — фтоппку
2. При лимитном исполнении не работают безусловно, сливают стабильно
3. При твоем окне тестов в 50к баров максимум вполне могут работать. Но лично я не запускаю в продакшн ни один алго без уверенного результата в плюс хотя бы на 1.5 млн. баров
А так — да. Накоротке можно приготовить все, что угодно — МАшку, моментум, Боллинджер, кошку, наконец )))
1. При маркетном исполнении работают безусловно, давая средний результат на сделку меньше спрэда — фтоппку
без уверенного результата в плюс хотя бы на 1.5 млн. баров
сейчас средний результат на годовом тесте BTCBUSD ~40п на сделку, хотя все отлаживалось на последнем квартале 22 года.
Комиссию окупает, примерно 1/4 от прибыли.
А ты говоришь миллионы отсчетов.
Кстати, я еще и не закончил.)) Маловато будет.
Просто лично у меня от устойчивой теормодели до бабла в кармане путь долгий и чисто технологичный. Т.к. надобно
1. Обеспечить бесперебойную работу системы
2. Быстрое восстановление после сбоев
3. Контроль позиции после сбоев (если система использует для анализа длинный массив предыдущих данных)
4. Защиту от биржевых сбоев
5. Контроль неполного исполнения лимитных ордеров
6. Механизм принудительного зафилливания лимитных ордеров
7. Ужас, ужас, ужас...
И это даже вкратце не все. Но это важно на депо хотя бы от $100k. На $1k вполне хватает ручного круглосуточного контроля )))
Всю дату беру из api биржи, если надо протестировать что то специфическое, то yfinance или другие крупные источники. Но в основном хватает yfinance.
Стэк python, если нужна база данных, то postgresql, если нужен веб интерфейс, то django или fastapi, если интерфейс в телеграм боте, то aiogram (но это для особых потребностей в управлении процессом, в основном хватает голого api телеграма). Если разработка проекта на заказ, то docker.
Стэк в любом случае зависит от языка программирования, так что лучше бы для начала определиться с ним. Если цель конечно написать полноценный работающий переносимый и масштабируемый проект, а не просто скрипт для tradingview или однофайловый бот и логикой в 50 строк кода.
ну как бы...
1 для алго нужен прокаченный технический скилл + программирование… а если у тебя оно прокаченно, то зачем тебе биржа? итак будет зарплата в овердокуя баксов… я кстати жалею иногда о своем выборе… алго занялся в 2006ом а синие визы в ес появились в 2007ом...
2 алготрейдинг закрытая отрасль прежде чем начнешь шарить в теме пройдет лет 10… и без гарантий результата… т.е можно просто напрасно потерять время и стать при этом хиккой
3 обычно делают так — сначала придумают мтс… которую торгуют руками… затем делают частичную автоматизацию… затем полную автоматизацию..
4 попробуй просто делать исследования рынка… но тут нужны идеи которые нарабатываюся с опытом… обычно это простые вещи типа тест портфеля
5 наиболее прост — тслаб… не требует знаний программирования… и т.к все из стандартных кубиков — не требует отладки…
Да для начала тебе идея не помешает, на чем ты зарабатывать собрался.
А дальше тестировать можно уже как угодно, хоть в Экселе, хоть тс лабом для начала
Если ты умеешь прогать проще устроится на нормальную работу, и в перспективе это даст большее матожиадние прибыли чем копать трейдинг.
А так есть два подхода:
1) Наблюдать за рынком, искать закономерности, их бэктестить, и реализовывать
2) Укуриваться матаном, если нет матиматического образования или сопоставимой практики, особо не советую.
Но какие-то основы изучить можно, найди какой ни буть совсем простой учебник по матану и теорверу, разберись что такое плотность вероятности, корреляция, центральная предельная теорема, этого достаточно чтобы мозги встали в нужное русло.
Самое главное конечно мотивация… Обычно как это бывает… созерцаешь графики день два год два) в конце концов пялиться в монитор 24/7 достаёт и тогда ты берёшь эксель луа питон ну что под рукой будет) берёшь дату и начинаешь на эту дату накидывать алго (алгоритм) который соответствует тому что ты хотел глазами отслеживать, а тут код делает это за секунду прокачав целый год даты… Короче это всё навык набиваемый руками) и иногда глазам (для вдохновения на новые алго))
Но лично я уже года 3 как занимаюсь прототипированием, тестами и публикацией рабочих алго на Matlab.
Далее специально обученные программисты сшивают код алго с кодом модели исполнения (обычно это C#)
Низкоуровневые слои (коннекторы etc.) пишутся на чем угодно. Но обычно это тот же C# и С++.
Андрей К, посмотри какая ирония. только после моего поста я заметил как бот мальчик откликнулся на твоё сообщение якобы случайно. БЛИИИН, какое совпадение ))
Сразу отбрось все эти советы по языкам программам и анализам. Путь в алготрейдинг есть только один. Нужна своя стратегия, в трейдинге не Грааля «для всех», у каждого успешного тредера свой индивидуальный Грааль (это подходящая лично тебе стротегия).
Если ты надеешься в алготрейдинге найти (или вычислить, создать) прибыльную систему, то этого не будет, не поиогут не нейронные сети, ни присловутый ИИ.
Единственный смысл алготрейдинга это высвобождение времени от рутинных расчетов и убивания времни на сидение перед монитором. Все кто говорит что то другое просто врут.
А посему, если нашел свою стратегию (свой Грааль) не важно на каком яхыке и как ты его реализуешь в алго.
Если стратегии пока нет, займись поиском, а не алготрейдингом.
Единственное, чем тебе можно помочь, это уберечь от безполезных поисков в некоторых направлениях.
Технологический стек не меняется. Программирование в алго вторично. Даже с полного нуля можно сваять робота за месяц на сишарпе. ЯП не играет роли, кроме hft, но динамическая типизация питона для алго — однозначно зло, когда неправильный тип переменной может привести к колоссальным потерям. Читать историю knight capital.
Сначала найти идею — в экселе или через питон. Потом сделать простой логгер на бесплатном брокерском апи и проверить идею.
И алго — это не запустил робота и уехал по делам, невозможно учесть все ошибки. Потому алго — запустил робота и постоянно проверяешь, как он работает.
Доходность 20-27% руками — отличная. На алго может быть чуть больше, но не в разы.
ignat, «И алго — это не запустил робота и уехал по делам, невозможно учесть все ошибки. Потому алго — запустил робота и постоянно проверяешь, как он работает.»
Вы и правы и не правы одновременно. Основа робота алгоритм, точнее идея алгоритма. Реализация алгоритма в роботе всегда вторична. Отладка кода не займет много времени.
Поэтому в принципе, запустил робота и уехал по делам, это вполне рабочий вариант.
Но с другой стороны, рынок не статичен, поэтому переодически возникают катаклизмы, когда цены выходят за расчетные в алгоритме параметры. В этом случае требуется либо просто менять параметры (следить как работает робот), либо искать идею как обработат исключения выхода цены за расчетные параметры алгоритма, СОВЕРШЕНСТВОВАТЬ РОБОТА, или алгоритм.
Я 5 лет оттачивал реализацию идеи в роботе, уже 2,5 года у меня работает последняя версия (пережила СВО без изменений), поэтому последние 2,5 года у меня работает принцип «включил и ушел по делам», вечером пришел посмотрел поведение рынка и как отработал робот.
Правда сейчас появилилось пара идей, которые собираюсь рееализовать в новой версии)).
«Доходность 20-27% руками — отличная. На алго может быть чуть больше, но не в разы.»
Совершенно верно, правда я думаю, алго с одной стороны не пропустит сделки, но с другой стороны алго это все же поиск компромисов. Поэтому однозначно говоритьбудет ли доходность алго больше ручной торговли, я бы не стал.
Евгений Нагайцев, да хоть заСОВЕРШЕНСТВУЙТЕСЬ )), но кода без ошибок не бывает. А потом приходит лебедь хз какого цвета в виде, например вечерней сессии в день объединения бирж — и никакое совершенствование алгоритма не поможет, только быть рядом и отключить вручную, а еще лучше, зная частоту и вероятность глюков биржи — не включать в определенные моменты. Или нефть по 8, или брокер начинает транслировать неправильные позы, или бид начинает приходить выше аска. И таких причин настолько много, что учесть всё невозможно.
Например, комп с оперативкой 32гиг ловит примерно 4 битфлипа в сутки от космического излучения. И это может оказаться как раз тот самый bool, который отвечает за купить\продать.
Если Вы оставляете робота и «вечером пришел посмотрел» — ну успеха Вам, немало алго на этом погорели, будучи абсолютно уверенными в своем коде.
ignat, «но кода без ошибок не бывает.»
Код без ошибок все же бывает. Тем более код выверенный за промежуток в несколько лет.
«например вечерней сессии в день объединения бирж — и никакое совершенствование алгоритма не поможет,»
Тут вот вопрос не в коде, а в алгоритме. Вы думаете только у вас утренние вечерние выбросы? У меня алгоритм отрабатывает это нормально, в нем это предусмотрено.
«Или нефть по 8»
Это уже вопрос параметров алгоритма заложенный у вас)).
«брокер начинает транслировать неправильные позы, или бид начинает приходить выше аска. И таких причин настолько много, что учесть всё невозможно.»
опять же зависит от алгоритма, какими данными вы оперируете, у меня алгоритм работает по соверщенным сделкам, и нет сделок по рынку, только лимитки, поэтому все сказаное вами автоматически отфильтровывается алгоритмом.
«тот самый bool, который отвечает за купить\продать.»
И снова, лимитка отфильтровывает все эти bool, поверьте.
«Если Вы оставляете робота и «вечером пришел посмотрел» — ну успеха Вам, немало алго на этом погорели, будучи абсолютно уверенными в своем коде.»
Я уверен не в коде, а в алгоритме, и уверенность укрепляет работа до, в момент начала СВО и весь год течения СВО. И работа именно в режиме «включил и пошел по своим делам».
Возможно вы говорите об алго где определяет сделки не алгоритм, а именно «интелектуальная программа на нейронных сетях с продвинутым искусственным интелектом), купленная с 50% скидкой только 2 дня». Я не знаю, у меня алгоритм мною разработан, робот мною написан.
Евгений Нагайцев, ради интереса почитайте, что было на вечерней сессии в день объединения бирж ) это не выбросы, это то, что Вы даже не можете представить, судя по ответу.
Про код без ошибок (на всех сторонах — и в роботе, и у всех провайдеров по пути, и у брокера и и биржи) — блажен верующий )
ignat, как я понимаю, вы ведете разговор об 2011 годе, объединении ММВБ-РТС? Так вы обновите в памяти историю, не только что произошло, но чем это все закончилось? В сбой в клиринг, в 19-15 приостановка торгов на площадке, в 23-00 возобновление торгов с откатом на момент окончания клиринга. Проблемы получились у тех кто стал ручками реагировать на сбой системы. Все кто в тот момент был не у мониторов убытков не понесли.
Должен заметить, что это был не первый и не последний сбой в системе биржи. Последний который наблюдал своими глазами был в январе 2023. У меня Роботы среагировали адекватно. Так, что вы ошибаетесь, я прекрасно представляю происходившее и происходящеее переодически.
«Про код без ошибок (на всех сторонах — и в роботе, и у всех провайдеров по пути, и у брокера и и биржи) — блажен верующий )»
Вы путаете код робота со сбоями связи, если судить по написанному вами. Сбои с передачей данных фиксируются переодически, но системы уже давно научились на низ реагировать путем подтверждения целостности «телегаммы» через возврат хеш функций. У меня пояляется сообщение «невозможно прочитать данные из транспортного потока».
Я не знаю вашего уровня, и вашего опыта в алго, но пока из того, что вы пишите ваши познания кажутся поверхностными.
Евгений Нагайцев, в 23 отката по сделкам, которые были после 19 — не было. Был откат по позам на клиринг, с сальдированием сделок, которые случились после 19 — по рандомной базе с нагрузочного тестирования. А потом были разборки биржи, трейдеров и брокеров.
Впрочем, полемика бессмысленна. Я реально Вам желаю работы робота без сбоев.
ignat, «в 23 отката по сделкам, которые были после 19 — не было. Был откат по позам на клиринг, с сальдированием сделок, которые случились после 19 — по рандомной базе с нагрузочного тестирования.»
Так я именно это вам и написал, кто сделок не производил после клиринга, им все откатилось, кто кинулся позы исправлять, те влетели в убытки.
Да и вам удачных и прибыльных сделок.
Евгений Нагайцев, Вы это лично помните или прочитали в интернете? ) Рисковики брокеров порезали у очень многих трейдеров ошибочные позиции, которые подтянулись в клиринг из тестовой базы нагрузочного тестирования. Были такие трейдеры, кто со счетом, например, 100тр, увидели у себя позы на миллионы. А после 23, когда позы были восстановлены на клиринг из боевой базы, биржа решила не откатывать сделки, а сальдировать их с правильными позами — и наступила вторая часть, когда рисковики резали позы обратно. В той ситуации не торговать спасло только тех, чьи брокеры сами считали и хранили данные по позициям клиентов, а таких брокеров было очень немного. Большинство брокеров просто транслировали биржевые данные. И никакой совершенный алгоритм не помог бы запретить рисковикам брокера порезать позиции клиента.
Или, банальное — день экспиры, пошел вынести мусор, застрял, су..., лифт. До экспиры 3 часа, а в те годы надо было подавать заявки на экспиру голосом по телефону, не подал заявку — подарил деньги. Телефон в лифте не ловит сеть. После того случая в дни экспиры не выходил из дома.
ignat, я помню, просто у меня брокер был полноразмерный «Атон», он не «просто транслировал сделки». Возможно на мой счет не наложились тестовые сделки, у меня проблем не было в тот раз.
ignat, у меня например, бот за 5 минут до и после начала сессии не торгует. И может заранее закрывать позу, если галочку выставить. Решение элементарное, сделал ещё лет 15 назад. Но на практике нюансов возникает много, да…
А вот когда алгоритм готов, попробуйте заложить в модель, скажем так, вторжение пришельцев, взрыв Йелоустоуна или СВО.
Да… И проверьте это на истории)) глубину тестирования выберите сами.))
Аркадий Никитин, «пришельцев, взрыв Йелоустоуна или СВО.
Да… И проверьте это на истории))»
А что у вас в истории есть и Йелоустоуна и Пришельцы? Я вообше не вижу особого смысла в глубоком тестировании алгоритма. Потому, что если на цену воздействуют периодические возмущения или сезонные факторы, то это легко закладывается в алгоритм, если происходит катаклизм, то его в истории не будет.
Тестирование алго имеет смысл только в выявлении явных ошибок в логике алгоритма, ну возможно в подборе каких то параметров (и то сомнительная идея постоянно подбирать параметры по истории)
Аркадий Никитин, «Всегда найдётся что-то, что Вы не учли…»
Точно, я в своем алгоритме закладывал возможность просадки 25-30%, а СВО обрушило на 50 и более))) В итоге роботы в какой то момент банально начали останавливаться из-за лимита средств выделенных роботу. Пришлось массово менять параметры для продолжения торгов. Как итог уменьшилась доходность алгоритма(( С этим не поспоспоришь, но роботы работать не перестали, с другой стороны не вижу смысла закладывать в алгоритм 50-70% просадку, это омертвление средств и как итог низкая доходность на портфель.
Странный подход. Алгоритмист и программист — это разные профессии. Программист — это просто носитель языка, например, китайского. Но не каждый китаец — это Мао Цзэдун. Улавливаете ход мысли?
А вы никогда не интересовались почему нет миллиардеров поднявшихся на алго. Зато есть миллиардеры поднявшиеся на брокерских конторах и биржах? Потому что деньги тут перераспределяются между игроками и правила постоянно подкрцчиваются. Например подняли комиссии… А так же некоторые игроки знают позиции других… Теперь сложно зарабатывать спекуляциями. Большими суммами вообще не провернешся. Делайте как другие миллиардеры — пусть играют по вашим правилам, но не играйте по чужим. Стройте свои биржи и брокерские конторы и домик лохов алготрейдеров…
Это я вам как прибыльный алготрейдер с 7 летним стажем у которого более 200 роботов разных говорю… Тут можно только маленькие деньги выхватывать аккуратно. С минимальным эи плечами и максимальной диверсификацией по рынкам. Реально мне бизнес на недвижке больше дал.
Laukar, бизнес по созданию брокерок такой-же, как и любой другой. У одного выходит круто, у 10 пустые хлопоты.
Да и в недвиге тоже, у одних хлеб с икрой, а у других вошь на аркане.
Laukar, «почему нет миллиардеров поднявшихся на алго. Зато есть миллиардеры поднявшиеся на брокерских конторах и биржах?»
А кто вам сказал, что нет миллиардеров на алго? Просто миллиардеры на алго не публичны, у них другие ниши в отличии от всяких Баффетов. Баффет зарабатывает на раскручивании собственного бренда, собственного фонда, поэтому вынужден постоянно рекламировать свою успешность. А алго любит тишину и спокойствие.
Евгений Нагайцев, ренессанс — алгофонды. Много других, с меньшими деньгами, менее раскрученных, даже неизвестных.
С другой стороны, возьмем Богла. Он же, по сути, тоже предложил рынку алготорговлю. Да, примитивную до ужаса. Но денег поднял, и чужих, и своих.
Евгений Нагайцев, то есть вы думаете что миллиардерам алготрейдерам не надо светиться, а миллиардерам — владельцам брокерских контор надо, поэтому их больше? Я думаю что брокерские конторы как раз и есть первые алготрейдеры сейчас — получили заявку на покупку по рынку, сами купили быстрее, а вам уже продали тут же по максимуму свечи… И так с каждой сделки… Вот она — золотая жила.
Laukar, «алготрейдерам не надо светиться, а миллиардерам — владельцам брокерских контор надо, поэтому их больше?»
Вы не поняли, миллардеров владельцев брокерских контор и фондов НЕ БОЛЬШЕ, просто они публичны, это им жизненно необходимо, это их реклама и способ привлечения клиентов, на которых они собственно и зарабатывают.
Алготрейдин в своей основе несколько другое (я не имею в виду конторы продажники готовых роботов, это в 95% кидалово), вы создаете алгоритм, оптимизируете его под алго и тихонько зарабатываете, в какой то момент, когда ваш доход становится стабильно достаточен для удовлетворения потребностей, алготрейдинг переходит из разряда инструмента заработка в хобби. По крайней мере десятки моих знакомых алготрейдеров говорят, что роботы для них уже хобби.
Алготрейдинг, по моему мнению, более интелектуален, чем ручной трейдинг. Ведь в ручном трейдинге большинство сделок совершаются по «наитию», а в алготрейдинге все должно быть просчитано до мелочей. А интелектуалы очень редко публичны.
Корзин Помойкович, ММ налоги не платит, у него работа, такая поддерживать баланс, иногда цену на определённом уровне, для того что бы шортонуть, надо в лонги засадить.
ИИС3 и НДФЛ с дохода по вкладам. Всем привет! Я ИП и получается, ндфл не плачу. Но у меня есть некий доход со вкладов, который облагается НДФЛ. НДФЛ со вкладов 2024 года я буду платить в 2025 году. В ...
ИИС3 и НДФЛ с дохода по вкладам. Всем привет! Я ИП и получается, ндфл не плачу. Но у меня есть некий доход со вкладов, который облагается НДФЛ. НДФЛ со вкладов 2024 года я буду платить в 2025 году. В ...
Dannip, на Рутуб-канале Селигдара, есть новостное видео (одно из последних), там на совещании техсовета присутствует Бейрит.
Во, нашёл — rutube.ru/video/6d6a611385aaf54cc2701e71584b40ad/?r=wd
Производство СПГ в России за 11 месяцев выросло на 6% до 31,4 млн тонн - Росстат Производство СПГ в России за 11 месяцев выросло на 6% — до 31,4 млн тонн — Росстат.
Авто-репост. Читать в бло...
Программирование — если Квик -Lua. Если более продвинуты, то С++ или Python.
Мне, как и большинству, пришлось остановиться в точке, далёкой от исчерпания всего.
Самое модное нейросети и Питон. Под них книга «Deep Learning with Python 2Ed» Fransois Chollet. Для инстоляции miniconda. После установки около 3Гб на диске.
Для начала лучше Анаконда — все уже включено. Или, почти все.
Анаконда больше 6 Гб невесть чего.
Да, и конды отстают по версиям Python, что иногда существенно. В 3.11 быстродействие на 25-75% выше. На конде еще 3.10.
Но начинал я с Анаконды (чтоб не заморачиваться) и долго на ней сидел.
PS к 6+ Гб Анаконды придётся добавить ещё 1.5 Гб Tensorflow с Kerasо'м.
Тебе и горький хрен — малина,
А мне и бланманже — полынь!» ©
Вот пример Deep
это keras
Для scikit-learn нормальная документация у них на сайте.
Инструментарий должен использоваться в соответствии с моделью. Если Хайкин помогает спать спокойно и не на голодный желудок — то (извиняюсь заранее) это самые примитивные модели рынка (IMHO)
С уважением
P.S. Нет никаких продвинутых методов. Есть
1. Феноменологический подход. Берем рынок и пытаемся понять (а не представить) его действующие закономерности
2. Модельный подход (мы вообразили, что знаем, как устроен рынок). Берем рынок — и пытаемся натянуть Хайкина на глобус )))
1. Применимость аппарата случайных процессов к рыночным ценам вообще неочевидна. Т.к. мы имеем дело ровно с одной реализацией случайного процесса, а для применимости в таком разрезе нужна строгая стационарность. На рынках никакой строгой стационарности процессов нет и в помине (легко проверяется), но есть стационарность в некоем широком смысле
2. Неустойчивость — есть свойство не самого случайного процесса, но используемых статистик. Если статистики неустойчивые (а они все неустойчивые, кроме МО — и выборочная дисперсия, и выборочные АКФ, и т.д.) — то они ничего умного и не покажут...
Так что в данном конкретном случае дело не в зауми, а в использовании плохоработающего или неработающего инструментария.
Лично я (IMHO) уверен, что традиционный инструментарий вообще не работает, поэтому и разрабатываю свой.
С уважением
Я использую то, что есть. Но в вашей специальности это не изучается. Назовем это — теория сигналов.
Даже книги приводил тебе, по которым я обучался
(моя бытность работы в ВПК)
Просто пытался пояснить тебе, что
1. На реальных рынках модель сигнал + аддитивный шум не работает ввиду соотношения (мощности) 1:50 в пользу шума
2. Модель сигнал * мультипликативный шум ты точно не рассматриваешь (судя по твоим приведенным выкладкам)
3. Именно для этого и нужны кастомные статистики
4. А еще проще от модели сигнал+шум отказаться вообще )))
С уважением
Да шум не совсем аддитивный, но и аддитивная компонента присутствует и не маленькая.
У меня другая модель рынка (хотя, твою достоверно не знаю).
Пока на этом и порешили.
С уважением
P.S. Про свою я и не писал ничего ))) И пока особо не собираюсь )))
Тот простой факт, что данная стратегия, которая работала в прошлом, останется работающей в будущем — это сложная теорема.
Отдельно доказываемая для каждого вида стратегии.
И да — комбинации МАшек не работают...
С уважением
1. При маркетном исполнении работают безусловно, давая средний результат на сделку меньше спрэда — фтоппку
2. При лимитном исполнении не работают безусловно, сливают стабильно
3. При твоем окне тестов в 50к баров максимум вполне могут работать. Но лично я не запускаю в продакшн ни один алго без уверенного результата в плюс хотя бы на 1.5 млн. баров
А так — да. Накоротке можно приготовить все, что угодно — МАшку, моментум, Боллинджер, кошку, наконец )))
С уважением
сейчас средний результат на годовом тесте BTCBUSD ~40п на сделку, хотя все отлаживалось на последнем квартале 22 года.
Комиссию окупает, примерно 1/4 от прибыли.
А ты говоришь миллионы отсчетов.
Кстати, я еще и не закончил.)) Маловато будет.
Просто лично у меня от устойчивой теормодели до бабла в кармане путь долгий и чисто технологичный. Т.к. надобно
1. Обеспечить бесперебойную работу системы
2. Быстрое восстановление после сбоев
3. Контроль позиции после сбоев (если система использует для анализа длинный массив предыдущих данных)
4. Защиту от биржевых сбоев
5. Контроль неполного исполнения лимитных ордеров
6. Механизм принудительного зафилливания лимитных ордеров
7. Ужас, ужас, ужас...
И это даже вкратце не все. Но это важно на депо хотя бы от $100k. На $1k вполне хватает ручного круглосуточного контроля )))
С уважением
Всю дату беру из api биржи, если надо протестировать что то специфическое, то yfinance или другие крупные источники. Но в основном хватает yfinance.
Стэк python, если нужна база данных, то postgresql, если нужен веб интерфейс, то django или fastapi, если интерфейс в телеграм боте, то aiogram (но это для особых потребностей в управлении процессом, в основном хватает голого api телеграма). Если разработка проекта на заказ, то docker.
Стэк в любом случае зависит от языка программирования, так что лучше бы для начала определиться с ним. Если цель конечно написать полноценный работающий переносимый и масштабируемый проект, а не просто скрипт для tradingview или однофайловый бот и логикой в 50 строк кода.
1 для алго нужен прокаченный технический скилл + программирование… а если у тебя оно прокаченно, то зачем тебе биржа? итак будет зарплата в овердокуя баксов… я кстати жалею иногда о своем выборе… алго занялся в 2006ом а синие визы в ес появились в 2007ом...
2 алготрейдинг закрытая отрасль прежде чем начнешь шарить в теме пройдет лет 10… и без гарантий результата… т.е можно просто напрасно потерять время и стать при этом хиккой
3 обычно делают так — сначала придумают мтс… которую торгуют руками… затем делают частичную автоматизацию… затем полную автоматизацию..
4 попробуй просто делать исследования рынка… но тут нужны идеи которые нарабатываюся с опытом… обычно это простые вещи типа тест портфеля
5 наиболее прост — тслаб… не требует знаний программирования… и т.к все из стандартных кубиков — не требует отладки…
А дальше тестировать можно уже как угодно, хоть в Экселе, хоть тс лабом для начала
А так есть два подхода:
1) Наблюдать за рынком, искать закономерности, их бэктестить, и реализовывать
2) Укуриваться матаном, если нет матиматического образования или сопоставимой практики, особо не советую.
Но какие-то основы изучить можно, найди какой ни буть совсем простой учебник по матану и теорверу, разберись что такое плотность вероятности, корреляция, центральная предельная теорема, этого достаточно чтобы мозги встали в нужное русло.
Хреново конечно, что вы до сих пор ни одного коммента в своей теме не написали. Может опять какой chatgpt или бот
Но лично я уже года 3 как занимаюсь прототипированием, тестами и публикацией рабочих алго на Matlab.
Далее специально обученные программисты сшивают код алго с кодом модели исполнения (обычно это C#)
Низкоуровневые слои (коннекторы etc.) пишутся на чем угодно. Но обычно это тот же C# и С++.
Как-то так
С уважением
С уважением
Если ты надеешься в алготрейдинге найти (или вычислить, создать) прибыльную систему, то этого не будет, не поиогут не нейронные сети, ни присловутый ИИ.
Единственный смысл алготрейдинга это высвобождение времени от рутинных расчетов и убивания времни на сидение перед монитором. Все кто говорит что то другое просто врут.
А посему, если нашел свою стратегию (свой Грааль) не важно на каком яхыке и как ты его реализуешь в алго.
Если стратегии пока нет, займись поиском, а не алготрейдингом.
Единственное, чем тебе можно помочь, это уберечь от безполезных поисков в некоторых направлениях.
Сначала найти идею — в экселе или через питон. Потом сделать простой логгер на бесплатном брокерском апи и проверить идею.
И алго — это не запустил робота и уехал по делам, невозможно учесть все ошибки. Потому алго — запустил робота и постоянно проверяешь, как он работает.
Доходность 20-27% руками — отличная. На алго может быть чуть больше, но не в разы.
Вы и правы и не правы одновременно. Основа робота алгоритм, точнее идея алгоритма. Реализация алгоритма в роботе всегда вторична. Отладка кода не займет много времени.
Поэтому в принципе, запустил робота и уехал по делам, это вполне рабочий вариант.
Но с другой стороны, рынок не статичен, поэтому переодически возникают катаклизмы, когда цены выходят за расчетные в алгоритме параметры. В этом случае требуется либо просто менять параметры (следить как работает робот), либо искать идею как обработат исключения выхода цены за расчетные параметры алгоритма, СОВЕРШЕНСТВОВАТЬ РОБОТА, или алгоритм.
Я 5 лет оттачивал реализацию идеи в роботе, уже 2,5 года у меня работает последняя версия (пережила СВО без изменений), поэтому последние 2,5 года у меня работает принцип «включил и ушел по делам», вечером пришел посмотрел поведение рынка и как отработал робот.
Правда сейчас появилилось пара идей, которые собираюсь рееализовать в новой версии)).
«Доходность 20-27% руками — отличная. На алго может быть чуть больше, но не в разы.»
Совершенно верно, правда я думаю, алго с одной стороны не пропустит сделки, но с другой стороны алго это все же поиск компромисов. Поэтому однозначно говоритьбудет ли доходность алго больше ручной торговли, я бы не стал.
Например, комп с оперативкой 32гиг ловит примерно 4 битфлипа в сутки от космического излучения. И это может оказаться как раз тот самый bool, который отвечает за купить\продать.
Если Вы оставляете робота и «вечером пришел посмотрел» — ну успеха Вам, немало алго на этом погорели, будучи абсолютно уверенными в своем коде.
Код без ошибок все же бывает. Тем более код выверенный за промежуток в несколько лет.
«например вечерней сессии в день объединения бирж — и никакое совершенствование алгоритма не поможет,»
Тут вот вопрос не в коде, а в алгоритме. Вы думаете только у вас утренние вечерние выбросы? У меня алгоритм отрабатывает это нормально, в нем это предусмотрено.
«Или нефть по 8»
Это уже вопрос параметров алгоритма заложенный у вас)).
«брокер начинает транслировать неправильные позы, или бид начинает приходить выше аска. И таких причин настолько много, что учесть всё невозможно.»
опять же зависит от алгоритма, какими данными вы оперируете, у меня алгоритм работает по соверщенным сделкам, и нет сделок по рынку, только лимитки, поэтому все сказаное вами автоматически отфильтровывается алгоритмом.
«тот самый bool, который отвечает за купить\продать.»
И снова, лимитка отфильтровывает все эти bool, поверьте.
«Если Вы оставляете робота и «вечером пришел посмотрел» — ну успеха Вам, немало алго на этом погорели, будучи абсолютно уверенными в своем коде.»
Я уверен не в коде, а в алгоритме, и уверенность укрепляет работа до, в момент начала СВО и весь год течения СВО. И работа именно в режиме «включил и пошел по своим делам».
Возможно вы говорите об алго где определяет сделки не алгоритм, а именно «интелектуальная программа на нейронных сетях с продвинутым искусственным интелектом), купленная с 50% скидкой только 2 дня». Я не знаю, у меня алгоритм мною разработан, робот мною написан.
Про код без ошибок (на всех сторонах — и в роботе, и у всех провайдеров по пути, и у брокера и и биржи) — блажен верующий )
Должен заметить, что это был не первый и не последний сбой в системе биржи. Последний который наблюдал своими глазами был в январе 2023. У меня Роботы среагировали адекватно. Так, что вы ошибаетесь, я прекрасно представляю происходившее и происходящеее переодически.
«Про код без ошибок (на всех сторонах — и в роботе, и у всех провайдеров по пути, и у брокера и и биржи) — блажен верующий )»
Вы путаете код робота со сбоями связи, если судить по написанному вами. Сбои с передачей данных фиксируются переодически, но системы уже давно научились на низ реагировать путем подтверждения целостности «телегаммы» через возврат хеш функций. У меня пояляется сообщение «невозможно прочитать данные из транспортного потока».
Я не знаю вашего уровня, и вашего опыта в алго, но пока из того, что вы пишите ваши познания кажутся поверхностными.
Впрочем, полемика бессмысленна. Я реально Вам желаю работы робота без сбоев.
Так я именно это вам и написал, кто сделок не производил после клиринга, им все откатилось, кто кинулся позы исправлять, те влетели в убытки.
Да и вам удачных и прибыльных сделок.
Или, банальное — день экспиры, пошел вынести мусор, застрял, су..., лифт. До экспиры 3 часа, а в те годы надо было подавать заявки на экспиру голосом по телефону, не подал заявку — подарил деньги. Телефон в лифте не ловит сеть. После того случая в дни экспиры не выходил из дома.
Да… И проверьте это на истории)) глубину тестирования выберите сами.))
Да… И проверьте это на истории))»
А что у вас в истории есть и Йелоустоуна и Пришельцы? Я вообше не вижу особого смысла в глубоком тестировании алгоритма. Потому, что если на цену воздействуют периодические возмущения или сезонные факторы, то это легко закладывается в алгоритм, если происходит катаклизм, то его в истории не будет.
Тестирование алго имеет смысл только в выявлении явных ошибок в логике алгоритма, ну возможно в подборе каких то параметров (и то сомнительная идея постоянно подбирать параметры по истории)
Всегда найдётся что-то, что Вы не учли…
Точно, я в своем алгоритме закладывал возможность просадки 25-30%, а СВО обрушило на 50 и более))) В итоге роботы в какой то момент банально начали останавливаться из-за лимита средств выделенных роботу. Пришлось массово менять параметры для продолжения торгов. Как итог уменьшилась доходность алгоритма(( С этим не поспоспоришь, но роботы работать не перестали, с другой стороны не вижу смысла закладывать в алгоритм 50-70% просадку, это омертвление средств и как итог низкая доходность на портфель.
Это я вам как прибыльный алготрейдер с 7 летним стажем у которого более 200 роботов разных говорю… Тут можно только маленькие деньги выхватывать аккуратно. С минимальным эи плечами и максимальной диверсификацией по рынкам. Реально мне бизнес на недвижке больше дал.
Да и в недвиге тоже, у одних хлеб с икрой, а у других вошь на аркане.
А кто вам сказал, что нет миллиардеров на алго? Просто миллиардеры на алго не публичны, у них другие ниши в отличии от всяких Баффетов. Баффет зарабатывает на раскручивании собственного бренда, собственного фонда, поэтому вынужден постоянно рекламировать свою успешность. А алго любит тишину и спокойствие.
С другой стороны, возьмем Богла. Он же, по сути, тоже предложил рынку алготорговлю. Да, примитивную до ужаса. Но денег поднял, и чужих, и своих.
Вы не поняли, миллардеров владельцев брокерских контор и фондов НЕ БОЛЬШЕ, просто они публичны, это им жизненно необходимо, это их реклама и способ привлечения клиентов, на которых они собственно и зарабатывают.
Алготрейдин в своей основе несколько другое (я не имею в виду конторы продажники готовых роботов, это в 95% кидалово), вы создаете алгоритм, оптимизируете его под алго и тихонько зарабатываете, в какой то момент, когда ваш доход становится стабильно достаточен для удовлетворения потребностей, алготрейдинг переходит из разряда инструмента заработка в хобби. По крайней мере десятки моих знакомых алготрейдеров говорят, что роботы для них уже хобби.
Алготрейдинг, по моему мнению, более интелектуален, чем ручной трейдинг. Ведь в ручном трейдинге большинство сделок совершаются по «наитию», а в алготрейдинге все должно быть просчитано до мелочей. А интелектуалы очень редко публичны.