Финансы
Ilya Roslyakov
12 871

История S&P 500 за 135 лет, дневные данные с реинвестированием дивидендов

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

В закладки

Мотивация

S&P 500 — самый популярный и давно известный в мире индекс, который часто используют как образец для сравнения результатов инвестирования или как типовой актив в составе портфеля. Легко доступные в Интернете данные как правило или всего за несколько десятков лет, или без реинвестирования дивидендов, или с ежемесячной гранулярностью — всё это не подходит, если речь о поведении портфеля на интервале в десятки лет, ведь дивиденды являются неотъемлемой частью финансового результата портфеля, а ежедневные данные нужны для точных расчетов.

Поэтому мне для собственных нужд пришлось посчитать руками результат инвестирования в S&P500 за последние 135 лет, с реинвестированием дивидендов, с точностью до дня. В этой статье я решил поделиться с общественностью методикой и результатами этих расчётов.

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

История цен

Исторические данные о ценах S&P 500 с 1789-го года можно взять здесь: Historical data: S&P 500 — U.S. (^SPX). Ежедневные данные появляются только начиная с 1885-02-17.

При необходимости, недостающие данные за последние несколько торговых дней можно взять здесь: SPDR S&P 500 ETF Trust (SPY), Historical Prices.

Так выглядит график ежедневных цен S&P 500, начиная с 1885-02-17:

Оба источника выше содержат цену S&P 500 без реинвестирования дивидендов, поэтому дополнительно необходимо найти максимально точные исторические данные о выплате дивидендов.

История выплаты дивидендов

Исторические данные о дивидендах с января 1871-го года можно взять из исследования online DATA robert shiller, по ссылке U.S. Stock Markets 1871-Present and CAPE Ratio, из вкладки «Data” в таблице. Колонка “Dividend» содержит месячные данные (в годовом исчислении):

В таблице выше не хватает самых свежих данных по дивидендам: в момент написания статьи последние данные были за март 2020-го года, хотя на дворе был июль 2020-го. Часть недостающих данных между мартом и июлем можно взять из вкладки «Historical Data» на сайте Yahoo!Finance: SPDR S&P 500 ETF Trust (SPY), Mar 1, 2020 — Jul 12, 2020, Dividends Only.

Данные выше содержат только ежеквартальные выплаты, а нам для более точных вычислений понадобятся помесячные данные. Лучшим приближением будет поделить квартальные дивиденды на 3 месяца, пропорционально стоимости S&P 500 на конец каждого из месяцев, например:

AnnualizedDividend(2020.04) = Dividend(2020.06.19) * 100 * Price(2020.04) / Sum(Price(2020.04) + Price(2020.05) + Price(2020.06))

Хуже всего с точностью данных обстоят дела с дивидендами за текущий месяц, июль. Сделаем предположение, что они изменятся пропорционально стоимости S&P 500, на основе средних значений за последние 4 месяца:

AnnualizedDividend(2020.07) = Price(2020.07.12) / Sum(Price(2020.04) + Price(2020.05) + Price(2020.06)) * Sum(AnnualizedDividend(2020.04) + AnnualizedDividend(2020.05) + AnnualizedDividend(2020.06))

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

И проверим, сколько каких разниц дат у нас получилось:

Как видим, все числа ожидаемые: 150 разниц дат по 0.89 для 150-ти лет, 149 * 11 + 6 = 1645 разниц дат по одному месяцу для 149-ти лет и 6-ти месяцев. И одна разница дат с прочерком, самая первая, так как для неё не с чем считать разницу.

Более точных исторических данных нет, поэтому ежедневные выплаты дивидендов придется вычислять самостоятельно.

История торговых дней

Чтобы посчитать размер дивидендных выплат в каждый торговый день, необходимо поделить дивидендные выплаты за календарный месяц (в годовом исчислении) на количество торговых дней в этот календарный год, например:

DailyDividend(2020.04.01) = AnnualizedDividend(2020.04) / TradingDays(2020)

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

Используется количество торговых дней за календарный год а не месяц, потому что дивидендные выплаты за месяц в исторических данных от online DATA robert shiller исчисляются в масштабах года а не месяца.

Количество торговых дней за последние несколько календарных лет возьмем из википедии: Wikipedia: Trading day.

За предыдущие годы количество торговых дней возьмем из фактических данных о ценах S&P 500, суммируя количество цен закрытия за каждый календарный год:

Количество торговых дней в каждый календарный год позволит посчитать размер выплачиваемых дивидендов в каждый торговый день.

Реинвестирование ежедневных дивидендов

Поступающие каждый день от S&P 500 дивиденды будем реинвестировать, учитывая налоги в 13%:

S&P 500 with dividend reinvestment(Day(1)) = S&P 500(Day(1))
S&P 500 with dividend reinvestment(Day(X)) = S&P 500 with dividend reinvestment(Day(X-1)) * (S&P 500(Day(X)) + DailyDividend(Day(X)) * (1 — Tax=13%)) / S&P 500(Day(X-1))

Построим график S&P 500 с реинвестировнием дивидендов:

Конкретные значения на начало и конец периода, а также в двух локальных минимумах в 1932-м (Великая Депрессия) и 1942-м (Великая Отечественная война) годах:

Данные

Таблицу с исходными данными, включая отдельную вкладку с ценами S&P 500 на последний торговый день каждого месяца, можно скачать тут: Ilya Roslyakov — История S&P 500 за 135 лет, дневные данные с реинвестированием дивидендов — таблица.

{ "author_name": "Ilya Roslyakov", "author_type": "self", "tags": [], "comments": 14, "likes": 5, "favorites": 28, "is_advertisement": false, "subsite_label": "finance", "id": 138306, "is_wide": false, "is_ugc": true, "date": "Sun, 12 Jul 2020 15:35:39 +0300", "is_special": false }
0
14 комментариев
Популярные
По порядку
Написать комментарий...
3

Не пойму что автор статьи хотел сказать своей статье то?? Ну растет коэффициент и че?

Ответить
0

S&P500 часто используют как образец для сравнения результатов инвестирования или как типовой актив в портфеле. Но легко доступные данные как правило или всего за несколько десятков лет, или без реинвестирования дивидендов, или с месячной гранулярностью. Мне для собственных нужд пришлось считать руками S&P500 с дневными ценами и реинвестированием, и я решил поделиться с общественностью результатами расчётов. Никаких выводов я не предлагаю. И да, вы правы. Мне стоит пожалуй в более явном виде указать цель статьи. Спасибо.

Ответить
0

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

Ответить
2

Дневные данные стоимости S&P 500 в реальном выражении (за вычетом инфляции) можно взять у Роберта Шиллера тут: http://www.econ.yale.edu/~shiller/data/ie_data.xls. Я не хотел никого вводить в заблуждение большими цифрами. Просто хотел поделиться востребованными данными, как мне казалось.

Ответить
1

Один умный человек говорил, что сложные проценты - самая могущественная сила во вселенной :)

Ответить
0

А нельзя ли было коротко объяснит сколько я заработал бы если мой предок вложил $100 в S&P500 в 1885 году.

Ответить
0

В номинальных деньгах (без вычета инфляции), получилось бы $100 * 376,912.94 / 4.37 = $8,625,010.07. 
Согласно Triumph of the Optimists: 101 Years of Global Investment Returns (https://www.amazon.com/Triumph-Optimists-Global-Investment-Returns/dp/0691091943), средняя геометрическая инфляция доллара США в прошлом веке составила 3.2% годовых, поэтому в реальных деньгах (с вычетом инфляции) получилось бы примерно $100 * 376,912.94 / 4.37 / (1.032 ^ 135) = $122,744.06. Точных расчетов готовых у меня нет.

Ответить
0

Интересно, сколько средневзвешенная годовая доходность у S&P500 за все это время получается с дивами и без? Не считали?

Ответить
0

Средняя геометрическая без дивов: (2,971.61/4.37)^(1/135)-1=4.95% годовых. С дивами (351,034.92/4.37)^(1/135)-1=8.7% годовых.

Ответить
0

Спасибо

Ответить
0

Перезалив файла: https://gofile.io/d/AdxfZf.

Ответить
0

И снова перезалив: https://gofile.io/d/96ZxPg

Ответить
–2

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

Ответить
0

Как именно?

Ответить

Комментарии

null