В этом примере показано, как определить веса оптимального портфеля для заданной долларовой стоимости с помощью анализа операционных издержек от Kissell Research Group. Демонстрационный портфель содержит только длинные доли запаса. Можно включить риск, возвратиться, и стоимость влияния на рынок во время реализации инвестиционного решения.
Этот пример требует лицензии Optimization Toolbox™. Для справочной информации см. Обзор Теории Оптимизации (Optimization Toolbox).
KRGPortfolioOptimizationExample
функция, к которой можно получить доступ путем ввода edit KRGPortfolioOptimizationExample.m
, адреса три различных сценария оптимизации:
Максимизируйте компромисс между сетевым портфелем, возвращаются и портфельный риск. Максимизация компромисса описывается как
где:
R является предполагаемым возвратом для каждого запаса в портфеле.
x обозначает веса для каждого запаса в портфеле.
MI является влиянием на рынок, стоившим за заданные количества долларовой стоимости и доли.
заданный параметр нерасположенности к риску.
C является ковариационной матрицей данных о запасе.
Минимизируйте портфельный риск, удовлетворяющий минимальному целевому использованию возврата
Максимизируйте сетевой портфель, возвращаются удовлетворяющий максимальному целевому использованию рискозависимости
Нижние и верхние границы ограничивают x в каждом сценарии. Каждая оптимизация находит локальный оптимум. Для способов искать глобальный оптимум, смотрите Локальный по сравнению с Глобальными оптимумами (Optimization Toolbox).
Получите данные влияния на рынок от 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);
Создайте аналитический объект k
операционных издержек Kissell Research Group. Задайте начальные установки для даты, кода влияния на рынок и номера торговых дней.
k = krg(miData,datetime('today'),1,250);
Загрузите данные в качестве примера TradeDataPortOpt
и данные о ковариации CovarianceData
из файла KRGExampleData.mat
, который включен с Datafeed Toolbox™. Ограничьте набор данных первыми 50 строками.
load KRGExampleData TradeDataPortOpt CovarianceData n = 50; TradeDataPortOpt = TradeDataPortOpt(1:n,:); CovarianceData = CovarianceData(1:n,1:n);
Для описания данных в качестве примера смотрите Наборы данных Kissell Research Group.
Запустите сценарий оптимизации с помощью данных о ковариации и примера. Чтобы запустить первую оптимизацию, задайте 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] Kissell, Роберт. “Создавая Динамические Предторговые Модели: Вне Черного квадрата”. Журнал Торговли. Издание 6, Номер 4, Осень 2011 года, стр 8–15.
[2] Kissell, Роберт. “TCA в Инвестиционном Процессе: Обзор”. Журнал Инвестирования индекса. Издание 2, Номер 1, Лето 2011 года, стр 60–64.
[3] Kissell, Роберт. Наука об алгоритмической торговле и управлении портфелем. Кембридж, MA: нажатие Elsevier/Academic, 2013.
[4] Чанг, Грэйс и Роберт Кисселл. “Приложение Операционных издержек в Процессе Оптимизации Портфеля”. Журнал Торговли. Издание 11, Номер 2, Spring 2016, стр 11–20.
krg
| marketImpact
| fmincon
(Optimization Toolbox) | optimoptions
(Optimization Toolbox)