Последним элементом для полной спецификации задачи оптимизации портфеля является набор возможных портфелей, который называется набором портфелей. Набор портфолио определяется конструкцией как пересечение наборов, образованных набором ограничений на вес портфеля. Портфельный набор обязательно и достаточно должен быть непустым, закрытым и ограниченным набором.
При настройке набора портфолио убедитесь, что он удовлетворяет этим условиям. Наиболее базовый или «стандартный» набор портфелей требует, чтобы веса портфеля были неотрицательными (с использованием ограничения нижней границы) и суммировались с 1 (с использованием ограничения бюджета). Наиболее общий набор портфолио, обрабатываемый инструментами оптимизации портфолио, может иметь одно из следующих ограничений:
Линейные ограничения неравенства
Ограничения линейного равенства
Ограничения привязки
Бюджетные ограничения
Групповые ограничения
Ограничения группового соотношения
Ограничения среднего оборота
Ограничения одностороннего оборота
Отслеживание ограничений ошибок
Линейные ограничения неравенства - это общие линейные ограничения, моделирующие отношения между весами портфеля, которые удовлетворяют системе неравенств. Использовать setInequality для установки ограничений линейного неравенства. Линейные ограничения неравенства принимают вид
где:
x - портфолио (n-вектор).
AI - матрица ограничений линейного неравенства (матрица nI-by-n).
bI - линейный вектор ограничения неравенства (вектор nI).
n - количество активов во вселенной, а nI - число ограничений.
Portfolio свойства объекта для задания ограничений линейного неравенства:
AInequality для AI
bInequality для bI
NumAssets для n
По умолчанию эти ограничения игнорируются.
Линейные ограничения равенства - это общие линейные ограничения, моделирующие отношения между весами портфеля, удовлетворяющие системе уравнений. Использовать setEquality для установки ограничений линейного равенства. Линейные ограничения равенства имеют вид
bE
где:
x - портфолио (n-вектор).
AE - матрица ограничений линейного равенства (матрица nE-by-n).
bE - линейный вектор ограничения равенства (вектор nE).
n - количество активов во вселенной, а nE - число ограничений.
Portfolio свойства объекта для задания ограничений линейного равенства:
AEquality для AE
bEquality для bE
NumAssets для n
По умолчанию эти ограничения игнорируются.
'Simple' Ограничения привязки'Simple'
Связанные ограничения - это специализированные линейные ограничения, ограничивающие вес портфеля падением выше или ниже определенных границ. Использовать setBounds для задания ограничивающих ограничений с помощью 'Simple'
BoundType. Поскольку каждый набор портфелей должен быть ограничен, часто целесообразно, хотя и не обязательно, устанавливать четкие границы для проблемы портфеля. Получение явного 'Simple' границы для данного набора портфолио, используйте estimateBounds функция. Связанные ограничения принимают форму
где:
x - портфолио (n-вектор).
1B - ограничение нижней границы (вектор n).
uB - ограничение верхней границы (вектор n).
n - количество активов во вселенной.
Portfolio свойства объекта для задания ограничивающих ограничений:
LowerBound для lB
UpperBound для uB
NumAssets для n
По умолчанию эти ограничения игнорируются.
Проблема оптимизации портфеля по умолчанию (см. «Проблема портфеля по умолчанию») имеет lB = 0 с uB, установленным неявно через бюджетное ограничение.
Бюджетные ограничения - это специализированные линейные ограничения, ограничивающие сумму весов портфеля падением либо выше, либо ниже конкретных границ. Использовать setBudget для установки бюджетных ограничений. Ограничения принимают форму
где:
x - портфолио (n-вектор).
1 - вектор единиц (n-вектор).
lS - ограничение бюджета нижней границы (скаляр).
uS - ограничение бюджета верхней границы (скаляр).
n - количество активов во вселенной.
Portfolio свойства объекта для указания бюджетных ограничений:
LowerBudget для lS
UpperBudget для uS
NumAssets для n
По умолчанию это ограничение игнорируется.
Проблема оптимизации портфеля по умолчанию (см. Проблема портфеля по умолчанию) имеет lS = uS = 1, что означает, что веса портфеля суммируются с 1. Если проблема оптимизации портфеля включает в себя возможные движения в наличные и из них, бюджетное ограничение определяет, как далеко портфели могут перейти в наличные. Например, если lS = 0 и uS = 1, то портфель может иметь 0-100% вложенных денежных средств. Если наличные должны быть выбором портфеля, установите RiskFreeRate (r0) до подходящего значения (см. раздел Возврат прокси и работа с безрисковым активом).
Групповые ограничения - это специализированные линейные ограничения, которые обеспечивают «членство» между группами активов. Использовать setGroups для установки групповых ограничений. Ограничения принимают форму
где:
x - портфолио (n-вектор).
lG - ограничение группы с нижней границей (вектор nG).
uG - групповое ограничение верхней границы (вектор nG).
G - матрица индексов членства в группах (матрица nG-by-n).
Каждая строка G определяет, какие активы принадлежат группе, связанной с этой строкой. Каждая строка содержит либо 0s или 1s с 1 указывая, что актив является частью группы или 0 указывает, что актив не является частью группы.
Portfolio свойства объекта для задания групповых ограничений:
GroupMatrix для G
LowerGroup для lG
UpperGroup для uG
NumAssets для n
По умолчанию эти ограничения игнорируются.
Групповые ограничения соотношения - это специализированные линейные ограничения, которые обеспечивают взаимосвязь между группами активов. Использовать setGroupRatio для установки ограничений группового отношения. Ограничения принимают форму
GBx) i
для i = 1,..., nR где:
x - портфолио (n-вектор).
1R - вектор ограничений отношения групп с нижней границей (вектор nR).
uR - векторная матрица ограничений отношения групп верхней границы (вектор nR).
GA - матрица индексов членства в базовой группе (матрица nR-by-n).
GB - матрица индексов членства в группах сравнения (матрица nR-by-n).
n - количество активов во вселенной, а nR - число ограничений.
Каждая строка GA и GB определяет, какие активы принадлежат базовой группе и группе сравнения, связанной с этой строкой.
Каждая строка содержит либо 0s или 1s с 1 указывая, что актив является частью группы или 0 указывает, что актив не является частью группы.
Portfolio свойства объекта для задания ограничений группового отношения:
GroupA для GA
GroupB для ГБ
LowerRatio для lR
UpperRatio для uR
NumAssets для n
По умолчанию эти ограничения игнорируются.
Ограничение оборота - это линейное ограничение абсолютной стоимости, которое гарантирует, что предполагаемые оптимальные портфели отличаются от первоначального портфеля не более чем на определенную сумму. Хотя оборот портфеля определяется многими способами, ограничения оборота, реализованные в Financial Toolbox™, вычисляют оборот портфеля как среднее значение покупок и продаж. Использовать setTurnover для установки ограничений среднего оборота. Ограничения среднего оборота принимают форму
где:
x - портфолио (n-вектор).
1 - вектор единиц (n-вектор).
x0 - начальное портфолио (вектор n).
start- верхняя граница для оборота (скаляр).
n - количество активов во вселенной.
Portfolio свойства объекта для указания ограничения средней оборачиваемости:
Turnover для start
InitPort для x0
NumAssets для n
По умолчанию это ограничение игнорируется.
Односторонние ограничения оборота гарантируют, что предполагаемые оптимальные портфели отличаются от первоначального портфеля не более чем на определенные суммы в зависимости от того, являются ли разницы покупками или продажами. Использовать setOneWayTurnover для установки ограничений одностороннего оборота. Ограничения принимают формы
где:
x - портфолио (вектор n)
1 - вектор единиц (n-вектор).
x0 - начальный портфель (вектор n).
startB является верхней границей ограничения оборота для покупок (скаляр).
startS является верхней границей ограничения оборота для продаж (скаляр).
Чтобы задать односторонние ограничения оборота, используйте следующие свойства в Portfolio, PortfolioCVaR, или PortfolioMAD объект:
BuyTurnover для (В)
SellTurnover для startS
InitPort для x0
По умолчанию это ограничение игнорируется.
Примечание
Ограничение средней оборачиваемости (см. Работа с ограничениями средней оборачиваемости с использованием объекта портфолио) не является комбинацией ограничений односторонней оборачиваемости с
Отслеживание ограничений ошибок в рамках оптимизации портфеля является дополнительным ограничением для указания набора возможных портфелей, известных как набор портфелей. Использовать setTrackingError для установки ограничений ошибок отслеживания. Ограничение отслеживания ошибок имеет форму
xT) ≤τT2
где:
x - портфолио (n-вектор).
xT - портфель отслеживания, по которому должен измеряться риск (вектор n).
C - ковариация возвратов активов.
startT - верхняя граница ошибки отслеживания (скаляр).
n - количество активов во вселенной.
Portfolio свойства объекта для указания ограничения средней оборачиваемости:
TrackingPort для xT
TrackingError для startT
По умолчанию это ограничение игнорируется.
Примечание
Ограничения ошибок отслеживания могут использоваться с любыми другими поддерживаемыми ограничениями в Portfolio объект без ограничений. Однако, поскольку набор портфолио обязательно и достаточно должен быть непустым компактным набором, применение ограничения ошибки отслеживания может привести к пустому набору портфолио. Использовать estimateBounds для подтверждения непустого и компактного набора портфолио.