Линейные ограничения неравенства являются дополнительными линейными ограничениями, которые налагают системы неравенств на весах портфеля (см. Линейные Ограничения неравенства). Линейные ограничения неравенства имеют свойства AInequality
для матрицы ограничения неравенства и bInequality
для вектора ограничения неравенства.
Portfolio
Свойства для линейных ограничений неравенства установлены с помощью объекта Portfolio
. Предположим, что у вас есть портфель пяти активов, и вы хотите гарантировать, что первые три актива - не больше, чем 50% вашего портфеля. Настраивать эти ограничения:
A = [ 1 1 1 0 0 ]; b = 0.5; p = Portfolio('AInequality', A, 'bInequality', b); disp(p.NumAssets); disp(p.AInequality); disp(p.bInequality);
5 1 1 1 0 0 0.5000
setInequality
и функции addInequality
Можно также установить свойства для линейных ограничений неравенства с помощью setInequality
. Предположим, что у вас есть портфель пяти активов, и вы хотите гарантировать, что первые три актива составляют не больше, чем 50% вашего портфеля. Учитывая объект Portfolio p
, используйте setInequality
, чтобы установить линейные ограничения неравенства:
A = [ 1 1 1 0 0 ]; b = 0.5; p = Portfolio; p = setInequality(p, A, b); disp(p.NumAssets); disp(p.AInequality); disp(p.bInequality);
5 1 1 1 0 0 0.5000
Предположим, что вы хотите добавить другое линейное ограничение неравенства, чтобы гарантировать, что последние три актива составляют по крайней мере 50% вашего портфеля. Можно настроить увеличенную систему линейных неравенств или использовать функцию addInequality
, чтобы создать линейные ограничения неравенства. В данном примере создайте другую систему неравенств:
p = Portfolio; A = [ 1 1 1 0 0 ]; % first inequality constraint b = 0.5; p = setInequality(p, A, b); A = [ 0 0 -1 -1 -1 ]; % second inequality constraint b = -0.5; p = addInequality(p, A, b); disp(p.NumAssets); disp(p.AInequality); disp(p.bInequality);
5 1 1 1 0 0 0 0 -1 -1 -1 0.5000 -0.5000
Объект Portfolio
, setInequality
и addInequality
реализуют скалярное расширение на свойстве bInequality
на основе размерности матрицы в свойстве AInequality
.
Portfolio
| setBounds
| setBudget
| setDefaultConstraints
| setEquality
| setGroupRatio
| setGroups
| setInequality
| setOneWayTurnover
| setTrackingError
| setTrackingPort
| setTurnover