Работа с операционными издержками

Различием между сетевыми и грубыми возвратами портфеля являются операционные издержки. Сетевой портфель возвращается, прокси имеет отличные пропорциональные затраты для покупки и продать активы, которые обеспечены в PortfolioMAD свойства объектов BuyCost и SellCost. Операционные издержки находятся в модулях совокупного дохода и, как таковы, пропорциональны цене актива так, чтобы они вошли, модель для сетевого портфеля возвращает в ответ форму. Например, предположите, что у вас есть запас, в настоящее время оценил 40$, и ваши обычные операционные издержки составляют 5 центов за долю. Затем операционные издержки для запаса являются 0.05/40 = 0.00125 (как задано в Сетевом Портфеле, Возвращается). Затраты вводятся как положительные значения, и кредиты вводятся как отрицательные величины.

Установка операционных издержек Используя PortfolioMAD Функция

Чтобы настроить операционные издержки, необходимо задать начальный или текущий портфель в InitPort свойство. Если начальный портфель не установлен, когда вы настраиваете свойства операционных издержек, InitPort 0. Свойства для операционных издержек могут быть установлены с помощью PortfolioMAD объект. Например, примите, что покупка и операционные издержки продаж находятся в переменных bc и sc и начальный портфель находится в переменной x0, затем операционные издержки установлены:

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('BuyCost', bc, 'SellCost', sc, 'InitPort', x0);
disp(p.NumAssets)
disp(p.BuyCost)
disp(p.SellCost)
disp(p.InitPort)
    5

    0.0013
    0.0013
    0.0013
    0.0013
    0.0013

    0.0013
    0.0070
    0.0013
    0.0013
    0.0024

    0.4000
    0.2000
    0.2000
    0.1000
    0.1000

Установка операционных издержек Используя setCosts Функция

Можно также установить свойства для использования операционных издержек setCosts. Примите, что у вас есть те же затраты и начальный портфель как в предыдущем примере. Учитывая 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)
disp(p.BuyCost)
disp(p.SellCost)
disp(p.InitPort)
    5

    0.0013
    0.0013
    0.0013
    0.0013
    0.0013

    0.0013
    0.0070
    0.0013
    0.0013
    0.0024

    0.4000
    0.2000
    0.2000
    0.1000
    0.1000

Можно также настроить InitPort начального портфеля значение как дополнительный аргумент к 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;
p = setCosts(p, bc, sc, x0);
        
disp(p.NumAssets)
disp(p.BuyCost)
disp(p.SellCost)
disp(p.InitPort)
    5

    0.0013
    0.0013
    0.0013
    0.0013
    0.0013

    0.0013
    0.0070
    0.0013
    0.0013
    0.0024

    0.4000
    0.2000
    0.2000
    0.1000
    0.1000

Установка операционных издержек со скалярным расширением

Оба PortfolioMAD объект и setCosts функционируйте реализуют скалярное расширение на аргументах для операционных издержек и начального портфеля. Если NumAssets свойство уже установлено в PortfolioMAD объект, скалярные аргументы для этих свойств расширены, чтобы иметь то же значение через все размерности. Кроме того, setCosts позволяет вам задать NumAssets в качестве дополнительного итогового аргумента. Например, примите, что у вас есть начальный портфель x0 и вы хотите установить общие операционные издержки на всех активах в вашей вселенной. Можно установить эти затраты любым из этих эквивалентных способов:

x0 = [ 0.4; 0.2; 0.2; 0.1; 0.1 ];
p = PortfolioMAD('InitPort', x0, 'BuyCost', 0.002, 'SellCost', 0.002);

или

x0 = [ 0.4; 0.2; 0.2; 0.1; 0.1 ];
p = PortfolioMAD('InitPort', x0);
p = setCosts(p, 0.002, 0.002);

или

x0 = [ 0.4; 0.2; 0.2; 0.1; 0.1 ];
p = PortfolioMAD;
p = setCosts(p, 0.002, 0.002, x0);

Очистить затраты от вашего PortfolioMAD объект, используйте любого thePortfolioMAD объект или setCosts с пустыми входными параметрами для свойств, которые будут очищены. Например, можно очистить затраты на продажи от PortfolioMAD объект p в предыдущем примере:

p = PortfolioMAD(p, 'SellCost', []);

Смотрите также

| | | |

Связанные примеры

Больше о