Schatzi
38
All posts from Schatzi
  Schatzi in Schatzi,

Оптимальный портфель. Продолжаем разговор...

Итак, попробую изложить, что у меня получилось в моих экспериментах с построением оптимального портфеля.

Для старта я взяла 4 актива: склеенные фьючерсы ФОРТС на

Золото (GOLD),

Нефть (Brent),

Доллар (USD)

Индекс RTS (RTSI).

Так же, для смещения границы эффективности в зону более низкого риска я добавила еще 1 актив – Деньги (Сash), ожидаемая доходность которого E = 0, риск D = 0 , корреляция доходности с доходностями остальных активов тоже 0.

Далее выгрузила с www.finam.ru подневные цены закрытия указанных активов с 01.07.2010 по 27.08.2010, в EXCEL сгладила их адаптивной скользящей средней Кауфмана (почему использовала именно её, можно прочесть тут: http://www.comon.ru/user/Schatzi/blog/post.aspx?index1=19609), и посчитала подневные доходности именно по сглаженным ценам.

Следующие этапы делались в среде MATLAB в цикле для каждого дня, начиная с 01.06.2010.

В качестве ожидаемой доходности на 02.06.2010 каждого из 4-х активов USD, BRENT, GOLD, RTSI я взяла среднюю доходность за последние 90 торговых дней, т.е. сложила доходности актива за 90 дней и поделила на 90.

Напоминаю, что ожидаемая доходность 5-ого актива cash = 0.

По последним 90 торговым дням я посчитала матрицу ковариации 4 активов (матрица 4 x 4) и добавила к ним строку и столбец  для актива Сash - в итоге получилась матрица 5 x 5, у которой 5-ая строка и столбец состоят полностью из нулей.

Далее я задала ограничения сверху на вес активов в портфеле – 75% для всех активов кроме cash, для cash ограничение сверху 100% (т.е. могут быть дни, когда наш портфель полностью в деньгах), ограничение снизу - 0 %.

И, наконец, с помощью функции frontconv получила эффективную границу для 02.06.2010 из 30 портфелей:

NumPorts  = 30;

[PortRisk, PortReturn, PortWts] = frontcon(ExpReturn,ExpCovariance, NumPorts,[],AssetBounds ) ;

В качестве оптимального на 02.06.2010 портфеля, берем портфель с максимальным среди 30 портфелей отношением  E[r] / D[r].

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

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

Я ожидала, что ребалансировка будет происходить не каждый день, а именно только в случае, если доли активов в оптимальном портфеле на завтра изменились по сравнению с долями на сегодня более чем на 2%.

В результате я получила 63 портфеля для дней с 01.06.2010 по 27.08.2010, однако, результат меня не удовлетворил по двум причинам:

1. Доля актива Сash очень сильно скачет, т.е. например на 01.06.2010 она составляет 90% , на 02.06.2010 -30 % и 03.06.2010 опять 90% , т.е.  по факту ребалансировку приходится делать КАЖДЫЙ день!!!


2. Доходность, показанная с 01.06.2010 по 27.08.2010, равна 0 без учета издержек на сделки –ребалансировки , т.е. фактическая доходность < 0. В тоже время стратегия «купи – держи» по индексу RTS за этот период дает 5.24%

Конечно, нельзя судить о стратегии по доходности за 2 месяца, однако, меня очень сильно печалит пункт 1, а именно постоянная необходимость ребалансировки и очень сильные колебания доли Сash...

Коллеги прокомментируй мои действия, и, подскажите, как побороть пункт 1???