НачатьНачать бесплатно

Несколько аргументов (2)

Рассмотрим более сложный пример. Помните понятие приведённой стоимости из курса Introduction to R for Finance? Если нет, вы можете посмотреть соответствующее видео здесь. Суть в том, что будущие денежные поступления нужно дисконтировать по определённой процентной ставке, чтобы выразить их стоимость в сегодняшних деньгах. Для этого используется следующая формула:

present_value <- cash_flow * (1 + i / 100) ^ -year

Было бы удобно иметь функцию, которая выполняет этот расчёт автоматически. Например, такого вида:

present_value <- pv(cash_flow, i, year)

Эта функция должна работать как с числовыми значениями, например pv(1500, 5, 2), так и с векторами одинаковой длины — чтобы сразу вычислять целый вектор приведённых стоимостей!

Функция percent_to_decimal() уже доступна для использования.

Это упражнение является частью курса

Средний уровень R для финансов

Посмотреть курс

Инструкции к упражнению

  • Заполните пропуски в функции так, чтобы она выполняла следующее:
    • Принимала аргументы: cash_flow, i, year
    • Вычисляла дисконтный множитель: (1 + i / 100). Используйте функцию percent_to_decimal() для перевода i в десятичную форму.
    • Выполняла расчёт приведённой стоимости. Не сохраняйте результат в переменную — как последняя выполненная строка, он вернётся автоматически.
  • Вычислите приведённую стоимость суммы в $1200 при процентной ставке 7%, которая будет получена через 3 года.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Present value function
pv <- function(___, ___, ___) {
    
    # Discount multiplier
    mult <- 1 + ___(i)
    
    # Present value calculation
    ___ * ___ ^ -___
}

# Calculate a present value
___
Редактировать и запускать код