setCosts

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

Описание

пример

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