simTermStructs

Симулируйте структуры термина для Модели Рынка LIBOR

Описание

пример

[ZeroRates,ForwardRates] = simTermStructs(LMM,nPeriods) симулирует будущие пути к кривой нулевой ширины с помощью заданного LiborMarketModel объект.

пример

[ZeroRates,ForwardRates] = simTermStructs(___,Name,Value) добавляют дополнительные аргументы пары "имя-значение".

Примеры

свернуть все

Создайте LMM объект.

Settle = datenum('15-Dec-2007');
CurveTimes = [1:5 7 10 20]';
ZeroRates = [.01 .018 .024 .029 .033 .034 .035 .034]';
CurveDates = daysadd(Settle,360*CurveTimes,1);
 
irdc = IRDataCurve('Zero',Settle,CurveDates,ZeroRates);
 
LMMVolFunc = @(a,t) (a(1)*t + a(2)).*exp(-a(3)*t) + a(4);
LMMVolParams = [.3 -.02 .7 .14];
  
numRates = 20;
VolFunc(1:numRates-1) = {@(t) LMMVolFunc(LMMVolParams,t)};
  
Beta = .08;
CorrFunc = @(i,j,Beta) exp(-Beta*abs(i-j));
Correlation = CorrFunc(meshgrid(1:numRates-1)',meshgrid(1:numRates-1),Beta);
  
LMM = LiborMarketModel(irdc,VolFunc,Correlation,'Period',1)
LMM = 
  LiborMarketModel with properties:

       ZeroCurve: [1x1 IRDataCurve]
    VolFunctions: {1x19 cell}
     Correlation: [19x19 double]
      NumFactors: NaN
          Period: 1

Симулируйте термин структуры для заданного LMM объект.

[ZeroRates, ForwardRates] = simTermStructs(LMM, 20,'nTrials',100);

Входные параметры

свернуть все

LiborMarketModel объект, заданное использование LMM объект, созданный с помощью LiborMarketModel.

Типы данных: object

Количество периодов симуляции, заданных как числовое значение. nPeriods значение определяется swaption истечением и периодичностью уровней модели. Например, если необходимо было оценить swaption, истекающий через 5 лет с полугодовой Моделью рынка LIBOR (LMM), затем nPeriods был бы 10.

Типы данных: double

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: [ZeroRates, ForwardRates] = simTermStructs(LMM, 20,'nTrials',100)

Количество симулированных испытаний (демонстрационные пути), заданный как разделенная запятой пара, состоящая из 'nTrials' и значение положительного скалярного целого числа nPeriods наблюдения каждый. Если вы не задаете значение для этого аргумента, значением по умолчанию является 1, указание на один путь коррелированых переменных состояния.

Типы данных: double

Отметьте указание, используется ли прямо противоположная выборка, чтобы сгенерировать Гауссовы случайные варьируемые величины, которые управляют смещением нуля, уровень модульного отклонения Броуновский векторный dW (t), заданный как разделенная запятой пара, состоящая из 'antithetic' и булев скалярный флаг. Для получения дополнительной информации на Броуновском векторе, смотрите simBySolution.

Типы данных: логический

Прямая спецификация зависимого случайного шумового процесса, заданного как разделенная запятой пара, состоящая из 'Z' и числовое значение. Z значение используется, чтобы сгенерировать смещение нуля, уровень модульного отклонения Броуновский векторный dW (t), который управляет симуляцией. Для получения дополнительной информации смотрите simBySolution для модели GBM.

Типы данных: double

Сроки платежа, чтобы вычислить на каждом временном шаге, заданном как разделенная запятой пара, состоящая из 'Tenor' и числовой вектор.

Tenor позволяет вам выбрать различный набор уровней, чтобы вывести, чем базовые уровни. Например, можно хотеть симулировать ежеквартальные данные, но только сообщить о годовых показателях; это может быть сделано путем определения дополнительного входа Tenor.

Значение по умолчанию для tenor количество уровней в LiborMarketModel возразите, как задано Correlation и VolFunc входные параметры для LiborMarketModel объект.

Типы данных: double

Выходные аргументы

свернуть все

Симулированные структуры термина нулевого уровня, возвращенные как nPeriods+1- nTenors- nTrials матрица.

Симулированные структуры термина нулевого уровня, возвращенные как nPeriods+1- nTenors- nTrials матрица.

Введенный в R2013a