Симулируйте демонстрационные пути переключающей порог модели динамической регрессии
дополнительные опции использования заданы одними или несколькими аргументами name-value. Например, Y
= simulate(Mdl
,numObs
,Name,Value
)simulate(Mdl,10,NumPaths=1000,Y0=Y0)
симулирует 1000
демонстрационные пути длины 10
, и инициализирует динамический компонент каждой подмодели при помощи преддемонстрационных данных об ответе Y0
.
[
также возвращает симулированные инновационные пути Y
,E
,StatePaths
] = simulate(___)E
и симулированные пути состояния StatePaths
, использование любой из комбинаций входных аргументов в предыдущих синтаксисах.
Предположим, что генерирующий данные процесс (DGP) является самовозбуждающимся порогом с двумя состояниями авторегрессивная модель (SETAR) для 1D переменной отклика. Задайте все значения параметров (этот пример использует произвольные значения).
Создайте полностью заданную модель для DGP
Создайте дискретный пороговый переход на уровне 0. Пометьте режимы, чтобы отразить состояние экономики:
Когда пороговая (в настоящее время неизвестная) переменная находится в , экономика находится в рецессии.
Когда пороговая переменная находится в , экономика расширяется.
t = 0; tt = threshold(t,StateNames=["Recession" "Expansion"])
tt = threshold with properties: Type: 'discrete' Levels: 0 Rates: [] StateNames: ["Recession" "Expansion"] NumStates: 2
tt
полностью заданный threshold
объект, который описывает переключающийся механизм переключающей порог модели.
Примите, что следующие одномерные модели описывают процесс ответа системы:
Рецессия: , где .
Расширение: , где .
Для каждого режима используйте arima
создать модель AR, которая описывает процесс ответа в режиме.
c1 = -1; c2 = 1; ar1 = 0.1; ar2 = [0.3 0.2]; v1 = 1; v2 = 4; mdl1 = arima(Constant=c1,AR=ar1,Variance=v1,... Description="Recession State Model")
mdl1 = arima with properties: Description: "Recession State Model" Distribution: Name = "Gaussian" P: 1 D: 0 Q: 0 Constant: -1 AR: {0.1} at lag [1] SAR: {} MA: {} SMA: {} Seasonality: 0 Beta: [1×0] Variance: 1 ARIMA(1,0,0) Model (Gaussian Distribution)
mdl2 = arima(Constant=c2,AR=ar2,Variance=v2,... Description="Expansion State Model")
mdl2 = arima with properties: Description: "Expansion State Model" Distribution: Name = "Gaussian" P: 2 D: 0 Q: 0 Constant: 1 AR: {0.3 0.2} at lags [1 2] SAR: {} MA: {} SMA: {} Seasonality: 0 Beta: [1×0] Variance: 4 ARIMA(2,0,0) Model (Gaussian Distribution)
mdl1
и mdl2
полностью заданный arima
объекты.
Сохраните подмодели в векторе с порядком, соответствующим режимам в tt.StateNames
.
mdl = [mdl1; mdl2];
Используйте tsVAR
создать модель TAR из переключающегося механизма tt
и подмодели состояния специфичные mdl
.
Mdl = tsVAR(tt,mdl)
Mdl = tsVAR with properties: Switch: [1x1 threshold] Submodels: [2x1 varm] NumStates: 2 NumSeries: 1 StateNames: ["Recession" "Expansion"] SeriesNames: "1" Covariance: []
Mdl.Submodels(2)
ans = varm with properties: Description: "AR-Stationary 1-Dimensional VAR(2) Model" SeriesNames: "Y1" NumSeries: 1 P: 2 Constant: 1 AR: {0.3 0.2} at lags [1 2] Trend: 0 Beta: [1×0 matrix] Covariance: 4
Mdl
полностью заданный tsVAR
объект, представляющий одномерную модель TAR с двумя состояниями. tsVAR
хранилища задали arima
подмодели как varm
объекты.
Симулируйте данные об ответе из DGP
Сгенерируйте один случайный путь к ответу длины 50 из модели. simulate
принимает, что пороговая переменная , который подразумевает, что модель является самовозбуждающейся.
rng(1); % For reproducibility
y = simulate(Mdl,50);
y
50 на 1 вектор из одного пути к ответу.
Постройте путь к ответу с порогом при помощи ttplot
.
figure ttplot(Mdl.Switch,Data=y)
Рассмотрите следующую логистическую модель TAR (LSTAR) для ежегодного, основанного на CPI, канадского ряда уровня инфляции .
Состояние 1: , где
Состояние 2: , где
Состояние 3: , где
Система находится в состоянии 1 когда , система находится в состоянии 2 когда , и система находится в состоянии 3 в противном случае.
Уровень функции перехода между состояниями 1 и 2 3.5, и уровень функции перехода между состояниями 2 и 3 1.5.
Создайте представление модели LSTAR .
t = [2 8];
tt = threshold([2 8],Type="logistic",Rates=[3.5 1.5]);
mdl1 = arima(Constant=-5,Variance=0.1);
mdl2 = arima(Constant=0,Variance=0.2);
mdl3 = arima(Constant=5,Variance=0.3);
Mdl = tsVAR(tt,[mdl1; mdl2; mdl3]);
Загрузите канадскую инфляцию и набор данных процентной ставки.
load Data_Canada
Извлеките основанный на CPI ряд уровня инфляции.
INF_C = DataTable.INF_C; numObs = length(INF_C);
Симулируйте десять путей из модели. Задайте пороговый тип переменной и его данные.
Y = simulate(Mdl,numObs,NumPaths=10,Type="exogenous",Z=INF_C);
Y является numObs
- 10 матриц симулированных путей. Каждый столбец представляет независимо симулированный путь.
В мозаичном размещении постройте пороговые переходы с данными при помощи ttplot
, и постройте симулированные пути к одной мозаике.
tiledlayout(2,1) nexttile ttplot(tt,Data=INF_C) colorbar('off') xticklabels(dates(xticks)) nexttile plot(dates,Y) grid on axis tight title("Simulations")
Y
переключатели между подмоделями согласно значению пороговой переменной INF_C
. Смешивание очевидно для наблюдений около порогов, такой как в уровне инфляции 1 964 и 1978.
Полагайте, что модель для ежегодного, основанного на CPI, канадского ряда уровня инфляции в Симулирует Разнообразные пути.
Создайте модель LSTAR для ряда.
t = [2 8];
tt = threshold([2 8],Type="logistic",Rates=[3.5 1.5]);
mdl1 = arima(Constant=-5,Variance=0.1);
mdl2 = arima(Constant=0,Variance=0.2);
mdl3 = arima(Constant=5,Variance=0.3);
Mdl = tsVAR(tt,[mdl1; mdl2; mdl3]);
Загрузите канадскую инфляцию и набор данных процентной ставки и извлеките ряд уровня инфляции.
load Data_Canada
INF_C = DataTable.INF_C;
numObs = length(INF_C);
Симулируйте длину numObs
путь из модели. Задайте пороговый тип переменной и его данные. Возвратите инновации и состояния.
[y,e,s] = simulate(Mdl,numObs,NumPaths=10,Type="exogenous",Z=INF_C); tiledlayout(3,1) nexttile plot(y); ylabel("Simulated Response") grid on nexttile plot(e) ylabel('Innovation') grid on nexttile stem(s) ylabel('State') yticks([1 2 3]) yticklabels(Mdl.StateNames)
В этом примере показано, как инициализировать симулированные пути от преддемонстрационных ответов и начальных состояний. Пример использует произвольные значения параметров.
Полностью задайте модель LSETAR
Рассмотрите следующую 2D модель LSETAR.
Состояние 1, "Low"
: где
Состояние 2, "Med"
: где
Состояние 3, "High"
: где
Система находится в состоянии 1 когда , система находится в состоянии 2 когда , и система находится в состоянии 3 в противном случае.
Функция перехода является логистической. Уровень перехода от состояния 1 - 2 3.5, и уровень перехода от состояния 1 - 3 1.5.
Создайте логистические пороговые переходы в середине уровней-1 и 1 с уровнями 3.5
и 1.5
соответственно. Пометьте состояния.
t = [-1 1]; r = [3.5 1.5]; stateNames = ["Low" "Med" "High"]; tt = threshold(t,Type="logistic",Rates=[3.5 1.5],StateNames=stateNames);
Создайте подмодели VAR при помощи varm
. Сохраните подмодели в векторе с порядком, соответствующим режимам в tt.StateNames
.
% Constants (numSeries x 1 vectors) C1 = [1; -1]; C2 = [2; -2]; C3 = [3; -3]; % Autoregression coefficients (numSeries x numSeries matrices) AR1 = {}; % 0 lags AR2 = {[0.5 0.1; 0.5 0.5]}; % 1 lag AR3 = {[0.25 0; 0 0] [0 0; 0.25 0]}; % 2 lags % Innovations covariances (numSeries x numSeries matrices) Sigma1 = [1 -0.1; -0.1 1]; Sigma2 = [2 -0.2; -0.2 2]; Sigma3 = [3 -0.3; -0.3 3]; % VAR Submodels mdl1 = varm('Constant',C1,'AR',AR1,'Covariance',Sigma1); mdl2 = varm('Constant',C2,'AR',AR2,'Covariance',Sigma2); mdl3 = varm('Constant',C3,'AR',AR3,'Covariance',Sigma3); mdl = [mdl1; mdl2; mdl3];
Создайте модель LSETAR из переключающегося механизма tt
и подмодели состояния специфичные mdl
. Пометьте серию Y1
и Y2
.
Mdl = tsVAR(tt,mdl,SeriesNames=["Y1" "Y2"])
Mdl = tsVAR with properties: Switch: [1x1 threshold] Submodels: [3x1 varm] NumStates: 3 NumSeries: 2 StateNames: ["Low" "Med" "High"] SeriesNames: ["Y1" "Y2"] Covariance: []
Mdl
полностью заданный tsVAR
объект, представляющий многомерную модель LSETAR с тремя состояниями. tsVAR
объектные функции позволяют вам задать пороговые характеристики переменной и данные.
Инициализируйте симуляцию от преддемонстрационных ответов
Считайте симуляцию 5 путей инициализированной от преддемонстрационных ответов. Задайте numPreObs
- numSeries
- numPaths
массив преддемонстрационных ответов, где:
numPreObs
количество преддемонстрационных ответов на ряд и путь. Необходимо задать достаточно преддемонстрационных наблюдений, чтобы инициализировать все компоненты AR в моделях VAR и эндогенной пороговой переменной. Самый большой порядок компонента AR равняется 2, и пороговая задержка переменной равняется 4, поэтому simulate
требует numPreObs=4
преддемонстрационные наблюдения на ряд и путь.
numSeries=2
, количество ряда ответа в системе.
numPaths=5
, количество независимых контуров, чтобы симулировать.
delay = 4; numPaths = 5; Y0 = zeros(delay,Mdl.NumSeries,numPaths); for j = 2:numPaths Y0(:,:,j) = 10*j*ones(delay,Mdl.NumSeries); end
Симулируйте 10 путей длины 100 из модели LSETAR от предварительной выборки. Задайте эндогенную пороговую переменную и ее задержку, .
numObs = 100; rng(1); Y = simulate(Mdl,numObs,NumPaths=numPaths,Y0=Y0,Index=2,Delay=4);
Y является 100 2 5 массивами, симулируют пути к ответу. Например, Y(50,2,3)
симулированный отклик пути 3
, из серии Y2
, в моменте времени 50
.
Постройте симулированные пути для каждой переменной на отдельных графиках.
tiledlayout(2,1) nexttile plot(squeeze(Y(:,1,:))) title("Y1") nexttile plot(squeeze(Y(:,2,:))) title("Y2")
Система быстро обосновывается независимо от предварительной выборки.
Инициализируйте симуляцию от состояний
Симулируйте три пути длины 100, где каждое из трех состояний инициализирует путь. Задайте индексы состояния для инициализации и задайте эндогенную пороговую переменную и ее задержку.
S0 = 1:Mdl.NumStates; numPaths = numel(S0); Y = simulate(Mdl,numObs,NumPaths=numPaths,S0=S0,Index=2,Delay=4); tiledlayout(2,1) nexttile plot(squeeze(Y(:,1,:))) title("Y1") nexttile plot(squeeze(Y(:,2,:))) title("Y2")
Рассмотрите включая компоненты регрессии для внешних переменных в каждой подмодели переключающей порог модели динамической регрессии в, Инициализируют Многомерную Симуляцию модели от Нескольких Стартовых Условий.
Полностью задайте модель LSETAR
Создайте логистические пороговые переходы в середине уровней-1 и 1 с уровнями 3.5 и 1.5 соответственно. Пометьте состояния.
t = [-1 1]; r = [3.5 1.5]; stateNames = ["Low" "Med" "High"]; tt = threshold(t,Type="logistic",Rates=[3.5 1.5],StateNames=stateNames)
tt = threshold with properties: Type: 'logistic' Levels: [-1 1] Rates: [3.5000 1.5000] StateNames: ["Low" "Med" "High"] NumStates: 3
Примите, что следующие модели VARX описывают процессы ответа системы:
Состояние 1: где
Состояние 2: где
Состояние 3: где
представляет одну внешнюю переменную, представляет две внешних переменные, и представляет три внешних переменные. Сохраните подмодели в векторе.
% Constants (numSeries x 1 vectors) C1 = [1; -1]; C2 = [2; -2]; C3 = [3; -3]; % Regression coefficients (numSeries x numRegressors matrices) Beta1 = [1; -1]; % 1 regressor Beta2 = [2 2; -2 -2]; % 2 regressors Beta3 = [3 3 3; -3 -3 -3]; % 3 regressors % Autoregression coefficients (numSeries x numSeries matrices) AR1 = {}; AR2 = {[0.5 0.1; 0.5 0.5]}; AR3 = {[0.25 0; 0 0] [0 0; 0.25 0]}; % Innovations covariances (numSeries x numSeries matrices) Sigma1 = [1 -0.1; -0.1 1]; Sigma2 = [2 -0.2; -0.2 2]; Sigma3 = [3 -0.3; -0.3 3]; %VARX submodels mdl1 = varm(Constant=C1,AR=AR1,Beta=Beta1,Covariance=Sigma1); mdl2 = varm(Constant=C2,AR=AR2,Beta=Beta2,Covariance=Sigma2); mdl3 = varm(Constant=C3,AR=AR3,Beta=Beta3,Covariance=Sigma3); mdl = [mdl1; mdl2; mdl3];
Создайте модель LSETAR из переключающегося механизма tt
и подмодели состояния специфичные mdl
. Пометьте серию Y1
и Y2
.
Mdl = tsVAR(tt,mdl,SeriesNames=["Y1" "Y2"])
Mdl = tsVAR with properties: Switch: [1x1 threshold] Submodels: [3x1 varm] NumStates: 3 NumSeries: 2 StateNames: ["Low" "Med" "High"] SeriesNames: ["Y1" "Y2"] Covariance: []
Симулируйте данные, игнорирующие компонент регрессии
Если вы не снабжаете внешними данными, simulate
игнорирует компоненты регрессии в подмоделях. Симулируйте один путь ответов, инноваций и состояний в горизонт симуляции длины 50. Затем постройте каждый путь отдельно.
rng(1); % For reproducibility numObs = 50; [Y,E,SP] = simulate(Mdl,numObs); figure tiledlayout(3,1) nexttile plot(Y) ylabel("Response") grid on legend(["y_1" "y_2"]) nexttile plot(E) ylabel("Innovation") grid on legend(["e_1" "e_2"]) nexttile stem(SP) ylabel("State") yticks([1 2 3])
Симулируйте данные включая компонент регрессии
simulate
требует внешних данных для того, чтобы сгенерировать случайные пути из модели. Симулируйте внешние данные для этих трех регрессоров путем генерации 50 случайных наблюдений от 3-D стандартного Распределения Гаусса.
X = randn(50,3);
Сгенерируйте один случайный ответ, инновации, и утвердите путь длины 50. Задайте симулированные внешние данные для компонентов регрессии подмодели. Постройте график результатов.
rng(1); % Reset seed for comparison [Y,E,SP] = simulate(Mdl,numObs,X=X); figure tiledlayout(3,1) nexttile plot(Y) ylabel("Response") grid on legend(["y_1" "y_2"]) nexttile plot(E) ylabel("Innovation") grid on legend(["e_1" "e_2"]) nexttile stem(SP) ylabel("State") yticks([1 2 3])
В этом примере показано, как использовать оценку Монте-Карло, чтобы получить оценку интервала порога, среднего уровня.
Рассмотрите модель SETAR для действительного темпа роста GDP США с AR (4) подмодели. Предположим, что пороговая переменная (сам возбуждение с 0 задержками).
Создайте дискретный пороговый переход в неизвестном, среднего уровня . Пометьте состояния "Recession"
и "Expansion"
.
tt = threshold(NaN,StateNames=["Recession" "Expansion"]);
Для каждого состояния создайте частично заданную модель AR (4) с одним коэффициентом в задержке 4. Сохраните подмодели состояния в векторе.
submdl = arima(ARLags=4); mdl = [submdl; submdl];
Каждая подмодель имеет неизвестную, допускающую оценку задержку 4 коэффициента, константа модели, и инновационное отклонение.
Создайте частично заданную модель TAR из порогового перехода и вектора подмодели.
Mdl = tsVAR(tt,mdl);
Создайте полностью заданный пороговый переход, который имеет ту же структуру как tt
, но набор среднего уровня к 0
.
tt0 = threshold(0);
Загрузите США макроэкономический набор данных. Вычислите действительный темп роста GDP как процент.
load Data_USEconModel
rGDP = DataTable.GDP./DataTable.GDPDEF;
pRGDP = 100*price2ret(rGDP);
T = numel(pRGDP);
Соответствуйте TAR к действительному ряду уровня GDP.
EstMdl = estimate(Mdl,tt0,pRGDP,Z=pRGDP,Type="exogenous");
Симулируйте 100 путей к ответу из предполагаемой модели.
rng(100) % For reproducibility numPaths= 100; Y = simulate(EstMdl,T,NumPaths=numPaths,Z=pRGDP,Type="exogenous");
Подбирайте модель TAR к каждому пути к симулированному отклику. Задайте предполагаемый пороговый переход EstMdl.Switch
инициализировать процедуру оценки. Для каждого пути сохраните предполагаемый пороговый переход, среднего уровня.
tMC = nan(T,1); for j = 1:numPaths EstMdlSim = estimate(Mdl,EstMdl.Switch,Y(:,j),Z=Y(:,j),Type="exogenous"); tMC(j) = EstMdlSim.Switch.Levels; end
tMC
100 1 вектор, представляющий выборку Монте-Карло пороговых переходов.
Получите 95%-й доверительный интервал на истинном пороговом переходе путем вычисления 0,25 и.975 квантилей выборки Монте-Карло.
tCI = quantile(tMC,[0.025 0.975])
tCI = 1×2
0.5158 0.9810
95%-й доверительный интервал на истинном пороговом переходе (0,52%, 0,98%).
numObs
— Количество наблюдений, чтобы сгенерироватьКоличество наблюдений, чтобы сгенерировать для каждого демонстрационного пути в виде положительного целого числа.
Типы данных: double
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
NumPaths=1000,Y0=Y0
симулирует 1000
демонстрационные пути и инициализируют динамический компонент каждой подмодели при помощи преддемонстрационных данных об ответе Y0
.NumPaths
— Количество демонстрационных путей, чтобы сгенерировать
(значение по умолчанию) | положительное целое числоКоличество демонстрационных путей, чтобы сгенерировать в виде разделенной запятой пары, состоящей из 'NumPaths'
и положительное целое число.
Пример: NumPaths=1000
Типы данных: double
Type
— Тип пороговых данных о переменной"endogenous"
(значение по умолчанию) | "exogenous"
Тип пороговых данных о переменной в виде значения в этой таблице.
Значение | Описание |
---|---|
"endogenous" | Модель является самовозбуждающейся с пороговыми данными о переменной сгенерированный ответом j, где
|
"exogenous" | Пороговая переменная является внешней к системе. Аргумент 'Z' значения имени задает пороговые данные о переменной и требуется. |
Пример: Type="exogenous",Z=z
задает данные z
для внешней пороговой переменной.
Пример: Type="endogenous",Index=2,Delay=4
задает эндогенную пороговую переменную как y 2, t −4, чьими данными является Y(:,2)
.
Типы данных: char |
string
| cell
Y0
— Преддемонстрационные данные об ответеПреддемонстрационные данные об ответе в виде числовой матрицы или массива.
Использовать те же преддемонстрационные данные для каждого numPaths
путь, задайте numPreSampleObs
- numSeries
матрица, где numPaths
значение NumPaths
, numPreSampleObs
количество преддемонстрационных наблюдений и numSeries
количество переменных отклика.
Использовать различные преддемонстрационные данные для каждого пути:
Для одномерных подмоделей ARX задайте numPreSampleObs
- numPaths
матрица.
Для многомерных подмоделей VARX задайте numPreSampleObs
- numSeries
- numPaths
массив.
Количество преддемонстрационных наблюдений numPreSampleObs
должно быть достаточным, чтобы инициализировать термины AR всех подмоделей. Для моделей типа "endogenous"
, количество преддемонстрационных наблюдений должно также быть достаточным, чтобы инициализировать отсроченную реакцию. Если numPreSampleObs
превышает номер, необходимый, чтобы подписать модель, simulate
использование только последние наблюдения. Последняя строка содержит последние наблюдения.
simulate
обновления Y0
с помощью последних симулированных наблюдений каждый раз это переключает состояния.
По умолчанию, simulate
определяет Y0
подмоделью начального состояния:
Если начальная подмодель является стационарным процессом AR без компонентов регрессии, simulate
преддемонстрационные наблюдения наборов к безусловному среднему значению.
В противном случае, simulate
обнуляет преддемонстрационные наблюдения.
Типы данных: double
Z
— Данные о переменной Threshold zt[]
) (значение по умолчанию) | числовой вектор | числовая матрицаДанные о переменной Threshold для симуляций типа "exogenous"
В виде числового вектора из длины numObsZ
или numObsZ
- numPaths
числовая матрица.
Для числового вектора, simulate
применяет те же данные ко всем симулированным путям. Для матрицы, simulate
применяет столбцы Z
к соответствующим симулированным путям.
Если numObsZ
превышает numobs
, simulate
использование только последние наблюдения. Последняя строка содержит последнее наблюдение.
simulate
определяет начальное состояние симуляций значениями в первой строке Z(1,:)
.
Типы данных: double
Delay
— Переменная Threshold задерживает d в y j, t −d
(значение по умолчанию) | положительное целое числоПеременная Threshold задерживает d в y j, t −d, для симуляций типа "endogenous"
В виде положительного целого числа.
Пример: Delay=4
указывает, что пороговой переменной является y 2, t −d, где j является значением Index
Типы данных: double
Index
— Переменная Threshold индексирует j в y j, t −d
(значение по умолчанию) | скаляр в 1:Mdl.NumSeries
Переменная Threshold индексирует j в y j, t −d, для симуляций типа "endogenous"
В виде скаляра в 1:Mdl.NumSeries
.
simulate
игнорирует Index
для одномерных моделей AR.
Пример: Index=2
указывает, что пороговой переменной является y 2, t −d, где d является значением Delay
Типы данных: double
S0
— Начальные состояния
(значение по умолчанию) | числовой скаляр | числовой векторНачальные состояния симуляций, для симуляций типа "endogenous"
В виде числового скаляра или вектора из длины numPaths
. Записи S0
должен быть в 1:Mdl.NumStates
.
Скалярный S0
применяет то же начальное состояние ко всем путям. Векторный S0
применяет начальное состояние S0 (
соединять каналом j
)
.j
Если вы задаете Y0
, simulate
игнорирует S0
и определяет начальные состояния заданными преддемонстрационными данными.
Пример: 'S0',2
применяет 2
состояния инициализировать все пути.
Пример: 'S0',[2 3]
задает состояние 2 как начальное состояние.
Типы данных: double
X
— Данные о предиктореДанные о предикторе раньше оценивали компоненты регрессии во всех подмоделях Mdl
В виде числовой матрицы или вектора ячейки из числовых матриц.
Чтобы использовать подмножество тех же предикторов в каждом состоянии, задайте X
как матрица с numPreds
столбцы и по крайней мере numObs
'Строки' . Столбцы соответствуют отличным переменным предикторам. Подмодели используют первоначальные столбцы связанной матрицы, в порядке, до количества предикторов подмодели. Количество столбцов в Beta
свойство Mdl. SubModels (
определяет количество внешних переменных в компоненте регрессии подмодели j
)
. Если количество строк превышает j
numObs
то simulate
использует последние наблюдения.
Чтобы использовать различные предикторы в каждом состоянии, задайте вектор ячейки из таких матриц с длиной numStates
.
По умолчанию, simulate
игнорирует компоненты регрессии в Mdl
.
Типы данных: double
Y
— Пути к симулированному откликуПути к симулированному отклику, возвращенные как числовая матрица или массив. Y
представляет продолжение преддемонстрационных ответов в Y0
.
Для одномерных подмоделей ARX, Y
numObs
- numPaths
матрица. Для многомерных подмоделей VARX, Y
numObs
- numSeries
- numPaths
массив.
E
— Симулированные инновационные путиСимулированные инновационные пути, возвращенные как числовая матрица или массив.
Для одномерных подмоделей ARX, E
numObs
- numPaths
матрица. Для многомерных подмоделей VARX, E
numObs
- numSeries
- numPaths
массив.
simulate
генерирует инновации с помощью спецификации ковариации в Mdl
. Для получения дополнительной информации смотрите tsVAR
.
StatePaths
— Симулированные пути состоянияСимулированные пути состояния, возвращенные как numObs
- numPaths
числовая матрица.
Если пороговые уровни в Mdl.Switch.Levels
t 1, t 2, …, t n, simulate
состояния меток пороговой переменной (-∞, t 1), [t 1, t 2), … [t n, ∞) как 1
, 2, 3...
n + 1
, соответственно.
[1] Teräsvirta, Tima. "Моделируя экономические отношения с регрессиями плавного перехода". В А. Аллэхэнде и D.E.A. Джайлс (редакторы)., руководство прикладной экономической статистики, 507 — 552. Нью-Йорк: Марсель Деккер, 1998.
[2] ван Дейк, Дик. Модели Плавного перехода: Расширения и Выброс Устойчивый Вывод. Роттердам, Нидерланды: Ряд Исследования Института Тинбергена, 1999.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.