getOneWayTurnover

Получите односторонние ограничения оборота от объекта портфеля

Описание

Используйте getOneWayTirnover функция со Portfolio, PortfolioCVaR, или PortfolioMAD объект для получения односторонних ограничений оборота от объектов портфеля.

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

пример

[BuyTurnover,SellTurnover] = getOneWayTurnover(obj) получите ограничения одностороннего оборота от объектов портфеля.

Примеры

свернуть все

Установите стоимость одностороннего оборота.

p = Portfolio('AssetMean',[0.1, 0.2, 0.15], 'AssetCovar',...
[ 0.005, -0.010,  0.004; -0.010,  0.040, -0.002;  0.004, -0.002,  0.023]);
p = setBudget(p, 1, 1);
p = setOneWayTurnover(p, 1.3, 0.3, 0);    %130-30 portfolio
plotFrontier(p);

Figure contains an axes. The axes with title \bfEfficient Frontier contains 2 objects of type scatter, line. These objects represent Initial Portfolio, Efficient Frontier.

Получите стоимость одностороннего оборота.

[BuyTurnover,SellTurnover] = getOneWayTurnover(p)
BuyTurnover = 1.3000
SellTurnover = 0.3000

Установите стоимость одностороннего оборота и получите значения оборота при покупке и продаже.

m = [ 0.05; 0.1; 0.12; 0.18 ];
C = [ 0.0064 0.00408 0.00192 0; 
    0.00408 0.0289 0.0204 0.0119;
    0.00192 0.0204 0.0576 0.0336;
    0 0.0119 0.0336 0.1225 ];
m = m/12;
C = C/12;

AssetScenarios = mvnrnd(m, C, 20000);

p = PortfolioCVaR;
p = setScenarios(p, AssetScenarios);
p = setDefaultConstraints(p);
p = setProbabilityLevel(p, 0.95);

p = setBudget(p, 1, 1);
p = setOneWayTurnover(p, 1.3, 0.3, 0); %130-30 portfolio

[BuyTurnover,SellTurnover] = getOneWayTurnover(p)
BuyTurnover = 1.3000
SellTurnover = 0.3000

Установите стоимость одностороннего оборота и получите значения оборота при покупке и продаже.

m = [ 0.05; 0.1; 0.12; 0.18 ];
C = [ 0.0064 0.00408 0.00192 0; 
    0.00408 0.0289 0.0204 0.0119;
    0.00192 0.0204 0.0576 0.0336;
    0 0.0119 0.0336 0.1225 ];
m = m/12;
C = C/12;

AssetScenarios = mvnrnd(m, C, 20000);

p = PortfolioMAD;
p = setScenarios(p, AssetScenarios);
p = setDefaultConstraints(p);

p = setBudget(p, 1, 1);
p = setOneWayTurnover(p, 1.3, 0.3, 0); %130-30 portfolio

[BuyTurnover,SellTurnover] = getOneWayTurnover(p)
BuyTurnover = 1.3000
SellTurnover = 0.3000

Входные параметры

свернуть все

Объект для портфеля, заданный с помощью Portfolio, PortfolioCVaR, или PortfolioMAD объект. Для получения дополнительной информации о создании объекта портфеля см.

Типы данных: object

Выходные аргументы

свернуть все

Ограничение оборота на покупки, возвращаемое как скаляр для Portfolio, PortfolioCVaR, или PortfolioMAD входной объект (obj).

Ограничение оборота на продажах, возвращаемое как скаляр для Portfolio, PortfolioCVaR, или PortfolioMAD входной объект (obj).

Подробнее о

свернуть все

Ограничение одностороннего оборота

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

Ограничения принимают форму

1Tmax{0,xx0}τB

1Tmax{0,x0x}τS

с

  • x - Портфолио (вектор NumAssets)

  • x0 - Начальный портфель (вектор NumAssets)

  • 'B' - верхняя граница ограничения оборота при закупках (скаляр)

  • .r S - верхняя граница ограничения оборота на продажах (скаляр)

Задайте односторонние ограничения оборота, используя следующие свойства в поддерживаемом объекте портфеля: BuyTurnover для, B, SellTurnover для, S и InitPort для x0.

Примечание

Ограничение среднего оборота (которое устанавливается с помощью setTurnover) не просто комбинация односторонних ограничений оборота с тем же значением для ограничения.

Совет

Можно также использовать запись через точку для получения ограничения одностороннего оборота для объектов портфеля.

[BuyTurnover,SellTurnover] = obj.getOneWayTurnover

Введенный в R2011a