Избранное трейдера Антон Безымянный
Добрый день, друзья!
Мой пост об отчетах 10-K, 10-Q и 8-K американских эмитентов (https://smart-lab.ru/blog/677043.php) вызвал достаточно большой отклик среди Смарт-Лабовцев (68 ⭐️ + 326 ❤️). Поэтому выполняю своё обещание и рассказываю о методике анализа отчетов 8-К, которая в прошлом году принесла мне 50% годовых в долларах США (https://smart-lab.ru/blog/668157.php).
Внимание: лонгрид. Если у Вас в данный момент нет возможности на 15 минут сосредоточиться на изучении достаточно сложной информации – лучше добавить пост в избранное и вернуться к его прочтению позже.
В прошлый раз мы пришли к выводу о том, что отчеты 10-K содержат только прошлые данные, в силу чего информация, отражённая в них, уже заложена в текущие котировки акций. А с учётом того, что изучение формы 10-K является достаточно трудоёмким процессом, то для частного инвестора эта форма теряет всякий смысл.
Форма 10-K представляет из себя годовой отчет деятельности компании, который включает такие разделы, как обзор бизнеса компании, основные риски, финансовая отчетность и комментарии к ней, корпоративное управление и т.д. Каждая компания, чьи акции торгуются на американской фондовой бирже, обязана ежегодно подавать форму 10-K в SEC.
Приветствую, друзья!
Как и обещал, сделал табличку по всем иностранным эмитентам, которые торгуются на Мосбирже (не считая компаний США).
Табличка позволит ориентироваться по налогам с дивидендов, где нужно что-то доплачивать в РФ, а где нет. В некоторых странах, таких, как Нидерланды и Люксембург, налог с дивидендов для нерезидентов в размере 15% удерживает сам эмитент, а в некоторых, Кипр, Джерси, Великобритания, налог не удерживается.
Следить за всеми моими обзорами можете здесь: Telegram, Смартлаб, Вконтакте
P.S. Если обнаружите ошибку, или я кого-то забыл добавить, пишите в комментариях.
Привет, друзья, сегодня наконец дошли руки сесть и спокойно написать список сайтов, которыми сам лично пользуюсь в анализе и даже немного жадничаю делиться некоторыми из них 🙂
Но как говорится, всё для вас, господа!
Все описанные в этой статье ресурсы специализируются именно на Американском рынке и подходят инвесторам, торгующим на Американских биржевых площадках.
1. https://finviz.com/
В прошлом топике [1] мы разобрались с тем, что и как подавать на входы нейросети (НС). Теперь надо как-то сказать НС — «Горшочек, вари», предварительно рассказав, что конкретно и как именно надо «варить». Мыслей, в общем, нет никаких. Потому, давайте обратимся к классикам — Саймону Хайкину [2,c.33]:
Вот так вот, сразу и на первых страницах — «не могут обеспечить готовые решения», необходимо интегрировать в сложные ситемы", «относительно простые задачи, часть из которых может решаться НС». Книга конечно старая, но и наш MLP (Multilayer perceptron) в составе scikit-learn новизной не отличается. Этому MLP еще и простую, да конкретную задачу подавай, и вокруг него «сложную систему» городи. Как-то энтузиазма поубавилось.
Ладно, коли на вход нашего MLP уже подается временной ряд, пусть он нам определяет, хотя бы приблизительно, моменты входа в Лонг. А мы потом его проверим, и уточним эти моменты.
Теперь нашу НС надо как-то научить находить Лонг — показать НС как правильно и как неправильно. А мы сами-то знаем как правильно? Учителя фиговы. Это с кошечками-собачками хорошо — показывай себе, и пусть учится.
А давайте что-нибудь предположим, назовем какие-то входы в Лонг правильными, а остальные неправильными. Если мы предположили какую-нибудь ерунду, то НС просто ничему разумному не научится, и при дальнейшей проверке это быстро выяснится. А что-то предположить нам поможет интернет.
Кстати, это свойство НС, отличать фантазии от действительных закономерностей, уже вполне можно использовать для проверки каких-либо наших педположений о поведении рынка. Надо только рассказать о них НС, и она скажет, есть там что-то, с чем следует работать, или выкинуть это и забыть.
Однако, обратимся к интернету. Несколько лет назад наш коллега по несчастью занимался методами Машинного обучения (МО) с целью победить рынок. Он строил массу предикторов, подавал их на входы различных систем МО, и обучал по разметке Зиг-Зага. А что, неплохая идея, входы — лучше не придумаешь.
Вообще, если на минимуме Зиг-Зага загородить правую часть графика, как-то сомнительно, что вообще можно что-то сказать о дальнейшем движении. Да, и по ходу пьесы этот минимум будет постоянно перемещаться. Да и наш коллега долго и упорно менял предикторы и системы МО, потом все реже, реже, и вообще пропал из поля зрения. А на истории, конечно, Зиг-Заг — лепота.
Давайте сдвинем точку входа в Лонг немного вправо от минимума Зиг-Зага, где цена уже начала расти. Мы получим некую U-образную кривую цены, на которой НС хотя бы cможет построить линию регрессии. Не говорю, что это хорошая идея, но мы с помощью НС попробуем ее проверить. Что получим? — понятия не имею, я это делаю по ходу написания материала.
Разметку правильных входов для обучения можно сделать по Зиг-Загу, установив какой нибудь разумный порог от его минимума.
А разметку неправильных входов кто сделает? Опять обращаемся к [2,c.60].
Вначале о грустном. Не понимая теорию нейросетей (НС) у вас вряд ли получится построить на ней ТС. Поэтому лучше для начала почитать теорию, например, Хайкин Саймон. «Нейронные сети. Полный курс». Книга уже достаточно старая и в ней нет новомодных веяний, но она дает базовые представления о НС.
И второе, мы будем далее для построения систем использовать пакет scikit-learn для Python. рекомендую ознакомиться. Есть и более продвинутые пакеты, скажем, TensorFlow и др., но их использовать мы не будем, и ограничимся более простым scikit-learn.
Теперь о том, чего здесь не будет. Здесь не будет теории НС, разве эпизодически и оч кратко. Здесь не будет описания пакетов Python, работы с графикой и пр. Обо всем этом вы можете прочесть в интернете, книгах, и документации Python.
В топике мы будем обсуждать только применение НС к ТС и их построению.
Так как тема достаточно велика, в один топик не влезет, сегодня мы займемся самыми общими вопросами. Следующая часть будет недели через две, раньше не получается.
После всех вычислений, приведенных в этой и этой публикациях, можно углубиться в статистический анализ и рассмотреть метод наименьших квадратов. Для этой цели используется библиотека statsmodels, которая позволяет пользователям исследовать данные, оценивать статистические модели и выполнять статистические тесты. За основу были взяты эта статья и эта статья. Само описание используемой функции на английском доступно по следующей ссылке.
Сначала немного теории:
О линейной регрессии
Линейная регрессия используется в качестве прогнозирующей модели, когда предполагается линейная зависимость между зависимой переменной (переменная, которую мы пытаемся предсказать) и независимой переменной (переменная и/или переменные, используемые для предсказания).
Капитал не исчезает бесследно
Роман держал акции Coca-Cola и еще нескольких крупных компаний, флагманов американской экономики. Он продал их за минуту до глобального падения рынков. Возможно, Роман был инсайдером. Возможно, гением. Возможно, ему сказочно повезло.
В любом случае Роман знал несколько истин:
1. Рыночное падение не столько уничтожает деньги, сколько перераспределяет их. Если первый инвестор купил на максимуме и обанкротился, то второй инвестор продал первому и обогатился.В прошлой статье рассмотрено как можно получить информацию по финансовым инструментам. Дальше будет опубликовано несколько статей о том, что первоначально можно делать с полученными данными, как проводить анализ и составлять стратегию. Материалы составлены на основании публикаций в иностранных источниках и курсах на одной из онлайн платформ.
В этой статье будет рассмотрено, как рассчитывать доходность, волатильность и построить один из основных индикаторов.
import pandas as pd import yfinance as yf import numpy as np import matplotlib.pyplot as plt sber = yf.download('SBER.ME','2016-01-01')
Данная величина представляет собой процентное изменение стоимости акции за один торговый день. Оно не учитывает дивиденды и комиссии. Его легко рассчитать используя функцию pct_change () из пакета Pandas.
Как правило используют лог доходность, так как она позволяет лучше понять и исследовать изменения с течением времени.
# Скорректированая цена закрытия` daily_close = sber[['Adj Close']] # Дневная доходность daily_pct_change = daily_close.pct_change() # Заменить NA значения на 0 daily_pct_change.fillna(0, inplace=True) print(daily_pct_change.head()) # Дневная лог доходность daily_log_returns = np.log(daily_close.pct_change()+1) print(daily_log_returns.head())