Этот текст написан в Сообществе, в нем сохранены авторский стиль и орфография
Возник у меня как-то вопрос: насколько корректно отображается доходность к погашению у облигаций в приложениях брокера и на различных сервисах наподобие РУСБОНДС. И, как оказалось, действительно реальная доходность может отличаться от указанной, а иногда даже быть отрицательной. Да, да, вы не ослышались. Об этом подробнее расскажу ниже. А сначала продемонстрирую таблицу, благодаря которой я пришел к такому выводу.
Преимущество данной таблицы заключается в том, что вам необходимо заполнить только желтые ячейки:
- Налог,
- Комиссия брокера,
- Код облигации
- Их количество.
И всё! Остальное все таблица сделает за вас: покажет название облигации, номинал, цену, дату погашения, НКД, купон, периодичность выплаты и даже дату оферты (если она есть). Данные подтягиваются с сайта Московской биржы. Ну, и самое главное — таблица рассчитает реальную доходность с учетом НДФЛ и без него, с учетом комиссии и без нее. Но я рекомендую смотреть на доходность с учетом комиссии и НДФЛ. В этом-то и смысл этой таблицы. Если вы снимите галочку «с учетом комиссии», то она не будет учитываться. Помимо этого, для облигации сформируется график денежного потока. И качестве бонуса — есть визуализация денежного потока.
В процессе работы с этой таблицей у меня для некоторых облигаций получалась отрицательная реальная доходность. Я начал разбираться и оказалось, что так и есть, таблицу не обманешь:). Дело в том, что с 01.01.2021 купоны по облигациям стали облагаться налогом. И из налогооблагаемой базы почему-то не вычитают потраченные средства на НКД — накопленный купонный доход. То есть если я покупаю облигацию за пару дней до выплаты купона — допустим 30 Р, то я дополнительно к цене облигации еще плачу НКД — допустим 29 Р. Справочно по колхозному: НКД равен 0 в день выплаты купона, затем каждый день он увеличивается на определенное значение, пока в день выплаты купона он не станет равным величине купона. В этот день он опять обнуляется и так далее до следующей выплаты.
Так вот получается я отдал 29 Р, а получил 30 Р — 13% налога, то есть всего 26,1 Р. Если последующих выплат еще много, то данная «несправедливость» не значительно уменьшит вашу доходность, а если эта выплата была последней (то есть в день погашения облигации), то получается вы вложите больше, чем вам вернется. То есть получите отрицательную реальную доходность!
Именно поэтому данная таблица имеет преимущество перед сторонними сервисами, которые не учитывают нюансы налогооблажения и комиссию брокера.
Сделаем вывод: облигацию выгодно покупать сразу после выплаты купона, когда НКД минимален. А таблица вам в этом поможет.
Ссылка на таблицу
In this tutorial, we will demonstrate how you can calculate the price of a zero coupon bond, the price of an annual coupon bond, and the price of the semi-annual coupon bond in an Excel sheet.
Calculating the Price of a Zero Coupon Bond in Excel
Consider an example, there is a 10 years bond and the value is 5000, and the rate of interest is 7.5 %. Before the maturity date, the bondholder cannot get any coupon. You can calculate the price of the zero bonds using the formula.
Step 1
Open an Excel sheet and enter the data as shown in the below screenshot for your reference.
Step 2
Now you need to enter the below-given formula and press the enter key as shown in the below screenshot for your reference.
=PV(B4,B3,0,B2)
Note − In the above-given formula, B4 – is the rate of interest, B3 – is the maturity year, 0 – means no coupon, and B2 – is the face value, you can change all this as per your need.
Calculating the Annual Coupon Bond in Excel
Consider there is an annual coupon bond where bondholder can get the coupon every year. You can calculate the price of the annual coupon bond using below.
Step 1
Open an excel sheet and enter the data as shown in the below screenshot for your reference.
Step 2
Now you need to enter the below given formula and press the enter key as shown in the below screenshot for your reference.
=PV(B10,B11,(B9*B12),B9)
Note − In the above formula, B10 is the interest rate, B11 is the maturity year, B9 is the face value, and B9*B12 is the coupon you will get every year. You can change this as per your need.
Calculating the Semi-Annual Coupon Bond in Excel
At times bondholders can get coupons twice a year. To calculate the bond price in this scenario, follow the steps given below −
Step 1
Open an excel sheet and enter the data as shown in the below screenshot for your reference.
Step 2
Now you need to enter the below given formula and press the enter key as shown in the below screenshot for your reference.
=PV(B18/2,B20,B17*B20/2,B17)
Note − In the above formula, B18 is the annual rate of interest, B20 is the actual period, B17*B21 gets the coupon, and B17 is the face value. You can change this as per your need.
Conclusion
In this tutorial, we used a set of simple examples to show how you can calculate the price of different types of coupon bonds in an Excel sheet.
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). Если ввести даты как текст, это может привести к возникновению проблем.
Аргументы функции ЧИСЛКУПОН описаны ниже.
-
Дата_согл — обязательный аргумент. Дата расчета за ценные бумаги (дата продажи ценных бумаг покупателю, более поздняя, чем дата выпуска).
-
Дата_вступл_в_силу — обязательный аргумент. Срок погашения ценных бумаг. Эта дата определяет момент, когда истекает срок действия ценных бумаг.
-
Частота — обязательный аргумент. Количество выплат по купонам за год. Для ежегодных выплат частота равна 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! (значение ошибки).
-
Если частота является любым числом, кроме 1, 2 или 4, то числоКУПОН возвращает #NUM! (значение ошибки).
-
Если базис < 0 или базис > 4, то coupNUM возвращает #NUM! (значение ошибки).
-
Если «≥», то «КУПОН» возвращает #NUM! значение ошибки.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Данные |
Описание |
|
25-янв-2007 |
Дата соглашения |
|
15-ноя-2008 |
Дата вступления в силу |
|
2 |
Полугодовой купон (см. выше) |
|
1 |
Базис фактический/фактический (см. выше) |
|
Формула |
Описание |
Результат |
=ЧИСЛКУПОН(A2;A3;A4;A5) |
Количество выплат по купонам по облигации в соответствии с приведенными выше условиями |
4 |
Нужна дополнительная помощь?
Не стою на месте и постоянно улучшаю таблицу.
В процессе выявляется масса ошибок, которые стараюсь убирать и делать таблицу более удобной для вас.
Сейчас она уже вполне хорошо подходит для отслеживания всех аспектов всего портфеля в целом.
Что добавил в этот раз:
👉 Убрал надобность искать режим торгов. Теперь он ищется автоматически (для ОФЗ режим торгов неизменен)
👉 Добавил столбец с ценой покупки
👉 Добавил столбец с расчётом эффективной доходности
👉 Упростил формулы и теперь все данные бьются корректно (включая даты купонов, их размер и даты оферты)
👉 Добавил столбец с расчётом НКД
👉 Добавил инструкции под таблицей, чтобы было проще разобраться что есть что и самостоятельно устранить некоторые возможные проблемы
$RU000A105SX7 $RU000A105ZX2 $RU000A105XF4 $RU000A100FE5 $RU000A0ZYJT2 $RU000A105PP9 $RU000A105TS5 $RU000A100PB0 $RU000A1058U6 $RU000A105RF6 $RU000A104ZK2 $RU000A102TL7 $RU000A1032D7
Таблицу залил в телеграмм канал: 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
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
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
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
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.
- 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.
Advertisement
-
1
Enter the bond yield formulas.
- Click in cell B13 and type the formula: =(B3*B2)/B10.
- Click in cell B14 and enter the formula: =RATE(B5*B8,B3/B8*B2,-B10,B2)*B8.
- Click in cell B15 and type the formula: =RATE(B6*B8,B3/B8*B2,-B10,B2*(1+B7))*B8.
- Click in cell B13 and type the formula: =(B3*B2)/B10.
-
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).
- 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.
- Type 10,000 in cell B2 (Face Value).
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,352 times.
Is this article up to date?
Финансовые показатели облигаций могут быстро рассчитываться в Excel. Для этого используется функция ДОХОД. С ее помощью вычисляется доходность ценных бумаг, по которым периодически выплачиваются проценты (дивиденды).
Как работает функция ДОХОД в Excel?
Облигации – это финансовый инструмент. Предприятие, выпустившее облигации, выступает в роли заемщика. Нуждаясь в привлечении средств, оно выпускает и выбрасывает на рынок такие ценные бумаги. Покупатель облигаций, фактически, является заимодавцем. Ставка купона – это процент, который получает покупатель облигации за то, что предоставил свои средства в пользование.
Как рассчитать доходность облигаций в Excel? Для решения данной задачи используется функция ДОХОД. Как и любая другая функция, ее синтаксис состоит из имени и аргументов. В строке формул сначала ставится знак равенства, после прописывается имя функции, а затем заполняем ее аргументы входящими значениями всех необходимых показателей.
Всего аргументов у сложной функции 7. Из них 6 обязательных для заполнения:
- Дата_согл. Расчетный день, когда облигация продана. Дата, когда долговые обязательства переданы покупателю. Не стоит путать ее с датой выпуска облигации.
- Дата_вступл_в_силу. День, когда заем возвращается покупателю. Это срок погашения облигации, когда истекает срок ее действия.
- Ставка. Годовая ставка процентов по облигации. Процент, который получает покупатель ценных бумаг.
- Цена. Показатель определяет цену облигации на 100 рублей номинала.
- Погашение. Стоимость, по которой выкупаются ценные бумаги.
- Частота. Число выплат по облигации в год. Может быть равна 1, 2 или 4.
- Базис. Этот аргумент не является обязательным. Поэтому он заключается в квадратные скобки. Он определяет способ вычисления дней.
Существует 5 видов базиса:
- — 0 – Американский 30/360;
- — 1 – факт/факт;
- — 2 – факт/360;
- — 3 – факт/365;
- — 4 – Европейский 30/360.
Аргументы всегда берутся в круглые скобки. Все они перечисляются по порядку. Между ними ставится знак «;».
Синтаксис функции прописывается следующим образом:
=ДОХОД(дата_согл; дата_вступл_в_силу; ставка; цена; погашение; частота; [базис])
Обязательно учитывать то, что все даты в Excel записываются в виде последовательных чисел. Недопустимо использование текстового формата. За 1 принято 1 января 1900 года. Все последующие даты просто прибавляют число прошедших дней. Поэтому все значения рассчитываются с помощью функции «ДАТА».
Результатом применения функции является определение прибыльности облигаций. Программа может выдать не результат, а знак ошибки #ЧИСЛО! Это происходит в нескольких случаях:
- введены даты без использования функции «ДАТА»;
- значение ставки меньше нуля;
- указана цена меньше или равная нулю;
- погашение указано меньше или равно нулю;
- базис меньше нуля или больше четырех.
Примеры использования функции ДОХОД для анализа облигаций
Для вычисления доходности ценных бумаг нужно ввести в первый столбик таблицы все аргументы функции.
Пример 1. Необходимо вычислить доходность облигаций при следующих условиях:
- Облигации были проданы 15 февраля 2008 года.
- Срок погашения – 15 ноября 2016.
- Ставка по купонам определена 5,75%.
- Цена составляет 95.04 номиналов.
- Выкупная стоимость — 100 номиналов.
- Проценты выплачиваются раз в полгода.
- Значение базиса – 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 предлагает ряд функций, используемых для вычисления различных финансовых показателей облигаций. Облигацией называется финансовый инструмент, в котором покупатель выступает в роли заимодателя, а учреждение или государство, выпустившее облигации, — в роли заемщика. Однако многие функции, связанные с облигациями, выходят за рамки материала настоящей книги. В этой статье представлены примеры некоторых наиболее распространенных функций.
Некоторые свойства облигаций являются также и аргументами функций, связанных с облигациями.
- Расчетный день. Дата, в которую долговые обязательства переходят к покупателю.
- Срок погашения. Дата, в которую заем (представленный облигацией) возвращается покупателю.
- Ставка (также называемая купоном). Процентная ставка, которую выпустивший облигацию выплачивает покупателю.
- Доходность. Норма прибыли, получаемая покупателем. Включает в себя выплаты по процентам и дисконт.
- Погашение. Выкупная стоимость ценных бумаг за 100 долларов номинальной стоимости.
- Частота. Количество выплат дивидендов за год.
Оценка облигаций
Предприятия, выпускающие ценные бумаги, устанавливают перечисленные выше показатели, основываясь на текущей рыночной конъюнктуре. Когда конъюнктура меняется, стоимость облигаций тоже изменяется.
Для примера предположим, что некоторая компания выпустила облигации с номинальной стоимостью 100 долларов, сроком погашения 10 лет и 6%-ной ставкой, выплачиваемой дважды в год.
- Если процентная ставка по кредитам растет, ставка в 6% становится не такой уж и привлекательной. Покупатели уже не захотят платить 100 долларов за облигацию — они будут их покупать за меньшую сумму.
- Если процентная ставка по кредитам падает, ставка в 6% становится привлекательной. В данном случае покупатели готовы платить больше номинальной стоимости.
Функция ЦЕНА
вычисляет сумму, которую покупатели потенциально готовы заплатить за облигацию в ожидании определенного дохода. Синтаксис этой функции таков: ЦЕНА(расчетный_день;срок_погашения;ставка;доходность;погашение;частота;базис
). Учитывая приведенные выше факты, инвестор, желающий получить 7,5% годовых, должен использовать следующую формулу для вычисления приемлемой цены облигации, срок погашения которой наступает через 8 лет: =ЦЕНА(СЕГОДНЯ();СЕГОДНЯ()+ДАТА(8;1;0);,06;,075;100;2)
.
Результатом этой формулы будет 91,10 долларов — именно такую сумму стоит заплатить за облигацию номиналом в 100 долларов с шестью процентами годовых, чтобы прибыльность составила 7,5%. Каждый год инвестор будет получать 6%*100 долларов, плюс при погашении облигации он получит дополнительную прибыль в 8,90 долларов. Эти два компонента — проценты и дисконт — формируют доходность облигаций. Фактическая дата выпуска облигации может отличаться от даты ее покупки инвестором. Облигации выпускают многие организации, так производитель кондиционеров кватро клима имеет достаточно высокую ликвидность своих ценных бумаг, которая основывается на качестве продукции.
В рассмотренном примере облигации были выпущены за два года до их покупки, следовательно, инвестор будет получать за них проценты только в течение 8 лет. Если же процентная ставка упала с момента выпуска и инвестору достаточно 5,2%, формула слегка изменится: =ЦЕНА(СЕГОДНЯ();СЕГОДНЯ()+ДАТА(8;1;0);,06;,052;100;2)
. При этих обстоятельствах инвестор может заплатить за стодолларовую облигацию 105,18 долларов. На рис. 11.17 эти вычисления показаны на рабочем листе.
Вычисление доходности
В предыдущем примере инвестор знал необходимую ему доходность и вычислял такую цену облигации, чтобы получить ее. Если же, наоборот, он знает цену облигации, то функция ДОХОД
поможет вычислить прибыльность инвестиций. Синтаксис этой функции следующий: ДОХОД (расчетный_день;срок_погашения;ставка;цена_покупки;номинал;частота;базис)
.
Рис. 1. Использование функции ЦЕНА
Инвестор все еще заинтересован в покупке десятилетней облигации с 6 процентами, выплачиваемыми дважды в год, однако на этот раз он хочет заплатить всего 93,95 долларов за стодолларовую облигацию. Следующая формула вычисляет процентную ставку за восемь лет, оставшихся до даты погашения: =ДОХОД(СЕГОДНЯ();СЕГОДНЯ()+ДАТА(8;1;0);,06;93,95;100;2
). Если инвестор заплатит за облигацию 93,95 долларов, то получит от своих инвестиций 7%. Если бы он заплатил за облигацию больше ста долларов, то получил бы от инвестиций меньше 6% (рис. 2).
Рис. 2. Когда цена выше номинальной стоимости облигации, прибыльность ниже купона