Завещание Баффета или о чём молчат финконсультанты

в 17:48, , рубрики: python, quantopian, бэктестинг, инвестиции, финансы в IT

После своей смерти У. Баффет завещал жене вложить все средства  в биржевой фонд ETF на S&P 500 (VOO) и жить в своё удовольствие. Однако книги, интернет и финконсультанты призывают нас составлять диверсифицированные портфели с обязательным включением в них облигаций. К слову, о диверсификации Баффет тоже отзывается не лестно и призывает все яйца хранить в одной корзине, просто внимательно за ней присматривать.

В данной статье мы попробуем разобраться, стоит ли верить оракулу из Омахи или прислушаться к финансовым консультантам. А поможет нам Python и Quantopian.

Стандартные портфели

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

  • 80% акций, 20% облигаций — агрессивный портфель;
  • 40% акций, 60% облигаций — умеренный портфель;
  • 20% акций, 80% облигаций — консервативный портфель.

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

Оправданны ли сегодня цены за услуги по составлению портфелей? Может достаточно консультации?

Ниже таблица с ETF фондами, представляющими собой готовые портфели. В них активы уже распределены в соответствии со стандартными моделями портфелей. Такой фонд можно купить и забыть и не заниматься его ребалансировкой. Управляющие компании всё сделают за нас. Эти фонды появились в 2009 и в таблице можно сравнить доходность и просадку со SPY (да, сравниваем со SPY, так как VOO появился в 2010) за идентичный период.

image

Агрессивный портфель AOA содержит 20% облигаций и проигрывает SPY 100% доходности.  Ниже тест ежемесячной ребалансировки SPY (80%) и BND (20%) против AOA:

image

Как видно из теста, самостоятельно ежемесячно ребалансируя портфель из двух активов мы бы получили большую доходность и меньшую просадку. Но всё равно проиграли бы SPY за 9 лет. А так как доходность и просадка рядом с эталонным AOA, то мы будем использовать данную пару для сравнения результатов за больший период.

Код для Quantopian

import pandas as pd
import numpy as np
assets = [
        {'symbol': symbol('SPY'), 'weight': 0.80},
        {'symbol': symbol('BND'), 'weight': 0.20},
    ]
 
def initialize(context):  
    set_benchmark(symbol('AOA'))
    schedule_function(rebalance, date_rules.month_start(), time_rules.market_open())
 
def rebalance(context, data):
    today = get_datetime()  
    df = pd.DataFrame(assets).set_index('symbol')
    df['can_trade'] = data.can_trade(df.index)
    df.loc[df['can_trade'] == False, 'weight'] = 0
    df['weight'] = df['weight'] / df['weight'].sum()
    
    for asset in df.index:  
        if df.loc[asset, 'can_trade']:
            order_target_percent(asset, df.loc[asset, 'weight'])

Не все облигации одинаково полезны

Для начинающих инвесторов облигации олицетворяют собой надежность инвестиций, но в реальности это не так. Корпоративные и, в особенности, высокодоходные облигации (а также бонды развивающихся стран) обладают большим риском в сравнении с трежерис. Ниже доходности и просадки нескольких ETF фондов на облигации:

image

Наблюдение. Любопытно себя повёл TLT в 2008 году, цена которого резко возросла в начале кризиса и также резко упала в конце.

image

Учитывая такое поведение, использование TLT в бэктестах приводит к положительному влиянию на портфель, что может вводить в заблуждение потенциальных инвесторов. Фонд AGG ведёт себя консервативней.

Попытаемся обогнать SPY+AGG портфелями

В тестах за основу возьмём стратегию, где будем держать SPY пока SMA(50) над SMA(200). В случае медвежьего пересечения будем весь капитал перекладывать в AGG.

Против данной стратегии поставим наборы, схожие со стандартными портфелями и будем ребалансировать их ежемесячно и ежегодно. Результаты за период с 2004 до 2018:

image

  • Return — общий доход за период, включая дивиденды.
  • Max drawdown — максимальная просадка за период.
  • Exposure — время удержания позиций.
  • Transactions — общее количество сделок в полном цикле, открытие и закрытие.
  • VT - Vanguard Total World Stock Index (весь мир).
  • EEM - iShares MSCI Emerging Index Fund (развивающиеся рынки).

Результаты показывают, что SPY сам по себе хорош, а если добавить простое пересечение SMA(50) и SMA(200) с перекладыванием в облигации, то выигрыш очевиден. Но если сократить количество ребалансировок до ежемесячных (а то и ежегодных), то можно получить лидирующую доходность и уменьшить просадку.

Код на Quantopian

import talib  # библиотека для технического анализа
import numpy as np
 
# функция, выполняемая перед началом тестирования
def initialize(context):
    context.asset = symbol('SPY')
    context.bond = symbol('AGG')  # облигации
    
    # ребалансировка на открытии рынка при пересечении
    schedule_function(simple, date_rules.every_day(), time_rules.market_open())
 
def simple(context, data):
    price_hist = data.history(context.asset, 'price', 210, '1d')
    
    sma50 = talib.SMA(price_hist, timeperiod=50)
    sma200 = talib.SMA(price_hist, timeperiod=200)
    allow = sma50[-1] >= sma200[-1]
    
    # проводим сделки
    if data.can_trade(context.asset):
        if allow:
            # покупаем актив на 100% портфеля
            order_target_percent(context.bond, 0.)
            order_target_percent(context.asset, 1.)
        else:
            # покупаем обонды на 100% портфеля
            order_target_percent(context.asset, 0.)
            order_target_percent(context.bond, 1.)

Вывод

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

Очевидно, что сложные портфели от консультантов могут быть с лёгкостью заменены готовыми ETF-фондами AOA, AOM и AOK (или аналогами других управляющих), в зависимости от необходимого риска. На случай, если всё-таки нужен портфель.

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

Автор: Александр Румянцев

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js