Избранное трейдера ale
Привет, после небольшого перерыва возвращаемся к бэктестам. Добавим к простой трендовой стратегии на Мосбирже 4 варианта выхода из позиций с возрастающим уровнем сложности. Для первых двух стратегий особых навыков не требуется, третья требует парсинга Телеграма и для последней потребуется обученная нейронная сеть при разметке сообщений.
Это продолжение рассуждений о риске и доходности акций на Московской бирже: https://smart-lab.ru/blog/625771.php Основные выводы из первой части:
1) Увеличение риска (стандартного отклонения) приводит к снижению будущей доходности акций, а не наоборот;
2) Стратегия, выстроенная только на основе исторической волатильности, несамостоятельна и проигрывает индексу.
В этот раз возьмем за основу трендовую стратегию в самом простом виде – на пересечении 1-месячной и 3-х месячной скользящей средней. И будем снижать риск разными способами с целью поднять доходность, Шарп, сократить время боковиков и корреляцию с бенчмарком. Об эффективности трендовых стратегий в России можно почитать здесь https://smart-lab.ru/blog/611263.php на глобальных ETF здесь
Вначале о грустном. Не понимая теорию нейросетей (НС) у вас вряд ли получится построить на ней ТС. Поэтому лучше для начала почитать теорию, например, Хайкин Саймон. «Нейронные сети. Полный курс». Книга уже достаточно старая и в ней нет новомодных веяний, но она дает базовые представления о НС.
И второе, мы будем далее для построения систем использовать пакет scikit-learn для Python. рекомендую ознакомиться. Есть и более продвинутые пакеты, скажем, TensorFlow и др., но их использовать мы не будем, и ограничимся более простым scikit-learn.
Теперь о том, чего здесь не будет. Здесь не будет теории НС, разве эпизодически и оч кратко. Здесь не будет описания пакетов Python, работы с графикой и пр. Обо всем этом вы можете прочесть в интернете, книгах, и документации Python.
В топике мы будем обсуждать только применение НС к ТС и их построению.
Так как тема достаточно велика, в один топик не влезет, сегодня мы займемся самыми общими вопросами. Следующая часть будет недели через две, раньше не получается.
После всех вычислений, приведенных в этой и этой публикациях, можно углубиться в статистический анализ и рассмотреть метод наименьших квадратов. Для этой цели используется библиотека statsmodels, которая позволяет пользователям исследовать данные, оценивать статистические модели и выполнять статистические тесты. За основу были взяты эта статья и эта статья. Само описание используемой функции на английском доступно по следующей ссылке.
Сначала немного теории:
О линейной регрессии
Линейная регрессия используется в качестве прогнозирующей модели, когда предполагается линейная зависимость между зависимой переменной (переменная, которую мы пытаемся предсказать) и независимой переменной (переменная и/или переменные, используемые для предсказания).
Все мы знаем, что зарубежные брокеры не являются налоговыми агентами в РФ, соответственно, отчитываться по доходам и платить налоги с них мы должны самостоятельно. Вопрос отчитываться или нет у меня не стоял, поэтому, чтобы не тратить каждый год уйму времени на достаточно трудоемкие расчеты, я написал скрипт, который берет отчеты Interactive Brokers и формирует на основе них пояснительную записку со всеми пояснениями и расчетами для налоговой. Вам останется только приложить этот файл к декларации 3-НДФЛ, а в нее саму внести лишь два пункта (см. ниже).
Ограничения по применениюПоскольку я занимаюсь долгосрочными инвестициями, я не использую такие инструменты, как фьючерсы, опционы, а также никогда не использую плечо и сделки SHORT. В связи с этим, такие операции скриптом не поддерживаются. Если у кого-то есть желание — могут дописать сами.
Подготовка к использованию