Кирилл Писцов
Кирилл Писцов личный блог
31 декабря 2018, 09:00

Как посчитать доходность портфеля инвестиций?

Коллеги, нужна ваша помощь!

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

Как быть, если покупал ценные бумаги не в один день, а на протяжении всего года? Хочу получить доходность по портфелю в целом, чтобы это можно было сравнить с банковской доходность. Пробовал использовать подсчет через ЧИСТВНДОХ, но выдает какой то бред.

Уверен, что вы сталкивались с подобной проблемой.

75 Комментариев
  • Dobermann
    31 декабря 2018, 09:27
    Я бы просто оценил прирост по сумме депозита на начало периода и на конец периода. Если в течение периода средства вносились, их доходность считать отдельно с момента вноса
      • Поликарп Брусникин
        31 декабря 2018, 09:46
        Кирилл Писцов, так в экселе же все можно подсчитать. Я в экселе считаю, по каждой операции в отдельности и итог по всему портфелю.
          • Поликарп Брусникин
            31 декабря 2018, 10:41
            Кирилл Писцов, я в одной ячейки считаю сумму по вложеным деньгам, а в другой сумму по закрытию сделок. Разность этих ячеек есть годовой результат.
              • Поликарп Брусникин
                31 декабря 2018, 11:55
                Кирилл Писцов, да, тут сложнее. Но я не докидываю денег. К тому же я не на весь депо торгую.
                Так а что по такой схеме разве не получиться посчитать если даже довносишь деньги? ты же считаешь вложенные деньги в активы в одной ячейке и результат по этим вложениям в другой.
                  • Поликарп Брусникин
                    31 декабря 2018, 19:15
                    Кирилл Писцов, да, в твоем варианте сложнее. Тогда просто считай отношение всей заведенной суммы к итогу.
    • Антон Денисков (Fry)
      31 декабря 2018, 17:20
      Dobermann, и я так делаю. Кроме того, это решает проблему дополнительных расходов на обслуживание (сделки, расходы на ввод-вывод, штрафы, дивы, списания по счёту и т.п.), которые почесноку так и так надо вносить в суммарную доходность-убыток. Ибо при сравнении с банковским депозитом мы сравниваем деньги, а не «виртуальные» проценты.
  • Dobermann
    31 декабря 2018, 09:43
    Чтобы подсчитать нужно знать дату внесения 1000$ в течение периода
      • Dobermann
        31 декабря 2018, 12:29
        Кирилл Писцов, не нал ведь вносили, по документам банка легко взнос отследить
  • rtsi
    31 декабря 2018, 09:54
    Для этого нужно поделить суммарный доход на средневзвешенную стоимость портфеля.

    Суммарный доход — это конечная стоимость портфеля минус начальная минус все довнесения. То есть, 2200 (конечная)-1000 (начальная)-1000 (довнесения) = 200.

    Средневзвешенная стоимость — можно прикинуть погрубее (с точностью до месяцев), можно поточнее (с точностью до дней). Для этого каждое довнесение нужно умножить на то, какую часть общего периода это довнесение было в портфеле. Начальная стоимость — это как довнесение, которое было весь период. В Вашем случае:
    1000 (начальная стоимость)*1.000 (12/12=1.0 — какую часть оно было в портфеле) = 1000
    1000 (довнесение стоимость)*0.083 (1/12=0.083 — довнесение было в портфеле 0.083 всего периода) = 83.
    В сумме: 1083 — это и есть Ваша средневзвешенная стоимость.
    Чтобы повысить точность — можете не количество месяцев считать, а количество дней.

    200/1083=18.4% — доходность Вашего портфеля.
  • bstone
    31 декабря 2018, 10:02
    Вам нужно привести все пополнения к началу года, а потом посчитать общую годовую доходность со всеми пополнениями. На вашем примере:

    Было 1000, через 11 месяцев стало 1500. Это 50% за 11 месяцев.

    Теперь внесли еще 1000 и надо дисконтировать их на начало года:

    1000 / ( 1 + 50% / 100% ) = 666.67

    где 50% — это доходность портфеля на момент пополнения

    Итого у вас на начало года с пополнением было 1666.67, а по итогам года получили 2200. Следовательно годовая доходность будет:

    (2200 — 1666.67) / 2200 * 100% = 24.242%
    (2200 — 1666.67) / 1666.67 * 100% = 32%

    P.S. подкорректировал, т.к. по привычке считал в годовой доходности, но 50% — это доходность за расчетные 11 месяцев, а не 12.

    P.P.S. мозг уже плохо работает на праздники, в знаменателе последней формулы должен быть начальный баланс с дисконтированными пополнениями, а не итоговый.
    • rtsi
      31 декабря 2018, 10:06
      bstone, все промежуточные операции (продажи, покупки, реинвестиции, комиссии) — не имеют значения. Так как они влияют на конечную стоимость портфеля, то они автоматически учитываются в результирующей доходности.
      • bstone
        31 декабря 2018, 10:10
        rtsi, согласен, поэтому они нигде не фигурируют в расчетах, только пополнения.
      • bstone
        31 декабря 2018, 15:58
        Кирилл Писцов, ну 18.4% — это уж совсем в молоко. Вы даже на пальцах можете прикинуть для вашего простого примера. У вас депозит сначала вырос на 50% (с 1000 до 1500) потом уменьшился на 12% (с 2500 до 2200). Это 1*(1+0.5)*(1-0.12)=1.32. Т.е. в итоге +32%. 
  • Dobermann
    31 декабря 2018, 10:06
    Да, принцип расчета верный
  • Dobermann
    31 декабря 2018, 10:08
    Более верный у rtsi
    • bstone
      31 декабря 2018, 11:23
      Кирилл Писцов, функция ЧИСТВНДОХ не умеет считать с пополнениями. Почитайте документацию к ней. Там сказано, что только первое значение является затратами/инвестицией, а все последующие значения — это выплаты. Ну и формула уравнения там есть. Это будет левый результат в вашем случае, т.к. пополнения учитываются как выплаты.
        • Груди Нины
          31 декабря 2018, 13:51
          инперически

          Эмпирически. Зачем использовать слова, которые не можешь написать?
      • iddqd3n
        31 декабря 2018, 14:00
        bstone, вообще-то умеет, и именно её и используют, если лениво считать средневзвешенную. Просто пополнения надо записывать с минусом :)
        • bstone
          31 декабря 2018, 14:33
          Денис Г., ну нет-с, она же будет их считать как потери, а не как пополнения. Это разные вещи.
          • iddqd3n
            31 декабря 2018, 16:22
            bstone, эм… Я вынужден вас отправить читать документацию :) В столбце денежный поток все взносы идут с минусом, все снятия — с плюсом. Большинство примеров в инете представляют собой единый взнос и кучу платежей (снятий), но это не единственный вариант.

            Стартовый взнос и все прочие нужно записывать с минусом. Если снятий не было, то единственным «снятием» будет результат — последняя ячейка, с плюсом. И всё отлично считает, при небольших процентах совпадает с расчётом относительно средневзвешенного точно, потом начинаются небольшие расхождения, но это норм.
            • bstone
              31 декабря 2018, 18:45
              Денис Г., я как раз читал документацию. Посмотрите внимательно на уравнение там. То что вы получаете некое число, добавляя в денежный поток взносы с минусом, не значит, что это правильное число :)

              Так вот, если вы читали документацию, то должны понимать, что эта функция дисконтирует взносы по результирующей доходности, а не по доходности на момент внесения. Отсюда и левые результаты.
              • iddqd3n
                31 декабря 2018, 19:30
                bstone, я понял, о чём вы, вы правы. Лол, если формула в инете верна, то у них в этой формуле ошибка, причём серьёзная :/ Отрицательные ячейки надо считать до последней даты, а не первой, а они всё считают до первой.

                Но я теперь понимаю, почему у меня результат 3 года совпадает с «ручным» расчётом — у меня пополнения почти регулярные и на одну сумму, ошибка компенсируется.
  • Dobermann
    31 декабря 2018, 10:17
    Простота — высшая степень искусства. (Брюс Ли)
  • Dobermann
    31 декабря 2018, 10:33
    у Etsy расчёт верный. Добавлю свои 5 копеек:
    Определитесь с целью подсчета:
    — похвастать/подтвердить/убедится в верности своих представлений — это одно;
    — оценить эффективность — это другое.
    имхо я бы вычитал в любом случае 8-10% — это постоянный гарантированный доход в случае банковского депозита или приобретения ОФЗ. Если доходность выше этой суммы — это одно, но если ниже — эффективность отрицательная
    • iddqd3n
      31 декабря 2018, 14:03
      Dobermann, чтобы год назад безрисково вложиться под 8-10%, надо было обладать машиной времени.
      • Dobermann
        31 декабря 2018, 16:35
        Денис Г., депозит Русский стандарт 10,5%
        • iddqd3n
          31 декабря 2018, 17:31
          Dobermann, «безрисково» и «русский стандарт» для меня в одном предложении не употребимы :)
      • Dobermann
        31 декабря 2018, 16:41
        Денис Г., ИИС с ОФЗ типа 29011 8% + возврат НДФЛ 13%(если даже делить на 3 года = 4,3% плюс к ОФЗ)
        • iddqd3n
          31 декабря 2018, 17:45
          Dobermann, 29011 год назад около 104-105 торговались + куча НКД из-за высокого купона. А потом купон дропнули оба раза в этом году, а космическая цена покупки так бы и осталась. Сидеть в них со 105 не так круто, там 8% по итогам года если и выйдет, то вообще в обрез. О 8-10% в ней можно было бы говорить, если урвать на годик-два раньше, там купоны по 50-60р были.

          Ну а вычет и автор может его прибавить к своим акциям, его не ОФЗ дают :)
          • Dobermann
            31 декабря 2018, 18:00
            Денис Г., вопрос был 8-10% безрисково — я и привёл свой пример реальный. В банке безрисковость через АСВ, ОФЗ — есть с ПК доходом 26210, стоили по номиналу 6,8% купон + вычет НДФЛ. Просто 29011 более гарантирует рост инфляции на более длительный срок. Но суть была в том, что этот процент 8-10% — это альтернатива и альтернатива постоянная, как расходы у фирмы, когда себестоимость по Директ-костюмную считаешь, выкидываешь, тк один черт они есть независимо от наличия продаж и доходов. В чем смысл бегать как заяц, если в итоге черепаха придёт первой?
            • Dobermann
              31 декабря 2018, 18:08
              Долбанный Т9, Директ-костинг имел ввиду
  • Ур Урычь
    31 декабря 2018, 14:54

    Как-то так.
      • Ур Урычь
        01 января 2019, 06:42
        Кирилл Писцов, Да не за, что.
        Интересная была задачка. По этой формуле он показывает эффективность годовых на сделку, то есть там где 175 дней он показывает 41 процент, но это не значит что вы в этой сделки заработали 41 процент чтобы понять действительный процент заработка нужно ставить везде 365 дней. 
        Вообщем я думаю вы разберетесь.
        С наступившим вас. 
  • Bazz
    31 декабря 2018, 16:17
    Мне бы ваши проблемы… даже не хочу заморачиваться на подсчет убытков)))
  • Евгений Петров
    31 декабря 2018, 22:55
    Пробовал использовать подсчет через ЧИСТВНДОХ, но выдает какой то бред
    Нужно правильно использовать.
    Весь приход писать с минусом. Весь расход с плюсом. И сумму на дату расчета с плюсом. И будет все нормально считать.
  • Евгений Петров
    31 декабря 2018, 23:11
    Пример: было 1000$, купил на на акций и через месяц продал их за 1100$ с учетом всех комиссий. Реинвестировал эти 1100$ и за 10 месяцев получил уже 1500$. Внес на счет дополнительно 1000$, вложил суммарные 2500$ и через месяц получил 2200$. Вопрос: как понять какая % доходность в годовых?
    01.01.2018    -1000        
    31.01.2018    1100        
    31.01.2018    -1100        
    30.11.2018    1500        
    30.11.2018    -1500        
    30.11.2018    -1000        
                

    01.01.2019    2200        0,185006657
    (даты условные, т.к. число дней в месяце).

    По чиствндох рекомендует считать цб. Так что все потоки будут дисконтироваться к ней. А нужен это расчет только для сравнения доходностей, т.е. важна однообразность методики.
    • bstone
      01 января 2019, 01:27
      Евгений Петров, я не видел, где именно ее рекомендует использовать ЦБ, но что-то мне подсказывает, что он рекомендует использовать ее по назначению, т.е. для подсчета доходности при нерегулярных выплатах. Доходность с довнесениями — это другая песня. 
      • Евгений Петров
        01 января 2019, 02:06
        bstone, тут интересно как велика экселевская погрешность расчета с довнесениями. На экономическое поведение она не влияет. Такая прошлая доходность по портфелю, другая, экономическое поведение ведь не изменишь. А сравнение с другими идет по чиствндох.
        • bstone
          01 января 2019, 02:25
          Евгений Петров, для меня погрешность существенная. В примере выше 18.5% по ЧИСТВНДОХ против реальных 32% годовых. Если вас просят сравнить с другими результатами по ЧИСТВНДОХ, то это можно делать только если в вашем кэшфлоу не было довнесений.
          • Евгений Петров
            01 января 2019, 03:00
            bstone, фигасе. :-) Протрезвею, пересчитаю. :-) Что-то как-то много. :-)
  • Евгений Петров
    31 декабря 2018, 23:42
    Подумал, почитал. Возможно чиствндох и не считает как надо. Хотя я считаю по ней довольно давно, с проблемами не столкнулся.
    Просьба. Кто съел собаку, покажите где там ошибка. А то я сейчас готовлюсь к новому году и не очень соображаю. :-)
    • bstone
      01 января 2019, 18:02
      Евгений Петров, я уже показывал где ошибка. Она не в самой функции, а в том, что ее применяют не к тому, для чего она предназначена. Ошибка будет тем больше, чем сильнее доходность между пополнениями будет отличаться от итоговой доходности.
  • Dobermann
    01 января 2019, 10:13
    Можно задать вопрос: когда болит зуб, что правильнее:
    — искать в интернете способы его лечения
    — спросить у знакомых/специалистов
    — сходить к стоматологу
    ????
    Я думаю ответ и так очевиден.
    Так почему когда задница горит, мы не рассуждаем а бежим к профи, а когда не горит — дергаемся кто куда.
    В данном примере профи — это теория статистики, по ней и Эксель спецы делают, и rtsi по ней же применил расчёт
    • bstone
      01 января 2019, 18:00
      Dobermann, теорию еще и применять надо правильно. С этим и у «спецов» проблемы бывают.
  • Evangel10n
    08 сентября 2019, 11:33

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

    1. Почему на длинном периоде результаты двух функций полностью сходятся?
    2. Почему на периоде в месяц они настолько сильно расходятся?
    3. Какой все таки способ использовать для расчета доходности? Честно говоря пытался понять по вашей переписке в комментариях почему ЧИСТВНДОХ неверно применять, но к сожалению четко понять не смог.
    4. Считать доходность за месяц с помощью этих инструментов — бессмысленное действие?
    5. Как рассчитать коэффициент Шарпа имея только готовую доходность? Или как тогда высчитывать ежемесячную доходность для него?

    Ниже скрин с примером и формулами.

     

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн