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

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

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

Чтобы настроить операционные издержки, необходимо задать начальный или текущий портфель в InitPort свойство. Если начальный портфель не установлен, когда вы настраиваете свойства операционных издержек, InitPort 0. Свойства для операционных издержек могут быть установлены с помощью thePortfolio объект. Например, примите, что покупка и операционные издержки продаж находятся в переменных 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 = Portfolio('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. Примите, что у вас есть те же затраты и начальный портфель как в предыдущем примере. Учитывая 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)
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 = Portfolio;
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

Для примера установки затрат смотрите Анализ портфеля с Ограничениями Оборота.

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

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

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

или

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

или

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

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

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

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

| | | |

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

Больше о

Внешние веб-сайты