
- •Разработка моделей, алгоритмов и программных средств для повышения качества прогнозов биржевых показателей
- •Анализ существующих средств прогнозирования экономических показателей бирж
- •Модели и алгоритмы оценки стоимости ценных бумаг и управления инвестиционными активами
- •Роль рынка ценных бумаг в финансовой системе страны
- •Фундаментальный анализ
- •Показатели, используемые для фундаментального анализа акций
- •Технический анализ
- •Теории функционирования рынка ценных бумаг
- •Теория эффективного рынка
- •Теория случайных блужданий
- •Теория хаоса
- •Теория адаптивного рынка
- •Методы и модели для прогнозирования экономических показателей
- •Математическо-статистические методы
- •Поведенческие модели
- •Мультиагентные системы
- •Разработки, использующие мультиагентный подход для прогнозирования экономических показателей
- •Модель «SantaFe» и её вариации
- •Модель «Genoa Artificial Stock Market»
- •Библиотека «MoTor» и система «Имитрейд»
- •Платформа «ArTificial Open Market»
- •Комплекс «Altreva adaptive modeler»
- •Требования к функциональности проектируемого программного комплекса
- •Разработка архитектуры виртуального рынка ценных бумаг и системы поддержки принятия решений
- •Математическая модель виртуального рынка
- •Виртуальный мир и виртуальные агенты
- •Классификаторы
- •Новостная среда
- •Роли и стратегии
- •Активы агентов
- •Компании
- •Трейдеры
- •Стратегии трейдеров
- •Ордера и транзакции
- •Система обработки ордеров
- •Движение денежных средств при совершении транзакций
- •Расчёт статистических характеристик рынка ценных бумаг
- •Математическая формулировка задачи исследования
- •Архитектура программного комплекса
- •Выбор платформы для мультиагентной системы
- •Взаимосвязь приложения, пакетов и компонентов
- •Виртуальный мир
- •Стандартные классы системы
- •Планы и стратегии
- •Запросы и транзакции
- •Механизм формирования цен
- •Архитектура системы поддержки принятия решений
- •Общая схема архитектуры
- •Подключаемые модули
- •Алгоритм работы
- •Анализ работы системы
- •Описание работы программного комплекса
- •Функциональность
- •Редакторы
- •Организация экспериментов
- •Оценка степени соответствия виртуального рынка реальному
- •Соблюдение пропорций
- •Активность трейдеров на бирже ммвб в 2007-2010 годах
- •Наличие трендов и фигур
- •Сходство статистических характеристик изменения цен и объёма торгов
- •2. Критерий Колмогорова
- •3. Критерий Романовского
- •4. Критерий Ястремского
- •Критерии согласия двух теоретических распределений с распределением приращения максимальной цены за день для акции компании «Юкос» за период с 25.05.2005 по 19.09.2006
- •Критерии согласия двух теоретических распределений с распределением данных реального рынка по результатам 20 независимых экспериментов
- •Критерий согласия распределения Коши и объёма торгов за первые 116 дней торгов на виртуальном рынке в сценарии «FundamentalTradersExperiment.Fmp»
- •Критерий согласия распределения Коши и максимальной дневной цены по первой акции на виртуальном рынке в сценарии «FundamentalTradersExperiment.Fmp» за 165 дней торгов
- •Критерии согласия распределения Коши с распределением данных на виртуальном рынке по результатам 20 независимых экспериментов
- •Фрактальность рыночных процессов
- •Расчёт показателя Хёрста для различных временных рядов
- •Реакция рынка на действия отдельных агентов
- •Эксперименты, проведенные над виртуальным рынком
- •Зависимость размера спрэда от склонности к риску трейдеров
- •Влияние фундаментальных трейдеров на динамику котировок акций
- •Влияние новостного фона на котировки ценных бумаг при различном составе участников рынка
- •Практическое применение программного комплекса в качестве системы поддержки принятия решений
- •Математические критерии оценки качества прогнозов
- •Анализ работы системы поддержки принятия решений
- •Результаты сравнения краткосрочных прогнозов экспертов и системы поддержки принятия решений «fimas»
- •Результаты сравнения среднесрочных прогнозов экспертов и системы поддержки принятия решений «fimas»
- •Технико-экономическое обоснование
- •Преимущества и недостатки программного комплекса, выявленные в процессе эксплуатации
- •Другие перспективы практического применения
- •Перспективы для дальнейших исследований и разработок
- •Заключение
- •Литература
- •Приложения
- •Акт о внедрении результатов диссертационного исследования в ооо «Таулинк»
- •Акт о внедрении результатов диссертационного исследования в тк «Фотон»
- •Краткая информация о проекте «fimas»
- •Подробная схема связи компонентов и пакетов в системе
- •Алгоритм работы ролей трейдера и брокера
- •Алгоритм обработки текущих ордеров фундаментальным трейдером
- •Критерии согласия двух теоретических распределений (Гауса, Коши) с распределением приращения максимальной цены за день для акции компании «Юкос» за период с 25.05.2005 по 19.09.2006
- •Сравнение распределений Коши с распределением объёма торгов по первой акции на виртуальном рынке в сценарии «FundamentalTradersExperiment.Fmp» за 116 дней торгов
- •Критерии согласия распределения Коши с распределением объёма торгов по первой акции на виртуальном рынке в сценарии «FundamentalTradersExperiment.Fmp» за 116 дней торгов
- •Сравнение распределений Коши с распределением максимальной дневной цены по первой акции на виртуальном рынке в сценарии «FundamentalTradersExperiment.Fmp» за 165 дней торгов
- •Критерии согласия распределения Коши с распределением максимальной дневной цены по первой акции на виртуальном рынке в сценарии «FundamentalTradersExperiment.Fmp» за 165 дней торгов
- •Статистические данные по биржам
- •Структура трейдеров в модели fimas и на реальных биржах
- •Новости и спрэд акций в сценарии «NewsGenerator.Fmp» при преобладании новостных трейдеров
Трейдеры
Агенты с ролью трейдера могут либо использовать только одну фиксированную стратегию (такое поведение описано выше), либо применять рейтинговую систему и эволюционные алгоритмы для выбора наиболее оптимальной стратегии.
Пусть у нас
есть произвольный агент
,
который играет только одну роль
.
Пусть роль
– роль трейдера, т.е.
.
Состояние трейдера
может быть представлено в виде кортежа
|
(2.27) |
где –
список из доступных стратегий для
трейдера;
– количество доступных стратегий
трейдера
;
– все возможные для трейдеров стратегии;
– параметр, характеризующий совокупный
опыт и знания трейдера;
– параметр, характеризующий способность
трейдера к обучению.
Не все
стратегии доступны для разных категорий
трейдеров. Например, живой человек не
может делать по 10 операций в секунду,
это может только торговый робот. Каждая
стратегия
может быть представлена в виде кортежа:
|
(2.28) |
где – список оценок относительной доходности
этой стратегии;
– максимальное количество элементов
в
;
– минимально необходимое количество
элементов в
;
– минимальное количество балов опыта
у трейдера
для того,
чтобы эта стратегия стала ему доступна.
Агенты
совершают сделки с ценными бумагами,
руководствуясь в каждый момент какой-то
конкретной стратегией. По итогам закрытия
каждой позиции
трейдер получает определённый опыт,
зависящий от его способности к обучению
и успешности последней сделки, который
рассчитывается по формуле:
|
(2.29) |
где – новое значение опыта трейдера
;
– первоначальное значение опыта трейдера
;
– параметр, характеризующий способность
трейдера к обучению;
– цена продажи ценных бумаг по позиции
;
– цена покупки ценных бумаг по позиции
– транзакционные издержки трейдера
по позиции
;
– время между открытием и закрытием
позиции
(в часах).
Трейдеры
способны учиться как на своих победах,
так и на своих ошибках, так что объём
набираемого ими опыта в такой модели в
большей степени зависит от количества
совершённых ими сделок и их способности
к обучению и в меньшей степени от
успешности самих операций. Например,
на n-ой сделке опыт трейдерабудет равен:
|
(2.30) |
По итогам
закрытия позиции происходит обновление
списка оценок относительной доходности
стратегии
по
следующему алгоритму. Пусть
– количество элементов в
,
а
– оценка доходности позиции
,
т.е.
.
.
Если
, то
.
На основе
списка оценок относительной доходности
стратегии
вычисляется рейтинг стратегии:
|
(2.31) |
На основе
этого рейтинга вычисляется вероятность
использования стратегий ()
по следующему алгоритму:
Если
, то:
(2.32)
Если
, то:
(2.33)
Если
и
, то для каждого непустого
создаём временный список:
|
(2.34) |
После этого вычисляем максимальную вероятность в этом списке:
|
(2.35) |
Вычисляем окончательную вероятность. Стратегии, которые ещё ни разу не использовались, получают максимально возможную вероятность:
|
(2.36) |
В заключении, нормализуем
по единице:
|
(2.37) |
Стратегии трейдеров
В модели «FIMAS» выделено несколько подтипов стратегий. Каждая стратегия определяет набор сигналов, в соответствии с которыми трейдер решает, продавать ли ему акции или покупать. В приведённых ниже формулах и алгоритмах используются следующие обозначения:
– стоимость ценных бумаг компании T
в портфеле трейдера, принимает значение
0, если у него нет ценных бумаг этого
типа.
– максимальная рыночная стоимость всех
ценных бумаг в портфеле трейдера.
– критичная стоимость всех ценных бумаг
в портфеле трейдера, после достижения
которой он старается больше их не
покупать.
– стоимость стандартного ордера на
покупку / продажу,
.
– стоимость текущего ордера на покупку
/ продажу,
.
– стоимость стандартной комиссии
брокера на сумму транзакции
.
– коэффициент изменения цены.
– текущий бид.
– текущий аск.
– лимит-цена нового ордера.
– лимит-цена прошлого ордера для ценной
бумаги того же типа.
– стандартное время для выполнения
лимит-ордера. После истечения этого
времени ордер аннулируется, даже если
не выполнился.
– реальное время выполнения прошлого
ордера для ценной бумаги того же типа.
– текущее значение виртуального времени.
– минимальное время ожидания перед
тем, как трейдер продаст ценную бумагу
из портфеля.
– время открытия позиции (покупки
портфеля ценных бумаг компании T).
– размер денежных средств трейдера на
счету брокера. Он имеет право совершать
транзакции только на эту сумму.
– количество ценных бумаг компании T
в портфеле трейдера.
– стандартное количество ценной бумаги
T для ордера на общую сумму
.
– количество ценных бумаг для нового
ордера.
– количество открытых позиций в портфеле
трейдера.
– максимальное количество открытых
позиций в портфеле трейдера.
– псевдослучайное число в интервале
(равномерное распределение).
– функция вычисления псевдослучайного
числа в интервале
(равномерное распределение).
– склонность трейдера к риску, по
умолчанию псевдослучайное число в
интервале
(равномерное распределение).
Стратегия маркет-мейкера
В приведённых ниже формулах и алгоритмах для этой стратегии дополнительно используются следующие обозначения:
– постоянный бонусный коэффициент за
успешно завершённую предыдущую сделку,
в процентах, по умолчанию псевдослучайное
число в интервале
(равномерное распределение).
– постоянный бонусный коэффициент за
неуспешно завершённую предыдущую
сделку, в процентах, по умолчанию
псевдослучайное число в интервале
(равномерное распределение).
– переменный бонусный коэффициент за
успешно завершённую предыдущую сделку,
по умолчанию 1.
– текущая лимит-цена на контр-ордере.
– финальный коэффициент изменения
цены.
Сигнал для покупки ценной бумаги T:
.
Цена покупки и количество:
Если
,
то выходим из алгоритма (у трейдера
слишком много ценных бумаг этого типа).
Если
,
то
,
,
иначе
,
.
Если
,
то
.
Если
,
то выходим из алгоритма (недостаточно
средств для покупки даже минимального
пакета).
Если прошлый запрос на покупку акций этого типа был выполнен успешно, то
Если прошлый запрос на покупку акций этого типа был выполнен только частично за отведённое для него время, то
Если прошлый запрос на покупку акций этого типа не был выполнен вообще за отведённое для него время, то
Если
,
то
Сигнал для продажи ценной бумаги T:
Цена продажи и количество:
Если
,
то выходим из алгоритма (недостаточно
средств на счету для совершения сделки).
Если
,
то
,
а
.
Иначе
,
а
.
Если прошлый запрос на продажу акций этого типа был выполнен успешно, то
Если прошлый запрос на продажу акций этого типа был выполнен только частично за отведённое для него время, то
Если прошлый запрос на продажу акций этого типа не был выполнен вообще за отведённое для него время, то
Если
,
то
Стратегия трейдера-новичка
Обязательные условия для покупки ценной бумаги T:
Цена покупки и количество:
Если
,
то
,
иначе
.
Обязательные условия для продажи ценной бумаги T:
Цена продажи и количество:
Если
,
то
.
Иначе
.
Стратегия фундаментального трейдера
В приведённых ниже формулах и алгоритмах для этой стратегии дополнительно используются следующие обозначения:
– фундаментальная цена ценной бумаги
(цена, которую трейдер считает справедливой
для этой бумаги).
– минимальное отношение между
фундаментальной и реальной ценой, при
котором трейдер сочтёт бумагу
инвестиционно-привлекательной. По
умолчанию оно в интервале
(равномерное распределение), т.е. от 0.5%
до 2% разницы.
Обязательные условия для покупки ценной бумаги T:
Цена покупки и количество:
Обязательные условия для продажи ценной бумаги T:
Цена продажи и количество:
Если
,
то
,
иначе если
,
то
,
иначе
.
Стратегия новостного трейдера
В приведённых ниже формулах и алгоритмах для этой стратегии дополнительно используются следующие обозначения:
– значение уровня новостного фона
компании, свидетельствующее, что ценную
бумагу следует купить.
– значение уровня новостного фона
компании, свидетельствующее, что ценную
бумагу следует продать.
– текущее значение уровня новостного
фона компании, выпускающей ценную бумагу
T.
Обязательные условия для покупки ценной бумаги T:
Цена покупки и количество:
Обязательные условия для продажи ценной бумаги T:
Цена продажи и количество:
Стратегия инсайдера
Текущий алгоритм работы инсайдеров во многом основан на моих предыдущих работах на эту тему [80, 81].
В приведённых ниже формулах и алгоритмах для этой стратегии дополнительно используются следующие обозначения:
– значение уровня новостного фона
компании, свидетельствующее, что ценную
бумагу следует купить.
– значение уровня новостного фона
компании, свидетельствующее, что ценную
бумагу следует продать.
– флаг, свидетельствующий о том, что
данную ценную бумагу следует купить.
– текущее значение уровня новостного
фона компании, выпускающей ценную бумагу
T.
– минимальное значение уровня новостного
фона компании, выпускающей ценную бумагу
T, за период от текущего виртуального
времени до даты самой последней ожидаемой
новости.
– максимальное значение уровня новостного
фона компании, выпускающей ценную бумагу
T, за период от текущего виртуального
времени до даты самой последней ожидаемой
новости.
– дата минимального значения уровня
новостного фона компании, выпускающей
ценную бумагу T, за период от текущего
виртуального времени до даты самой
последней ожидаемой новости.
– дата максимального значения уровня
новостного фона компании, выпускающей
ценную бумагу T, за период от текущего
виртуального времени до даты самой
последней ожидаемой новости.
Обязательные условия для покупки ценной бумаги T:
Цена покупки и количество:
Обязательные условия для продажи ценной бумаги T:
Цена продажи и количество:
Далее, при разборе архитектуры приводится словесное описание алгоритмов работы для каждой стратегии. С программной реализацией алгоритмов можно ознакомиться на официальном сайте проекта [58].