setCosts

Настройте пропорциональные операционные издержки

Синтаксис

obj = setCosts(obj,BuyCost)
obj = setCosts(obj,BuyCost,SellCost,InitPort,NumAssets)

Описание

пример

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

пример

obj = setCosts(obj,BuyCost,SellCost,InitPort,NumAssets) настраивает пропорциональные операционные издержки для объектов портфеля с дополнительными опциями, заданными для SellCost, InitPort и NumAssets.

Учитывая пропорциональные операционные издержки и начальный портфель в переменных BuyCost, SellCost, и InitPort, операционных издержках для любого портфеля Port уменьшает ожидаемый портфель, возвращаются:

BuyCost' * max{0, Port - InitPort} + SellCost' * max{0, InitPort - Port}

Примеры

свернуть все

Учитывая объект Portfolio p с начальным портфелем уже набор, используйте функцию setCosts, чтобы настроить операционные издержки.

bc = [ 0.00125; 0.00125; 0.00125; 0.00125; 0.00125 ];
sc = [ 0.00125; 0.007; 0.00125; 0.00125; 0.0024 ];
x0 = [ 0.4; 0.2; 0.2; 0.1; 0.1 ];

p = Portfolio('InitPort', x0);
p = setCosts(p, bc, sc);
        
disp(p.NumAssets);
     5
disp(p.BuyCost);
    0.0013
    0.0013
    0.0013
    0.0013
    0.0013
disp(p.SellCost);
    0.0013
    0.0070
    0.0013
    0.0013
    0.0024
disp(p.InitPort);
    0.4000
    0.2000
    0.2000
    0.1000
    0.1000

Учитывая объект p портфеля CVaR с начальным портфелем уже набор, используйте функцию setCosts, чтобы настроить операционные издержки.

bc = [ 0.00125; 0.00125; 0.00125; 0.00125; 0.00125 ];
sc = [ 0.00125; 0.007; 0.00125; 0.00125; 0.0024 ];
x0 = [ 0.4; 0.2; 0.2; 0.1; 0.1 ];

p = PortfolioCVaR('InitPort', x0);
p = setCosts(p, bc, sc);
        
disp(p.NumAssets);
     5
disp(p.BuyCost);
    0.0013
    0.0013
    0.0013
    0.0013
    0.0013
disp(p.SellCost);
    0.0013
    0.0070
    0.0013
    0.0013
    0.0024
disp(p.InitPort);
    0.4000
    0.2000
    0.2000
    0.1000
    0.1000

Объект Given PortfolioMAD p с начальным портфелем уже набор, используйте функцию setCosts, чтобы настроить операционные издержки.

bc = [ 0.00125; 0.00125; 0.00125; 0.00125; 0.00125 ];
sc = [ 0.00125; 0.007; 0.00125; 0.00125; 0.0024 ];
x0 = [ 0.4; 0.2; 0.2; 0.1; 0.1 ];

p = PortfolioMAD('InitPort', x0);
p = setCosts(p, bc, sc);
        
disp(p.NumAssets);
     5
disp(p.BuyCost);
    0.0013
    0.0013
    0.0013
    0.0013
    0.0013
disp(p.SellCost);
    0.0013
    0.0070
    0.0013
    0.0013
    0.0024
disp(p.InitPort);
    0.4000
    0.2000
    0.2000
    0.1000
    0.1000

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

свернуть все

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

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

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

Примечание

  • Если BuyCost, SellCost или InitPort заданы как скаляры, и NumAssets существует или может быть оценочным, то эти значения подвергаются скалярному расширению. Значением по умолчанию для NumAssets является 1.

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

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

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

Примечание

  • Если BuyCost, SellCost или InitPort заданы как скаляры, и NumAssets существует или может быть оценочным, то эти значения подвергаются скалярному расширению. Значением по умолчанию для NumAssets является 1.

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

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

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

Примечание

Если никакой InitPort не задан, то значение принято, чтобы быть 0.

  • Если BuyCost, SellCost или InitPort заданы как скаляры, и NumAssets существует или может быть оценочным, то эти значения подвергаются скалярному расширению. Значением по умолчанию для NumAssets является 1.

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

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

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

Примечание

NumAssets не может использоваться, чтобы изменить размерность объекта портфеля.

  • Если BuyCost, SellCost или InitPort заданы как скаляры, и NumAssets существует или может быть оценочным, то эти значения подвергаются скалярному расширению. Значением по умолчанию для NumAssets является 1.

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

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

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

свернуть все

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

Советы

  • Можно также использовать запись через точку, чтобы настроить пропорциональные операционные издержки.

    obj = obj.setCosts(BuyCost, SellCost, InitPort, NumAssets);
    

  • Если BuyCost или SellCost вводятся как порожняя тара с [], соответствующие атрибуты в объекте портфеля очищены и установлены в []. Если InitPort будет собираться опустеть с [], он будет только очищен и установлен в [], если BuyCost, SellCost и Turnover будут также пусты. В противном случае это - ошибка.

Введенный в R2011a