setInequality

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

Синтаксис

obj = setInequality(obj,AInequality,bInequality)

Описание

пример

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

Учитывая линейную матрицу ограничения неравенства 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% вашего портфеля. Учитывая объект p портфеля CVaR, набор линейные ограничения неравенства со следующим.

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% вашего портфеля. Объект Given PortfolioMAD 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