exponenta event banner

Работа с ограничениями отношения группы Используя объект PortfolioMAD

Ограничения группового отношения являются необязательными линейными ограничениями, которые поддерживают границы пропорциональных отношений между группами активов (см. раздел Ограничения группового отношения). Хотя ограничения реализуются как общие ограничения, обычное соглашение заключается в определении пары матриц групп, которые идентифицируют членство каждого актива в определенных группах с булевыми индикаторами (либо true или false или с 1 или 0) для каждого элемента в каждой из групповых матриц. Цель состоит в обеспечении того, чтобы отношение базовой группы к группе сравнения находилось в пределах заданных границ. Ограничения группового отношения имеют свойства:

  • GroupA для базовой матрицы членства

  • GroupB для матрицы членства сравнения

  • LowerRatio для ограничения нижней границы отношения групп

  • UpperRatio для ограничения верхней границы отношения групп

Установка ограничений группового отношения с помощью PortfolioMAD Функция

Свойства ограничений группового отношения задаются с помощью PortfolioMAD объект. Например, предположим, что соотношение финансовых и нефинансовых компаний в портфелях никогда не должно превышать 50%. Предположим, что у вас есть шесть активов с тремя финансовыми компаниями (активы 1-3) и три нефинансовые компании (активы 4-6). Для установки ограничений группового отношения:

GA = [ 1 1 1 0 0 0 ];    % financial companies
GB = [ 0 0 0 1 1 1 ];    % nonfinancial companies
p = PortfolioMAD('GroupA', GA, 'GroupB', GB, 'UpperRatio', 0.5);
disp(p.NumAssets)
disp(p.GroupA)
disp(p.GroupB)
disp(p.UpperRatio)
6

1     1     1     0     0     0

0     0     0     1     1     1

0.5000

Групповые матрицы GA и GB в этом примере могут быть логические матрицы с true и false элементы, которые дают одинаковый результат:

GA = [ true true true false false false ];    % financial companies
GB = [ false false false true true true ];    % nonfinancial companies
p = PortfolioMAD('GroupA', GA, 'GroupB', GB, 'UpperRatio', 0.5);
disp(p.NumAssets)
disp(p.GroupA)
disp(p.GroupB)
disp(p.UpperRatio)
6

1     1     1     0     0     0

0     0     0     1     1     1

0.5000

Установка ограничений группового отношения с помощью setGroupRatio и addGroupRatio Функции

Можно также задать свойства для ограничений группового отношения с помощью setGroupRatio. Например, предположим, что соотношение финансовых и нефинансовых компаний в портфелях никогда не должно превышать 50%. Предположим, что у вас есть шесть активов с тремя финансовыми компаниями (активы 1-3) и три нефинансовые компании (активы 4-6). Дано PortfolioMAD объект p, использовать setGroupRatio для установки групповых ограничений:

GA = [ true true true false false false ];   % financial companies
GB = [ false false false true true true ];   % nonfinancial companies
p = PortfolioMAD;
p = setGroupRatio(p, GA, GB, [], 0.5);
disp(p.NumAssets)
disp(p.GroupA)
disp(p.GroupB)
disp(p.UpperRatio)
6

1     1     1     0     0     0

0     0     0     1     1     1

0.5000
В этом примере необходимо установить LowerRatio свойство должно быть пустым ([]).

Предположим, что вы хотите добавить еще одно ограничение группового соотношения, чтобы гарантировать, что веса в нечетных активах составляют не менее 20% весов в нефинансовых активах вашего портфеля. Можно настроить матрицы дополненных групповых соотношений и ввести бесконечные границы для неограниченных групповых соотношений или использовать addGroupRatio функция для создания ограничений группового отношения. В этом примере создайте другую матрицу группы для второго ограничения группы:

p = PortfolioMAD;
GA = [ true true true false false false ];   % financial companies
GB = [ false false false true true true ];   % nonfinancial companies
p = setGroupRatio(p, GA, GB, [], 0.5);

GA = [ true false true false true false ];   % odd-numbered companies
GB = [ false false false true true true ];   % nonfinancial companies
p = addGroupRatio(p, GA, GB, 0.2);

disp(p.NumAssets)
disp(p.GroupA)
disp(p.GroupB)
disp(p.LowerRatio)
disp(p.UpperRatio)
6

1     1     1     0     0     0
1     0     1     0     1     0

0     0     0     1     1     1
0     0     0     1     1     1

  -Inf
0.2000

0.5000
  Inf
Обратите внимание, что addGroupRatio определяет неограниченные границы, поэтому необходимо сосредоточиться только на ограничениях, которые требуется задать.

PortfolioMAD объект, setGroupRatio, и addGroupRatio реализовать скалярное расширение для LowerRatio или UpperRatio свойства, основанные на размерности матриц группы в GroupA и GroupB свойства.

См. также

| | | | | | | | |

Связанные примеры

Подробнее