Объект PortfolioMAD

Свойства и функции объекта PortfolioMAD

The PortfolioMAD объект реализует оптимизацию портфеля по среднему абсолютному отклонению (MAD) и получают из абстрактного класса AbstractPortfolio. Каждое свойство и функция PortfolioMAD объект является общедоступным, хотя некоторые свойства и функции скрыты. The PortfolioMAD объект является объектом значения, где каждый образец объекта является отдельной версией объекта. Начиная с PortfolioMAD объект также является MATLAB® объект наследует функции по умолчанию, связанные с объектами MATLAB.

Работа с объектами PortfolioMAD

The PortfolioMAD объект и его функции являются интерфейсом для оптимизации портфеля среднего абсолютного отклонения. Итак, почти все, что вы делаете с PortfolioMAD объект может быть выполнен с помощью функций. Базовый рабочий процесс:

  1. Проектируйте свою задачу портфолио.

  2. Использование PortfolioMAD чтобы создать PortfolioMAD объект или использование различных функций набора для настройки задачи портфеля.

  3. Используйте функции оценки, чтобы решить задачу портфеля.

В сложение функции доступны, чтобы помочь вам просмотреть промежуточные результаты и диагностировать свои расчеты. Поскольку функции MATLAB являются частью PortfolioMAD объект, можно сохранять и загружать объекты из рабочей области и создавать и управлять массивами объектов. После урегулирования проблемы, которая, в случае оптимизации портфеля MAD, означает, что у вас есть или сценарии, или данные, или моменты для возвратов активов, и набор ограничений для ваших портфелей, используйте PortfolioMAD чтобы задать свойства для PortfolioMAD объект.

PortfolioMAD позволяет создавать объект с нуля или обновлять существующий объект. Начиная с PortfolioMAD объект является объектом значения, легко создать базовый объект, затем использовать функции для построения базового объекта для создания новых версий базового объекта. Это полезно для сравнения основной задачи с альтернативами, полученными из основной задачи. Для получения дополнительной информации смотрите Создание объекта PortfolioMAD.

Настройка и получение свойств

Можно задать свойства PortfolioMAD объект, использующий любой из PortfolioMAD или различные set функций.

Примечание

Несмотря на то, что вы также можете задать свойства непосредственно, это не рекомендуется, так как проверка на ошибку не выполняется, когда вы задаете свойство непосредственно.

The PortfolioMAD объект поддерживает свойства настройки с аргументами пары "имя-значение" таким образом, что каждое имя аргумента является свойством, и каждое значение является значением, которое должно быть присвоено этому свойству. Для примера установите LowerBound и Budget свойства в существующей PortfolioMAD p объекта, используйте синтаксис:

p = PortfolioMAD(p,'LowerBound', 0,'Budget',1);

В дополнение к PortfolioMAD объект, который позволяет вам задавать отдельные свойства по одному, группы свойств заданы в PortfolioMAD объект с различными функциями «set» и «add». Для примера, чтобы настроить ограничение среднего оборота, используйте setTurnover функция для определения границы оборота портфеля и начального портфеля. Чтобы получить отдельные свойства от PortfolioMAD объект, получить свойства непосредственно или использовать ассортимент функций «get», которые получают группы свойств от PortfolioMAD объект. The PortfolioMAD объект и set функции имеют несколько полезных особенностей:

  • The PortfolioMAD объект и set функции пытаются определить размерности вашей задачи с помощью явных или неявных входов.

  • The PortfolioMAD объект и set функции пытаются устранить неоднозначности с помощью вариантов по умолчанию.

  • The PortfolioMAD объект и set функции выполняют скалярное расширение массивов, когда это возможно.

  • Функции PortfolioMAD пытаются диагностировать и предупреждать о проблемах.

Отображение объектов PortfolioMAD

The PortfolioMAD объект использует функцию отображения по умолчанию, предоставленную MATLAB, где display и disp отобразить PortfolioMAD объект и его свойства с именем переменной объекта или без него.

Сохранение и загрузка объектов PortfolioMAD

Сохраните и загрузите PortfolioMAD объекты, использующие save MATLAB и load команды.

Оценка эффективных портфелей и границ

Оценка эффективных портфелей и эффективных границ является основной целью инструментов оптимизации портфеля MAD. Одним из efficient portfolio являются портфели, которые удовлетворяют критериям минимального риска для заданного уровня доходности и максимального возврата для заданного уровня риска. Набор функций «estimate» и «plot» обеспечивает способы исследования эффективной границы. Функции «оценки» получают либо эффективные портфели, либо прокси с рисками и возвратом для формирования эффективных границ. На уровне портфеля набор функций оценивает эффективные портфели на эффективной границе с функциями для получения эффективных портфелей:

  • В конечных точках эффективной границы

  • Которые достигают целевых значений для прокси возврата

  • Которые достигают целевых значений для прокси риска

  • Вдоль всей эффективной границы

Эти функции также обеспечивают закупки и продажи, необходимые для перехода от начального или текущего портфеля к каждому эффективному портфелю. На эффективном уровне границы набор функций строит график эффективной границы и оценивает или риск, или возвращаемые прокси для эффективных портфелей на эффективной границе. Можно использовать результирующие эффективные портфели или прокси риска и возврата в последующих анализах.

Массивы объектов PortfolioMAD

Хотя все функции, связанные с PortfolioMAD предназначены для работы с скаляром PortfolioMAD объект, возможности массива MATLAB позволяют вам настраивать и работать с массивами PortfolioMAD объекты. Самый легкий способ сделать это с repmat функция. Например, чтобы создать массив 3 на 2 PortfolioMAD объекты:

p = repmat(PortfolioMAD, 3, 2);
disp(p)
После настройки массива PortfolioMAD объекты, можно работать с отдельными PortfolioMAD объекты в массиве путем индексации. Для примера:
p(i,j) = PortfolioMAD(p(i,j), ... );
Этот пример вызывает PortfolioMAD для (i, j) элемент массива матрицы PortfolioMAD объекты в переменной p.

Если вы настраиваете массив PortfolioMAD объекты, вы можете получить доступ к свойствам определенного PortfolioMAD объект в массиве путем индексации, чтобы можно было задать нижнюю и верхнюю границы lb и ub для (i, j, k) элемент массива трехмерного массива PortfolioMAD объекты с

p(i,j,k) = setBounds(p(i,j,k),lb, ub);
и, как только установлено, вы можете получить доступ к этим границам с
[lb, ub] = getBounds(p(i,j,k));
PortfolioMAD функции объекта работают только с одним PortfolioMAD объект за раз.

Подклассирование объектов PortfolioMAD

Можно подклассифицировать PortfolioMAD объект для переопределения существующих функций или добавления новых свойств или функций. Для этого создайте производный класс из PortfolioMAD класс. Это дает вам все свойства и функции PortfolioMAD класс наряду со всеми новыми возможностями, которые вы выбираете для добавления к подклассированному объекту. The PortfolioMAD класс получают из абстрактного класса, называемого AbstractPortfolio. Из-за этого можно также создать производный класс из AbstractPortfolio который реализует совершенно другую форму оптимизации портфеля с помощью свойств и функций AbstractPortfolio класс.

Соглашения о представлении данных

Инструменты оптимизации портфеля MAD следуют этим соглашениям относительно представления различных величин, связанных с оптимизацией портфеля:

  • Возвраты активов или цены для сценариев находятся в матричной форме, а выборки для данного актива снижаются по строкам и активам, проходящим по столбцам. В случае цен самые ранние даты должны быть в верхней части матрицы с увеличением дат.

  • Портфели находятся в векторной или матричной форме с весами для заданного портфеля, идущими вниз по строкам и отдельными портфелями, идущими по столбцам.

  • Ограничения на портфели формируются таким образом, что портфель является вектором-столбцом.

  • Портфельные риски и доходность являются либо скалярами, либо векторами-столбцами (для нескольких портфельных рисков и доходности).

См. также

Похожие примеры

Подробнее о