October 25, 2022

Торговый робот - продолжение

...Начало истории

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

В качестве исходных данных возьмем желаемый процент доходности 15%, чтобы как-то покрывать текущую инфляцию. И представим себе идеальную биржу для робота: стоимость покупки акций на старте робота и через год после старта сохраняется, каждый торговый день стоимость акции меняется (растет или падает) на некоторый процент X, который и выставлен как шаг для торговли. Также возьмем начальную позицию робота в размере 10 лотов.

В среднем стоковые биржи работают 250 дней в году (у разных бирж число рабочих дней может отличаться, но в среднем это примерно так). Для того, чтобы робот заработал ему нужно совершить две операции: покупку и продажу. То есть, в идеальных условиях наш робот совершит только 125 операций за год. Это означает, что за 125 операций робот заработает денег 125 * X / 100%. Доход в 15%, на который мы ориентируемся, говорит, что для выполнения этого условия робот за год должен заработать не менее 15% * 10 лотов / 100% = 1.5 лотов. То есть 125 * X / 100% = 1.5 лота, откуда X = 1.5 * 100% / 125 = 1.2%. То есть, волатильность акции должна быть такова, что каждый день стоимость акции должна меняться на 1.2%. Сколько Вы знаете таких акций, стоимость которых еще в течение года должна еще сохраняться?

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

<Доходность> = <Дневная Волатильность> * 125 / <Максимальная позиция в лотах>

Как видно, чем выше допускаемая максимальная позиция, тем ниже доходность. Чем менее волатильна акция, тем ниже доходность.

А если это реальная биржа?

  • Нужно учесть комиссии биржи и брокера;
  • Не каждый день стоимость акции меняется так сильно, хотя дневные изменения могут быть и значительно больше;
  • Акции могут испытывать просадки, и резкие взлеты, и поэтому нужно закладывать возможность докупки роботом позиций; в худшем случае нужно закладывать еще хотя бы столько же лотов сверху к первоначальной покупке, а это уменьшает доходность;
  • Вы заплатите налог с прибыли 13%;
  • Робота нужно где-то запускать: дома - не гарантирована связь, облачный сервер - стоит тоже денег;
  • У брокеров бывают сбои;
  • А еще есть риски рынка;
  • Да, иногда случается так, что робот в течение дня может совершить около 10-ка или больше операций по инструменту.

Какие выводы можно сделать из описанного?

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

Продолжим...

Пограничные случаи

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

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

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

Падение рынка

Настала ситуация когда роботу не на то покупать акции на сильно падающем рынке. Помните, что мы робота ограничиваем.

Действия при просадке рынка

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

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

Рост рынка

А теперь у робота возникла другая проблема: остался один лот, и вроде бы его нужно продать, но стоимость так и продолжает расти. Что делать?

Действия на растущем рынке

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

Заключение

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

За роботом нужно следить (также как и за своим портфелем), а отбирать инструменты для торговли роботом стоит тщательно, оценивая возможные риски.

Лично я для торговли использую коридор +/- 15% с шагом 1.2% - 1.5%, для некоторых инструментов коридор выше +/- 20%, и рекомендую выбирать дивидендные акции. А мой робот тем временем восстанавливает портфель после обвала рынка.