Accrint(Issue: DateTime;
FirstInterest: DateTime;
Settlement: DateTime;
Rate: Double;
NominalCost: Double;
Frequency: Integer;
Basis: Integer): Double;
Accrint(Issue: System.DateTime;
FirstInterest: System.DateTime;
Settlement: System.DateTime;
Rate: double;
NominalCost: double;
Frequency: integer;
Basis: integer): double;
| Параметры | Описание | Ограничения |
| Issue | Дата выпуска ценных бумаг. | Должен быть меньше Settlement. |
| FirstInterest | Дата первой выплаты по ценным бумагам. | |
| Settlement | Дата расчета за ценные бумаги. | Должен быть больше Issue. |
| Rate | Годовая процентная ставка для купонов по ценным бумагам. | Должен быть положительным. |
| NominalCost | Номинальная стоимость ценных бумаг. | Должен быть положительным. |
| Frequency | Количество выплат по купонам за год:
1 - для ежегодных выплат; 2 - для полугодовых выплат; 4 - для ежеквартальных выплат. |
Должен принимать значения 1, 2 или 4. |
| Basis | Используемый способ вычисления дня:
0 - Американский/360 дней (метод NSAD); 1 - Фактический/фактический; 2 - Фактический/360 дней; 3 - Фактический/365 дней; 4 - Европейский 30/360 дней. |
Должен принадлежать промежутку [0,4]. |
Метод Accrint возвращает накопленный процент по ценным бумагам с периодической выплатой процентов.
Accrint вычисляется следующим образом:

Где:
NC. Число квазикупонных периодов, которые укладываются в оставшийся период. Если это число содержит дробную часть, то оно округляется с избытком до следующего целого;
Ai. Число накопленных дней для i-го квазикупонного периода в оставшемся периоде выплат;
NLi. Нормальная продолжительность в днях i-ого квазикупонного периода в оставшемся периоде.
Для выполнения примера добавьте ссылку на системную сборку MathFin.
Sub UserProc;
Var
r: Double;
Begin
r := Finance.Accrint(DateTime.ComposeDay(2008,01,11),
DateTime.ComposeDay(2008,02,11), DateTime.ComposeDay(2008,03,11), 0.1, 1000, 2, 0);
Debug.WriteLine(r);
End Sub UserProc;
В результате выполнения примера в окно консоли будет выведен накопленный процент, равный «16.67».
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.MathFin;
…
Public Shared Sub Main(Params: StartParams);
Var
r: double;
Finance: FinanceClass = New FinanceClass();
DateTime1, DateTime2, DateTime3: System.DateTime;
Begin
DateTime1 := New DateTime(2008,01,11);
DateTime2 := New DateTime(2008,02,11);
DateTime3 := New DateTime(2008,03,11);
r := Finance.Accrint(DateTime1, DateTime2,
DateTime3, 0.1,
1000, 2, 0);
System.Diagnostics.Debug.WriteLine(r);
End Sub;
См. также: