setTurnover

Настройка ограничения на максимальный оборот портфеля

Описание

пример

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

пример

obj = setTurnover(obj,Turnover,InitPort,NumAssets) настраивает ограничение максимального оборота портфеля для объектов портфеля с дополнительными опциями, заданными для Turnover, InitPort, и NumAssets.

Учитывая верхнюю границу для оборота портфеля в Turnover и начальный портфель в InitPortограничение оборота требует любого портфеля в Port чтобы удовлетворить следующему:

1' *1/2* | Port - InitPort | <= Turnover

Примеры

свернуть все

Задан объект Portfolio p, чтобы гарантировать, что средний оборот составляет не более 30% при начальном портфеле в 10 активов в переменной x0, используйте setTurnover метод для установки ограничения оборота.

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

disp(p.NumAssets);
    10
disp(p.Turnover);
    0.3000
disp(p.InitPort);
    0.1200
    0.0900
    0.0800
    0.0700
    0.1000
    0.1000
    0.1500
    0.1100
    0.0800
    0.1000

Задан объект портфеля CVaR p, чтобы гарантировать, что средний оборот составляет не более 30% при начальном портфеле в 10 активов в переменной x0, используйте setTurnover метод для установки ограничения оборота.

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

disp(p.NumAssets);
    10
disp(p.Turnover);
    0.3000
disp(p.InitPort);
    0.1200
    0.0900
    0.0800
    0.0700
    0.1000
    0.1000
    0.1500
    0.1100
    0.0800
    0.1000

Заданный объект PortfolioMAD p, чтобы гарантировать, что средний оборот составляет не более 30% при начальном портфеле в 10 активов в переменной x0, используйте 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);
    10
disp(p.Turnover);
    0.3000
disp(p.InitPort);
    0.1200
    0.0900
    0.0800
    0.0700
    0.1000
    0.1000
    0.1500
    0.1100
    0.0800
    0.1000

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

свернуть все

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

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

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

Начальные или текущие веса портфеля, заданные как конечный вектор с NumAssets > 0 элементы для Portfolio, PortfolioCVaR, или PortfolioMAD входной объект (obj).

Примечание

Если нет InitPort задано, что значение принято 0.

Если InitPort задается как скаляр и NumAssets существует, затем InitPort подвергается скалярному расширению.

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

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

Примечание

Если невозможно получить значение для NumAssets, принято, что NumAssets является 1.

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

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

свернуть все

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

Совет

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

obj = obj.setTurnover(Turnover, InitPort, NumAssets);

Введенный в R2011a