Инвестиционное проектирование в системе Matlab-Simulink



Опубликовано в журнале "Финансовый менеджмент" №2 год - 2010


Булгаков Ю.В.,
доцент кафедры менеджмента
Красноярского государственного
аграрного университета

Программа имитации реальных процессов Simulink является широко известным приложением к пакету Мatlab. При использовании системы Мatlab-Simulink реализуется принцип визуального моделирования, в соответствии с которым пользователь создает динамическую модель объекта из стандартных блоков на экране монитора и выполняет расчеты с имитацией различных значений внутренних параметров и внешних воздействий.

При этом в отличие от классических методов моделирования не обязательно знать язык программирования Мatlab, достаточно иметь лишь общие навыки работы на компьютере и творческий характер мышления. Simulink предназначен в основном для решения инженерных и научно-технических задач, однако возможности его применения для исследования финансово-экономических процессов практически не ограничены [1].

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

Статическая модель инвестиционного портфеля показана на рис. 1. Подсистема (Subsistem) (рис. 2) включает блоки для формирования ковариационной матрицы портфеля из трех активов. Блоки Constant1 и Constant2 содержат диагональную матрицу стандартных отклонений и корреляционную матрицу соответственно, матричное умножение которых выполняет блок Product2. С помощью умножителя Gain1 на выходе подсистемы Out1 получается ковариационная матрица набора из трех активов, однако количество активов не ограничено, причем исходные данные можно получить из рабочей области Matlab с помощью входного блока In. Блок Product выполняет обращение ковариационной матрицы, а блок Gain – матричное умножение вектора ожидаемых доходностей на обратную матрицу. Блок Sum of Elements осуществляет поэлементное сложение вектора, полученного из предыдущего блока. В блоке Product1 выполняется расчет весовых коэффициентов оптимального портфеля как частное от деления каждого элемента вектора на общую сумму (дисплей Weight). В блоке Gain2 выполняется поэлементное умножение весовых коэффициентов на ожидаемые доходности активов. В блоке Sum of Elements2 – сложение полученных результатов с целью получения ожидаемой доходности портфеля, отображаемой на экране дисплея Return. Этот же сигнал подается на вход блока Divide, на второй вход которого поступает сигнал с блока Sum of Elements.

В результате получаем дисперсию портфеля, квадратный корень из которой (блок Math Function) дает стандартное отклонение портфеля на дисплее Risk.

Отрицательные значения весовых коэффициентов допустимы лишь при возможности коротких продаж (продаж без покрытия), т. е. когда инвестор может продавать заимствованные акции [2, 3]. В общем случае доли активов в портфеле должны быть неотрицательными, а их сумма равна единице. Поэтому при получении отрицательных значений надо открыть подсистему и в корреляционной матрице для соответствующего актива вместо единицы на главной диагонали ввести достаточно большое число, например десять в пятой степени.

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

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

Если в предыдущей модели ставка отсечения остается постоянной и равной нулю, то здесь она изменяется в пределах от нуля до 20% и интерпретируется как время моделирования, которое задается пользователем. На каждом шаге модель рассчитывает оптимальные характеристики соответствующего портфеля, а полученные результаты фиксируют виртуальные измерительные средства.

 

Дисплеи Weight (вес), Return (доходность) и Risk (стандартное отклонение) фиксируют показатели портфеля на последнем шаге моделирования, т. е. при ставке отсечения, равной 20%. Текущие показатели с достаточно высокой и управляемой точностью считываются с осциллографа Scope (рис. 5).


Информация с осциллографа Scope дополняется соответствующими зависимостями доходности и риска на осциллографе Scope1 (рис. 6).

Графопостроитель XY Graph позволяет получить верхнюю границу эффективных портфелей Г. Марковица (рис. 7).

Граница эффективности дает инвестору множество портфелей. Инвестор выбирает вариант, который соответствует его отношению к риску, поскольку портфель с большей доходностью имеет и больший риск. Моделирование отношения инвестора к риску в пакете Matlab осуществляется с помощью функции полезности Неймана-Моргенштерна, которая содержит параметр неприятия риска и определяет семейство линий безразличия, поскольку полезность для инвестора одинакова на всех точках этих кривых. Чем больше полезность, тем выше и левее кривая расположена на графике. Оптимальным для инвестора является портфель, соответствующий единственной точке границы эффективности, где она касается одной из линий безразличия. При этом инвестор имеет возможность вкладывать деньги в рисковые и безрисковые активы, а также привлекать заемные средства по ставке больше безрисковой.

Величина параметра неприятия риска изменяется в пределах от 2 для лица склонного к риску до 4 – для осторожного инвестора. Однако, несмотря на точные расчеты, остается впечатление недостаточного обоснования этого параметра. С точки зрения логики если есть возможность вкладывать средства в рисковые и безрисковые активы, то доля вклада в рисковый портфель должна быть пропорциональна его избыточной доходности r и обратно пропорциональна риску  и готовности инвестора к риску a. Для обоснования параметра готовности к риску или неприятия риска, по нашему мнению, можно использовать неравенство Крамера по аналогии с актуарными расчетами имущественного страхования [4]. Согласно этому неравенству готовность к риску a определяется как натуральный логарифм допустимой вероятности банкротства p со знаком минус, поделенный на два:

Тогда если допустимая вероятность банкротства p составляет 1%, т. е. 0,01, то параметр готовности к риску составит 2,302. Если склонный к риску инвестор допускает 10%-ную вероятность разорения, то p равняется 0,1 и параметр a составит 1,15. При р = 0,001 величина неприятия риска будет равна 3,45. В этом случае пределы изменения параметра неприятия риска 2 и 4 приобретают вполне конкретный смысл. Оценка доли рискованных вложений  с учетом параметра неприятия риска определяется по формуле:

Например, если желаемая избыточная доходность 20 %, а риск 12 %, то доля рисковой составляющей в модели Тобина по мере увеличения меры готовности к риску (0,001, 0,01 и 0,1) составит соответственно (0,48, 0,72 и 1,45). Можно заметить, что параметр а является коэффициентом кратности для стандартного отклонения, что согласуется с теорией принятия решений в условиях риска. В рамках модели У. Шарпа [2] ожидаемые доходности  и недиагональные элементы ковариационной матрицы  рассчитываются по известным соотношениям на базе эмпирических коэффициентов уравнений регрессии альфа  и бета  между доходностью каждого актива и доходностью фондового индекса с учетом случайной погрешности  

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

В блок Ramp вводят параметры линейной функции прогнозируемого чистого денежного потока (чистая прибыль плюс амортизация) на протяжении жизненного цикла проекта: начальное значение, момент времени начала формирования денежного потока и абсолютный прирост за период, который может быть положительным, нулевым или отрицательным. В рассматриваемом примере в первый год чистый доход составляет 10 д. е., на второй год – 11 д. е. и т. д. до 19 д. е. на десятый год эксплуатации, т. е. скорость роста равна единице. Начальные инвестиции в нулевой год равны – 20 д. е.

Чтобы построить требуемую схему денежного потока, необходим блок единичной дискретной задержки Unit Delau, который выполняет задержку входного сигнала на один шаг модельного времени. Такой же блок с целью синхронизации процесса содержит и другой участок схемы, который предназначен для дисконтирования денежного потока по разным ставкам дисконтирования. Модельные значения этих ставок показаны в блоке Constant в виде (1+r), где r меняется от 20 до 60% с интервалом 5%.

Блок Ramp1 формирует линейную функцию с начальным значением и скоростью изменения равными единице, а блок Math Function рассчитывает дисконтирующий делитель. Блок Divide формирует дисконтированный денежный поток, а дискретный интегратор Discrete-Time Integrator, начальное значение которого установлено равным размеру инвестиций (–20 д. е.), рассчитывает кумулятивный поток при разных ставках дисконтирования. Время моделирования можно задавать в соответствии с ожидаемой длительностью жизненного цикла проекта и в любых единицах измерения.

Конечные результаты (NPV и IRR) на момент завершения проекта фиксирует дисплей, а динамика денежных потоков отображается на экране осциллографа. Scope (рис. 9), где содержится информация о сроках окупаемости проекта в диапазоне расчетных ставок дисконтирования. На горизонтальной оси фиксируется время моделирования, а на вертикальной – накопленный денежный поток. В рассмотренном примере NPV изменятся в пределах от 34,81 д. е. при ставке 20% до –0,884 при ставке 60%. Поэтому внутренняя ставка доходности находится в интервале от 55 до 60%, а точное значение – 57,53%.

Срок окупаемости PP на осциллографе соответствует моменту пересечения нулевого уровня кумулятивной ступенчатой кривой для соответствующего варианта. Блок расчета индекса рентабельности PI, определяемого как отношение NPV к первоначальным инвестициям плюс единица, не включен в модель, чтобы не загромождать схему еще одним дисплеем и осциллографом. С помощью стандартных блоков Simulink можно получить любую схему изменения чистого денежного потока во времени, включая сезонные колебания и случайные отклонения.

Аналогичная модель с непрерывным временем, которая, по нашему мнению, больше соответствует реальности, показана на рис. 10. Исходные данные приняты те же, что и в дискретной модели. Разница заключается лишь в использовании схемы непрерывного начисления процентов, где в качестве ставки дисконтирования применяется сила роста, которая определяется как ln (1+r), где r – обычная процентная ставка.

Поскольку моделируется непрерывный процесс, используются соответствующие блоки задержки Transport Delau и интегрирования Integrator. Интегратор вычисляет определенный интеграл от линейной функции чистого годового дохода с первого года до десяти лет при начальном значении в нулевой момент времени (–20 д. е.).

В блоке Ramp1 начальные значения и скорость роста заданы одним и тем же вектором [-0.2:-0.05:-0.6], т. е. сила роста изменяется от 20 до 60% с интервалом 5%, что соответствует дискретной модели, но имеет другое количественное измерение.

В блоке Math Function вычисляется дисконтирующий множитель в виде функции exp(u), где значения u поступают из блока Ramp1. Блок Product выполняет дисконтирование денежного потока, а интегратор вычисляет накопленный денежный поток с учетом первоначальных инвестиций. Результаты также считываются с экранов осциллографа Scope (рис. 11) и дисплея Accumulation. Горизонтальная ось осциллографа соответствует времени, а вертикальная – величине накопленного чистого дохода.

Технология решения рассмотренных задач в таблицах Excel приведена в работах [5, 6].

Основными преимуществами блочного моделирования по сравнению с традиционными методами являются простота, наглядность и возможность наблюдать за процессом на любом этапе расчета. Разработанные модели можно использовать для активизации изучения предмета в качестве лабораторных работ по соответствующим курсам.

Литература
1. Цисарь И.Ф. MATLAB Simulink. Компьютерное моделирование экономики. – М.: СОЛОН- РЕСС, 2008.
2. Шарп У., Александер Г., Бэйли Д. Инвестиции. – М.: ИНФРА-М, 2004.
3. Боди Э., Кейн А., Маркус А.Д. Принципы инвестиций. – М.: Вильямс, 2004.
4. Штрауб Э. Актуарная математика имущественного страхования. – М.: КРОКУС-Т, 1993.
5. Булгаков Ю.В. Диагностика инвестиционного риска // Финансовый менеджмент. 2006. №4.
6. Булгаков Ю.В. Экспресс-диагностика проектного риска // Финансовый менеджмент. 2007. №2.

04.07.2017

Также по этой теме:


Список просмотренных товаров пуст
Список сравниваемых товаров пуст
Список избранного пуст
Ваша корзина пуста