Работа с ограничениями одностороннего оборота с помощью объекта PortfolioMAD

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

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

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

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

0.3000

0.2000

0.1200
0.0900
0.0800
0.0700
0.1000
0.1000
0.1500
0.1100
0.0800
0.1000 

Если на NumAssets или InitPort свойства не заданы до или при установке ограничения оборота, для назначения значений по умолчанию этим свойствам применяются различные правила (см. «Настройка начального или текущего портфеля»).

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

Вы также можете задать свойства для оборота портфеля, используя setOneWayTurnover указать верхние границы оборота по покупкам (BuyTurnover) и продажи (SellTurnover) и начальный портфель. Предположим, что у вас есть начальный портфель из 10 активов в переменной x0 и хотят обеспечить, чтобы оборот по покупкам составлял не более 30%, а оборот по продажам - не более 20% от начального портфеля. Учитывая PortfolioMAD p объекта, использование setOneWayTurnover для установки ограничений оборота с начальным портфелем, установленным ранее, и без него:

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 = setOneWayTurnover(p, 0.3, 0.2);

disp(p.NumAssets)
disp(p.BuyTurnover)
disp(p.SellTurnover)
disp(p.InitPort)
или
x0 = [ 0.12; 0.09; 0.08; 0.07; 0.1; 0.1; 0.15; 0.11; 0.08; 0.1 ];
p = PortfolioMAD;
p = setOneWayTurnover(p, 0.3, 0.2, x0);
disp(p.NumAssets)
disp(p.BuyTurnover)
disp(p.SellTurnover)
disp(p.InitPort)
10

0.3000

0.2000

0.1200
0.0900
0.0800
0.0700
0.1000
0.1000
0.1500
0.1100
0.0800
0.1000

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

См. также

| | | | | | | | |

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

Подробнее о