Есть ли Java API или встроенная функция для решения проблем аннуитета? - PullRequest
3 голосов
/ 17 июля 2009

Мой босс попросил меня создать модуль для расчета обратного соединения.

Вопрос в следующем: хочу ли я получить $ 1.000.000,00 за 24 месяца с процентной ставкой 18% / год (или 1,5% / месяц). сколько денег я должен экономить каждый месяц?

Я искал в интернете, но ничего не нашел, кроме людей, ссылающихся на формулу Excel. Вы знаете, что математическая формула для этого случая?

Я использую Java для этого модуля. Есть ли какая-либо библиотека Java или API?

Ответы [ 4 ]

14 голосов
/ 17 июля 2009

Допустим, вы вкладываете D долларов в начале каждого месяца на M месяца, зарабатывая ежемесячную процентную ставку r. Мы установим i = r / 12. В конце M месяцев у вас будет

D * (1 + i)^M + D * (1 + i)^(M - 1) + D * (1 + i)^(M - 2) + ...
    D * (1 + i)

в вашем аккаунте. Это связано с тем, что D долларов в первом месяце инвестируются на M месяцев, D долларов на втором месяце инвестируются на M-1 месяцев и так далее. Это геометрическая прогрессия и упрощается до

D * (1 + i) * ((1 + i)^M - 1) / i.

Поэтому, если вы хотите, чтобы X в вашем аккаунте по истечении M месяцев, вы решаете

X = D * (1 + i) * ((1 + i)^M - 1) / i

для D для получения

D = X * i / ((1 + i) * ((1 + i)^M - 1)).

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

4 голосов
/ 17 июля 2009

Формула , которую вы хотите: S = R * [(1+i)^n - 1] / i, где

S = the required amount at the end (1,000,000)
R = the regular payment (what you want)
i = the periodic rate of interest (0.015)
n = the number of time periods (24)

поэтому ваш ответ R = 1000000 * .015 / (1,015 ^ 24 - 1) (~ = 34924,10)

EDIT:

Это предполагает, что платежи осуществляются в конце каждого периода, если платежи осуществляются в начале каждого периода, то разделите ваш ответ на (1 + i)

4 голосов
/ 17 июля 2009

Если вы не делаете это в целях кредитования, простые формулы, опубликованные в других ответах, вероятно, будут достаточно хорошими.

Если это касается какой-либо финансовой деятельности, остерегайтесь любых простых расчетов сложных процентов. Если для какого-либо кредитования вы, вероятно, обязаны соблюдать строгие правила (например, в Великобритании ставка должна быть указана в форме APR).

В расчетах необходимо учесть:

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

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

2 голосов
/ 17 июля 2009

Я думаю это дает вам то, что вы хотите. Это даже LGPL, даже если вы получаете 18% прибыли от ваших денег, цена не должна иметь значения; -).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...