exponenta event banner

Работа со средними ограничениями оборачиваемости с использованием объекта MAD

Ограничение оборота является необязательным линейным ограничением абсолютного значения (см. «Ограничения среднего оборота»), которое налагает верхнюю границу на среднее значение покупок и продаж. Ограничение оборота может быть установлено с помощью PortfolioMAD объект или setTurnover функция. Ограничение оборота зависит от начального или текущего портфеля, который считается нулевым, если не установлен, когда установлено ограничение оборота. Ограничение оборота имеет свойства Turnover, для верхней границы среднего оборота, и InitPort, для портфеля, по которому рассчитывается оборот.

Установка ограничений среднего оборота с помощью PortfolioMAD Функция

Свойства ограничений оборота устанавливаются с помощью PortfolioMAD объект. Предположим, что у вас есть начальный портфель из 10 активов в переменной x0 и вы хотите убедиться, что средний оборот составляет не более 30%. Чтобы задать это ограничение оборота, выполните следующие действия.

x0 = [ 0.12; 0.09; 0.08; 0.07; 0.1; 0.1; 0.15; 0.11; 0.08; 0.1 ]; 
p = PortfolioMAD('Turnover', 0.3, 'InitPort', x0);
disp(p.NumAssets)
disp(p.Turnover)
disp(p.InitPort)
10

0.3000

0.1200
0.0900
0.0800
0.0700
0.1000
0.1000
0.1500
0.1100
0.0800
0.1000
Обратите внимание, если NumAssets или InitPort свойства не задаются до или при установке ограничения оборота применяются различные правила для назначения этим свойствам значений по умолчанию (см. раздел Настройка начального или текущего портфеля).

Установка ограничений среднего оборота с помощью setTurnover Функция

Можно также установить свойства для оборота портфеля с помощью setTurnover для определения как верхней границы для среднего оборота, так и начального портфеля. Предположим, что у вас есть начальный портфель из 10 активов в переменной x0 и хотят обеспечить, чтобы средний оборот составлял не более 30%. Дано PortfolioMAD объект p, использовать setTurnover для установки ограничения оборота с заданными ранее исходными портфелями и без них:

x0 = [ 0.12; 0.09; 0.08; 0.07; 0.1; 0.1; 0.15; 0.11; 0.08; 0.1 ];
p = PortfolioMAD('InitPort', x0);
p = setTurnover(p, 0.3);

disp(p.NumAssets)
disp(p.Turnover)
disp(p.InitPort)
10

0.3000

0.1200
0.0900
0.0800
0.0700
0.1000
0.1000
0.1500
0.1100
0.0800
0.1000

или

x0 = [ 0.12; 0.09; 0.08; 0.07; 0.1; 0.1; 0.15; 0.11; 0.08; 0.1 ];
p = PortfolioMAD;
p = setTurnover(p, 0.3, x0);
disp(p.NumAssets)
disp(p.Turnover)
disp(p.InitPort)
10

0.3000

0.1200
0.0900
0.0800
0.0700
0.1000
0.1000
0.1500
0.1100
0.0800
0.1000

setTurnover реализует скалярное расширение аргумента для начального портфеля. Если NumAssets свойство уже установлено в PortfolioMAD объект, скалярный аргумент для InitPort расширяется, чтобы иметь одинаковое значение для всех размеров. Кроме того, setTurnover позволяет указать NumAssets в качестве необязательного аргумента. Чтобы очистить оборот от вашего PortfolioMAD объект, используйте PortfolioMAD объект или setTurnover с пустыми вводами для очищаемых свойств.

См. также

| | | | | | | | |

Связанные примеры

Подробнее