exponenta event banner

setInequality

Настройка ограничений линейного неравенства для весов портфеля

Описание

пример

obj = setInequality(obj,AInequality,bInequality) устанавливает линейные ограничения неравенства для весов портфеля для Portfolio, PortfolioCVaR, или PortfolioMAD объекты. Для получения подробной информации о соответствующих рабочих процессах при использовании этих различных объектов см. Workflow-процесс объекта портфеля, Workflow-процесс объекта Portfolio CVaR и Workflow-процесс объекта Portfolio MAD.

Задана матрица ограничений линейного неравенства AInequality и вектор bInequality, каждый вес в портфеле Port должны удовлетворять следующим требованиям:

AInequality * Port <= bInequality

Примеры

свернуть все

Предположим, что у вас есть портфель из пяти активов, и вы хотите убедиться, что первые три актива составляют не более 50% вашего портфеля. Данный объект Portfolio p, задайте линейные ограничения неравенства следующим образом.

A = [ 1 1 1 0 0 ];
b = 0.5;
p = Portfolio;
p = setInequality(p, A, b);

disp(p.NumAssets);
     5
disp(p.AInequality);
     1     1     1     0     0
disp(p.bInequality);
    0.5000

Предположим, что у вас есть портфель из пяти активов, и вы хотите убедиться, что первые три актива составляют не более 50% вашего портфеля. С учетом объекта портфеля CVaR p, задайте линейные ограничения неравенства следующим образом.

A = [ 1 1 1 0 0 ];
b = 0.5;
p = PortfolioCVaR;
p = setInequality(p, A, b);

disp(p.NumAssets);
     5
disp(p.AInequality);
     1     1     1     0     0
disp(p.bInequality);
    0.5000

Предположим, что у вас есть портфель из пяти активов, и вы хотите убедиться, что первые три актива составляют не более 50% вашего портфеля. Данный объект MAD p, задайте линейные ограничения неравенства следующим образом.

A = [ 1 1 1 0 0 ];
b = 0.5;
p = PortfolioMAD;
p = setInequality(p, A, b);

disp(p.NumAssets);
     5
disp(p.AInequality);
     1     1     1     0     0
disp(p.bInequality);
    0.5000

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

свернуть все

Объект для портфеля, указанный с помощью Portfolio, PortfolioCVaR, или PortfolioMAD объект. Дополнительные сведения о создании объекта портфеля см. в разделе

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

Матрица для формирования линейных ограничений неравенства, заданная как матрица для Portfolio, PortfolioCVaR, или PortfolioMAD входной объект (obj).

Примечание

Ошибка возникает, если AInequality пуст и bInequality является непустым.

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

Вектор для формирования линейных ограничений неравенства, заданный как вектор для Portfolio, PortfolioCVaR, или PortfolioMAD входной объект (obj).

Примечание

Ошибка возникает, если AInequality является непустым и bInequality пуст.

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

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

свернуть все

Обновленный объект портфеля, возвращенный как Portfolio, PortfolioCVaR, или PortfolioMAD объект. Дополнительные сведения о создании объекта портфеля см. в разделе

Совет

  • Можно также использовать точечную нотацию для настройки ограничений линейного неравенства для весов портфеля.

    obj = obj.setInequality(AInequality, bInequality);

  • Чтобы снять ограничения неравенства, введите пустые аргументы. Чтобы добавить к существующим ограничениям неравенства, используйте addInequality.

Представлен в R2011a