PortfolioMAD
возразите реализует оптимизацию портфеля среднего абсолютного отклонения (MAD) и выведен из абстрактного класса AbstractPortfolio
. Каждое свойство и функция PortfolioMAD
объект общедоступен, несмотря на то, что некоторые свойства и функции скрыты. PortfolioMAD
объект является объектом значения, где каждый экземпляр объекта является отличной версией объекта. Начиная с PortfolioMAD
объектом является также MATLAB® объект, это наследовало функции по умолчанию, сопоставленные с объектами MATLAB.
PortfolioMAD
возразите и его функции являются интерфейсом для средней оптимизации портфеля абсолютного отклонения. Так, почти все вы делаете с PortfolioMAD
объект может быть сделан с помощью функций. Основной рабочий процесс:
Спроектируйте свою проблему портфеля.
Используйте PortfolioMAD
создать PortfolioMAD
возразите или используйте различные функции множества, чтобы настроить вашу проблему портфеля.
Используйте оценочные функции, чтобы решить вашу задачу портфеля.
Кроме того, функции доступны, чтобы помочь вам просмотреть промежуточные результаты и диагностировать ваши расчеты. Поскольку функциями MATLAB является часть PortfolioMAD
объект, можно сохранить и загрузить объекты из рабочей области и создать и управлять массивами объектов. После урегулирования на проблеме, которая, в случае оптимизации портфеля MAD, означает, что у вас есть или сценарии, данные, или моменты для актива, возвращается, и набор ограничений на ваши портфели, используйте PortfolioMAD
установить свойства для PortfolioMAD
объект.
PortfolioMAD
позволяет вам создать объект с нуля или обновить существующий объект. Начиная с PortfolioMAD
объект является объектом значения, легко создать основной объект, затем использовать функции, чтобы положиться на основной объект создать новые версии основного объекта. Это полезно, чтобы сравнить основную проблему с альтернативами, выведенными из основной проблемы. Для получения дополнительной информации смотрите Создание Объекта PortfolioMAD.
Можно установить свойства PortfolioMAD
объект с помощью любого PortfolioMAD
или различный set
функции.
Примечание
Несмотря на то, что можно также установить свойства непосредственно, это не рекомендуется, поскольку проверка ошибок не выполняется, когда вы устанавливаете свойство непосредственно.
PortfolioMAD
свойства установки поддержки объектов с аргументами пары "имя-значение", таким образом, что каждое имя аргумента является свойством и каждым значением, являются значением, чтобы присвоить тому свойству. Например, чтобы установить LowerBound
и Budget
свойства в существующем PortfolioMAD
объект p
, используйте синтаксис:
p = PortfolioMAD(p,'LowerBound', 0,'Budget',1);
В дополнение к PortfolioMAD
объект, который позволяет вам установить отдельные свойства по одному, группы свойств, установлен в PortfolioMAD
объект с различным “набором” и “добавляет” функции. Например, чтобы настроить ограничение среднего оборота, используйте setTurnover
функция, чтобы задать привязанный оборот портфеля и начальный портфель. Получить отдельные свойства от PortfolioMAD
возразите, получите свойства непосредственно или используйте выбор, “получают” функции, которые получают группы свойств от PortfolioMAD
объект. PortfolioMAD
объект и set
функции имеют несколько полезных функций:
PortfolioMAD
объект и set
функции пытаются определить размерности вашей проблемы или с явными или с неявными входными параметрами.
PortfolioMAD
объект и set
функции пытаются разрешить неоднозначности с выбором по умолчанию.
PortfolioMAD
объект и set
функции выполняют скалярное расширение на массивах, если это возможно.
Функции PortfolioMAD пытаются диагностировать и предупредить о проблемах.
PortfolioMAD
возразите использует функцию отображения по умолчанию, обеспеченную MATLAB, где display
и disp
отобразите PortfolioMAD
возразите и его свойства с или без имени переменной объекта.
Сохраните и загрузите PortfolioMAD
объекты с помощью save
MATLAB и
load
команды.
Оценка эффективных портфелей и границ эффективности является основной целью инструментов оптимизации портфеля MAD. Anefficient portfolio является портфелями, которые удовлетворяют критериям минимального риска для данного уровня возврата и максимального возврата для данного уровня риска. Набор функций “оценки” и “графика” обеспечивает способы исследовать границу эффективности. “Оценочные” функции получают или эффективные портфели или рискуют и возвращают прокси сформировать границы эффективности. На уровне портфеля набор функций оценивает, что эффективные портфели на границе эффективности с функциями получают эффективные портфели:
В конечных точках границы эффективности
Это достигает предназначенных значений для прокси возврата
Это достигает предназначенных значений для прокси риска
Вдоль целой границы эффективности
Эти функции также обеспечивают покупки, и продажи должны были переключить от начального или текущего портфеля до каждого эффективного портфеля. На уровне границы эффективности набор функций строит границу эффективности и оценивает или риск или возвращает прокси для эффективных портфелей на границе эффективности. Можно использовать результирующие эффективные портфели или рискнуть и возвратить прокси в последующих исследованиях.
Несмотря на то, что все функции сопоставлены с PortfolioMAD
объект спроектирован, чтобы работать над скалярным PortfolioMAD
объект, возможности массивов MATLAB позволяют вам настроить и работать с массивами PortfolioMAD
объекты. Самый легкий способ сделать это с repmat
функция. Например, чтобы создать 3 2 массив PortfolioMAD
объекты:
p = repmat(PortfolioMAD, 3, 2); disp(p)
3×2 PortfolioMAD array with properties: BuyCost SellCost RiskFreeRate Turnover BuyTurnover SellTurnover NumScenarios Name NumAssets AssetList InitPort AInequality bInequality AEquality bEquality LowerBound UpperBound LowerBudget UpperBudget GroupMatrix LowerGroup UpperGroup GroupA GroupB LowerRatio UpperRatio MinNumAssets MaxNumAssets BoundType
PortfolioMAD
объекты, можно работать над отдельным PortfolioMAD
объекты в массиве путем индексации. Например:p(i,j) = PortfolioMAD(p(i,j), ... );
PortfolioMAD
для (i
J
) элемент матрицы PortfolioMAD
объекты в переменной p
.Если вы настраиваете массив PortfolioMAD
объекты, можно получить доступ к свойствам конкретного PortfolioMAD
объект в массиве путем индексации так, чтобы можно было установить нижние и верхние границы lb
и ub
для (i
J
K
) элемент трехмерного массива of PortfolioMAD
объекты с
p(i,j,k) = setBounds(p(i,j,k),lb, ub);
[lb, ub] = getBounds(p(i,j,k));
PortfolioMAD
возразите, что функции работают над только одним PortfolioMAD
объект за один раз.Можно разделить на подклассы PortfolioMAD
возразите, чтобы заменить существующие функции или добавить новые свойства или функции. Для этого создайте производный класс из PortfolioMAD
класс. Это дает вам все свойства и функции PortfolioMAD
класс наряду с любыми новыми опциями, которые вы принимаете решение добавить к своему разделенному на подклассы объекту. ThePortfolioMAD
класс выведен из абстрактного класса под названием AbstractPortfolio
. Из-за этого можно также создать производный класс из AbstractPortfolio
это реализует совершенно другую форму свойств использования оптимизации портфеля и функции theAbstractPortfolio
класс.
Инструменты оптимизации портфеля MAD следуют этим соглашениям относительно представления различных количеств, сопоставленных с оптимизацией портфеля:
Актив возвращается, или цены за сценарии находятся в матричной форме с выборками для данного актива, спускающегося по строкам и активам, идущим через столбцы. В случае цен ближайшие сроки должны быть во главе матрицы с увеличивающимися датами потеря работоспособности.
Портфели находятся в форме вектора или матрицы с весами для данного портфеля, спускающегося по строкам и отличным портфелям, идущим через столбцы.
Ограничения на портфели формируются таким способом, которым портфель является вектор-столбцом.
Портфельные риски и возвраты являются или скалярами или вектор-столбцами (для нескольких портфельных рисков, и возвращается).