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

Вот только есть один нюанс - когда у тебя нет таланта ни в программировании, ни в финансах … придется вспомнить о том, что путь в тысячу ли начинается с первого шага … и первое, что следует при этом понять - в первую очередь при этом следует разобраться с затяжными депрессиями … ибо в отсутствии таланта гипоманиакальное состоянии только укажет тебе пути, ни один из которых не успеешь зарашить за Один месяц просветления, до очередных нескольких лет упадка сил.

Теория игр:

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

Я думаю, здесь крайне критичен недостаточный уровень интеллекта у большинства желающих обучиться торгам, чтобы извлеть от изучения ТИ практическую пользу. Все что я почерпнул из советов бывалых: для обдумывания экономической стратегии из всей ТИ важно уяснить 2 вещи:

Положительная сумма побед к поражениям:

Все игры с ненулевой суммой можно разделить на 2 группы: кухни - где основатели и возможно небольшая прослойка самых успешных игроков кормяться за счет основной массы участников. Простой пример форекс - в стабильном выигрыше те, кто имеет стабильный процент со сделок: Я как то создал виртуальный счет на форексе - в первые 3 дня сделал 8%, на что в те времена на банковском вкладе ушел бы год, а через пару недель уже обнулил счет.

Обратный пример биткойн времен роста криптовалюты - как то торгового бота подключили к игровой площадке хомячка - который решал: что, когда покупать, продавать. И грызун показывал стабильные прибыли не один месяц торгов…

Теорема о минимаксе:

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

Это чем то напоминает размен денег на опыт - чем медленнее промотаешь первый стартовый капитал - тем больше наберешься на этом опыта … будет опыт - будут и деньги.

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

No pain, no gain:

Казалось бы, чтобы ничего не потерять кроме времени, лучше всего играть на виртуальном счете … Но для чего вы думаете его вам заводят на кухнях? И за счет чего живут вам его сделавшие?

С другой стороны, почти бесплатно предоставляющие реальные счета говорят, что можно начинать с 1 тысячи рублей на реальном счете … скажем так с учетом диверсификации, крайне желательно иметь на нем минимум раз в 10 больше и придется учитывать, что акции по стоимости одной штуки сопоставимые с яндексом вам будут малодоступны.

Запоздавшее введение:

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

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

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

Что для этого потребуется - нулевым циклом можно попробовать обнулить виртуальный капитал на форексе, потом будет нужен стартовый капитал, который будет не жалко потерять … в современных реалиях скорее всего от 10 тысяч рублей, теоретически растущая биржа, удобный клиент для экспериментов - в современных реалиях мне пришлось остановить выбор на квик и понимание того, что перед тем как начать обучать бота, нужно в минимальной степени вначале обучиться самому, тому как не спустить на бирже целое состояние, работая ручками … а потом обучить бота тому как давать сигналы, чтобы понять чем отличается машинное обучение от работы ручками … Если конечно ты не призер каггл, способный сразу пропустить первую пару тройку этих нубских этапов … который если еще не понимает как работает машинное обучение, но оно у него уже почему-то стабильно работает.

Итерация первая:

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

Набрался смелости открыл счет на Московской бирже и постепенно закинул туда до 10 тыс рублей. В качестве брокера рекомендую поискать среди банков вменяемую Broker fee. Так как ее оплата оказалась вполне сопоставима с прибылями первой итерации и в несколько раз больше уплаченных государству налогов и комиссий бирже.

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

Take profit, stop losses.

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

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

Завершение первой итерации:

До вычета налогов, я на торговле акциями заработал около 68 рублей прибыли за 2 месяца, когда примерно закрылись с прибылью все убыточные с позиции годовых процентов позиции. Если посчитать за вычетом налогов годовой процент - получилось если не ошибаюсь около 3.6% годовых - что на том момент было чуть более чем в 2 раза менее выгоднее, чем процент даваемый по банковскому вкладу.

Все вялые попытки написать софт на голом питоне для оценки ситуации на бирже провалились.

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

Итерация вторая: торговля облигациями.

Конечно же процент прибылей более низкий чем по вкладу в банке никак не связан с опытом и образованностью банковских специалистов в отличие от меня, как и превращение из спекулянта в инвестора с длительным депресняком. Все что при следующем просветлении я подумал: на тот момент на рынке акций сложилась очень плохая ситуация с дивидендами … и как следствие, я попал в очень невыгодную ситуацию играя против профессиональных инвесторов, без амортизации моих решений массивными выплатами дивидендов.

И тут у меня родился второй бизнес план … казалось бы чем отличаются акции от облигаций? Первое что мне пришло в голову: что в трудной экономической ситуации выплаты дивидендов совсем не обязательны, а вот не выплаты купонов будут грозить банкротством. И я решил попробовать проинвестировать в облигации, казалось бы особого роста в их цене не должно ожидаться, но я буду получать более длительно чуть более высокий процент чем по вкладу в банке.

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

No pain, no gain v2:

Итак первые мои впечатления о дюрации были: если высокий процент по вкладу банки будут выплачивать от силы 3 месяца, то при высокой дюрации чуть более низкий процент по облигациям отобьется уже через 3-6 месяцев после снижения ставки по вкладам в банках. Поэтому я решив, что с акциями у меня для новичка получилось довольно неплохо, решил постепенно нарастить объем портфеля который не жалко потерять с 10 до 20 тыс рублей и вложиться в облигации

Казалось бы стоило лишь прикинуть когда пойдут проценты по вкладам вниз. А пойдут они вниз при подъеме экономики. И я большой нелюбитель путешествий, огляделся по своему району: недвижимость строится, ощущается дефицит коммерческой недвижимости на первых этажах, полки полны и оборот товаров хороший … и вложился в облигации в дюрацией по 2038 год.

Но тут появился небольшой ньюанс: рост ключевой ставки, а потом рост процентов по вкладам, вследствии чего большинство инвесторов стали более интенсивно избавляться от облигаций с большей дюрацией. И оказалось, что купоны покроют такое падение стоимости где-то через год … если конечно это падение остановиться.

Поняв, что в инвестициях я ничего не смыслю, остановил рост инвестиционного портфеля на 12 тыс рублей. В итоге инвестиционный счет с 68 рублей прибылей с прошлой итерации показал 450-500 рублей убытков ( цены на облигации все таки колеблются).

Итерация третья: предтеча сигнального бота.

Если ранее я пытался писать на питоне всякую хрень, совершенно не дававшую мне понимания финансовых рынков. То после прошедшего психоза с гипоманиакальным состоянием, я почему-то за 5 дней в минимальном объеме разобрался с библиотекой pandas, до этого мне казавшейся совершенно неподъемной. И после третьего просветления у меня появились некоторые циферки, давшие мне чуть более полное понимание дюрации, чем оно объясняется на сайтах обучающих торговле:

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

Если оценивать эту колонку с позиции убытков, то при меньшей дюрации у нас имеется примерно 4.5 периода из 15 когда падение стоимости облигаций было сопоставимо с с выплачиваемым купоном и в 1 периоде из 15 падение стоимости в 2 раза превысило размер купона. То в плане облигаций которыми я закупился, те теми у которых высокая дюрация 10 периодов из 15 падение стоимости было в 2-3 раза больше выплачиваемого купона и еще 2 периода из 15 сопоставимо с купоном.

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

Советы и выводы:

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

  2. На низких скилах кодинга использование питона без pandas не принесет вам никакой полезной информации.

  3. Прежде чем начать обучение игре на финансовых рынках следует найти растущую часть рынка и в соответствии с теоремой о минимаксе построить стратегию с основой на минимизации проигрыша.

  4. Без понимания дюрации не стоит соваться на рынок облигаций с суммами которые вам будет жалко потерять.

  5. Да и вообще, обучение торговле лучше начинать с минимальной суммы, которую вам не жалко потерять, и которая позволит провести диверсификацию вложений.

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

  7. Начало экспериментов лучше всего начать с Kaggle Learning, чуйка шепчет мне, что уже DecissionTreeRegression из первого туториала посвященного машинному обучению должна будет дать интересные сигналы.

Комментарии (24)


  1. temadiary
    21.07.2024 05:16

    в итоге то какой посыл? учить базу типа эконометрики и матан со статистикой? научиться проектировать и разрабатывать типа HA приложения чтобы торговать на высокочастотных стратегиях?


    1. marimero Автор
      21.07.2024 05:16

      После того, как придет понимание как минимизировать убытки, начать учить kaggle learn и от скриптов на пандас которые покажут в какие позиции лучше не лезть, постепенно перейти к сигнальным ботам на позициях в которых безопаснее торговать.

      Имхо, для новичков толку от эконометрики и матана, будет не больше чем для среднеинтелектуального профи от теории игр

      Высокочастотные стратегии просто обнулят счет новичку, я бы советовал ограничиться техническим анализом и сигнальным ботом с помощью простейших техник описанных в kaggle learn, потом если стабильно, хотя бы на протяжении 2-5 месяцев удасться прибылям превысить 3\4 процента от банковским вкладам пройтись по статистике и фундаментальному анализу


      1. temadiary
        21.07.2024 05:16
        +1

        это понятно
        но посыл какой? не играть на деньги без понимания механизмов и идти учить базу для анализа?
        новичку имхо нечего делать в таких "играх", т.к. проще выиграть в спортлото. нет понимания работы финансов\экономики, нет понимания анализа матданных - так это изначально тупик.


        1. marimero Автор
          21.07.2024 05:16

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

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

          Я бы все таки после прочтения технического анализа сравнивал торговлю на бирже больше с игрой в покер со счетчиком карт в колоде, чем в спортлото


  1. Cere8ellum
    21.07.2024 05:16
    +1

    Играя на бирже, пришёл к выводу, что тех.анлиз не даёт ничего конкретного. Любой шаг всегда 50/50. Тут наверно нужно копать в сторону статистики использующих ТА и грести в обратную сторону от их действий. А это всё подразумевает работу с большими данными, на серьёзном железе. Т.е. нужно успевать попадать в меньшинство аналогичных транзакций. Продают - покупай, покупают - продавай. Короче, абсолютно не верю в потенциал карманного бота. Слишком прост, и неопытен любой(он) увы.


    1. temadiary
      21.07.2024 05:16

      тех анализ покажет разный результат на локальном минимуме и на многолетнем периоде.
      поэтому инструмент и надо применять в зависимости от стратегии + учитывать "невидимую руку рынка" + геополитику
      остальное игрушки для создания видимости "я у мамы трейдер"


    1. marimero Автор
      21.07.2024 05:16

      Теханализ при минимально развитом навыки интуиции постепенно начнет давать 51\49 и так дальше.

      Что до библиотеки пандас - она дала мне понимание в какие позиции по облигациям лучше было не лезть.

      Сейчас попробую Regression Dicission Tree - к железу не требовательно и возможно даст мне понимание в какие моменты или по какой стоимости открывать длинные позиции


      1. marimero Автор
        21.07.2024 05:16

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

        Ну а пока открылось новое направление МЛ в котором копать: предсказание временных рядов


    1. marimero Автор
      21.07.2024 05:16

      Я бы все таки советовал разделить ботов на принимающих решение и дающих советы, во втором случае требования к железу не такие высокие и потенциал убытков сглаживается познаниями в техническом анализе


      1. MANAB
        21.07.2024 05:16

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


        1. marimero Автор
          21.07.2024 05:16

          А что вы использовали для предсказаний?

          Может быть удалось добиться успеха в анализе исторических данных?


          1. MANAB
            21.07.2024 05:16

            Я готовил исторические данные по битку за большой период (порядка 5-10 лет) и на разных таймфреймах (1ч/4ч/8ч/1д), и скармливал RNN сетке. Как раз изучал на примере уроков от 'Jason ML Mastery'. Пытался потом на тестовой выборке проверить, что предскажет и что будет если ставки делать. Вывод был неутешительный.


            1. marimero Автор
              21.07.2024 05:16

              А как ты модель выбирал под задачу? Как боролся с оверфитингом?

              Я просто тоже попытался с предсказаниями порабоать, но оказалось вообще взял инструмент не подходящий для временных рядов.

              Вот анализ исторических последовательностей с помощью питона, имхо стал неплохо дополнять технический анализ свечей и индикаторов: всякие графики гистограммы скатеры и таблички неплохо понимания процессов добавляют, в плане того куда лучше на текушем моменте пока не вкладывться


              1. MANAB
                21.07.2024 05:16

                Я брал данные цен свеч + volume. Оверфитингa не было, т.к. оно часто вообще не могло сойтись. А если по итогу как то сходилось - предсказания были неверные. RNN как раз для временных рядов, тоже на питоне делал


                1. ilye
                  21.07.2024 05:16

                  Странно, у меня на акциях прекрасно все сходится. Проблема начинается дальше, данные свечи != цене акции, купить (или продать) по такой цене в половине случаев нереально, даже если сместить цену на десятую часть процента.


                  1. marimero Автор
                    21.07.2024 05:16

                    а зачем обязательно по рыночной цене брать?

                    Можно же отложенный ордер поставить?

                    Или защитный спред если срочно нужно - все равно тогда по рыночной купит?


                    1. ilye
                      21.07.2024 05:16

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


  1. rkfddf
    21.07.2024 05:16

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


    1. marimero Автор
      21.07.2024 05:16

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


  1. Znaya
    21.07.2024 05:16

    Как верно заметили выше, любые технические и финансовые анализы, это ерунда, без серьезных вложений, инсайдов и многих атрибутов серьезных фондов. Шанс у вас 50\50 и никакая интуиция тут не поможет, рано или поздно вас обнулят те, кто имеет 51%. Я расмотрев различные варианты торговли, понял, что в краткосрочном измерении, это полный гамблинг. Тем не менее на бирже есть инструменты, которые дают практически 100% выигрыш (например теже дивиденды в среднесрочной переспективе). Я торгую уже примерно 8 лет и мне абсолютно все равно, поднимается, падает или стоит рынок, в среднем в год возможно делать от 12%, что на пару процентов выше, чем ETF. Если нет желания этим заниматься, проще вложить деньги в ETF и делать примерно 9-10% в год, что выше процента банка (по крайней мере у нас в Австралии).


    1. marimero Автор
      21.07.2024 05:16

      Это примерно как про прогноз погоды говорить 50\50 пойдет дождь или нет.

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

      В принципе, как в анекдоте про блондинку, 90% населения сможет инвестировать на биржу, но лишь у 5% прибыль от инвестиций превысит процент по банковским вкладам ... а у кого-то из них вообще уйдет в минус.

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

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


  1. pnaydanovgoo
    21.07.2024 05:16

    Ожидал увидеть код, похоже я неправильно трактовал название статьи.


  1. aaa_bbb
    21.07.2024 05:16

    в свое время пытался написать бота, который отлавливает крупные дневные скачки акций на MOEX (на 5+% в день)
    но так и не понял можно ли на данных от брокера однозначно определять такие случаи (ну или хотя бы с хорошей вероятностью)
    если кто желает поковыряться - welcome в личку


    1. marimero Автор
      21.07.2024 05:16

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

      Ну а так на моей картинке, процент изменения наименьших 25% в предыдущем периоде к проценту изменения 75% в следующем периоде, что тоже как бы намекает на тренд