exponenta event banner

Оптимизация длинного портфеля

В этом примере показано, как определить оптимальные веса портфеля для указанной долларовой стоимости с помощью анализа операционных затрат Исследовательской группы Kissell. Пробный портфель содержит только длинные акции. В процессе реализации инвестиционного решения можно учитывать риски, доходность и рыночные издержки.

В этом примере требуется лицензия Optimization Toolbox™. Дополнительные сведения см. в разделе Обзор теории оптимизации (панель инструментов оптимизации).

KRGPortfolioOptimizationExample , доступ к которой можно получить путем ввода edit KRGPortfolioOptimizationExample.m, рассматривает три различных сценария оптимизации:

  1. Максимизируйте компромисс между чистой доходностью портфеля и риском портфеля. Максимизация компромисса выражается как

    argmaxx [R 'x MI' | x | λ x 'Cx],

    где:

    • R - расчетный доход для каждого запаса в портфеле.

    • x обозначает веса для каждого запаса в портфеле.

    • MI - рыночная стоимость для указанной стоимости доллара и количества акций.

    • λ - заданный параметр неприятия риска.

    • C - ковариационная матрица данных запаса.

  2. Минимизация риска портфеля с учетом минимального целевого показателя доходности с помощью

    argminx [x 'Cx].

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

    argmaxx [R 'x MI' | x |].

Нижняя и верхняя границы ограничивают x в каждом сценарии. Каждая оптимизация находит локальный оптимум. Способы поиска глобального оптимума см. в разделе Local vs. Global Optima (Панель инструментов оптимизации).

Извлечение параметров влияния на рынок и данных о нагрузке

Извлеките данные о влиянии на рынок с FTP-сайта Kissell Research Group. Подключитесь к FTP-сайту с помощью ftp с именем пользователя и паролем. Перейдите к MI_Parameters и получить данные о влиянии на рынок в MI_Encrypted_Parameters.csv файл. miData содержит зашифрованную дату влияния на рынок, код и параметры.

f = ftp('ftp.kissellresearch.com','username','pwd');
mget(f,'MI_Encrypted_Parameters.csv');
close(f)

miData = readtable('MI_Encrypted_Parameters.csv','delimiter', ...
    ',','ReadRowNames',false,'ReadVariableNames',true);

Создание объекта анализа затрат транзакции Kissell Research Group k. Укажите начальные параметры для даты, кода влияния на рынок и количества торговых дней.

k = krg(miData,datetime('today'),1,250);

Загрузка данных примера TradeDataPortOpt и ковариационные данные CovarianceData из файла KRGExampleData.mat, который входит в состав Toolbox™ Datafeed. Ограничьте набор данных первыми 50 строками.

load KRGExampleData TradeDataPortOpt CovarianceData

n = 50;
TradeDataPortOpt = TradeDataPortOpt(1:n,:);
CovarianceData = CovarianceData(1:n,1:n);

Описание данных примера см. в разделе Наборы данных исследовательской группы Kissell.

Максимальная чистая доходность портфеля

Выполните сценарий оптимизации, используя пример и ковариационные данные. Чтобы выполнить первую оптимизацию, укажите 1 в последнем входном аргументе.

[Weight,Shares,Value,MI] = KRGPortfolioOptimizationExample(TradeDataPortOpt, ...
    CovarianceData,1);

KRGPortfolioOptimizationExample возвращает оптимизированные значения для каждого запаса в портфеле:

  • Вес портфеля

  • Количество акций

  • Стоимость портфеля в долларах

  • Рыночные издержки

Для запуска двух других сценариев укажите 2 или 3 в последнем входном аргументе KRGPortfolioOptimizationExample.

Просмотрите вес портфеля для первых трех акций в портфеле в десятичном формате.

format

Weight(1:3)
ans =

    0.0100
    0.3198
    0.1610

Просмотрите количество акций, используя два десятичных знака для первых трех акций в портфеле.

format bank

Shares(1:3)
ans =

      24420.02
    3249893.71
     402364.47

Просмотрите долларовую стоимость портфеля для первых трех акций в портфеле.

Value(1:3)
ans =

    1000000.00
   31977654.17
   16097274.50

Просмотрите стоимость влияния на рынок для первых трех акций в портфеле в десятичном формате.

format

MI(1:3)
ans =

   1.0e-03 *

    0.1250
    0.7879
    0.3729

Ссылки

[1] Кисселл, Роберт. «Создание динамических предпродажных моделей: за черным ящиком». Журнал торгов. Том 6, номер 4, осень 2011, стр. 8-15.

[2] Кисселл, Роберт. «TCA в инвестиционном процессе: обзор». Журнал индексного инвестирования. Том 2, номер 1, лето 2011, стр. 60-64.

[3] Кисселл, Роберт. Наука алгоритмической торговли и управления портфелем. Кембридж, Массачусетс: Elsevier/Академическая пресса, 2013.

[4] Чон, Грейс и Роберт Кисселл. «Применение транзакционных издержек в процессе оптимизации портфеля». Журнал торгов. Том 11, номер 2, весна 2016, стр. 11-20.

См. также

| | (Панель инструментов оптимизации) | (Панель инструментов оптимизации)

Связанные темы