myaucha
myaucha личный блог
17 октября 2024, 15:15

Алготрейдинг: Начало

Сейчас выдалась свободная «минутка», и я решил попробовать принести немного пользы начинающим трейдерам-программистам.

Кто является целевой аудиторией данного топика?!

1. Вчерашние студенты IT-специальностей
2. Уставшие или выгоревшие IT-специалисты с опытом
3. IT-специалисты-пенсионеры, для которых садовый сезон подошел к своему логическому завершению
4. Остальные, кто имеет навыки программирования и интересуется трейдингом

Теперь, кто не является целевой аудиторией.

1. Опытные трейдеры-алгоритмисты
2. Инвесторы — те, кто покупают активы и держат 
3. Трейдеры-фундаменталисты и теханализаторы

Это не потому, что я считаю их способ торговли ошибочным или сомнительным, а потому, что для одних это будет банально, а для других мало интересно в принципе.

Кроме того, хочу отметить, что это лишь один из подходов к автоматизации торговли, но далеко не единственный.

Шаг 1. Самоопределение.

Если инвестирование вам не очень интересно, но у вас есть некий капитал, то просто отнесите средства в банк под процент.

Если для вас актуален вопрос сохранения нажитого непосильным трудом, то купите объект недвижимости.

Если вас интересуют вопросы инвестирования на долгий срок, то купите акции или облигации и держите, получая купоны и дивиденды.

Если у вас мало свободных средств, но есть навыки программирования, то попробуйте себя в автоматизированной торговле. Что значит попробуйте?! Это означает, что есть естественные причины, которые этому могут препятствовать. И первая из них — свободное время. Большую часть своего времени мы тратим на работу и сон. Остальное на семью — детей, жену, родителей. Еще какую-то часть на еду, друзей и совсем немного на себя.

Алгоритмический трейдинг требует времени. Сколько?! Много. Точно не скажет никто. У всех разные стартовые возможности — уровень образования и интеллекта. Но времени потребуется все равно много. Если вы не обладаете свободным временем, значит сразу идем в инвесторы и пытаем удачу там.

Если вы относительно молоды (хотя это совсем необязательно), у вас нет семьи, вы можете после работы позволить себе «вторую» смену… Или если вы готовы посвятить свои выходные кодингу или чтению техлитературы… Или сделать паузу по вашему основному месту работы (что не рекомендую, но делал неоднократно сам)… Или если вы пенсионер и мозг ваш еще не раскис и сохранился хоть какой-то интерес к научным (или псевдонаучным) изысканиям… то можно попробовать себя в алгоритмической торговле. Если у вас на работе есть временные «окна», то тоже можно попробовать, но как правило, продуктивность таких попыток не впечатляет, а вот на основной работе точно скажется негативно. 

И важный момент! Не думайте о профите. Думайте о системе и ее будущей технической реализации. И не торопитесь!

Шаг 2. Выбор брокера?!

Это не значит, что вы должны бежать и открывать брокерский счет, но вы должны получить начальное представление о том, какие бесплатные (это важно) интерфейсы к биржевым торгам они предоставляют. Оценить их тарифы и комиссии на разных рынках (основной раздел счета у брокера — фондовый, долговой, валютный и, особняком, срочный). Ну и понятное дело — если вы хотите провести такой анализ, то какой-то бэкграунд того, как устроена торговля на бирже, чем торгуют и т.п. должен все-таки быть. То есть какие-то книжки должны к этому моменту быть прочитаны, а также желательно, но необязательно, чтобы был небольшой торговый опыт (почувствовать что значит выставить заявку, снять ее или исполнить). 

То есть цель этого этапа выбрать тариф без абонентской платы и бесплатный торговый терминал. При выборе терминала важно уделить внимание, чтобы он поддерживался разными брокерами и уже продолжительное время. Это позволит в будущем легко переходить от одного брокера к другому, при желании.

Так ли нужен брокер, чтобы начать?! На самом деле нет. Например (не в целях рекламы), компания ARQA предоставляет доступ к демо-торгам через торговый терминал QUIK, который поддерживают многие брокеры и который уже существует и развивается (ну не особо развивается, конечно, но это даже в плюс — стабильность) продолжительное время. Скачать дистрибутив у них можно на сайте, а затем и получить доступ (ключи). По другим терминалам не скажу. Не исключаю, что есть нечто подобное и у других производителей.

В общем начинать писать свою торговую систему можно и без счета у брокера. Здесь же можно получить и навыки выставления заявок в ручном режиме. Я бы даже рекомендовал начинать именно с этого, а затем уже плавно переходить на терминал брокера. Демо-торги у ARQA отличаются от реальных торгов набором инструментов, их параметрами, интенсивностью, временем проведения. Даже перейдя на терминал брокера совсем необязательно заключать реальные сделки. Вы можете предусмотреть в своей будущей системе возможность заключения виртуальных сделок на основе реальных данных.

Шаг 3. На чем писать?!

Это ответственный момент. Неверный выбор инструментария может привести к потере времени и полному сворачиванию трейдерских потуг. Если вы пишете на основной работе на высокоуровневых прикладных языках (например 1С, SQL, Java-фреймворки под web-разработку и т.п.), то лучше приготовтесь освоить что-нибудь пониже. Опускаться до C или C++ острой необходимости нет, но что-то C#-подобное или Java-подобное имеет смысл рассмотреть. Есть и специализированные языки. Например, многие используют язык и библиотеки самого терминала. В упомянутом выше QUIK-е это LUA. Но любой встроенный язык — это всегда потенциальные ограничения, с которыми рано или поздно приходится сталкиваться. Кроме того, не стоит забывать, что в идеале ваша торговая система должна быть независима от терминала или относительно легко переносима на другой (ну это в идеале).

Глубокое освоение нового языка не требуется. Например, в C# достаточно освоить базу (классические конструкции процедурных языков, классы, коллекции, события). Ну и важная часть — потоки. Вы должны понимать суть работы потоков и управления ими. Как частный случай, понимать принцип работы однопоточного аппартамента (это когда методы класса вызываются самим экземпляром в своем потоке и ни один поток извне не может обратиться к методу напрямую, только через proxy-вызов). Плюс немного знаний по интеграции DLL-библиотек в свои приложения (примеров в сети достаточно).

Можно ли писать на современных и модных языках?! Смотря какая цель. Я подразумеваю, что начинающий алгоритмист не имеет четкого видения стратегии будущей торговли. Если попытаться взять условный Python и задаться целью прикрутить AI к своей системе без понимания того, на чем, собственно, и как будем зарабатывать, то это кажется бессмысленной затеей. Можно ли скачать исторические данные по инструменту и на них натравить умные библиотеки AI с целью выявления закономерностей? Можно. Здесь не к языку или библиотекам вопросы, а к вашему опыту. Достаточно ли вы подкованы математически, интеллектуально, и обладаете пониманием того, что ищете и что делаете. Я вот, например, не специалист. Для меня AI — апроксиматор и не более того. И если бы мне пришлось осваивать сначала все прелести AI-библиотек для поиска закономерностей, а потом еще писать торговую систему, то процесс явно затянулся. Мы же сейчас пытаемся пройти коротким путем, проторенной дорожкой.

Следует понимать, что в процессе создания торговой системы (не путать с торговой стратегией) вы можете (но не обязаны) параллельно исследовать исторические данные (не важно на чем, на VBA for Excel, Python, или более специфических языках/платформах), читать спецификации на инструменты, правила выхода на исполнение контрактов у вашего брокера, строить и проверять гипотезы. Но если у вас не будет работающего приложения (торговой системы), способной проверить вашу гипотезу на реальных торгах (выставлять и снимать заявки, проще говоря), то ваши многочисленные изыскания на «свечках» так и останутся гипотезами. К тому же, как показывает практика (моя, не ваша), очень многие гипотезы, не имеющие строгого математического обоснования, не более чем выдавание желаемого за действительное, иными словами — подгонка.

Шаг 4. Как писать?!

Начинать от частного к общему. Например, сделать акцент на приеме данных из терминала. В моем случае это был QUIK и DDE-протокол. Торговый терминал состоит из окон, которые вы создаете и настраиваете сами. Чтобы ваше приложение (торговая система) могло оперировать этими данными, нужно научиться получать их из этих окон в режиме онлайн. 

Далее можно заняться выставлением заявок из вашего приложения в QUIK и получением реакции (событий) на их исполнение (или не исполнение).

В итоге вы получите два разрозненых кусочка условно полезного кода, каждый из которых состоит из нескольких классов. Следующим этапом будет оформление их в некий промежуточный слой обмена данными с терминалом. По сути, это сведение и «причесывание» того, что уже сделано.

Над слоем обмена данными с терминалом надо построить интерфейсный торговый слой. Название может быть не самым удачным, но смылс этого слоя заключается в создании интерфеса, независимого от терминала, в который войдут методы выставления заявок, их снятия, события на заключенные сделки, снятые заявки, события на изменение котировок, баланса торгового счета и прочее. 

Затем необходимо создать интерфейс для торговой стратегии. Реализацией этого интерфейса может быть абстрактный класс с условным названием Алгоритм. Все методы этого класса должны вызываться в его родном потоке, то есть экземпляр класса создает поток, в который любой другой поток (например, с уровня интрефесного торгового слоя, но не он один) может передавать данные только посредством прокси-вызовов. Этот процесс называется маршалингом. Я, например, не использолвал какие-то стандартные средства для маршалинга, а реализовывал свой (классическим способом — через очередь). Каждая реализация класса Алгоритм имеет собственный список инструментов, собственный список заявок, сделок и т.п. Алгоритмы друг о друге ничего не знают.

Поскольку торговая система — это приложение, то самым простым способом его реализации является консольный вариант (мы хоть и не торопимся, но хотим увидеть результат побыстрее). Консольное приложение подразумевает некий способ взаимодействия с ним. Самым простым способом взаимодействия является командная строка. Поэтому необходимо создать еще один интерфесный слой контроля над алгоритмами. Этот слой ответственен за запуск алгоритмов, их остановку, мониторинг за их активностью, а также имеет набор сервисных функций, которые позволяют получать статистические данные по инструментам и о ходе торгов. Этот слой также интегрируется с другими сервисными слоями для логирования хода торгов (файл) или сохраниния результата торгов (инструментов, заявок, сделок, и прочего) в локальной базе данных в разрезе каждого алгоритма. Вся интеграция осуществляется посредством межпоточного взаимодействия, аналогичного описанному ранее для класса Алгоритм.

Естественно, необходимо предусмотреть сервисные классы по разным классам инструментов, заявкам, сделкам, в которых реализуется базовая логика расчета доходности, комиссий, открытых позиций и прочего, но все это уже помещается, как в контейнер, в класс алгоритма. Если вы собираетесь получать данные по свечкам и анализировать бары, то вам придется тоже создать свой сервисный класс и обеспечить всю расчетную часть. В этот момент может возникнуть вопрос, а может надо было все-таки изучать LUA и не городить огород?! Этот пост в целом предлагает читателю подумать и принять правильное (или неправильное) решение. Мне, например, анализ свечек пока не был нужен в торговой стратегии. Анализ свечек можно проводить на исторических данных в других инструментальных средах, то есть это отдельная исследовательская работа, которая позволяет сформировать некую идею. Но проверять эту идею придется в торговой системе. Например, можно взять два инструмента, акцию и фьючерс на нее, и визуально исследовать их график на разных тайм-фреймах, почитать спецификацию, почитать регламент брокера. Из спецификации понять, что к моменту экспирации цены сходятся. Из регламента — что ваш брокер не даст вам выйти на исполнение контракта. Из графика — убедиться, что цены при экспирации сходятся, но бывают и расхождения. Подумать и логически объяснить причину такого поведения. Посмотреть каким образом можно уменьшить риски — возможно стоит сменить брокера на другого, который предоставляет более удобный способ торговли фьючерсами и акциями с одного счета и т.д. Из приведенного примера понятно, что речь идет об арбитражной стратегии и для ее простой версии реализации свечки не нужны (и спички тоже).

Что касается производительности и нагрузки на компьютер. В свое время запускал около 20 алгоритмов одновременно и нагрузка на систему составляла не более 3-5% на слабеньком компе не помню даже какого года. Потребление памяти тоже было минимальным (ну тут все зависит от того какую логику накрутить и сколько данных напихать). 

Шаг 5. Как использовать?!

Когда все необходимое написано можно приступать к опытной эксплуатации. Для этого следует создать новый класс, наследуя классу Алгоритм. На начальном этапе для проверки достаточно реализовать какой-нибудь простенький вариант алгоритма усреднения для нескольких заранее отобранных акций. Основная задача не получить прибыль, а совершать в автоматическом режиме сделки и наблюдать за системой. Не исключено, что и появится первая прибыль (или убыток). Разумеется будут возникать различные траблы, вы их будете решать, но в конце концов все начинает работать стабильно (если написано без спешки и продуманно).

Затем приходит черед создания второго алгоритма, посредством копирования первого. Вносим некоторые корректировки в параметры и получаем две работающие параллельно стратегии, но немного отличные друг от друга. Когда их становится *цать, приходит понимание ради чего все это затевалось.

Дальшнейшие, более «умные» стратегии и усложение самой системы сугубо зависит от вас. Но могу сказать, что создание простых алгоритмов и проверка их жизнеспособности в работающей торговой системой занимает не очень много времени, чем когда системы нет вообще.

Шаг 6. Тотальная автоматизация

Если вы работаете по основному месту, и ваша работа мешает торговому процессу, то автоматизируйте торговый процесс. Для вашей торговой системы необходимо создать оболочку на любом скриптовом языке, который будет запускать терминал, ваше приложение, связывать их вместе, запускать прием данных (начинать торговый процесс), останавливать торги в конце сессии, сохранять результаты торгов в локальной базе данных, перезапускать все это в случае сбоев (в основном сбоит канал связи и QUIK).

И да, не пользуйтесь Yota. Никогда, никогда, ни при каких обстоятельствах, не пользуйтесь Yota-модемом. Не повторяйте чужих ошибок. Да, я пользуюсь, но давно хочу «завязать». 

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

Шаг 7. Вывод

То, что написано выше — не панацея. Можно взять Python или что-нибудь еще более заточенное под биржевые торги, выкачать данные с Финам или из того же QUIK-а и сидеть «шаманить» над ними, искать корреляции, раскорреляции и прочие фелляции. После чего взять за правило каждый день выгружать данные по интересующим инструментам, получать торговые сигналы и выставлять на их основе заявки (возможно даже вручную) в торговый терминал. Тоже вариант. Но вот меня такой расклад не устроил. Я за полную автоматизацию с возможностью находиться в рынке ежесекундно, чтобы можно было забирать случайные неэффективности. И помните, для создания прибыльных стратегий нужны две вещи — умение читать (спецификации, регламенты брокера, тарифы) и здравый смысл. Обилие умных книжек только отнимет у вас время — в них красивые формулы, но у вас вполне возможно не хватит понимания как их применять в биржевой торговле и где конкретно.

PS: Как там пишут в конце… все описанное выше не является торговой идеей. Так вот… как раз все, написанное выше, является торговой идеей. За вами остается лишь ее реализация.

PS2: Насчет моей торговли и ее прибыльности. Торговля ведется в автоматическом режиме, прибыль есть, но весьма скромная







93 Комментария
  • Head of Algonaft'$
    17 октября 2024, 15:20
    Класс!!! Все в точку… остался только один вопрос: а где взять РАБОЧИЙ алгоритм?
  • Head of Algonaft'$
    17 октября 2024, 15:22
    И помните, для создания прибыльных стратегий нужны две вещи — умение читать (спецификации, регламенты брокера, тарифы) и здравый смысл.

    Первое — полный фуфел! Второе — это дополнение к… РАБОЧЕМУ алгоритму!!! Вопрос тот же: где ЕГО взять?!
    • Дмитрий Овчинников
      17 октября 2024, 15:27
      Head of Algonaft'$, 
      ну как где? Украсть же, еще Пикассо завещал: «Хорошие художники копируют, великие — воруют» ©
      • Head of Algonaft'$
        17 октября 2024, 15:29
        Дмитрий Овчинников, "… имя, сестра! ИМЯ?!" (к\ф Три Мушкетера)
        • Дмитрий Овчинников
          17 октября 2024, 16:21
          Head of Algonaft'$, 
          алготрейдеры периодически продают системы. Начиная от Силаева, заканчивая Пратрейдером. Старые продукты можно найти бесплатно или за совсем малые деньги. 
          Более того, есть изначально бесплатные варианты систем, как например в курсе у Жени Ни.

          • Head of Algonaft'$
            17 октября 2024, 16:27
            Дмитрий Овчинников, вы прикалываетесь?))) Все, кто что-то там продают типа рабочее алго — конченные околорыночники!!! Ничего из того, что они продают — не работает!!! Вообще ничего! Ибо рабочую систему не продают!
            Я задавал вопрос про РАБОЧУЮ систему)))
            • SergeyJu
              17 октября 2024, 16:33
              Head of Algonaft'$, одну систему (простушку, для) покупали у Силаева. Рабочая, но мои чуточку лучше. Так что если и будем его систему использовать, то только для диверсификации. 
              • Head of Algonaft'$
                17 октября 2024, 16:35
                SergeyJu, ну блин) если вы сами делали свои  системы, то надо тренировать уже себя на создание других систем! Смотреть на рынок под другим углом надо всегда — это чистое творчество! Не понимаю я покупок чужого…
                • SergeyJu
                  17 октября 2024, 16:41
                  Head of Algonaft'$, Вы как вчера родились, ей Богу. Я этих систем прорву настругал, некоторые даже оказались рабочими на долгосроке. А вот посмотреть, что делают люди, интересно, вдруг, свежая идея возникнет. Нельзя многие годы вариться в собственном соку.  
              • Сергей777
                17 октября 2024, 19:17
                SergeyJu, отличная система на пересечении двух ema за 50 тысяч)
                • SergeyJu
                  17 октября 2024, 19:20
                  Сергей777, Вы не знаете того, о чем пишете. 
                  • Сергей777
                    17 октября 2024, 19:31
                    SergeyJu, вам прислать pdf его системы?
                    • SergeyJu
                      17 октября 2024, 19:34
                      Сергей777, мне чужого не надо. То, что было оплачено и получено — работает без машек. Хотя и есть оговорка, что в одно место можно засунуть машку. Только не туда, что прикольно, куда её все обычно суют. 
            • Дмитрий Овчинников
              17 октября 2024, 16:35
              Head of Algonaft'$, 
              то, что отдавал Женя Ни у него работает в Comon. Точнее является прототипом того, что работает сейчас. Да и у Силаева работает.
              Если вы не в теме, не надо повышать на меня голос, минусить, писать капсом и ставить множество восклицательных знаков, иначе быстро уедете в ЧС.
              • Head of Algonaft'$
                17 октября 2024, 16:37
                Дмитрий Овчинников, ну если вы мнительный школьник, там есть кнопка — бан. Я переживать не буду, если впредь общение будет без дураков, по типу вас))) и да… я не в теме!
            • Beach Bunny
              17 октября 2024, 16:44
              Head of Algonaft'$, у обоих и у Ни и у Силаева системы работают, да системы тупые, НО работают же.
              • Head of Algonaft'$
                17 октября 2024, 16:46
                Beach Bunny, Блин, но что работает и вы можете написать! Вопрос только сколько приносит… любой тупой ТА засовываете и я вам такой бэктест покажу — в обморок упадете, только покупайте у меня!!
                • Beach Bunny
                  17 октября 2024, 16:50
                  Head of Algonaft'$, нехрен мне твой бектест, у меня в продакшене это работало до 2022 и зарабатывало.
            • Фёдор Г.
              17 октября 2024, 18:57
              Head of Algonaft'$, это вопрос определения «рабочей» системы. Для кого то рабочая система это альфа + 5 процентов к рынку. И это лучше большинства ПИФов, думаю, на этом форуме такие системы и не котируются) Вопрос ещё сколько денег можно влить в систему без деградации. Вот люди такие системы и могут продавать.
          • Beach Bunny
            17 октября 2024, 16:42
            Дмитрий Овчинников, и у обоих тупые системы на машках.
            Они конечно работают, НО периодически длинные периоды просадок, и это может быть и до 9 месяцев.
            Но как исходный пример можно смотреть.

            • Дмитрий Овчинников
              17 октября 2024, 16:53
              Beach Bunny, 
              я знаю эти системы.
            • SergeyJu
              17 октября 2024, 19:25
              Beach Bunny, почти все работающие системы — тупые. Но вот та, что я видел у Силаева, не на машках. Да и у меня мало систем на машках. Хотя тоже — тупые. 
              Кстати, длинные периоды просадок обычно неизбежная плата трендовых систем за неплохую долгосрочную доходность. 
              А нетупой подход заключается в диверсификации по активам и системам. Я больше времени, кстати, трачу именно на метасистемы, то есть системы управления портфелем систем. 
              • Beach Bunny
                17 октября 2024, 20:05
                SergeyJu, та которая простушка может и не на машках, не видел, а вторая на машках — я полное авторское описание читал
                • SergeyJu
                  17 октября 2024, 20:34
                  Beach Bunny, не вижу ничего плохого в использовании машек. Топор используют с каменного века, и никто его выкинуть из магазинов и из сараев пока не планирует. У меня есть системы с машками ( не более одной в системе), есть без машек. Есть с оценкой волы, есть без оценки волы. Есть с сезонностью. Не так уж много у нас инструментов, чтобы так вот, о машках, через губу разговаривать. 
                  • Beach Bunny
                    17 октября 2024, 21:03
                    SergeyJu, я и не писал что это плохо.
                    Я писал что системы достаточно тупые и тем НЕ МЕНЕЕ зарабатывают.
                    А вообще, давно уже есть более современные варианты замены SMA/EMA ;
                    с min задержками и без необходимости иметь длинный массив предыдущих значений. Для SMA10 — надо иметь 10предыдущих значений цены, а для EMA10 уже надо примерно 27предыдущих значений.
                    И тд и тп.
                    • __rtx
                      18 октября 2024, 21:17
                        
                      • Beach Bunny
                        17 октября 2024, 21:25
                        __rtx,
                        Два значения это если у тебя есть предыдущее значение EMA, а если лет то N*2.7 
                        Давай посчитай сколько будет EMA10 для ряда с 2мя значениями цены
                        Close=10
                        Close=20
                        ты же всегда по двум значениям считаешь
                        • __rtx
                          18 октября 2024, 21:17
                            
                          • Beach Bunny
                            17 октября 2024, 22:05
                            __rtx, да, да,
                            берем к примеру EMA5
                            для ряда
                            2
                            2
                            2
                            3
                            3
                            4
                            4
                            5
                            5
                            6
                            6
                            7
                            7
                            4
                            4
                            Посчитай для него EMA5 по всем 15 значениям
                            Так же посчитай EMA5 только по 5 последним значениям.
                            6
                            7
                            7
                            4
                            4
                            И сравни.
                            p.s
                            Не люблю душно-альтернативно одаренных.
                            • __rtx
                              18 октября 2024, 21:16
                                
                              • Beach Bunny
                                17 октября 2024, 22:43
                                __rtx, там один коэфициент который альфа=2/(N+1)
                                все остальное это уже не EMA, а что-то другое.
                                • __rtx
                                  18 октября 2024, 21:16
                                    
                            • __rtx
                              18 октября 2024, 21:16
                                
                          • SergeyJu
                            18 октября 2024, 09:28
                            __rtx, если использовать номер отсчета или переменный весовой к-т, можно начинать считать с первой же точки.
                            Используя частичную сумму арифметической прогрессии.
                            • __rtx
                              18 октября 2024, 21:15
                                
                              • SergeyJu
                                18 октября 2024, 15:19
                                __rtx, ну, мелкие вычислительные лайфхаки каждый, я надеюсь, может придумать и применить. Только это все не про рынок, а так, школьный уровень. Лет 10 назад был на небольшом сейшене по поводу алготорговли. Разные люди что-то докладывали. Я тоже  выступил, но как-то коряво. Не как другие, в стиле великий победитель рынка, а как сомневающийся подмастерье. Один господин тоже выпадал из тренда, он рассказал о своем исследовании разных способов расчета волатильности. Помнится, что способов было около 30, а критериев «хорошести» тоже было неслабо, больше 3 заведомо.  Что меня удивило, ни один из способов не был использован для построения торговой системы. В общем — эмпирика наш рулевой, а долгие штудии из теории приближений, матстатистики или, как сейчас модно, глубочайшего обучения, в основном туманят мозги. 
                                • __rtx
                                  18 октября 2024, 21:15
                                    
                                  • SergeyJu
                                    18 октября 2024, 18:41
                                    __rtx, SMA считается тоже тривиально. 
                                    Нужно взять новый отсчет, вычесть из него уходящий, разделить на число компонент SMA и прибавить к старому значению скользяшки. 
                                    Суммировать каждый раз все в окне, как обычно пишут в прогах для трейдеров, не обязательно. 
                                    • __rtx
                                      18 октября 2024, 21:14
                                        
                                    • Дмитрий Овчинников
                                      19 октября 2024, 21:20
                                      SergeyJu, 
                                      а потом в реале один раз ошибка и вы тащите эту ошибку всю оставшуюся жизнь. надо периодически пересчитывать «традиционно», но это уже нюансы, из которых, собственно и складывается или НЕ складывается алготрейдинг.
                                      • SergeyJu
                                        19 октября 2024, 21:32
                                        Дмитрий Овчинников, я не использую SMA. А ЕМА при любой ошибке сходится куда надо. Да и ошибок такого рода я что-то у себя не помню. В любом случае какой-то контроль все равно приходится вести. 
                                        Как-то обнаружилась неправильная обработка дивов. Но это, считай,  мелочь. Вот то, что работающая система перестала работать (постоянно или временно, Бог весть) уже может быть реальной неприятностью. Так что диверсификация, вот что написано за знамени нашей дружины.   
                                        • Дмитрий Овчинников
                                          19 октября 2024, 22:03
                                          SergeyJu, 
                                          я до сих пор не могу понять что значит «перестала работать», это какая-то бинарная логика. В моей диверсификации система получает меньше денег при плохой работе и это процесс длительный. Конечно, если денег на систему по параметрам выделеяется настолько мало, что мне уже кажется нет смысла ее процессить, тогда принудительно аллокация становится нулевой, и то, какое-то время я еще буду следить за теоретической эквити.
                                          • SergeyJu
                                            19 октября 2024, 22:07
                                            Дмитрий Овчинников, у меня жестче, вырубаю. Но не навсегда. Оставляю на холостом ходу, может и снова включиться в торговлю. 
                                            • __rtx
                                              20 октября 2024, 12:52
                                                
                                              • Дмитрий Овчинников
                                                19 октября 2024, 23:42
                                                __rtx,
                                                спасибо, вы интересный собеседник, наверное единственный из нового поколения или не нового, но не вхожего прежде в местную тусовку. пишите, с удовольствием читаем! ;)
                                                • __rtx
                                                  20 октября 2024, 12:52
                                                    
                                              • Дмитрий Овчинников
                                                20 октября 2024, 00:04
                                                __rtx,
                                                Все говорят про стопы/профиты и т.п.(для трейдерской среды это как бы база) но в хфт(и не только) это может вообще никак не использоваться(например 5000 сделок в день и какая мне разница в + я или в -, само значение стоп/профит в течении дня будет пи%де# каким разным что его невозможно даже поставить и когда кому-то в стакане будет больно и сигналы алгоритму об этом скажут то никакой стоп/профит не будет иметь значения будут просто улетать ордера в нужную сторону).


                                                В моем албанском hft © именно диверсификация и решает. То есть на одном инструменте можно достаточно сильно уехать в просадку, но в обшей системе это не имеет значения. Но, в любом случае, на нашем рынке это вопрос малых денег. Как ни диверсифицируй, больше, чем 6/7-значную цифру рублей туда не засунуть :(
                                                • SergeyJu
                                                  20 октября 2024, 09:06
                                                  Дмитрий Овчинников, в акции можно относительно легко засунуть несколько миллиардов. Результат будет не слишком шикарным, но процентов 20 в год в среднем будет. С просадками раза в два меньше, чем у индекса. Для ПИФа результат выдающийся, для алго на фьючах, конечно, грустно.
                                                  • Дмитрий Овчинников
                                                    20 октября 2024, 09:30
                                                    SergeyJu,
                                                    в акции можно относительно легко засунуть несколько миллиардов.

                                                    Здесь речь идет о системах с высоким количеством сделок и мелкой средней сделкой. В акции такие системы не засовываются, комиссия выедает всю прибыль.
                                                    • SergeyJu
                                                      20 октября 2024, 09:40
                                                      Дмитрий Овчинников, здесь и про ХФТ идет речь и про не хфт, хотя разница огромная.   Почему бы и более медленные систем не вспомнить. Даже если это Вас сейчас не интересует, может стать интересным впоследствии. 
                                                      • Дмитрий Овчинников
                                                        20 октября 2024, 09:55
                                                        SergeyJu,
                                                        медленные конечно интересуют и использую по полной программе. вот только рынок в этом году не дает заработать.
                                                        • SergeyJu
                                                          20 октября 2024, 10:15
                                                          Дмитрий Овчинников, индекс полной доходности с конца декабря = -6%.
                                                          Первая десятка ПИФ дает плюс. Ну, Аленка с +28% уникальна, но и среди остальных не все результаты случайны. 
                                                          Если взять пятилетний период, 2 фонда получили среднегодовую больше 20% и еще 2 ПИФ где-то рядом. 
                                                          Но мы же не скованы жесткими ограничениями, можем хеджироваться фьючерсом, можем сокращать позицию в акциях хоть до 0. Тут есть неплохая альфа. 
                                                          • Дмитрий Овчинников
                                                            20 октября 2024, 12:37
                                                            SergeyJu,
                                                            грустная правда жизни в том, что ноль по этому году будет где-то в районе плюс 20%, а все, что ниже минус. Поэтому приходится бежать ещё быстрее…
                                                            • SergeyJu
                                                              20 октября 2024, 13:35
                                                              Дмитрий Овчинников, почему 20 это плохо? 
                                                              Инфляция 9-10, до этого было два хороших года, по мне, мало кто вообще плюсом закроется в этом году, кроме депозитчиков и любителей коротких облигаций. 
                                              • SergeyJu
                                                20 октября 2024, 08:58
                                                __rtx, я тоже не использую ни стопы ни профиты, хотя у меня сделок в день (в расчете на одну систему) буквально единицы. Может быть и несколько десятков, а может быть и ни одной. 
                                                Вообще, тема стопов и профитов раздута теми, кто торгует руками с частотой, позволяющей концентрироваться на одной сделке. Большинство из них без стопов весьма быстро вывалились бы в ноль. А так могут мучиться долго. И вот им кажется, что синяя птица прямо под рукой. 
                                            • Дмитрий Овчинников
                                              19 октября 2024, 23:35
                                              SergeyJu,
                                              это все потому, что у вас в продакшне все системе с одинаковым коэффициентом, у вас и вариантов нет никаких, или +1 или 0.
                                              • SergeyJu
                                                20 октября 2024, 08:51
                                                Дмитрий Овчинников, сейчас у меня развесовка по сортино, просто вариант с равным весом не намного хуже, но куда проще. И как раз еще кучу вариантов изучаю. Писал же, что много времени на эту работу трачу.
                        • __rtx
                          18 октября 2024, 21:17
                            
                    • SergeyJu
                      17 октября 2024, 21:15
                      Beach Bunny, поскольку массивы у нас имеют длину тысячи, что 10, что 27 — без разницы. Если брать простое среднее и экспоненциальное с одинаковой средней задержкой, вес последних значений у экспоненциальной будет больше. На самом деле разница между ними не велика. Существует огромное количество всяких «оптимальных» в каком-нибудь смысле фильтров, но на практике на ценовых рядах преимущества их не увидел. С адаптивными скользяшками тоже принципиально лучших результатов не получается. Будь иначе, их бы в любую книжку бы не пихали. 
                      Системы с минимальной задержкой и даже с предсказанием вперед я на модельной задаче легко нарисую. Но, увы, у нас не модельная задача.  Так что топором, лопатой, тачкой. А не карьерным экскаватором. Увы.
                    • __rtx
                      18 октября 2024, 21:17
                        
                      • Beach Bunny
                        17 октября 2024, 21:31
                        __rtx, сам посчитай за 5мин в питоне и увидишь с каких значений начинается стабилизация индикатора EMA и какой у него lookback период.
                        Зачем объяснять элементарные вещи или в инете почитай там тоже про это много написано.
                        • __rtx
                          18 октября 2024, 21:17
                            
              • Beach Bunny
                17 октября 2024, 20:09
                SergeyJu, 
                Кстати, длинные периоды просадок обычно неизбежная плата

                Не обязательно.
                А нетупой подход заключается в диверсификации по активам и системам.
                Только частично, есть другие варианты.
                • __rtx
                  18 октября 2024, 21:17
                    
                  • Beach Bunny
                    17 октября 2024, 21:21
                    __rtx, Я ничё не продаю, поэтому мне это особо не нужно — все объяснять.
                    Но если взять к примеру мой пост — smart-lab.ru/blog/1069844.php
                    то ориентировочно это может торговать до 1-3млн — там тренд берется по кусочкам и стопы используются.
                    А если взять систему Евгения Ни — то до 2022 года вполне можно было торговать и 20млн.

                    Если у вас так много готовых копеечных систем которые могут торговать суммы только до 1млн но с доходностью 30%, так опишите их здесь на смарт-лабе, вам же они как я понимаю даром не нужны. Так запилите серию постов.

                    А потом и разговаривать можно,
                    а так «Нет тренировки, не вижу морковки!»
                    • __rtx
                      18 октября 2024, 21:16
                        
                      • Beach Bunny
                        17 октября 2024, 22:37
                        __rtx, я торговал свои модификацию того что «Евгения Ни» на 2млн на Si с плечом до 4го. Проблем не было и 2022 в момент начала СВО получил хороший дополнительный плюс. Андерстанд?
                        • __rtx
                          18 октября 2024, 21:16
                            
                          • Beach Bunny
                            17 октября 2024, 22:45
                            __rtx, ты тупой?
                            Я тебе написал, что торговал Si имея на счете 2млн и задействовал до 4плеча.
                            • __rtx
                              18 октября 2024, 21:16
                                
                              • Beach Bunny
                                17 октября 2024, 23:14
                                __rtx, понятно, значит так альтернативно одаренный:
                                Я писал smart-lab.ru/blog/1072328.php#comment17408680



                                Научись внимательно читать, для особо непонятливых, написано что «Не обязательно иметь длинные периоды просадок»
                                • __rtx
                                  18 октября 2024, 21:18
                                    
    • Beach Bunny
      17 октября 2024, 16:39
      Head of Algonaft'$, в ынтернете есть все.

  • John Doe
    17 октября 2024, 15:49
    Для начала проще взять что то готовое, уже есть куча фреймворков и библиотек. Если что то получится и станут понятны очевидные блокеры в развитии решения, можно параллельно начать разрабатывать свою вундервафлю.
  • YotaRussia
    17 октября 2024, 16:02
    Привет! Почему так настроены к нам? :( Если замечаете неполадки с интернетом, расскажите, пожалуйста, об этом в личных сообщениях VK (vk.me/yota) или в чате на сайте (yota.ru/support), уточнив номер счета и адрес. Все проверим и поищем решение!
  • Anest
    17 октября 2024, 16:17
    Удаленный выделенный сервер — и не надо заморачиваться со связью, каждодневными запусками квиков, скриптов, роботов и т.д. 
    Самая большая проблема — рабочий стабильно зарабатывающий алгоритм.

       Yota — нормальный провайдер, надо просто использовать нормальный промышленный роутер, а не бытовые погремушки.
  • svgr
    17 октября 2024, 16:15
    Я щщитаю, сей творческий человек должен продолжить свои мысли.

    Алготрейдинг: Развитие, Финал. Придумать более креативные названия.
  • Beach Bunny
    17 октября 2024, 16:52
     Статья в стиле — "
    Папа у Васи силен в математике,
    учится папа за Васю весь год,
    Где это видано где это слыхано
    папа решает а Вася сдает!"

    — ниачём.
  • PrAct
    17 октября 2024, 17:41
    загоняем хомяков на биржу))). без рабочей ТС нет алго. без опыта трейдинга нет ТС. по поводу всяких систем в интернете - полная лажа. нет там рабочих систем, вообще не надо питать иллюзии. очень опасно вводить людей в блуд при этом самому заблуждаться.
    • Matrica
      26 октября 2024, 21:53
      PrAct, 
      по поводу всяких систем в интернете — полная лажа. нет там рабочих систем,
      Есть, одна. Но понять и освоить её требуется много времени. А вот после освоения можно уже за несколько часов на том же фунт-доллар сказать на каком уровне и когда по времени он развернется внутри дня. Погрешность +-6-10 пунктов.  Иногда вообще без погрешностей.
  • черепашонка
    17 октября 2024, 18:15
    последнее, что требуется в алго — так это программирование. А время действительно уходит, но на рисерчи. Начинать можно с классики вот например https://www.researchgate.net/publication/24086205_High_Frequency_Trading_in_a_Limit_Order_Book

    или вот

    https://www.amazon.com/Portfolio-Selection-Efficient-Diversification-Investments/dp/1557861080

    на худой конец хотя бы отсюда стоить начать https://ocw.mit.edu/courses/18-05-introduction-to-probability-and-statistics-spring-2022/mit18_05_s22_probability.pdf

    или отсюда https://www.amazon.com/Applied-Dynamic-Programming-Princeton-Library/dp/0691079137


    здесь можно подсмотреть за тем у кого получилось https://www.economics.uci.edu/files/kassouf/pdfs/beatthemarket.pdf







  • ezomm
    17 октября 2024, 19:47
    На алго можно сделать расчет участия в сделке, стоп лосс и защиту прибыли .
    Сигнал может быть тупым, как у черепашек — лонг выше хаевой  средней (20) для тайма день и (10 ) для тайма неделя .
    Правильный сигнал — свеча приседающий или приседающий угол. Это трудно алгоритмировать.
  • ignat
    17 октября 2024, 20:03
    Пункт 6 — гарантированно потерять деньги.

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн