SOFTWARE SYSTEM OF MULTI-OBJECTIVE OPTIMIZATION BY METHOD OF INVESTMENT PORTFOLIO
Abstract and keywords
Abstract (English):
A financial market changing state requires an automation to determine investment strategies in combination with the high accuracy of solutions found. There is offered a solution for the problem mentioned with the use of methods of an evolutionary modeling, in particular, a genetic algorithm developed. It allows defining optimum Pareto options of an investment portfolio (IP) differing with the balance between its profitability and a risk. The algorithm mentioned is used in the developed software program with a module structure. It contains the collection and analysis subsystems of data on security characteristics, IP structure optimization, and also IP choice the most corresponding to investor’s requirements. The software system working capacity was analyzed at IP formation on the basis of actual data during the time period chosen the data obtained correspond to the indices of possible investment strategies.

Keywords:
investment portfolio, multi-objective optimization, evolution modeling, genetic algorithm
Text
Publication text (PDF): Read Download

Введение

 

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

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

Для инвестора обычно не имеет значения, какими алгоритмами решалась задача оптимизации ИП; гораздо важнее точность найденного результата, а также удобство и простота его получения при работе с конкретной программой. К настоящему времени разработан и используется целый ряд компьютерных программ для оптимизации инвестиций. Преимущественно это программы иностранного производства с английским интерфейсом. Они отличаются как набором функций (от достаточно простых реализаций в среде MS Excel до комплексных пакетов экономического анализа, например Siemens Business), так и стоимостью. Изучение доступных версий программ для оптимизации ИП позволяет сделать вывод, что чаще всего в них используются численные методы оптимизации, ориентированные на частные случаи задач планирования инвестиций. Это позволяет специалисту более точно выбрать экономическую модель под реальные инвестиционные условия, но и требует от него подбора значений дополнительных управляющих параметров. В итоге снижается доступность использования таких программ неспециалистами, то есть неквалифицированными инвесторами. Вместе с тем в последнее время различными инвестиционными и кредитными организациями создаются условия и предоставляется широкий спектр услуг для привлечения накоплений частных инвесторов с целью приобретения ценных бумаг и управления ими. При этом выбор стратегии инвестирования, состава инвестиционного портфеля, как правило, должен осуществляться самим инвестором, что достаточно сложно без специальной подготовки в области планирования инвестиций. С учетом этого была разработана программная система, использующая для формирования ИП только объективные данные результатов торгов ценными бумагами. Сам процесс поиска оптимального ИП требует минимального участия пользователя, которым может быть инвестор любого уровня подготовки, и предполагает участие специалиста только в случае неопределенности при выборе окончательного варианта ИП.

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

 

 

Постановка и математическая модель задачи оптимизации инвестиционного  портфеля

 

В настоящее время основу всех типов частных моделей оптимизации инвестиционного портфеля составляет модель, предложенная Г. Марковицем [1; 2]. Она является многокритериальной и предполагает наличие множества Парето-оптимальных решений [3] при оценке соотношения «доходность - риск», расположенных на так называемой границе Парето-эффективных инвестиционных портфелей. Для случая отсутствия ограничений на параметры математической модели Марковица существуют методы достаточно точного нахождения оптимальных ИП. Однако в других ситуациях инвестор может более конкретно определить условия формирования ИП. В частности, могут быть заданы число активов в ИП, граничные объемы возможных капитальных вложений, минимальные объемы отдельных активов и др. Вместе это добавляет ограничения в математическую модель оптимизации ИП и затрудняет определение оптимальных по Парето ИП традиционно применяемыми к данной задаче методами оптимизации.

Использование генетического алгоритма (ГА) [4; 5] для оптимизации ИП позволяет решать эту задачу в естественной многокритериальной постановке и с ограничениями. Соответствующая математическая модель содержит следующие параметры, а также аналитическое представление критериев и ограничений.

 ‑ доля финансового актива  i (i = 1,…,n) в ИП;

n - максимальное число активов в ИП;

 ‑ минимальная доля финансового актива  i,   i = 1,…,n;

U ‑ объем финансовых средств для формирования ИП;

 ‑ ожидаемая средняя доходность по  i-му  активу,  i = 1,…,n;

 - оптимизируемый критерий «доходность инвестиционного портфеля»;

 - оптимизируемый критерий «риск инвестиционного портфеля».

 ,

где  Ci,j - ковариация доходности активов, входящих в ИП;

 

.

 

Для определения возможной доходности активов должен быть проведен анализ ее изменения за прошедший период. Так, для данной математической модели значения   рассчитываются на основе известного диапазона колебаний доходности финансового актива i за  t периодов наблюдений (например, по факту проведения торгов на фондовой бирже) [6] от минимального    до максимального  . Это может быть выполнено как с применением численных методов статистического анализа и прогнозирования, так и непосредственно инвестором.

В процессе поиска варианты ИП оцениваются с использованием принципов Парето [3] одновременно по двум критериям. Поэтому для выбранной модели оптимизации ИП не требуется изначального задания инвестором желаемых значений доходности и допустимого риска, часто сильно зависящих от стохастически изменяющихся инвестиционных условий. Основное участие инвестора предполагается непосредственно на стадии выбора решений из всей совокупности найденных Парето-оптимальных ИП. Для их определения в программной системе используется многокритериальный генетический алгоритм [7]. В общем случае ГА представляет собой эволюционный многоточечный численный метод оптимизации. Он позволяет в заданных соотношениях комбинировать направленный и случайный характер исследования одновременно множества возможных решений. Это является важным преимуществом перед другими численными методами и позволяет ГА находить множество Парето-оптимальных решений за один запуск алгоритма.

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

 

 

Генетический алгоритм определения Парето-оптимальных  ИП

 

68

 
В генетических алгоритмах [4; 5] решение представляется в виде индивида, гены которого ассоциируются с оптимизируемыми переменными. В данном случае каждый вариант инвестиционного портфеля выражается отдельным индивидом, а его  n генов соответственно определяют значения долей активов. На каждой итерации (поколении) поиска посредством различных генетических операторов (обычно кроссинговера и мутации) индивиды комбинируются друг с другом, изменяются, порождая тем самым новые решения. Наиболее перспективные (для последующего улучшения) из них переходят в следующее поколение. В ГА качество каждого решения определяется показателем пригодности соответствующего ему индивида. Для вычисления значения пригодности используется fitness-функция. В решаемой задаче данная функция включает значения ранга Парето, а также плотности расположения решений в пространстве критериев. Ранг Парето отражает результаты оценки решений в соответствии с принципами Парето, меньшие значения ранга соответствуют лучшему показателю.

Генетический алгоритм оптимизации ИП включает следующую последовательность действий:

Шаг 1. Создать начальную популяцию индивидов  размером , t = 0. Установить значение текущего ранга Парето R = 1. Присвоить начальное значение fitness-функции .

Шаг 2. В популяции  определить недоминируемые индивиды, добавить их в множество   и назначить им ранг R. Следующим образом вычислить для этих индивидов значение fitness-функции:

2.1. Присвоить fitness-функции f(c) индивидов множества  значение .

2.2. Разбить поисковое пространство на ячейки шириной

,

где   ‑ соответственно минимальное и максимальное значения i-го критерия к текущему поколению; Ncell(i) - число ячеек, выделенных для критерия i.

2.3. Вычислить для индивидов новое значение fitness-функции

 :,

где  nc(с) - число соседних индивидов в ячейке с индивидом с.

2.4. Удалить (временно) из популяции индивиды с рангом  R.

Шаг 3.  Уменьшить значение    так, чтобы оно было меньше, чем минимальное значение  :. .

Шаг 4. Если определена пригодность всех индивидов, то перейти к шагу 5. Иначе  R = R + 1, перейти к шагу 2.

Шаг 5. Используя турнирный отбор [4; 5], выбрать множество индивидов для следующего поколения . Применить к этому множеству операторы кроссинговера и мутации [4; 5]. При этом в кроссинговере должны участвовать индивиды из разных ячеек.

Шаг 6. Если критерий окончания достигнут, то закончить. Иначе перейти к шагу 2, t = t + 1.

Алгоритм позволяет автоматически адаптироваться к изменению (сужению, расширению) поискового пространства за счет его условного разделения на m-мерные (по числу критериев) или n-мерные (по числу переменных) ячейки, образующие сетку (grid). Размеры ячеек динамически изменяются при перемещении процесса поиска в различные участки поискового пространства. Это оказывает влияние на работу соответствующих генетических операторов. В частности, преимущества для дальнейшего развития получают индивиды, расположенные в ячейках с наименьшим числом соседей. Это стимулирует поиск в различных участках поискового пространства, повышает протяженность результирующей границы Парето [7].

 

 

Структура программной системы и элементы ее интерфейса

 

69

 
Структура программной системы (рис. 1) состоит из трех подсистем (модулей):

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

70

 
Подсистема оптимизации состава и долей активов в ИП  предназначена для решения главной задачи программной системы ‑ многокритериальной оптимизации ИП. Для этого могут использоваться разные версии генетических алгоритмов многокритериальной оптимизации, реализованных в виде программной библиотеки. Входными данными для них являются значения общих параметров ИП (название портфеля, сумма инвестирования, число активов, срок инвестирования, дата создания), а также характеристики отобранных активов-кандидатов. В процессе оптимизации среди них определяется оптимальное подмножество непосредственно входящих в ИП активов, а также их оптимальные пропорции в нем. Оптимизация выполняется посредством всех доступных в программе генетических алгоритмов, что позволяет наиболее точно найти множество Парето-оптимальных ИП. Однако при наличии соответствующей подготовки пользователь может сам выбрать конкретный ГА для оптимизации и указать значения его управляющих параметров. Информация обо всех найденных ИП записывается в базу данных. Число Парето-оптимальных решений в ней может быть достаточно большим, а отличие значений их координат в пространстве критериев незначительным, что усложняет выбор окончательного решения. Поэтому далее проводится кластеризация найденных вариантов ИП. Эта процедура позволяет выделить в полученном множестве группы ИП со схожими значениями доходности и риска, то есть наиболее принципиальные варианты ИП, характеризующие различные участки границы Парето, а затем сократить множество найденных вариантов, оставив по одному наиболее типичному варианту портфеля от каждого кластера. Степень сокращения регулируется соответствующим параметром алгоритма кластеризации k-means. В итоге инвестор получает информацию о предельных значениях доходности и риска по всей совокупности найденных ИП, упрощается анализ связанных с ними данных, повышается качество принимаемого окончательного решения по выбору ИП.

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

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

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

 

 

 

Рис. 1. Структура программной системы

 

 

В начале работы с программой [8] должны быть подготовлены данные об активах, включающие историю изменения их стоимости. Соответствующая информация загружается в левую часть главного окна программы и представляется в виде дерева (рис. 2). Каждый портфель содержит раскрывающийся список, где перечислены активы, которые он содержит. При выборе интересующего портфеля информация о нём отображается в правой части главного окна программы. Представлена следующая информация: название портфеля, сумма инвестирования, число активов, срок инвестирования, дата создания ИП. Сумма инвестирования указывает, какой объем средств инвестор готов потратить на покупку выбранного портфеля. Он складывается из сумм, потраченных на покупку отдельных активов. Срок инвестирования - это число месяцев, на которое производится размещение средств в активы ИП и осуществляется управление им. Дата создания указывает, когда был сформирован инвестиционный портфель.

 

 

 
 

71

 
 

Рис_2

Рис. 2. Начало работы в программе

 

 

Для каждого инвестиционного портфеля указан его тип, который определяет важность критериев (доходности и риска) для данного ИП. Инвестиционный портфель может быть следующих типов: «Консервативный», «Сбалансированный», «Доходный» и «Определяемый пользователем». Для портфеля, тип которого указан как «Консервативный», приоритетное значение имеет снижение риска инвестирования при обеспечении достаточного уровня доходности. Для портфеля с типом «Доходный» предпочтение отдаётся увеличению доходности при приемлемом уровне риска. Портфель с типом «Сбалансированный» имеет равный приоритет для значений доходности и риска. Тип портфеля определяет, какие варианты его состава будут предложены пользователю после проведения оптимизации. При выборе типа портфеля «Определяемый пользователем» пользователь сам может задать приоритеты для значений доходности и риска. Если пользователь выберет пункт «Определить после оптимизации», то после проведения оптимизации ему будут предложены все найденные варианты ИП, а также возможность уточнить свои предпочтения после анализа всех альтернатив.

При выборе актива, входящего в состав портфеля, в правой части главного окна программы отображается информация для данного актива (рис. 3). Для него представлена следующая информация: название, статистика и данные об изменении стоимости. Информация о стоимости приведена в таблице для каждого дня торгов за выбранный период. На её основе рассчитывается следующая статистика: максимальная цена за весь период торгов, минимальная цена за весь период торгов, а также средняя цена. Значение средней цены рассчитывается как математическое ожидание стоимости актива за весь период торгов. Доходность рассчитывается как изменение стоимости актива за текущий день к стоимости актива за предыдущий день. Максимальная доходность показывает максимальное увеличение стоимости, а минимальная - ее минимальное изменение. Минимальная положительная доходность показывает минимальный прирост стоимости данного актива. Средняя доходность рассчитывается как математическое ожидание значения доходности за весь период. Пользователь может выбрать способ расчёта доходности для актива, выбрать максимальную, среднюю или минимальную положительную доходность. Также есть возможность задать значение доходности вручную.

 

 
 

72

 

 

 

Рис_3

Рис. 3. Информация о выбранном активе

 

 

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

 

 

Рис_4

 

Рис. 4. Результаты многокритериальной оптимизации ИП

 
 

73

 

 


 

Если пользователь выбрал тип портфеля до начала оптимизации, то ему будут показаны результаты согласно важности критериев. Если же им выбран пункт «Определить после оптимизации», то становится доступна нижняя панель с возможностью выбора вариантов ИП согласно своим предпочтениям. Могут быть выбраны следующие виды ИП: «Консервативный», «Сбалансированный», «Доходный» и «Определяемый пользователем». Данные варианты задают важность критериев аналогично выбору типа портфеля перед началом оптимизации. При выборе типа портфеля «Определяемый пользователем» можно менять важность критериев ИП. Также пользователь может выбрать пункт «Задать диапазон» и ввести с клавиатуры минимальные и максимальные значения доходности и риска. После нажатия на кнопку «Выбрать» в таблице остаются только варианты портфеля, соответствующие заданным параметрам. Другим способом уменьшения числа найденных ИП является их кластеризация посредством выбора пункта  «Сократить», где указывается число кластеров.

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

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

References

1. Shapkin, A.S. Ekonomicheskie i finansovye riski. Ocenka, upravlenie, portfel' investiciy: monografiya / A.S. Shapkin. - M.: Dashkov i Kº, 2003. - 544 s.

2. Sharp, U. Investicionnyy menedzhment / U. Sharp, G. Aleksander, D. Beyli. - M.: Infra-M, 2003. - 257 s.

3. Sobol', I.M. Vybor optimal'nyh parametrov v zadachah so mnogimi kriteriyami / I.M. Sobol', R.B. Statnikov. - 2-e izd., pererab. i dop. - M.: Drofa, 2006. - 175 s.

4. Gladkov, L.A. Geneticheskie algoritmy / L.A. Gladkov, V.V. Kureychik, V.M. Kureychik. - M.: Fizmatlit, 2006. - 320 s.

5. Averchenkov, V.I. Evolyucionnoe modelirovanie i ego primenenie: monografiya / V.I. Averchenkov, P.V. Kazakov. - Bryansk: BGTU, 2009. - 200 s.

6. Social'naya set' investorov. - Rezhim dostupa: http://tikr.ru.

7. Kazakov, P.V. Vozmozhnosti geneticheskih algoritmov dlya resheniya zadachi mnogokriterial'noy optimizacii investicionnogo portfelya / P.V. Kazakov // Dvenadcataya nacional'naya konferenciya po iskusstvennomu intellektu KII-2010: tr. konf.: v 4 t. - M.: Fizmatlit, 2010. - T. 4. - S. 105-111.

8. Kazakov, P.V. Programma dlya mnogokriterial'noy optimizacii i vybora investicionnogo portfelya s ispol'zovaniem geneticheskogo algoritma / P.V. Kazakov. - M.: FIPS. - Svid. o reg. № 2017617955 ot 17.07.17.

Login or Create
* Forgot password?