'Simple'
Ограничения, связанные с использованием объекта портфеля'Simple'
ограничения, накладываемые на портфель, являются необязательными линейными ограничениями, которые поддерживают верхнюю и нижнюю границы весов портфеля (см. 'Simple' Bound Constraints). Несмотря на то, что каждый набор портфеля должен быть ограничен, нет необходимости задавать набор портфеля с явными связанными ограничениями. Например, можно создать набор портфелей с неявным ограничением верхней границы или набор портфелей со средними ограничениями оборота. Связанные ограничения имеют свойства LowerBound
для нижних ограничений и UpperBound
для верхнего ограничения. Установите значения по умолчанию для этих ограничений, используя setDefaultConstraints
функция (см. Установка ограничений по умолчанию для весов портфеля с использованием объекта портфеля).
'Simple'
Ограничения, связанные с использованием Portfolio
ФункцияСвойства связанных ограничений заданы через Portfolio
объект. Предположим, что у вас есть сбалансированный фонд с акциями, которые могут варьироваться от 50% до 75% вашего портфеля, и облигациями, которые могут варьироваться от 25% до 50% вашего портфеля. Ограничения, накладываемые на сбалансированный фонд, устанавливаются следующим образом:
lb = [ 0.5; 0.25 ]; ub = [ 0.75; 0.5 ]; p = Portfolio('LowerBound', lb, 'UpperBound', ub, 'BoundType', 'Simple'); disp(p.NumAssets) disp(p.LowerBound) disp(p.UpperBound)
2 0.5000 0.2500 0.7500 0.5000
Чтобы продолжить этот пример, необходимо настроить ограничение бюджета. Для получения дополнительной информации смотрите Работа с бюджетными ограничениями с использованием объекта портфеля.
'Simple'
Ограничения, связанные с использованием setBounds
ФункцияМожно также задать свойства для связанных ограничений с помощью setBounds
. Предположим, что у вас есть сбалансированный фонд с акциями, которые могут варьироваться от 50% до 75% вашего портфеля, и облигациями, которые могут варьироваться от 25% до 50% вашего портфеля. Учитывая Portfolio
p объекта
, использование setBounds
для установки ограничений:
lb = [ 0.5; 0.25 ]; ub = [ 0.75; 0.5 ]; p = Portfolio; p = setBounds(p, lb, ub,'BoundType', 'Simple'); disp(p.NumAssets) disp(p.LowerBound) disp(p.UpperBound)
2 0.5000 0.2500 0.7500 0.5000
'Simple'
Ограничения, связанные с использованием Portfolio
Функция или setBounds
ФункцияОба Portfolio
объект и setBounds
функция реализует скалярное расширение на любом из LowerBound
или UpperBound
свойства. Если на NumAssets
свойство уже задано в Portfolio
объект, скалярные аргументы для обоих свойств расширяются, чтобы иметь одно и то же значение во всех размерностях. В сложение, setBounds
позволяет вам задать NumAssets
как необязательный аргумент. Предположим, что у вас есть вселенная из 500 активов, и вы хотите задать общие ограничения для всех активов в вашей вселенной. В частности, вы являетесь инвестором только в течение длительного времени и хотите удерживать не более 5% своего портфеля в одном активе. Можно задать эти ограничения любым из следующих эквивалентных способов:
p = Portfolio('NumAssets', 500, 'LowerBound', 0, 'UpperBound', 0.05,'BoundType', 'Simple');
или
p = Portfolio('NumAssets', 500); p = setBounds(p, 0, 0.05,'BoundType','Simple');
или
p = Portfolio; p = setBounds(p, 0, 0.05, 500,'BoundType','Simple');
Чтобы удалить ограничения из Portfolio
объект, используйте либо Portfolio
объект или setBounds
с пустыми входами для свойств, которые будут удалены. Например, чтобы удалить верхнее ограничение из Portfolio
p объекта
в предыдущем примере:
p = Portfolio(p, 'UpperBound', []);
Portfolio
| setBounds
| setBudget
| setDefaultConstraints
| setEquality
| setGroupRatio
| setGroups
| setInequality
| setOneWayTurnover
| setTrackingError
| setTrackingPort
| setTurnover