Преобразуйте многомерную нормальную модель регрессии в модель на вид несвязанной регрессии (SUR)
Этот пример показывает, что демонстрация CAPM с помощью 6 запасов и 60 месяцев симулированного актива возвращается, где моделью для каждого запаса является AssetReturn = Alpha * 1 + CashReturn + Beta * (MarketReturn - CashReturn) + Noise
и параметрами, чтобы оценить является Alpha
и Beta
.
Используя симулированные данные, где Alpha
оценка (оценки) отображена в первой строке (строках) и Beta
оценка (оценки) является отображением во второй строке (строках).
Market = (0.1 - 0.04) + 0.17*randn(60, 1); Asset = (0.1 - 0.04) + 0.35*randn(60, 6); Design = cell(60, 1); for i = 1:60 Design{i} = repmat([ 1, Market(i) ], 6, 1); end
Получите совокупные оценки для всех запасов.
[Param, Covar] = mvnrmle(Asset, Design);
disp({'All 6 Assets Combined'});
{'All 6 Assets Combined'}
disp(Param);
0.0233 0.1050
Оцените параметры для отдельных запасов с помощью convert2sur
Group = 1:6; DesignSUR = convert2sur(Design, Group); [Param, Covar] = mvnrmle(Asset, DesignSUR); Param = reshape(Param, 2, 6); disp({ 'A', 'B', 'C', 'D', 'E', 'F' });
{'A'} {'B'} {'C'} {'D'} {'E'} {'F'}
disp(Param);
0.0144 0.0270 0.0046 0.0419 0.0376 0.0291 0.3264 -0.1716 0.3248 -0.0630 -0.0001 0.0637
Оцените параметры для пар запасов путем формирования групп.
disp({'A & B', 'C & D','E & F'});
{'A & B'} {'C & D'} {'E & F'}
Group = { [1,2 ],[3,4],[5,6]}; DesignSUR = convert2sur(Design, Group); [Param, Covar] = mvnrmle(Asset, DesignSUR); Param = reshape(Param, 2, 3); disp(Param);
0.0186 0.0190 0.0334 0.0988 0.1757 0.0293
Design
— Ряд данныхРяд данных в виде матрицы или массива ячеек, который зависит от количества серии NUMSERIES
данных.
Если NUMSERIES = 1
, convert2sur
возвращает Design
матрица.
Если NUMSERIES > 1
, Design
массив ячеек с NUMSAMPLES
ячейки, где каждая ячейка содержит NUMSERIES
- NUMPARAMS
матрица известных значений.
Типы данных: double |
cell
Group
— Группировка для ряда данныхГруппировка для ряда данных, заданное использование разделяет параметры для каждой группы. Задайте группы или рядом или группами:
Чтобы идентифицировать группы рядом, создайте вектор индекса, который имеет NUMSERIES
элементы. Элемент i = 1, ..., NUMSERIES
в векторе, и имеет индекс j = 1, ..., NUMGROUPS
из группы, в котором ряде i - член.
Чтобы идентифицировать группы группами, создайте массив ячеек с NUMGROUPS
элементы. Каждая ячейка содержит вектор с индексами рядов, которые заполняют данную группу.
В любом случае количеством ряда является NUMSERIES
и количеством групп является NUMGROUPS
, с 1
≤ NUMGROUPS
≤ NUMSERIES
.
Типы данных: double |
cell
DesignSUR
— На вид несвязанная модель регрессии с заданной группировкой ряда данныхНа вид несвязанная модель регрессии с заданной группировкой ряда данных, возвращенного или как матрица или как массив ячеек, который зависит от значения NUMSERIES
.
Если NUMSERIES = 1
, DesignSUR = Design
, который является NUMSAMPLES
- NUMPARAMS
матрица.
Если NUMSERIES > 1
и NUMGROUPS
группы должны быть сформированы, Design
массив ячеек с NUMSAMPLES
ячейки, где каждая ячейка содержит NUMSERIES
- (NUMGROUPS * NUMPARAMS)
матрица известных значений.
Исходный набор параметров, которые характерны для всего ряда, реплицирован, чтобы сформировать наборы параметров для каждой группы.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.