Формулы в excel для расчета доходности облигаций

Этот текст написан в Сообществе, в нем сохранены авторский стиль и орфография

Возник у меня как-то вопрос: насколько корректно отображается доходность к погашению у облигаций в приложениях брокера и на различных сервисах наподобие РУСБОНДС. И, как оказалось, действительно реальная доходность может отличаться от указанной, а иногда даже быть отрицательной. Да, да, вы не ослышались. Об этом подробнее расскажу ниже. А сначала продемонстрирую таблицу, благодаря которой я пришел к такому выводу.

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

  1. Налог,
  2. Комиссия брокера,
  3. Код облигации
  4. Их количество.

И всё! Остальное все таблица сделает за вас: покажет название облигации, номинал, цену, дату погашения, НКД, купон, периодичность выплаты и даже дату оферты (если она есть). Данные подтягиваются с сайта Московской биржы. Ну, и самое главное — таблица рассчитает реальную доходность с учетом НДФЛ и без него, с учетом комиссии и без нее. Но я рекомендую смотреть на доходность с учетом комиссии и НДФЛ. В этом-то и смысл этой таблицы. Если вы снимите галочку «с учетом комиссии», то она не будет учитываться. Помимо этого, для облигации сформируется график денежного потока. И качестве бонуса — есть визуализация денежного потока.

В процессе работы с этой таблицей у меня для некоторых облигаций получалась отрицательная реальная доходность. Я начал разбираться и оказалось, что так и есть, таблицу не обманешь:). Дело в том, что с 01.01.2021 купоны по облигациям стали облагаться налогом. И из налогооблагаемой базы почему-то не вычитают потраченные средства на НКД — накопленный купонный доход. То есть если я покупаю облигацию за пару дней до выплаты купона — допустим 30 Р, то я дополнительно к цене облигации еще плачу НКД — допустим 29 Р. Справочно по колхозному: НКД равен 0 в день выплаты купона, затем каждый день он увеличивается на определенное значение, пока в день выплаты купона он не станет равным величине купона. В этот день он опять обнуляется и так далее до следующей выплаты.

Так вот получается я отдал 29 Р, а получил 30 Р — 13% налога, то есть всего 26,1 Р. Если последующих выплат еще много, то данная «несправедливость» не значительно уменьшит вашу доходность, а если эта выплата была последней (то есть в день погашения облигации), то получается вы вложите больше, чем вам вернется. То есть получите отрицательную реальную доходность!

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

Сделаем вывод: облигацию выгодно покупать сразу после выплаты купона, когда НКД минимален. А таблица вам в этом поможет.

Ссылка на таблицу

Финансовые показатели облигаций могут быстро рассчитываться в Excel. Для этого используется функция ДОХОД. С ее помощью вычисляется доходность ценных бумаг, по которым периодически выплачиваются проценты (дивиденды).

Как работает функция ДОХОД в Excel?

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

Как рассчитать доходность облигаций в Excel? Для решения данной задачи используется функция ДОХОД. Как и любая другая функция, ее синтаксис состоит из имени и аргументов. В строке формул сначала ставится знак равенства, после прописывается имя функции, а затем заполняем ее аргументы входящими значениями всех необходимых показателей.

Всего аргументов у сложной функции 7. Из них 6 обязательных для заполнения:

Всего аргументов.

  1. Дата_согл. Расчетный день, когда облигация продана. Дата, когда долговые обязательства переданы покупателю. Не стоит путать ее с датой выпуска облигации.
  2. Дата_вступл_в_силу. День, когда заем возвращается покупателю. Это срок погашения облигации, когда истекает срок ее действия.
  3. Ставка. Годовая ставка процентов по облигации. Процент, который получает покупатель ценных бумаг.
  4. Цена. Показатель определяет цену облигации на 100 рублей номинала.
  5. Погашение. Стоимость, по которой выкупаются ценные бумаги.
  6. Частота. Число выплат по облигации в год. Может быть равна 1, 2 или 4.
  7. Базис. Этот аргумент не является обязательным. Поэтому он заключается в квадратные скобки. Он определяет способ вычисления дней.

Существует 5 видов базиса:

  • — 0 – Американский 30/360;
  • — 1 – факт/факт;
  • — 2 – факт/360;
  • — 3 – факт/365;
  • — 4 – Европейский 30/360.

Аргументы всегда берутся в круглые скобки. Все они перечисляются по порядку. Между ними ставится знак «;».

Синтаксис функции прописывается следующим образом:

=ДОХОД(дата_согл; дата_вступл_в_силу; ставка; цена; погашение; частота; [базис])

Обязательно учитывать то, что все даты в Excel записываются в виде последовательных чисел. Недопустимо использование текстового формата. За 1 принято 1 января 1900 года. Все последующие даты просто прибавляют число прошедших дней. Поэтому все значения рассчитываются с помощью функции «ДАТА».

Результатом применения функции является определение прибыльности облигаций. Программа может выдать не результат, а знак ошибки #ЧИСЛО! Это происходит в нескольких случаях:

  • введены даты без использования функции «ДАТА»;
  • значение ставки меньше нуля;
  • указана цена меньше или равная нулю;
  • погашение указано меньше или равно нулю;
  • базис меньше нуля или больше четырех.



Примеры использования функции ДОХОД для анализа облигаций

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

Пример 1. Необходимо вычислить доходность облигаций при следующих условиях:

  1. Облигации были проданы 15 февраля 2008 года.
  2. Срок погашения – 15 ноября 2016.
  3. Ставка по купонам определена 5,75%.
  4. Цена составляет 95.04 номиналов.
  5. Выкупная стоимость — 100 номиналов.
  6. Проценты выплачиваются раз в полгода.
  7. Значение базиса – 0 (30/360).

Последовательно вводите все значения заполняя таблицу с данными:

вводите все значения.

В ячейку B9 вводите данные для аргументов функции ДОХОД. Формула будет выглядеть так:

расчет доходности.

Доходность облигаций составляет 4,26%.

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

Пример 2. Предприятие продало облигации 14 июля 2015. Установлен небольшой срок их погашения 14 июля 2017. Предлагается ставка 6%. Цена бумаг 97,4 номинальных значений. Стоимость для выкупа – 107 номиналов. Выплата процентов проводится 4 раза в год. Базис 2 – (48/360).

Для вычисления прибыльности облигации введите данные в таблицу по принципу, который стал понятен из примера 1:

введите данные в таблицу.

В итоговой ячейке B9 приписываем функцию:

Пример.

Это обозначает, что расчет доходности к погашению облигаций составляет (6,16% х 2года)=12,32%.

Пример 3. Ценные бумаги проданы 2 августа 2004. Погашение произошло 13 мая 2018. Купонная ставка по ним – 5,3%. Цена бумаг – 93 номинала. Стоимость для выкупа – 104 номинала. Проценты начисляются раз в год. Базис – 0 (30/360).

По аналогии составляем таблицу, используя функцию =ДОХОД():

ДОХОД.

Прибыльность акций оценена в 3,52%.

С помощью программы Excel удалось всего за несколько минут установить, что самыми прибыльными инвестициями являются облигации из второго примера.

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

В этой статье описаны синтаксис формулы и использование функции ДОХОД в Microsoft Excel.

Описание

Возвращает доходность ценных бумаг, по которым производятся периодические выплаты процентов. Функция ДОХОД используется для вычисления доходности облигаций.

Синтаксис

ДОХОД(дата_согл; дата_вступл_в_силу; ставка; цена; погашение, частота; [базис])

Важно: Даты должны быть введены с использованием функции ДАТА или как результат вычисления других формул и функций. Например, для указания даты 23 мая 2008 г. воспользуйтесь выражением ДАТА(2008,5,23). Если ввести даты как текст, это может привести к возникновению проблем.

Аргументы функции ДОХОД описаны ниже.

  • Дата_согл    — обязательный аргумент. Дата расчета за ценные бумаги (дата продажи ценных бумаг покупателю, более поздняя, чем дата выпуска).

  • Дата_вступл_в_силу    — обязательный аргумент. Срок погашения ценных бумаг. Эта дата определяет момент, когда истекает срок действия ценных бумаг.

  • Ставка    — обязательный аргумент. Годовая процентная ставка для купонов по ценным бумагам.

  • Цена    — обязательный аргумент. Цена ценных бумаг на 100 рублей номинальной стоимости.

  • Погашение    — обязательный аргумент. Выкупная стоимость ценных бумаг на 100 рублей номинальной стоимости.

  • Частота    — обязательный аргумент. Количество выплат по купонам за год. Для ежегодных выплат частота равна 1, для полугодовых — 2, для ежеквартальных — 4.

  • Базис    — необязательный аргумент. Используемый способ вычисления дня.

Базис

Способ вычисления дня

0 или опущен

Американский (NASD) 30/360

1

Фактический/фактический

2

Фактический/360

3

Фактический/365

4

Европейский 30/360

Замечания

  • В приложении Microsoft Excel даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 448 дней.

  • Дата соглашения является датой продажи покупателю купона, например облигации. Срок платежа представляет собой дату истечения срока действия купона. Предположим, например, что облигация со сроком действия 30 лет выпущена 1 января 2008 г. и приобретена покупателем через шесть месяцев после выпуска. Датой выпуска будет 1 января 2008 г., датой расчета — 1 июля 2008 г., а срок погашения такой облигации наступит 1 января 2038 г., то есть через 30 лет после даты выпуска.

  • Значения аргументов «дата_согл», «дата_вступл_в_силу», «частота» и «базис» усекаются до целых.

  • Если дата расчета или дата погашения не является допустимой датой, то доход возвращает #VALUE! значение ошибки #ЗНАЧ!.

  • Если ставка < 0, то доход возвращает #NUM! значение ошибки #ЗНАЧ!.

  • Если pr ≤ 0 или погашение ≤ 0, то доход возвращает #NUM! значение ошибки #ЗНАЧ!.

  • Если частота является любым числом, кроме 1, 2 или 4, то доход возвращает #NUM! значение ошибки #ЗНАЧ!.

  • Если базис < 0 или базис > 4, то доход возвращает #NUM! значение ошибки #ЗНАЧ!.

  • Если «≥», «ДОХОД» возвращает #NUM! значение ошибки #ЗНАЧ!.

  • Если только один или менее периодов купона укладываются до даты погашения, функция ДОХОД вычисляется следующим образом:

    Уравнение

    где:

    • A = количество дней от начала периода купона до даты расчета (накопленные дни).

    • DSR = количество дней от даты расчета до даты погашения.

    • E = количество дней в периоде купона.

  • Если до погашения укладывается более одного периода купона, функция ДОХОД вычисляется итеративным методом (не более 100 итераций). Используется метод Ньютона на основе формулы для функции ЦЕНА. Доходность меняется до тех пор, пока вычисляемая цена для данной доходности не станет близкой к значению аргумента «цена».

Пример

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Данные

Описание

15-фев-08

Дата соглашения

15-ноя-16

Дата вступления в силу

5,75 %

Процентная ставка по купонам

95,04287

Цена

100р.

Выкупная стоимость

2

Частота полугодовая (см. выше)

0

Базис 30/360 (см. выше)

Формула

Описание (результат)

Результат

=ДОХОД(A2;A3;A4;A5;A6;A7;A8)

Доходность по облигациям в соответствии с приведенными выше условиями (0,065 или 6,5%)

6,5 %

Нужна дополнительная помощь?

Не стою на месте и постоянно улучшаю таблицу.
В процессе выявляется масса ошибок, которые стараюсь убирать и делать таблицу более удобной для вас.

Сейчас она уже вполне хорошо подходит для отслеживания всех аспектов всего портфеля в целом.

Что добавил в этот раз:
👉 Убрал надобность искать режим торгов. Теперь он ищется автоматически (для ОФЗ режим торгов неизменен)
👉 Добавил столбец с ценой покупки
👉 Добавил столбец с расчётом эффективной доходности
👉 Упростил формулы и теперь все данные бьются корректно (включая даты купонов, их размер и даты оферты)
👉 Добавил столбец с расчётом НКД
👉 Добавил инструкции под таблицей, чтобы было проще разобраться что есть что и самостоятельно устранить некоторые возможные проблемы

$RU000A105SX7 $RU000A105ZX2 $RU000A105XF4 $RU000A100FE5 $RU000A0ZYJT2 $RU000A105PP9 $RU000A105TS5 $RU000A100PB0 $RU000A1058U6 $RU000A105RF6 $RU000A104ZK2 $RU000A102TL7 $RU000A1032D7Excel таблица расчёта доходности облигаций! Версия 3.0.🥳🥳🥳 
Таблицу залил в телеграмм канал: t.me/filippovich_moneyОна висит в закреплённых записях


Download Article


Download Article

A bond value calculator capable of accurately determining the current value of a bond, can be easily assembled in a Microsoft Excel spread sheet. Once created, the desired data will automatically appear in the designated cells when the required input values are entered. This article provides step-by-step instructions on how to create a bond value calculator in an Excel spreadsheet.

  1. Image titled Calculate Bond Value in Excel Step 1

    1

    Type the column heading and data labels. Beginning with cell A1, type the following text into cells A1 through A8: Bond Yield Data, Face Value, Annual Coupon Rate, Annual Required Return, Years to Maturity, Years to Call, Call Premium and Payment Frequency. Skipping over cell A9, type «Value of Bond» in cell A10.

  2. Image titled Calculate Bond Value in Excel Step 2

    2

    Format the text in column A. Move the mouse pointer over the line separating columns A and B, just above the Bond Yield Data column heading. Click and drag the line to widen column A enough to fit the text in the column.

    Advertisement

  3. Image titled Calculate Bond Value in Excel Step 3

    3

    Format the column headings. Click and drag to select cells A2 and B2. Hold down the control key on your keyboard. Confirm that both cells are selected, click the «Merge cells» button, and then click the «Center Text» button. With cells A2 and B2 still selected, click the «Borders» button and select «All borders.»

  4. Image titled Calculate Bond Value in Excel Step 4

    4

    Set the numerical formatting in column B. Hold down the control key on your keyboard and select cells B2 and B10. With both cells selected, click the «Currency» button ($) on the «Quick format» tool bar. The formatted cell values will display as a dollar amount.

    • Hold down the control key and select cells A3, A4 and A7. With all 3 cells selected, click the «Percent» button (%) on the «Quick format» tool bar. The formatted cell values will display as a percentage.

      Image titled Calculate Bond Value in Excel Step 4Bullet1

  5. Advertisement

  1. Image titled Calculate Bond Value in Excel Step 5

    1

    Enter the bond yield formulas.

    • Click in cell B13 and type the formula: =(B3*B2)/B10.

      Image titled Calculate Bond Value in Excel Step 5Bullet1

    • Click in cell B14 and enter the formula: =RATE(B5*B8,B3/B8*B2,-B10,B2)*B8.

      Image titled Calculate Bond Value in Excel Step 5Bullet2

    • Click in cell B15 and type the formula: =RATE(B6*B8,B3/B8*B2,-B10,B2*(1+B7))*B8.

      Image titled Calculate Bond Value in Excel Step 5Bullet3

  1. Image titled Calculate Bond Value in Excel Step 6

    1

    Enter the following values in the corresponding cells to test the functionality of the bond yield calculator.

    • Type 10,000 in cell B2 (Face Value).

      Image titled Calculate Bond Value in Excel Step 6Bullet1

    • Type .06 in cell B3 (Annual Coupon Rate).
    • Type .09 into cell B4 (Annual Required Return).
    • Type 3 in cell B5 (Years to Maturity).
    • Type 1 in cell B6 (Years to Call).
    • Type .04 in cell B7 ( Call Premium).
    • Type 2 in cell B8 (Payment Frequency).
    • Type 9999.99 into cell B10 (Value of Bond).
    • Cross-reference the results of the input values. If the formulas have been entered correctly, the following results will appear in column B, under the Bond Yield Calculations heading. The Current Yield should be 6.0%. The Yield to Maturity should read 6.0%, and the Yield to call should read 9.90%. If the values in the bond yield calculator match the figures listed above, the formulas have been entered correctly. If the values do not match, double check that the formulas have been entered correctly. The bond yield calculator has been tested.
  2. Advertisement

Ask a Question

200 characters left

Include your email address to get a message when this question is answered.

Submit

Advertisement

Video

Thanks for submitting a tip for review!

About This Article

Thanks to all authors for creating a page that has been read 102,361 times.

Is this article up to date?

Like this post? Please share to your friends:
  • Формулы в excel для сравнения ячеек
  • Формулы в excel для расчета kpi
  • Формулы в excel для сравнения данных
  • Формулы в excel для преобразования числа в текст
  • Формулы в excel для рейтинга