ФЕДЕРАЛЬНОЕ АГЕНТCТВО ПО ОБРАЗОВАНИЮ МОСКОВСКИЙ ИНЖЕНЕРНО-ФИЗИЧЕСКИЙ ИНСТИТУТ (ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ)
Н.Ю. Бакаев...
30 downloads
228 Views
2MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
ФЕДЕРАЛЬНОЕ АГЕНТCТВО ПО ОБРАЗОВАНИЮ МОСКОВСКИЙ ИНЖЕНЕРНО-ФИЗИЧЕСКИЙ ИНСТИТУТ (ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ)
Н.Ю. Бакаев
Методы статистических испытаний в экономике и финансах Рекомендовано УМО «Ядерные физика и технологии» в качестве учебного пособия для студентов высших учебных заведений
МОСКВА 2007
УДК 336.01(075) ББК 65.261-93я7 Б 19
Бакаев Н.Ю. Методы статистических испытаний в экономике и финансах: Учебное пособие. М.:МИФИ, 2007.– 184 с. В данном учебном пособии рассматриваются вопросы практического решения экономико-финансовых задач на основе применения методов статистических испытаний (методов Монте-Карло). В книге изложены как общие проблемы методологии техники статистических испытаний, включая основные принципы генерации случайных чисел, так и примеры конкретного применения данной техники для целей финансовоэкономического моделирования. Книга предназначена в первую очередь студентам и аспирантам экономико-аналитического института МИФИ, но может быть также использована финансовыми аналитиками и экономистами-менеджерами, не имеющими глубокой математической подготовки, но желающими владеть практическими приемами применения методов статистических испытаний в прикладных исследованиях. Пособие подготовлено в рамках Инновационной образовательной программы. Рецензент доктор физ.-мат. наук проф. А.В. Крянев
ISBN 978-5-7262-0817-6 © Московский инженерно-физический институт (государственный университет), 2007
Оглавление Глава 1 Роль моделирования в изучении социально экономических процессов……………………………………....……
5
ЧАСТЬ I МЕТОДОЛОГИЧЕСКИЕ ОСНОВЫ МЕТОДОВ МОНТЕ-КАРЛО................................................. 9 Глава 2 Исторические предпосылки возникновения и общие характеристики группы методов Монте-Карло……………….. Глава 3 Генерация случайной величины с равномерным законом распределения………………..…………………………..… 3.1 Случайные числа и случайные цифры……………..……… 3.2 Способы генерации случайных чисел……………..………. 3.3 Псевдослучайные числа…………………………………….. 3.4 Статистическая проверка случайных чисел…….………… Глава 4 Генерация случайных величин с заданными законами распределении…………………………………………...… 4.1 Метод обратных функций……………………………..…… 4.2 Моделирование нормального распределения………........... 4.3 Моделирование многомерных случайных величин………. 4.4 Метод суперпозиции………………….…………………...... Глава 5 Стохастические дифференциальные уравнения……….. 5.1 Дельта-функция……………………………………………... 5.2 Случайные процессы………………………………………... 5.3 Белый шум и винеровский процесс………………………... 5.4 Понятие стохастических дифференциальных уравнений…………………………………………………………………. 5.5 Численные методы решения стохастических дифференциальных уравнений…….……………………………………
ЧАСТЬ II ПРИМЕНЕНИЕ МЕТОДОВ МОНТЕ-КАРЛО В ФИНАНСОВО-ЭКОНОМИЧЕСКОМ МОДЕЛИРОВАНИИ... Глава 6 Анализ непрерывного потока финансовых платежей…………………………………………………………...... 6.1 Необходимые сведения из математической статистики… 6.2 Простейший метод Монте-Карло для вычисления интегралов………………………………………………………………… 6.3 Финансовые платежи……………………………………….. Глава 7 Механические торговые системы………..………….…
3
11 19 20 23 28 37 55 55 62 64 77 84 84 90 93 101 113 119 121 121 125 127 130
7.1 Вероятность получения убытка в серии последовательных сделок ……………………………………………….. 7.2 Вероятность разорения в серии последовательных сделок……………………………………………………………………… Глава 8 Моделирование работы систем массового обслуживания …………………………………………………………….. Глава 9 Формирование инвестиционного портфеля……………. 9.1 Математическая постановка задачи оптимизации портфеля активов…………………………………………………………. 9.2 Численное решение задачи оптимизации портфеля….. Глава 10 Моделирование динамики финансовых активов…… 10.1 Моделирование эволюции стоимости акций…………….. 10.2 Моделирование стохастических процентных ставок…… Глава 11 Моделирование ценообразования опционов………….. 11.1 Опционы на рынке акций…………………………………. 11.2 Опционы на рынке облигаций……………………………. Приложение 1……………………………………………………….. Приложение 2……………………………………………………….. Список литературы………………………………………………… Предметный указатель…………………………………………..…..
4
131 133 136 141 141 150 157 157 162 166 167 170 175 176 176 179
Глава 1 Роль моделирования в изучении социально-экономических процессов Внимание к различным аспектам моделирования продиктовано расширяющимися масштабами современных экономических и социальных исследований, потребностями производства и деловых кругов, усложняющейся динамикой развития общественно-экономических структур, необходимостью совершенствования планирования на всех организационных уровнях ввиду крайне высокой ответственности за последствия принимаемых управленческих решений, а также необходимостью использования в будущем уже накопленного опыта социально-экономической и финансовой деятельности. В настоящее время моделирование является одной из важнейших процедур при планировании управления как отдельными хозяйственными объектами, так и сложными социально-экономическими структурами. Успешно проведенное моделирование позволяет достоверно спрогнозировать поведение социально-экономических объектов в будущем, а значит и надежно оценить последствия принимаемых в настоящем управленческих решений. В зависимости от уровня планирования моделирование может производиться как на макроуровне – для моделирования динамики развития отдельных государств или крупных регионов, играющих важную самостоятельную роль в рамках мирового сообщества, так и на микроуровне – от планирования финансово-хозяйственной деятельности предприятий и до прогнозирования результатов спекуляций отдельных трейдеров на валютно-финансовых биржах. Совершенствование методов моделирования в современных условиях по общепризнанному мнению базируется на развитии соответствующих информационных технологий, что, в свою очередь, обусловлено следующими причинами: 1) неуклонным ростом объемов социальноэкономической информации; 5
2) сложностью алгоритмов расчета и интерпретации результатов; 3) все возрастающими требованиями к качеству прогнозов: 4) необходимостью использования результатов моделирования для решения задач планирования и управления (в том числе, стратегического). Можно привести много примеров позитивных последствий социально-экономической политики государств или финансово-экономической политики отдельных компаний, осуществленной на основе качественного прогноза, который, в свою очередь, являлся следствием успешного моделирования. Механизм успеха очевиден: делая правильные предположения о том, что произойдет в будущем, можно своевременно принять эффективные корректирующие меры, рационально используя позитивные тенденции и адекватно противодействуя процессам и явлениям, имеющим негативный характер. В то же время пренебрежение прогнозированием на основе модельных расчетов или некачественное прогнозирование могут привести к неправильным решениям в рамках проводимой политики и, как следствие, – к весьма плачевным последствиям. Приведем только один пример. Как сообщает журнал «Директор информационной службы» за 2001 г., компания Cisco, в свое время провозглашенная чуть ли не символом новой экономики, не только не смогла предвидеть экономический спад 2001 г., но и оказалась даже в худшем положении по сравнению с другими компаниями, так как считала свое программно-методическое обеспечение прогнозирования спроса безупречным. Менеджмент компании не предполагал, что одной из причин ее кризиса могут быть используемые модели и технологии прогнозирования. В результате допущенных аналитических просчетов было списано товаров на 2,2 млрд долларов, уволено около 20 % сотрудников, а акции компании упали в цене почти в 6 раз. 6
Таким образом, причина кризиса Cisco лежит не в задержках получения или недостаточном объеме исходной информации, необходимой для эффективной работы аналитиков компании. Трудности возникли, вероятнее всего, из-за методических ошибок и неадекватной оценки получаемых прогнозов. Как предполагают, использовавшаяся Cisco модель не обеспечивала необходимый уровень адаптации прогнозных оценок к текущему изменению рыночной ситуации. К настоящему времени сформировалась и является общепринятой точка зрения на то, какие основные факторы обеспечивают точность, достоверность и оперативность модельных прогнозов. Это: наличие современного программно-математического обеспечения в сочетании с полнотой охвата и надежностью источников исходной информации, заложенной в работу соответствующих алгоритмов; возможность оперативной обработки внутренней (внутрифирменной) и внешней информации; умение критически анализировать результаты моделирования; своевременность внесения необходимых изменений в методическое и информационное обеспечение базовых моделей. Что касается программно-математического обеспечения, то оно весьма существенным образом зависит от принятой социально-экономической модели со всеми ее адекватными реальностями. В рамках данной книги мы сосредоточимся исключительно на проблемах, связанных с разработкой математических моделей, возникающих в экономических и финансовых приложениях. Если говорить более точно, ограничимся на самом деле изучением так называемых методов Монте-Карло, играющих весьма важную роль при решении широкого круга финансово-экономических задач. Дальнейшее изложение книги будет разделено на две основных части. В первой части будут рассмотрены различные методологические 7
проблемы, возникающие при разработке алгоритмов на основе методов Монте-Карло, а вторая часть будет полностью посвящена приложениям указанных алгоритмов к различным задачам моделирования социально-экономической и финансовой сферы. Всюду далее в данной книге используются широко употребительные обозначения из теории вероятностей: Р(А) – для вероятности события А, а М[Х] и D[Х] – соответственно для математического ожидания и дисперсии случайной величины Х.1 Сами случайные величины обозначаются, как правило, прописными буквами латинского алфавита, а их реализации (элементы выборок) – соответствующими строчными буквами. В то же время по определенным причинам эта договоренность нарушалась в контексте некоторых рассуждений, например в ситуациях, когда элементы выборок необходимо было трактовать и как случайные величины. Векторные величины выделяются, как правило, жирным шрифтом. Остальные необходимые обозначения вводятся непосредственно перед их употреблением в ходе дальнейшего изложения.
1
В литературе можно также часто встретить обозначение Е Х, употребляемое вместо М[X].
8
ЧАСТЬ I МЕТОДОЛОГИЧЕСКИЕ ОСНОВЫ МЕТОДОВ МОНТЕ-КАРЛО
Глава 2 Исторические предпосылки возникновения и общие характеристики группы методов Монте-Карло – Кирпич ни с того ни с сего, – внушительно перебил неизвестный, – никому и никогда на голову не свалится. М. Булгаков. Мастер и Маргарита.
Часто вместо слов “методы Монте-Карло” говорят в единственном числе “метод Монте-Карло”, понимая, однако под этим собирательный термин для обозначения группы методов, объединенных по определенному принципу родства. Кроме того, вместо “метод/методы Монте-Карло” часто применяют термин “метод/методы статистических испытаний”, который является более информативным и более точно определяет специфику используемого подхода. Официальной датой рождения методов Монте-Карло принято считать 1949 год, когда появилась статья Н. Метрополиса и С. Улама1, посвященная описанию первого метода из этой группы. Поговаривают, однако, что сам термин “метод Монте-Карло” появился еще во время Второй мировой войны, когда Джон фон Нейман и Станислав Марцин Улам работали в Лос-Аламосе над моделированием нейтронной диффузии в расщепляемом материале. Что же это за метод с таким необычным, если не сказать экзотическим названием, и
1
N.Metropolis and S.Ulam, The Monte Carlo Method, J. Amer. Stat. Assos. 44(1949), 335-341.
11
почему он приобрел такую огромную популярность в последующие годы? Как известно, Монте-Карло – это имя столицы европейского игорного бизнеса, где люди годами ищут удачу, пытаясь реализовать свое счастье в азартных играх. Именно процесс азартной игры, в которой роль Его Величества Случая первостепенна, как считают, послужил стимулом к открытию нового подхода в моделировании. Хотя приемы, присущие методам Монте-Карло, были известны и до 40-х годов ХХ века, считается, что в наиболее оформленном виде эта идея возникла у С. Улама. Вот как он сам описывает открытие нового подхода: The first thoughts and attempts I made to practice [the Monte Carlo method] were suggested by a question which occurred to me in 1946 as I was convalescing from an illness and playing solitaires. The question was what are the chances that a Canfield solitaire laid out with 52 cards will come out successfully? After spending a lot of time trying to estimate them by pure combinatorial calculations, I wondered whether a more practical method than ‘abstract thinking’ might not be to lay it out, say, one hundred times, and simply observe and count the number of successful plays. This was already possible to envisage with the beginning of the new era of fast computers, and I immediately thought of problems of neuron diffusion and other questions of mathematical physics, and more generally how to change processes described by certain differential equations into an equivalent form interpretable as a succession of random operations. Later … [in 1946] I described the idea to John von Neumann, and we began to plan actual calculations.2 2
Первые мысли и попытки, которые я начал реализовывать на практике (в отношении метода Монте-Карло), были навеяны вопросом, занимавшим меня в 1946 году, когда я раскладывал пасьянсы, восстанавливаясь от болезни. Вопрос, привлекший мое внимание тогда, состоял в определении шансов того, что пасьянс Кэнфилда на 52-х картах разложится успешно. Проведя кучу времени в попытках оценить эти шансы чисто комбинаторными расчетами, я затем заинтересовался, а нельзя ли воспользоваться более практичным методом, чем «чисто абстрактное
12
Впоследствии многие источники связывали возникновение и развитие метода Монте-Карло с именем самого Дж. фон Неймана, что можно объяснить тем, что он возглавлял научную группу в Лос-Аламосе, развивавшую данное научное направление. Следует, однако, указать, что Дж. фон Нейман лично инициировал решение некоторых практических задач в ходе реализации метода Монте-Карло – в частности, ему принадлежит метод середины квадрата для генерации случайных чисел (см. главу 3). Метод Монте-Карло в его современном понимании – это любая техника статистических испытаний, примененная для решения количественных проблем. Сам С. Улам не изобрел статистические испытания – они уже использовались ранее для количественного решения некоторых задач; при этом, для генерации испытаний использовались определенные физические процессы, такие, например, как выбрасывание игральной кости или вытаскивание карт из колоды. В частности, В.С. Госсетт, публиковавший свои работы под именем Student, делал в 1908 году случайные пробы отпечатков пальцев 3000 преступников для моделирования двух коррелированных нормальных распределений. Вклад же Улама состоял в том, что он осознал потенциальные возможности электронных компьютеров (изобретенных к тому времени) для автоматизации соответствующих статистических испытаний. Работая вместе с Джоном фон Нейманом и размышление», например разложить пасьянс, скажем, сто раз и просто сосчитать, фиксируя результаты наблюдения, количество успешных раскладок. Такие эксперименты можно было автоматизировать в связи с зарождающейся новой эрой быстрых компьютеров, и я сразу же подумал о проблемах нейронной диффузии и других вопросах математической физики, а заодно и о более общей постановке задачи – каким образом вообще можно было бы характеризовать процессы, описываемые определенными дифференциальными уравнениями, в эквивалентной форме как последовательность случайных операций. Позже…[в 1946 году] я поделился этой идеей с Джоном фон Нейманом, и мы стали уже планировать реальные расчеты.
13
Николасом Метрополисом, он развил алгоритмы для компьютерных реализаций, а также исследовал средства для преобразования изначально неслучайных задач в случайные формы, что давало бы возможность решить их, используя статистические испытания. Работа указанных авторов позволила перевести статистические испытания из ряда математических развлекательных курьезов в формальную методологию, применимую для практического решения широкого круга задач. Что же касается самого термина метод Монте-Карло, то, как говорят, его придумал Метрополис, обнаруживший большое сходство между новой методологией и процессами на игорных столах в княжестве Монако. Улам и Метрополис опубликовали свою первую статью по методу Монте-Карло в 1949 году.3 Рассмотрим одну из классических задач, демонстрирующих технику, типичную для методов Монте-Карло. Это знаменитая задача об игле Бюффона – задача, которую предложил Джордж Луи Леклерк, граф де Бюффон в 1733 году, - более, чем за 200 лет до того, как Метрополис ввел термин “метод Монте-Карло”. Задача ставится следующим образом: на плоскость, разграфленную параллельными прямыми, отстоящими друг от друга на расстоянии d, наудачу бросается игла длиною l. Требуется определить, какова вероятность того, что игла пересечет одну из проведенных параллелей. Заметим, что решение этой задачи было дано самим Бюффоном, и искомая вероятность определяется формулой
P=
3
Эта статья уже цитировалась выше.
14
2l . πd
(2.1)
Несмотря на полученное решение, эта задача поглотила умы исследователей того времени, но уже с иной (скажем, довольно неожиданной) стороны, – они пытались применить результат решения задачи об игле Бюффона для практического вычисления числа π.4 Действительно, проводя эксперимент по достаточно большому количеству выбрасываний иглы и заменяя затем приближенно искомую вероятность практически определенной частотой пересечения иглой одной из параллельных прямых по формуле
P≈
m , n
где п – общее число выбрасываний иглы, а т – полное число наблюденных пересечений, можно получить следующую практическую оценку числа π:
π≈
2l n . md
(2.2)
В частности, в 1864 году капитан Фокс, восстанавливаясь от полученных ран, повторил указанный эксперимент три раза, каждый раз несколько варьируя условия его проведения. Результаты, полученные Фоксом, приведены в таблице. Results of Captain O.C.Fox’s Needle Dropping Experiments surface п т l d the π ’s (inches) (inches) estimate 500 236 3 4 stationary 3.1780 530 253 3 4 rotated 3.1423 590 939 5 2 rotated 3.1416
4
Заметим, что задача вычисления числа детерминированной постановке.
15
π является по своей сути задачей в
В последних двух экспериментах Фокс поворачивал между бросками поверхность, на которую выбрасывалась игла.5 Он применял этот прием, чтобы по возможности исключить уклон поверхности, который мог бы повлиять на окончательное положение выбрасываемой иглы.6 Кроме того, то, что Фокс использовал в своем третьем эксперименте более длинную иглу, которая при одном броске могла пересекать до 3-х линий одновременно, также считается инновацией, рассматриваемой ныне как одна из первых попыток уменьшить дисперсию (т.е. ошибку) метода. И, действительно, оценка числа π – самая лучшая именно в 3-м эксперименте.7 Данный пример показывает также другую сторону возможностей методов Монте-Карло, а именно, они применимы не только к решению задач, имеющих существенно вероятностный характер, таких, как прогнозирование цен на рынках ценных бумаг или предсказание погоды, но и к решению абсолютно детерминированных задач, например вычисление числа π. В любом случае, идет ли речь о решении задачи в детерминированной или стохастической постановке, в современном понимании метод Монте-Карло – это любой метод, имеющий дело со стохастической постановкой задачи, а если исходная задача была изначально сформулирована как детерминированная, то она должна быть переформулирована в 5
Напомним, что слово” fox” переводится с английского языка как “лиса” – последнее является у многих народов синонимом слова “хитрый”. 6 Фактически эта идея Фокса стала предвестником некоторых современных приемов по улучшению качества используемых в методах Монте-Карло псевдослучайных чисел. 7 В третьем своем эксперименте Фокс использовал иглу, длина которой в 2,5 раза больше расстояния между параллельными линиями. Оказывается, формула (2.1) сохраняет свой смысл, если величину P, которая в данном случае может принимать значения, большие 1, интерпретировать как среднее число (математическое ожидание числа) линий, пересекаемых иглой при одном броске. Что касается самой оценки числа π по формуле (2.2), то она применима при любых соотношениях между l и d.
16
стохастической форме. Таким образом, методы переформулирования детерминированных задач в стохастической форме также должны обслуживаться в русле общего изучения методов Монте-Карло. Специалисты различают понятия имитационного и численного моделирования: в первом случае моделируется поведение всех компонентов системы, во втором – только наиболее существенных. К какому классу методов отнести методы Монте-Карло? Более ранние методы Монте-Карло следует, по-видимому, рассматривать как имитационные. Имитация не всегда является лучшим способом для моделирования соответствующего процесса или явления; иногда в практических задачах заведомо не используется вся информация, характеризующая процесс/явление, в связи с чем были разработаны методы Монте-Карло с повышенной скоростью расчета, обусловленной отказом от использования определенной лишней информации. Такие методы И.М. Соболь называет численными методами Монте-Карло. Но грань между имитационными и численными методами Монте-Карло довольно условная; точного разделения на два указанных класса методов не существует. Заметим также, что в связи с расширением возможностей современных компьютеров роль имитационных методов в последнее время значительно укрепилась. Рост популярности имитационных методов связан также с тем, что они, как правило, более доступны для интерпретации многими практическими пользователями, среди которых могут быть, например, биржевики, финансисты, маркетологи, социологи, историки и др. Сразу укажем один из важнейших приемов конструирования методов Монте-Карло – это интерпретация исходной задачи как задачи расчета математического ожидания некоторой случайной величины. Пусть, например, речь идет о вычислении интеграла I = ∫ f x d x, Ω
где Ω – некоторая заданная область п-мерного пространства, х – п-мерный вектор (точка), а f(x) – заданная функция. Пусть далее p(x) > 0 – плотность распределения вероятности п-мерной 17
случайной величины Х. Тогда, вводя новую функцию
F( x ) =
f x , получим px I = M F x = ∫ F x p x d x, Ω
то есть искомая задача сводится к вычислению математического ожидания случайной величины F(х). Такая задача может быть решена следующим образом при помощи техники статистических испытаний: имея в распоряжении N независимых реализаций x1,x2,…,xN случайной величины Х, можно получить статистическую оценку математического ожидания случайной величины F(Х) как M F x
≈
N
F x + F x + ... + F x N .
Из математической статистики также известно, что можно также получить оценку дисперсии для F(Х), то есть фактически оценку для ошибки метода.8 Что касается конструирования значений x1,x2,…,xN случайной величины Х адекватным образом – это также одна из основных задач, подлежащих обсуждению в курсе методов Монте-Карло
8
Такие оценки будут строиться и анализироваться в ходе нашего основного изложения.
18
Глава 3 Генерация случайной величины с равномерным законом распределения – И доказательств никаких не требуется, – ответил профессор и заговорил негромко, причем его акцент почему-то пропал: – Все просто… М. Булгаков. Мастер и Маргарита Использование случайных величин с некоторыми законами распределения и подчиненных некоторым дополнительным требованиям (например, требованиям определенной корреляции) составляют основу любого метода Монте-Карло. Как будет показано позже, какому бы закону распределения не требовалось удовлетворить при генерации случайной величины, достаточно исходить из того, что в распоряжении имеется процедура генерации одномерной случайной величины, равномерно распределенной на интервале (0;1).1 Поэтому в данной главе вопрос генерации равномерного закона распределения рассматривается отдельно от других вопросов, освещенных в книге.
1
Для целей нашего изложения следует сразу же напомнить, что вероятность попадания непрерывной случайной величины в интервал (a; b) равна вероятности ее попадания в соответствующий отрезок [a; b] или один из полуинтервалов [a; b), (a; b] – одна из упомянутых ситуаций встретится при доказательстве теоремы 3.1 ниже. Таким образом, вместо случайной величины, равномерно распределенной на интервале (0; 1), можно говорить о случайной величине, равномерно распределенной на отрезке [0; 1] или на одном из полуинтервалов [0;1), (0; 1].
19
3.1 Случайные числа и случайные цифры Определение 3.1. Случайным числом будем называть одномерную случайную величину Γ, равномерно распределенную в интервале (0; 1). Определение 3.2. Случайной цифрой будем называть дискретную одномерную случайную величину Е, принимающую значения 0, 1,…, 9 с одинаковыми вероятностями 1 . 10
Интуитивно понятно, что должна существовать связь между случайными числами и случайными цифрами. Для выяснения характера этой связи представим случайное число бесконечной десятичной дробью
Γ = 0. Е1 Е2… Еk …, или в более компактной записи ∞
Γ = ∑ Ek 10 − k . k =1
Теорема 3.1. Десятичные цифры Е1, Е2, …, Еk, … случайного числа Γ представляют собой независимые случайные цифры. Наоборот, если Е1, Е2, …, Еk, … независимые случайные цифры, то Γ = 0. Е1 Е2… Еk … является случайным числом.
Доказательство. Докажем вначале первую часть утверждения. Пусть Γ – случайное число, то есть случайная величина Γ равномерно распределена в интервале (0;1). Очевидно Еk принимает цифровое значение i тогда и только тогда, когда 0. Е1 Е2… Еk-1 i ≤ Γ < 0. Е1 Е2… Еk- i + 0. 0 … 0 1 , (3.1) k цифр 20
причем Е1 Е2… Еk-1 могут принимать любые цифровые значения (от 0 до 9). Длина интервала, на котором выполняется это двойное неравенство, в точности равна 10-k. Поскольку при различных значениях i такие интервалы не пересекаются, то, как показывает простейшее вычисление, P({E k = i}) =
9
∑10
−k
E1 E 2 ,…, E k −1 = 0
= 10k −110 − k =
1 . 10
Покажем, что Еs и Еk независимы при s ≠ k. Будем считать для определенности, что 1 ≤ s < k. Вычислим вероятность одновременного наступления событий {Ek = i} и {Es = j}. Очевидно, оба события наступают одновременно тогда и только тогда, когда выполнено неравенство (3.1) и в то же время выполняется {Es = j}. Поэтому2 1 . 100 E1 E 2 ,… , E s −1 , E s +1 ,… , E k −1 = 0 соображений нетрудно также
P({E k = i} ∧ {E s = j}) =
В русле аналогичных показать, что
9
∑10
−k
=
P ({Е k 1 = i 1} ∧ {Е k 2 = i 2 } ∧ … ∧ {Е k s = i s }) = 10 − s ,
и, таким образом,
P ( {Еk1 = i1 }∧ { Еk2 = i2 }∧ … ∧ { Еks = is } ) = = P ({Е k 1 = i 1}) P ( {Е k 2 = i 2})
P ( {Е k s = i s }) .
Как следует из теоремы умножения теории вероятностей, последнее равенство свидетельствует о независимости
2
Здесь и далее используем символ конъюнкции синонимом логического «и».
21
∧ , который является
случайных цифр Еk1 ,Еk 2 ,…,Еk s при любых наборах попарно различных натуральных чисел k1 k2,…,ks. Обратимся теперь к доказательству второй части утверждения теоремы, которое фактически является обратным утверждением к уже доказанному. Пусть теперь E1, E2,…, Ek,… – независимые случайные цифры. Произвольное фиксированное число γ ∈ (0; 1) может быть представлено в виде бесконечной десятичной дроби
γ = 0.e1e2…ek… . Неравенство Γ < γ очевидно означает, что либо E1 < e1, либо E1 = e1 и E2 < e2, либо E1 = e1, E2 = e2 и E3 < e3, и т.д. Следовательно, P ({Γ < γ }) = ∞
= ∑ P({E1 = e1} ∧ {E2 = e2 } ∧ ... ∧ {Ek −1 = ek −1} ∧ {Ek < ek }) , k =1
и так как все E1, E2, …,Ek, … независимы, то последнее соотношение может быть переписано в виде P({Γ < γ}) = ∞
= ∑ P({ E1 = e1 }) P({ E2 = e2 })... P({ Ek −1 = ek −1 }) P({ Ek < ek }) . (3.2) k =1
Далее
заметим,
= P({Ek-1 = ek-1}) =
что 1 10
P({E1 = e1}) = P({E2 = e2}) = …
, в то время как P({Ek < ek}) = ek10-1,
поскольку Ek может принимать значения 0, 1,…,ek −1 – каждое с вероятностью
1 10
.
Подставляя
найденные
значения
вероятностей в формулу (3.2), окончательно получаем ∞
∞
k =1
k =1
P ({Г < γ}) = ∑10−(k −1 ) ek 10−1 = ∑ ek 10− k = γ ,
22
что позволяет сделать вывод о равномерном распределении случайной величины Γ на интервале (0; 1). Замечание 3.1. Так как в вычислениях всегда используются числа с конечным количеством десятичных знаков, то вместо случайных чисел Γ реально используют обрезанные случайные ~ числа Γ = 0 . E1E2 … En. При этом считается, что имеет место ошибка округления – как при любых приближенных вычислениях. В принципе, для конкретных алгоритмов МонтеКарло можно провести анализ влияния погрешности округления на результат вычисления – это делается по аналогии с оценкой влияния погрешности в курсе приближенных методов, и в дальнейшем мы оставляем такой анализ за бортом нашего основного исследования.
О некоторых других негативных последствиях операции округления случайных чисел можно прочитать в книге И. М. Соболя [18]. 3.2 Способы генерации случайных чисел
Случайные числа неминуемо возникают в контексте любого метода Монте-Карло. Каковы же способы их получения? Оказывается, этот вопрос представляет собой отдельную важную проблему. Ниже обсуждаются три основных из практикуемых в различное время способа получения (генерации) случайных чисел. В дальнейшем будут указаны причины, по которым один из этих способов может считаться в настоящее время наиболее перспективным, поэтому он будет рассмотрен более подробно. Таблицы случайных цифр
Если есть возможность каким-то способом получать независимые реализации случайной цифры E, то, записав эти реализации (в порядке их получения) в таблицу, получим так 23
называемую таблицу случайных цифр. Реализации случайного числа можно образовывать из элементов этой таблицы
Γ = 0.EsEs+1… Es+n-1 (с определенной ошибкой округления), где введение индекса s используется, чтобы показать, что выбор случайных цифр можно производить с любого места таблицы с номером s. При этом все последующие цифры можно выбирать как подряд, так и по любому алгоритму, не принимающему во внимание значения этих цифр. Однако сами таблицы случайных цифр не выпадают на пользователя с неба в виде осадков – такие таблицы необходимо предварительно составлять каким-то способом. Отметим, что составление хорошей достаточно большой (>106 цифр) таблицы – крайне сложное дело. На настоящее время существуют разнообразные способы составления таблиц, но ни один из этих способов не гарантирует формирования абсолютно идеальной таблицы, элементы которой можно рассматривать как независимые реализации случайных цифр, по той простой причине, что на практике всегда в определенной степени нарушаются принципы равновероятности и независимости появления тех или иных цифр в таблице. Поэтому составленные таблицы проверяются некоторыми специальными способами на предмет удовлетворения таблицы указанным принципам.3 При этом проверяется частота появления отдельных цифр, частота появления различных соседних пар и т.п. Может также возникнуть вопрос о законности многократного использования одной и той же таблицы. Обычно практических пользователей методов Монте-Карло этот вопрос не слишком беспокоит, так как даже интуитивно понятно, что 3
Вопрос о проверке таблиц случайных цифр будет более детально обсужден в дальнейшем.
24
таблицу можно повторно использовать при решении различных независимых задач. Впрочем такая возможность может быть даже строго доказана при определенных условиях теоретически. Существует и другая опасность: если таблица очень большая, то ясно, что по законам случайности на отдельных ее участках возможно более частое повторение в определенных пределах какой-то цифры. В связи с этим не рекомендуется пользоваться наугад выбранными малыми участками очень большой таблицы. Таким образом, в идеале желательно под каждую задачу иметь заранее заготовленную таблицу подходящего размера. Наконец заметим, что с возрастанием производительности современных компьютеров роль таблиц случайных цифр неуклонно снижается и, наоборот, все большую роль приобретают компьютерные методы генерации случайных чисел, которым в дальнейшем будет уделено особое внимание. Датчики случайных чисел
В ходе развития практики применения методов МонтеКарло была также разработана возможность получения случайных чисел при помощи определенных технических устройств. Такие устройства получили название датчиков случайных чисел, в качестве которых часто использовали «шумящие» радиоэлектронные приборы. Имея в распоряжении подобный прибор, можно для построения случайной последовательности использовать счетчик, который фиксирует количество флуктуаций (по mod 2) напряжения шумящего прибора, превышающих заданный уровень E0 за определенный заданный промежуток времени ∆t. Тогда за промежуток времени T = n ∆t с помощью такого технического устройства получается случайная последовательность из нулей и единиц длины n (рис.3.1). Работа с датчиками создает проблемы, связанные с неидеальной случайностью получаемых чисел. Эти проблемы 25
здесь не обсуждаются, поскольку датчики случайных чисел в настоящее время практически вышли из употребления – опять же по причине того, что более перспективным является третий способ получения случайных чисел, описанный далее. E E0
∆t
∆t
t
Рис. 3.1. Иллюстрация действия датчика Программы генерации псевдослучайных чисел
Наконец, третий способ получения случайных чисел – самый популярный в настоящее время – это способ, основанный на непосредственном использовании компьютеров, а более точно, на компьютерной реализации рекуррентной формулы
γn+1 = Ψ(γn), n=0, 1,2,…;
γ0 задано.
(3.3)
Такие числа называются псевдослучайными. Добавление приставки «псевдо», а ее использование в обыденной речи часто носит оттенок иронии, на самом деле не означает, что псевдослучайные числа в каком-то смысле хуже случайных чисел, получаемых другими способами. Как уже отмечалось выше, никакой способ получения случайных чисел не является абсолютно идеальным и элемент неслучайности всегда присутствует, какой бы механизм генерации ни был запущен. По-видимому, использование специальной терминологии в данном конкретном случае обусловлено тем, что само по себе применение какой-либо рекуррентной формулы является проявлением некоторой закономерности, что 26
должно было бы противоречить по своей природе принципу случайности. Не поддерживая в данный момент и не опровергая последний тезис, отложим более детальное обсуждение проблемы псевдослучайных чисел до следующего параграфа книги, специально посвященному этим числам ввиду их первостепенной важности для современных приложений. На данный момент лишь декларируется неидеальная случайность псевдослучайных чисел, обусловленная самим способом их получения. Однако этот способ выглядит настолько привлекательным, что были предприняты серьезнейшие попытки борьбы за качество псевдослучайных чисел, которые также обсуждаются ниже. Что касается очевидных достоинств метода псевдослучайных чисел, то к ним, в частности, относятся: 1) простота и быстрота их воспроизводства; 2) набор таких чисел достаточно один раз проверить, после чего их можно многократно использовать, восстанавливая по рекуррентной формуле. С другой стороны, любая рекуррентная формула имеет свой предельный запас псевдослучайных чисел и это – недостаток данного метода. Итак, выше обсуждены по крайней мере три способа получения случайных чисел. Еще раз подчеркнем то, что, как показала практика, по совокупности своих достоинств и недостатков наиболее привлекательным и потому наиболее употребительным является метод псевдослучайных чисел. Его детали излагаются в следующем параграфе.
27
3.3 Псевдослучайные числа
Любой, кто рассматривает арифметические методы создания случайных чисел, находится, конечно, в состоянии греха. Дж. фон Нейман Как было указано ранее, псевдослучайные числа получаются по рекуррентной формуле (3.3). Это – рекуррентная формула первого порядка. В принципе возможно получение псевдослучайных чисел и на основе рекуррентных формул более высоких порядков, но такие формулы редко используются, поэтому дальнейшее обсуждение будет посвящено написанной выше формуле первого порядка. Весьма легко понять, что если функция Ψ(x) в формуле (3.3) – гладкая, то соответствующая последовательность псевдослучайных чисел будет весьма «плохая». Действительно, если бы последовательность γ1, γ2,… была действительно случайной, то точки с координатами (γ1; γ2), (γ3; γ4), … были бы хаотически равномерно распределены в единичном квадрате. Но все точки с координатами (γ1;Ψ(γ1)), (γ3;Ψ(γ3)), …, получаемые на основе генерации псевдослучайных чисел, лежат на графике функции y = Ψ(x).4 (рис.3.2). 1
у=Ψ(х)
0
1
x
Рис. 3.2. Случай гладкой функции 4
Уместно вспомнить цитату Дж. фон Неймана, выбранную в качестве эпиграфа к данному параграфу.
28
Поэтому для получения «хорошей» последовательности псевдослучайных чисел нужно, как минимум, использовать достаточно «плохую» функцию, точки графика которой достаточно плотно заняли бы единичный квадрат. Например, можно взять функцию y = {k x} при достаточно большом k > 0 (см. рис. 3.3).5 Функции именно такого вида действительно использовались в ряде алгоритмов генерации псевдослучайных чисел. Однако использование наугад выбранной плохой функции совсем не обязательно приводит к решению проблемы псевдослучайных чисел, что будет выяснено в ходе дальнейшего обсуждения. у
у = {16х} 1
1
0
х
Рис. 3.3. Случай негладкой функции В связи с вышесказанным отметим, что какая бы плохая функция Ψ (x) не была выбрана, при компьютерной реализации формулы (3.3) всегда будут получаться периодические и, значит, неслучайные в конечном счете последовательности. Действительно, из-за конечной разрядности любого компьютера при его использовании всегда возможно записать лишь конечное (хотя, возможно, и очень большое) число различных чисел, заключенных между 0 и 1, и, таким образом, при каком-то (достаточно, может быть, большом) натуральном L значение γL совпадает с одним из предыдущих значений γl. 5
Операция {x} означает вычисление дробной части числа x.
29
Далее, очевидно, вычисление псевдослучайных чисел будет зацикливаться, так как ввиду формулы (3.3) будет выполняться равенство
γL+i = γl+i , i=0, 1,2,…
(3.4)
Определение 3.3. Пусть L – наименьшее натуральное число, при котором соотношение (3.4) удовлетворяется для некоторого l < L. Тогда множество чисел γ0, γ1,…, γL-1 называется отрезком апериодичности псевдослучайной последовательности (3.3), число L – длиной отрезка апериодичности, а Q = L – l – длиной периода этой последовательности.
Очевидно все числа, образующие отрезок апериодичности, различны. Кроме того, ясно, что для приложений нежелательно брать более чем L псевдослучайных чисел, генерируемых по формуле (3.3). Однако даже если количество используемых псевдослучайных чисел меньше L, это еще не означает, что полученный набор псевдослучайных чисел не нуждается в проверке на случайность. А изобретение способов проверки на случайность также представляет собой отдельную важную (и сложную) проблему. И теоретики методов Монте-Карло разбились на два лагеря. Одни сосредоточились на изыскании способов улучшения случайности псевдослучайных чисел, в то время как другие пытались изобрести все более и более изощренные испытания на их случайность. Необходимо, однако, понимать, что каждый шаг непрерывной гонки в создании все более случайных чисел обречен на неудачу в некотором будущем, так как для любого нового метода, превосходящего на момент своего создания все существующие аналоги, рано или поздно будет построен тест, опровергающий случайность результатов, полученных по этому методу. Таким образом, термин “псевдослучайные числа” показывает, что ни при каком, даже самом изощренном способе 30
их генерации такие числа могут считаться случайными лишь с определенными оговорками и в определенных пределах, но никогда они не будут являться идеально случайными. Рассмотрим теперь некоторые конкретные подходы к генерации псевдослучайных чисел. Метод середины квадрата (Middle-Square Method)
Это – фактически первый алгоритм для генерации псевдослучайных чисел. Он был предложен Дж. фон Нейманом и состоит в следующем: выбирается некоторое 2k-значное число γ0 = 0. e1 e2…e2k и возводится в квадрат, так что γ 02 = 0.d1d2…d4k, при этом, для построения γ1 выбираются средние 2k цифр последнего результата, то есть γ1 = 0.dk+1 dk+2…d3k. Далее процесс повторяется согласно той же самой процедуре. Пример 3.1. Пусть γ0 = 0,9876 (это соответствует случаю k = 2 ). Тогда γ 02 = 0,97535376 и, следовательно, γ1 = 0,5353. Для получения γ2 вычисляем γ = 0,24654609, откуда γ2 = 0.6546 и т.д. Нетрудно, видеть, что методу середины квадрата соответствует функция
Ψ (x ) = {10−2 k [103 k x 2]}
или, что то же самое,
Ψ (x ) = 10−2 [10-2 k {10k x 2}] ,
где операция [x] означает вычисление целой части числа x, а {x}, как и раньше, – вычисление дробной части x. Вскоре после открытия метода середины квадрата было, однако, выяснено, что этот метод весьма далек от
31
и его применение с большой удовлетворительного,6 вероятностью (в зависимости от начальной величины γ0) быстро приведет к значению 0 или, в лучшем случае, к короткой циклически повторяющейся последовательности. В частности, в приведенном выше примере процедура выходит на нулевое значение уже после 50 итераций. Более того, было показано,7 что при удачном выборе γ0, когда процесс не вырождается быстро в чистый 0 или в короткую циклическую последовательность, метод середины квадрата все равно воспроизводит преимущественно маленькие числа, то есть плотность генерируемого распределения весьма далека от равномерной. Конгруэнтная генерация
Наиболее популярным в практических приложениях оказались методы генерации псевдослучайных чисел на основе кусочно-афинного преобразования8
µn∈ [0;M–1],
µn+1 = (aµn + c) (mod M),
(3.5)
где a, c и M – некоторые целые числа, причем a и M выбираются взаимно простыми. Далее псевдослучайные числа получаются по формуле
γn = 6
µn M
.
См., например, G. E. Forsythe, Generation and testing of random digits at the National Bureau of Standards, In: Monte Carlo method. U. S. Department of Commerce, National Bureau pf Standards, Applied Mathematics Series 12, June 1951, p. 34-35. 7 См., например, I. M. Sobol, A Primer for Monte Carlo Method, CRC Press, 1994. 8 Для любой пары целых чисел N ≥ 0 и M ≥ 1 символ N (mod M) обозначает остаток от деления N на M (очевидно, должно выполняться 0 ≤ N (mod M) ≤ ≤ M – 1).
32
Заметим, что преобразование (3.5) при любом целом M ≥ 1 сохраняет мощность множества {0, 1,…, M – 1}, поэтому соответствующий генератор называется конгруэнтным генератором. Постоянная a обычно выбирается достаточно большой, чтобы любые две близкие начальные величины очень быстро пробежали многократно по единичному интервалу и через небольшое число итераций оказались разнесенными друг от друга. Это соответствует тому факту, что график преобразований в соотношении (3.5) изображается множеством почти вертикальных линий (сравните с графиком на рис. 3.3). Очень часто постоянная c в рекуррентной формуле (3.5) принимается равной нулю, и в этом случае используют термин “линейный конгруэнтный генератор”. В более ранней литературе можно также встретить название “метод вычетов (residual method)” или “метод сравнения (congruential method)”. Такой метод восходит к Д. Лемеру.9 Существует обширная литература, посвященная подходящему выбору параметров a и M, но далеко не все источники заслуживают доверия.10 Поэтому неопытному пользователю следует 9
См. D. H. Lehmer, Mathematical methods in large-scale computing units, Proc. 2nd symposium on large-scale digital calculating machinery (1949), Harvard Univ. Press, 1951, p. 141-146. 10 В начале эпохи своего развития фирма IBM поставляла на рынок компьютеры со встроенным генератором случайных чисел RANDU, который использовал значения параметров a = 65539, M = 231. Имеется масса литературных источников, упоминающих о неадекватности этого генератора (см., например, W. H. Press, S. A. Teukolsky, W. T. Welterling, and B. P. Flannery, Numerical Recipes in C, Cambridge Univ. Press, 1992; I.M. Sobol, A Primer for Monte Carlo Method, CRC Press, 1994; G.E. Forsythe, M.A. Malcolm and C. B. Moler, Computer Methods for Mathematical Computations, Prentice-Hall, 1977; S. Tezuka, Uniform Random Numbers: Theory and Practice, Kluwer Academic Press, 1995). Поэтому широко распространено мнение, что следует признавать неудовлетворительными результаты расчетов многих задач, выполненных при помощи генератора RANDU. К сожалению, данный генератор был скопирован во множестве других компьютерных систем, включая вычислительную систему ЕС.
33
руководствоваться советом, который часто можно встретить в литературе: никогда не полагайтесь на генераторы чисел в виде «черного ящика», которые якобы были протестированы, с какими бы системами они не поставлялись; не доверяйте никакому генератору чисел, по поводу которого вы не сможете найти надлежащую рекомендацию, каким бы сложным и заслуживающим доверия он не выглядел. С другой стороны, как отмечается в книге И.М. Соболя [18],11 достаточно удовлетворительная последовательность псевдослучайных чисел получается, например, при a = 517, M = 242, µ0 = 1; результаты статистической проверки этих чисел приведены в работе O. Taussky and J. Todd, Generation and testing of pseudorandom numbers, Symposium on Monte Carlo methods, ed. H.A. Meyer, Wiley, New York, 1956, p. 15-28. Серия генераторов типа Ran
На Западе считается, что книга Пресса, Текольски, Велтерлинга и Фланнери [37] является очень хорошим источником генераторов случайных чисел, которые хорошо проверены и заслуживают доверия. Самый простой из предложенных ими генераторов – Ran0 определяется рекуррентной формулой (3.5) с параметрами a = 75 = 16807, c = 0 и M = 231 – 1. Этот выбор параметров был предложен еще в работе Парка и Миллера12 как минимальный стандартный генератор. Есть некоторые особенности, связанные с трудностями преодоления проблемы округления в умножении a на µn в (3..5) для данных значений параметров на 32 разрядных компьютерах – детали изложены в упоминавшейся уже книге Пресса, Текольски, Велтерлинга и Фланнери [37]. 11
Мы считаем, что этот источник заслуживает самого глубокого доверия. См. S. K. Park and K. W. Miller, Random number generations: good ones are hard to find, Communications of the ACM 31 (10) (1998), p. 1192-1201. 12
34
Ran1 – это улучшенная версия генератора Ran0, использующая алгоритм осторожного перетасовывания случайных чисел. Такая процедура весьма нетривиальна, поскольку перетасовки часто могут привести к прямо противоположной цели. Ran2 – следующая версия генератора из указанной серии. Она основана на определенной идее сцепления двух линейных конгруэнтных генераторов с последующей целью построить один, но с намного более длинным периодом. Интересующийся читатель может найти детали в работе L’Ecuyer, Efficient and portable combined random number generators, Communications of the ACM 31 (1988), pp. 742-749. Наконец, Ran3 – наиболее изощренная программа из данной серии генераторов; она основана на субтрактивном методе, предложенном Д. Нутом.13 За деталями мы отсылаем опять же к книге Пресса, Текольски, Велтерлинга и Фланнери [37]. Крутильщик Мерсенна (Mersenne twister)
Одна из наиболее продвинутых на настоящий момент программ генерации псевдослучайных чисел – так называемый крутильщик Мерсенна. Название определено тем, что период последовательности, производимой этим генератором, равен числу Мерсенна – простому числу, представимому в виде 2n − 1 при некотором натуральном n. В частности, для программы, предложенной в работах M. Matsumoto and T. Nishimura, Mersenne twister: a 623– dimensionally equidistributed uniform pseudorandom number generator, 199714 и M. Matsumoto and T. Nishimura, Mersenne twister: a 623-dimensionally equidistributed uniform pseudorandom number generator, ACM Transactions on Modeling and Computer 13
См. D. Knuth, The Art of Computer Programming: Seminumerical Algorithms, Vol.2, Addison Wesley, 1981. 14 См. http://www.math.keio.ac.jp/_matumoto/emt.html
35
Simulation 8(1) (1988), p. 3-30, период крутильщика Мерсенна равен 219937 − 1. Для этого, чтобы представить себе, что это за число, отметим, что компьютер, производящий 1 млрд таких чисел в секунду, мог бы работать в течение многих тысяч жизненных циклов солнечной системы среднего размера, измеряющихся от ее начального формирования и до коллапса в черную дыру, прежде чем псевдослучайная последовательность начнет повторять себя. Другими словами, можно считать, что для всех реальных практических нужд этот генератор имеет бесконечный период. Крутильщик Мерсенна реально основан на объединении очень многих идей, уже развитых к настоящему моменту. Пожалуй стоит процитировать самих авторов: Крутильщик Мерсенна использует множество существующих идей. В частности, мы благодарны следующим людям: N. Yoneda, P. L’Ecuyer, R. Couture, H. Niederreiter, P. Hellekalek, M. Fushirni, S. Tezuka, Y. Kurita, D. Knuth, H. Leeb, S. Wegenkittl, T. Cooper, M. Rieffel, H. Enomoto и многим другим, которые дали нам ценные комментарии. Есть сведения из литературы, что данный генератор проявил себя очень хорошо на тестах.15 В то же время, неизвестны публикации, свидетельствующие о его неудачных испытаниях. Его программный код свободно доступен из Интернета и он работает, как утверждают авторы, не медленнее, чем другие популярные генераторы, уже зарекомендовавшие себя с практической точки зрения. В книге П. Джекела [9] рекомендуется, по крайней мере, иметь его в виду как резервный генератор.
15
Автор данной книги не берет на себя ответственность утверждать, что эти сведения достоверны.
36
Так чем же пользоваться?
К сожалению, многие пользователи методов Монте-Карло не задумываются о роли используемого ими генератора псевдослучайных чисел или ведут себя чересчур доверчиво к автору генератора, который они используют как “черный ящик”. Нельзя утверждать, что генератор случайной последовательности – наиболее сложная часть реализации процедуры Монте-Карло. Но в цепи проблем, связанных с применением методов Монте-Карло, от генератора зависит слишком многое, поэтому надежность используемого генератора является одним из важнейших факторов при моделировании. Ранее в общих чертах были изложены основные принципы генерации, из которых следует, что все генераторы случайных чисел в той или иной мере дефектны. Насколько они подходят для какой-либо конкретной задачи напрямую зависит от самой задачи, по этой причине нет просто хороших или просто плохих генераторов, так как качество их работы может быть оценено только на данной задаче. Конечно, для учебных задач можно не задумываясь использовать генераторы, зашитые в стандартных программных продуктах, применяемых в учебном процессе. Однако при решении больших производственных задач, как считается, крайне желательно иметь в распоряжении некоторую библиотеку различных генераторов и по возможности дублировать расчеты, варьируя используемые генераторы. 3.4 Статистическая проверка случайных чисел
Ранее неоднократно отмечалось, что случайные числа, независимо от способа их получения, необходимо проверять на случайность, прежде чем применять в расчетах. Теперь переходим к обсуждению определенных способов проверки такой случайности. Эти способы основаны на применении методов математической статистики и называются 37
статистическими критериями согласия. Положительный результат проверки по таким критериям – это только необходимое условие для принятия случайных чисел к работе.16 Достаточные условия реально могут быть введены, когда предполагается иметь дело с достаточно узким классом задач. Ниже обсудим всего два статистических критерия согласия – это так называемые критерии χ2 и ω2. Критерий согласия χ2
Пусть X – некоторая случайная величина, которая может быть многомерной, а кроме того, дискретной или непрерывной.17 Пусть D – множество всевозможных значений случайной величины X и пусть зафиксировано некоторое разбиение множества D на r попарно дизъюнктных множеств18 D1, D2, …, Dr, то есть19
D = D1∪ D2 ∪ ... ∪ Dr , где Int Di ∩ Int D j = ∅, i≠j. Обозначим также
{
}
p j := P ⎛⎜ X ∈ D j ⎞⎟ , ⎝ ⎠
j=1,2,…,r.
Очевидно, что p1 + p2 + … + pr = 1. Пусть далее x1, x2, …, xN – N независимых реализаций случайной величины X и пусть νj – число таких реализаций, 16
Обычно в математике “критерий” понимается как синоним термина “необходимое и достаточное условие”. Однако специалисты по математической статистике не придерживаются этих традиций. 17 То есть это случайная величина произвольного вида. 18 В контексте данного изложения под дизъюнктными множествами понимаются те множества, которые могут образовывать непустое пересечение только в том случае, когда это пересечение образовано исключительно граничными точками каждого из множеств. 19 Операция Int D означает удаление границ у множества D, то есть переход к внутренней части этого множества.
38
принадлежащих множеству Dj. Случайная величина νj подчиняется биномиальному закону распределения с математическим ожиданием M[νj] = N pj и дисперсией D[νj] = N pj (1-pj).20 Соответственно, совокупность случайных величин (ν1, ν2,…, νr) подчиняется мультиномиальному закону распределения, характеризуемому набором вероятностей P({ν1 = k1} ∧ {ν2 = k2 } ∧ ... ∧ {νr = kr }) =
N! p1k1 p2k 2 ... prk r k1!k2!...kr !
при всевозможных целых неотрицательных k1, k2,…, kr, удовлетворяющих условию k1 + k2 +… + kr = N. Интуитивно понятно, что при больших значениях N наблюдаемые на практике значения νj должны приближаться к их теоретическим значениям N pj. В качестве меры рассогласования практических значений с теоретическими удобно выбрать величину21 r
χ N := ∑ j=
(ν j − N
pj )
N pj
2
.
(3.6)
Действительно, νj это фактически количество наступлений события A := {X ∈ Dj} в N независимых испытаниях. Поэтому можно воспользоваться известными из теории вероятностей результатами, относящимися к схеме независимых испытаний Бернулли. 21 Следует всегда различать теоретическую и практическую интерпретации этой формулы. В теории νj понимаются как случайные 20
величины определенного вида, и поэтому χ N имеет смысл случайной величины. Однако при применении критерия χ2 на практике νj имеют смысл конкретных числовых реализаций соответствующих случайных величин, а величина χ N приобретает тогда конкретное числовое значение, которое и анализируется в ходе применения критерия χ2.
39
Теорема 3.2 (К. Пирсон)
Какова бы ни была случайная величина X и фиксированное разбиение D = D1 ∪ D2 ∪ … ∪ Dr (такое, что все pj > 0, j = 1, 2,…, r), при произвольном фиксированном x > 0 имеет место предельная формула
({
})
lim P χ N2 < x = ∫ 0xkr −1 (t ) t ,
N →∞
где km(x) – плотность распределения χ2 с m степенями свободы, определяемая формулой22 ⎛ m km ( x ) = ⎜⎜ 2 ⎝
⎛ m ⎞⎞ Γ ⎜ ⎟ ⎟⎟ ⎝ 2 ⎠⎠
−
m
−1
x
x 2 e2.
Примерный график χ2-распределения при m = 6 приведен на рис. 3.4. у у=k6(х) 0,125
0
1,0
x
Рис.3.4. График функции k6(x) Теорему К. Пирсона часто используют в статистике для проверки гипотез о законе распределения случайной величины. Набор соответствующих условий, позволяющих принять или
22
Здесь Г(x) – гамма-функция.
40
отвергнуть гипотезу, называют критерием Пирсона или критерием согласия χ2. Как будет видно позднее, в принципе достаточно для любой практической задачи иметь в распоряжении совокупность случайных чисел, распределенных равномерно на интервале (0; 1). Поэтому будем применять критерий χ2 для проверки равномерного закона распределения. Фиксируем достаточно близкую к 1 вероятность β, которую будем называть доверительной вероятностью или коэффициентом доверия. Противоположную вероятность 1−β часто называют уровнем значимости. Теоретически в качестве доверительной вероятности можно принять любое число β ∈ (0;1). С практической же точки зрения тот или иной выбор β означает, что для данной практической задачи принимается договоренность, согласно которой при единичном испытании любое событие с вероятностью, не меньшей β, считается практически достоверным, а событие с вероятностью, не большей 1−β, считается практически невозможным.23 Предположим теперь, что имеется некоторая одномерная непрерывная случайная величина X, принимающая значения из интервала (0; 1).24 Выдвинем гипотезу о том, что X равномерно распределена на (0; 1). Предположим, что имеется N независимых экспериментальных значений (N достаточно велико) x1, x2, …, xN этой случайной величины. Обсудим вопрос, как можно воспользоваться этими значениями для проверки выдвинутой гипотезы.
23
Подобные рассуждения имеют чисто интуитивный характер, но они вполне устраивают многих практических пользователей, не желающих вдаваться в более строгие рассуждения, касающиеся проверки статистических гипотез. Желающие получить более глубокие представления о развитой теории проверки статистических гипотез могут ознакомиться с книгами Г. Крамера [13] и В.Е. Гмурмана [8]. 24 Как уже упоминалось, можно считать, что X принимает значения из отрезка [0;1], поскольку X принимает краевые значения 0 и 1 с нулевыми вероятностями.
41
Выберем некоторое натуральное число r и представим интервал (0; 1) в виде r попарно непересекающихся числовых промежутков ∆j ненулевой длины, из которых первые r −1 являются открытыми слева полуинтервалами, а последний (r-й) – интервалом, так что
(0;1) = ∆ ∪ ∆ ∪ ... ∪ ∆r ,
∆i ∩ ∆j = 0 ,
i≠ j.
Обозначая через pj длину промежутка ∆j, будем тогда очевидно иметь p + p + ... + pr = . Нетрудно также видеть, что
p j = P({X ∈ ∆j }), j = 1, 2,…, r.
x1, x2,…, xN Теперь по экспериментальным значениям вычислим ν1, ν2,…, νr (этот этап называется в статистике группировкой значений),25 а далее по формуле (3.6) – величину χ N Если наша гипотеза справедлива, то случайная величина
χ N , числовая реализация которой вычислена по формуле (3.6), должна при достаточно большом N хорошо подчиняться закону распределения χ2 с (r −1)-й степенью свободы. Определим теперь из уравнения ∞
∫
kr −1 ( x ) d x = 1 − β
χ ( r −1,1− β ) 2
числовое значение величины χ2(r−1, 1−β), отвечающее принятому нами уровню значимости 1−β (рис 3.5). Для практического решения этого уравнения разработаны таблицы (см. Приложение 1).
25
Напомним, что в связи с принятой ранее системой обозначений символом νj обозначается количество выборочных значений данной случайной величины, попадающих в ∆j.
42
y x
y =
∫ k (x )dx m
0
0
χ2(m, 1-β)
х
Рис. 3.5: Вычисление χ2(m,1-β) Если для вычисленного по формуле (3.6) значения χ N выполняется χ N2 < χ 2 ( r − 1,1 − β ) , (3.7) то на практике гипотеза принимается,26 а в случае противоположного неравенства гипотеза отбрасывается. Ясно, что итоговый результат проверки зависит от выбранной доверительной вероятности. Наиболее часто на практике используют значения доверительной вероятности β = 0,95; 0,99; 0,999 – соответствующие уровни значимости 1−β = 0,05; 0,01; 0,001 называют 5 %-, 1 %-, и 0,1 %-ными уровнями. Если противоположное к (3.7) неравенство выполняется при β = 0,95, то соответствующее значение χ 2N называется почти значимым, при β = 0,99 – значимым, а при β = 0,999 – высоко значимым (рис 3.6). Как уже было сказано, на практике широко распространено использование таблиц значений величины χ2(m,1−β), являющейся корнем уравнения ∞
∫
km ( x ) d x =1 − β .
χ 2 ( m,1− β )
26
На самом деле неравенство 2 N
(3.7) означает всего лишь, что
подсчитанное числовое значение χ не противоречит выдвинутой гипотезе (см. по этому поводу, например, книги [8,13].)
43
Однако в таких таблицах число степеней свободы m обычно не превосходит 30. При больших значениях m можно использовать 2 x −t 2 2 таблицу значений интеграла вероятностей Φ( x ) = t, ∫ e π 0 так как в этом случае случайная величина Ζ = 2 χ 2 − 2 m имеет распределение, близкое к нормальному с параметрами (0,1).27 Поэтому при больших m 1 ∞ ∫ χ 2 (m,` − β ) k m ( x ) d x ≈ (1 − Ф (z )), 2 z = 2 χ 2 (m,1 − β ) − 2 m . Заметим, что к последней приближенной формуле существуют таблицы поправок. у
y=∫x0km(x) dx
1.0 0.999 0.99
почти значимые значения
0.95
значимые значения
высоко значимые значения
х χ2(m,5%)
χ2(m,1%)
χ2(m,0.1%)
Рис. 3.6. Уровни значимости
27
Имеется в виду нормальное распределение с математическим ожиданием и дисперсией, равными соответственно 0 и 1.
44
Пример 3.2. Предположим, что при r = 15 по имеющейся выборке получено значение χ 2N =10.7. Примем в качестве уровня значимости 1−β = 0,1. Тогда, полагая m = r −1 = 14, по таблице значений χ2(m,1 − β) находим χ2(m,1 − β) = 21.1. Таким образом, поскольку χ 2N < χ2(m, 1 − β), приходим к выводу, что полученное значение χ 2N допустимо для принятого уровня значимости.
Замечание 3.2. При фиксированном заранее значении N нельзя бесконтрольно увеличивать r, так как величины N pj могут стать весьма малыми, а значения νj будут достаточно чувствительными к их вариациям (это явление называют неустойчивостью). Обычно рекомендуется выбирать ∆j таким образом, чтобы значения N pj не опускались ниже 20. Критерий согласия ω2 Рассмотрим одномерную случайную величину X с функцией распределения F(x). Пусть далее x1, x2,…, xN – выборка из N независимых реализаций этой случайной величины. Построим эмпирическую или выборочную функцию распределения FN∗ (x ) =
N
S N (x ) ,
где SN(x) – количество выборочных значений, меньших x. Интуитивно понятно, что выборочная функция распределения FN∗ ( x ) должна быть близка к точной функции распределения F(x) при достаточно больших N. Точный смысл такой близости указывается в теории вероятностей. А именно, так как FN∗ ( x ) – это частота появления события {X < x} в N независимых испытаниях, F(x) представляет собой вероятность этого 45
события, то есть P ({X < x}) = F(x) то, как следует из теории вероятностей (см., например, книги [8,13]), FN∗ ( x ) сходится по вероятности к F(x) при N → ∞ . Последнее означает, что при любых фиксированных x ∈ (− ∞; ∞ ) и ε > 0 имеет место предельное соотношение lim P
N →∞
( { F ( x ) − F ( x ) ≥ ε}) = 0 ∗ N
.
В качестве меры расхождения между FN∗ ( x ) и F(x) часто используют величину28 ∞
ωN = N 2
∫ ( F ( x ) − F ( x )) ∗ N
2
d F ( x) .
(3.8)
−∞
Теорема 3.3. (Р. Мизес, Н. В. Смирнов) Какова бы ни была одномерная случайная величина X с непрерывной функцией распределения F(x), при произвольном фиксированном x>0 имеет место предельная формула lim
N →∞
P( {
ωN2 < x
} ) = a ( x) , 1
где функция a1(x) не зависит от X. Приведенная теорема положена в основу так называемого критерия согласия ω2. Этот критерий позволяет проверять гипотезы о функции распределения одномерной непрерывной случайной величины X. Схема применения этого критерия буквально дублирует описанную ранее схему в случае критерия χ2. А именно,
28
Присутствие фактора dF(x) означает, что интеграл понимается в смысле Лебега-Стильтьеса (см., например, книгу Г. Крамера [13]. Для читателей, незнакомых с этим математическим аппаратом, укажем, что для гладких функций F(x) можно считать dF(x) = F′(x) dx и понимать указанный интеграл в обычном смысле Римана.
46
критерий ω2 применяется следующим образом.29 Прежде всего фиксируется доверительная вероятность β и из уравнения
(
)
a1 ω 2 (β ) = β
определяется критическое значение ω2(β). Для решения этого уравнения можно воспользоваться таблицей функции a1(x) (см. Приложение 2). Далее, по формуле (3.8) вычисляется величина ω N2 и выполняется проверка неравенства ω N2 < ω 2 (β ) . Если последнее неравенство выполняется, то вычисленное значение ω N2 3допустимо, то есть оно не противоречит гипотезе о том, что искомая случайная величина имеет функцию распределения F(x). В случае же нарушения указанного неравенства делается вывод о том, что практическое значение ω N2 противоречит данной гипотезе (при выбранном уровне значимости). По сравнению с критерием χ2 критерий ω2 имеет то очевидное и важное преимущество, что не нужна группировка выборочных значений (и, следовательно, отпадает необходимость во введении дополнительного параметра r). Заметим, что на практике критерий ω2 применяют уже при N ≥ 50. Однако для практического вычисления ω N2 требуется предварительно расположить выборочные значения x1, x2, …, xN в порядке возрастания x{1} ,x{2} ,...,x{N} . Такая упорядоченная выборка называется в статистике вариационным рядом, его члены называются порядковыми статистиками. Необходимость упорядочения исходной выборки при больших N может привести к существенному 29
Для успешного применения этого критерия N должно быть достаточно велико.
47
увеличению трудоемкости алгоритма, реализующего критерий ω2. Обсудим теперь применение критерия ω2 в специальном интересующем нас случае, когда выдвигается гипотеза о равномерном законе распределения. Следовательно, необходимо положить F(x) = x при x ∈ (0; 1).30 Выведем теперь полезную формулу для ω N2 . Нетрудно видеть, что k FN∗ (x ) = при x{k } < x ≤ x{k + } , k = 0,1,..., N . N Далее для удобства наших дальнейших рассуждений положим x{0} = 0 и x{N+1} = 1.31 Тогда имеет место цепочка равенств 2
N x{k +1} ⎛ ωN2 k ⎞ = ∑ ∫ ⎜ F ( x ) − ⎟ dF ( x ) = N k = 0 x{k } ⎝ N⎠ 2 N x{k +1} ⎛ k ⎞ = ∑ ∫ ⎜ x − ⎟ dx = k = 0 x {k } ⎝ N⎠ 3 N ⎛ x 2 k x 2 k 2 x ⎞ x = x{k +1} = = ∑ ⎜⎜ − + 2 ⎟⎟ k =0 ⎝ 3 N 2 N ⎠ x = x{k } N ⎛1 ⎞ k 2 k2 x{k +1} − x{2k } + 2 (x{k +1} − x{k } )⎟⎟ = = ∑ ⎜⎜ x{3k +1} − x{3k } − k =0 ⎝ 3 N N ⎠
(
)
(
)
N ⎛ x3 kx 2 k 2 x{k +1} ⎞ ⎟− = ∑ ⎜⎜ {k +1} − {k +1} + k =0 ⎝ 3 N N 2 ⎟⎠ N ⎛ x3 (k − 1) x{2k } + (k − 1)2 x{k } ⎞⎟ + − ∑ ⎜⎜ {k } − ⎟ k =0 N N2 ⎠ ⎝ 3 N ⎛ 1 2k−1 ⎞ x{k } ⎟ . + ∑ ⎜ x{2k } − k =0 ⎝ N N ⎠
30
Очевидно также, что F(x) = 0 при x ≤ 0 и F(x) = 1 при x ≥ 1. Напомним, что речь идет о проверке равномерного закона распределения и потому любые выборочные значения должны принадлежать интервалу (0;1). Таким образом, x{0} и x{N+1} являются экстремальными значениями для любой выборки. 31
48
Заметим, что комбинация первых двух слагаемых в самой правой части этого равенства легко вычисляется за счет взаимного уничтожения почти всех членов в соответствующих суммах. После дополнения до полного квадрата выражения, стоящего под знаком суммы в третьем слагаемом, получим 2 2 ⎛ 1⎞ ⎛ 1 ⎞ ⎞⎟ ⎛ ⎜ ⎜ k− ⎟ ⎜ k− ⎟ ωN2 1 1 N ⎜ 2 2 k − 1 2 ⎟ −⎜ 2⎟ ⎟ . x{k } + ⎜ = + ∑ x{k } − ⎜ N 3 N k =0 N ⎜⎜ N ⎟⎟ ⎜⎜ N ⎟⎟ ⎟ ⎜ ⎝ ⎠ ⎝ ⎠ ⎟⎠ ⎝ 2
1⎞ ⎛ k− ⎟ N ⎜ 2⎟ = N − 1 Поскольку величина легко ∑ ⎜ k =0 ⎜ N ⎟ 3 12 N ⎜ ⎟ ⎝ ⎠ вычисляется, приходим окончательно к формуле 2 1⎞ ⎛ k− ⎟ N ⎜ 1 2⎟ , + ∑ ⎜ x{k } − ωN2 = N ⎟ 12 N k =1 ⎜ ⎜ ⎟ ⎝ ⎠ которая и является основой при применении критерия ω2 для проверки гипотезы о равномерном законе распределения.
Проверка таблиц случайных цифр
Остановимся теперь на некоторых деталях проверки таблиц случайных цифр ε 1,ε 2 ,… ,ε N 32 . Для проверки таблиц М.Г. Кендалл и Б.Б. Смит предложили использовать четыре теста. В каждом из них цифры классифицируется по некоторому признаку и эмпирические частоты сравниваются с их математическими
32
Таблицы случайных цифр хороши тем, что из их элементов можно “нарезать” случайные числа с любым желаемым числом десятичных знаков.
49
ожиданиями при помощи критерия χ2. Согласно упомянутым авторам в качестве тестов берутся: • проверка частот (frequency test). Проверяется частота появления различных цифр в таблице; • проверка пар (serial test). Проверяется частота появления различных двузначных чисел среди пар ε 1ε 2 , ε 2 ε 3 ,… ,ε N −1ε N ; • проверка интервалов (gap test). Проверяется частота появления различных интервалов между двумя последовательными нулями; • проверка комбинаций (poker test). Проверяется частота различных типов четверок (abcd, aabc, aaab, aaaa) среди четверок ε 1 ε 2 ε 3 ε 4 , ε 2 ε 3 ε 4 ε 5 ,… ,ε N − 3 ε N − 2 ε N −1 ε N . Большинство последующих авторов также использовали указанную систему тестов, вводя, однако, в нее некоторые модификации, среди которых отметим лишь две. Вместо проверки интервалов часто предлагалось использовать проверку серий (run test): считается, что цифры ε k +1,ε k + 2 ,…, ε k + l образуют серию длины l, если ε k +1 =ε k + 2 = … = ε k + l , но ε k + l +1 ≠ ε k + l . Кроме того, предлагалось вместо ε k ≠ ε k +1 и проверки пар ε 1 ε 2 , ε 2 ε 3 ,ε 3 ε 4…проверять независимые пары... ε 1 ε 2 , ε 3 ε 4 ,ε 5 ε 6…. Безусловно, самые важные тесты – проверка частот и проверка независимых пар. Проверка серий также выдвигает определенные требования “случайности”. В то же время считается, что проверка комбинаций носит несколько искусственный характер. Например, И. М. Соболь рекомендует в качестве основных следующие два теста: Первый тест (проверка частот и пар). Предполагается, что количество цифр в таблице – четное, то есть N = 2N′. Далее цифры ε 1 ,ε 2 ,… ,ε N разбиваются на пары ε 1 ε 2 , ε 2 ε 3 ,… ,ε N −1ε N . Обозначим через νij наблюдаемое количество пар i j. Используя вычисленные значения νij, 0 ≤ i, j ≤ 9, можно также определить величины 50
9 9 ν€i = ∑ νij , ν~ j = ∑ νij , νi = ν€i + ν~i . j =0
i =0
Ясно, что ν€i – количество цифр, равных i среди ε 1 ,ε 3 ,… ,ε N −1 , ν~i – количество цифр, равных i среди ε 2 ,ε 4 ,… ,ε N , ν i – количество цифр, равных i, среди цифр всей таблицы. Найденные значения νij ,νi ,ν€i ,ν~i могут быть теперь использованы в рамках критерия χ2 для разнообразных проверок. В наиболее важных из них величины χ N2 вычисляются по формулам: 10 9 χ N2 = ∑ ( νi − 0,1 N ) 2 N i =0 с 9 степенями свободы (для проверки частот), а также χ N2 =
∑ (ν 9
100
N
'
i, j =0
i, j
− 0,01N
'
)
2
с 99 степенями свободы (для проверки пар).33 В некоторых тестах также дополнительно используются величины χ N2 = и χ N2 =
'
N
2
∑ ( ν − 0,1 N )
2
i =0
'
i
9
10
N
∑ ( ν€ − 0,1 N ) 9
10
'
i =0
'
i
,
каждая с 9 степенями свободы; эти величины соответствуют проверке частот среди цифр с четными и нечетными номерами. 33
При проверке частот параметр r, регулирующий разбивку на группы, выбирается естественным образом равным 10, так как количество различных цифр равно 10. Из аналогичных соображений при проверке пар принимается r =100.
51
Второй тест (проверка серий). Пусть nl – количество серий длины l в последовательности цифр ε 1,ε 2 ,… ,ε N при l = 1,2,…,m и пусть n'm +1 – количество серий с l ≥ m+1 (все такие серии объединяются в одну группу). Обозначим общее количество серий через n := n1 + n2 + ... + nm + n'm +1 и вычислим величину m
χ =∑ 2 N
l =1
(nl − n pl ) 2 + (n'm +1 − n p'm +1 ) 2 , n p'm +1
n pl
с m степенями свободы, где принимается
pl = 9 ⋅ 10− l
и
−m
= 10 . Для комментария последней формулы обозначим через λ случайную длину серии, начинающейся с цифры ε k +1 (то есть должно выполняться ε k +1 ≠ ε k . ). Очевидно, ' m +1
p
pl = P ({λ = l }) = P ({ε k +1 = ε k + 2 = ... = ε k +l ≠ ε k +l +1 }) = = ( 0 ,1) l −1⋅ 0 ,9 = 9 ⋅ 10 − l , откуда следует, что pl не зависит от k – номера, после которого начинается серия. Таким образом, каждая серия может с вероятностью pl иметь длину l. Количество nl серий длины l среди n серий очевидно подчиняется биномиальному распределению с математическим ожиданием M[nl] = n pl, 2что χN и объясняет выписанную выше структуру выражения для . В качестве примера в таблице приведено распределение по длине серий, полученных И.М. Соболем при проверке таблицы из N=50000 цифр.34
34
См.: Соболь И. М. //Теория вероятностей и ее применения Т.3. 1958. № 2. С. 205-211.
52
n1 40500
n2 4050
n3 405
Теоретические значения Эмпирические 40568 4010 417 значения 40531,5 4053,2 405,3 npl
n4 45
'
n 45000
40
45035
45,0
-
По данным последних двух строк вычисляется χ N2 = 1,39. При m = 3 это значение допустимо, например, при уровне значимости 1 – β = 0,1. На настоящее время известно много весьма изощренных тестов. Как уже упоминалось ранее, все эти тесты до некоторой степени условны, так как всегда найдется тест, который уличит заданную априори таблицу в “неслучайности”.
Как проверять псевдослучайные числа? Фактически, при проверке псевдослучайных чисел используются те же приемы, что и при проверке таблиц случайных цифр, поскольку, как мы установили, достаточно проверять на случайность не сами числа, а их цифры. При этом, очень часто тщательно проверяются только первые десятичные цифры у каждого числа из данного набора псевдослучайных чисел. Последующие цифры тоже проверяются, но уже менее тщательно, так что для их проверки как правило используются более простые (практически – менее трудоемкие) критерии – чем ближе к концу цифровой записи числа, тем проще критерий используется. Отметим также, что более детальную в принципе проверку можно осуществить при помощи критерия ω2. 53
Наконец, укажем, что по наблюдениям И.М. Соболя в литературе фактически нет примеров, когда числа, прошедшие все тесты, оказались бы непригодными для решения конкретной задачи, если только в ней не предъявлялись повышенные требования к точности решения. В то же время существуют примеры неудачных расчетов с помощью чисел, которые не удовлетворяли какому-либо из тестов. Однако сам И.М. Соболь указывает только один пример в подтверждение своих слов (это пример неудачного расчета).35 Так или иначе, считается, что разумность приведенных выше тестов является эмпирическим фактором. Понимая, однако, что никакие тесты не являются универсальными во всех случаях жизни, при решении конкретной задачи специалисты рекомендуют вводить дополнительные тесты, ориентированные на использование специфики этой задачи. С другой стороны, успешное решение нужной задачи само по себе является лучшей проверкой выбранного генератора чисел.
35
См. [18, п. 3.3].
54
Глава 4 Генерация случайных величин с заданными законами распределения ”Well”, said Owl,”the customary procedure in such cases is as follows.” ”What does Crustimoney Proseedcake mean?” said Pooh. ”For I am a Bear of Very Little Brain, and long words Bother me.” ”It means the thing to do.” А. A. Milne Обычно генераторы случайных чисел предусматривают генерацию значений одномерной случайной величины, распределенной равномерно на интервале (0;1). Если же по условиям задачи необходимо работать с другими законами распределения – в частности, если необходимо сгенерировать значения многомерной случайной величины, то используют определенные преобразования случайных чисел, поступаемых с генератора. Эти вопросы предстоит обсудить в этой главе.
4.1 Метод обратных функций Метод обратных функций является фактически общим приемом для практического перехода от одномерного закона распределения к другому одномерному. Рассмотрим его применения в различных ситуациях. Генерация дискретной случайной величины Пусть дискретная случайная величина X задана законом распределения x(1) p1
x(2) p2
… …
55
x(n) pn
, (4.1)
({
})
где pi = Ρ X = x (i ) . Разобьем интервал (0;1) на попарно непересекающиеся промежутки ∆1 , ∆2 , … , ∆n ненулевой длины, все из которых являются открытыми слева полуинтервалами за исключением последнего, являющегося интервалом, так что
(0;1) = ∪in=1 ∆i . При этом обозначим pi := длина ∆i , i = 1, 2,… , n . Тогда, если Γ распределена равномерно в интервале (0;1), то случайная величина X, заданная формулой X = xi при Γ ∈ ∆i , i = 1, 2,… , n,
будет иметь как раз закон распределения (4.1). Действительно, Ρ ({ X = x (i ) })= Ρ ({ Γ ∈ ∆i }) = длина ∆i = pi , i = 1, 2,… , n . Поэтому, имея в распоряжении последовательность случайных чисел γ 1 , γ 2 ,… , можно построить последовательность x1 , x2 ,… , подчиненную закону распределения (4.1), если осуществлять переход от первой последовательности по формуле x j = x (i ) если γ j ∈ ∆i , i = 1, 2,… , n,
j = 1, 2,…
Очевидно, данный результат легко обобщается на случай, когда случайная величина X имеет счетное множество значений. Моделирование случайных событий Пусть задана полная группа случайных событий A1, A2,…, An и Ρ ( Ai ) = pi, i = 1, 2 ,… , n. Пусть далее случайная величина X – это номер i наступившего в эксперименте события 56
Ai. Тогда распределение случайной величины X таблицей
1 p1
2 p2
… …
n pn
,
задается (4.2)
Как и выше, интервал (0;1) разбит на промежутки ∆i ненулевой длины pi , i = 1, 2,… , n . Так как Ai = {X = i} , то для моделирования группы случайных событий A1, A2, …, An достаточно смоделировать случайную величину X с законом распределения (4.2). Другими словами, если задана последовательность случайных чисел γ 1 , γ 2, … , то по каждому элементу этой последовательности моделируется одно из событий данной полной группы, а именно элементу γ j ставится в соответствие то событие Ai с номером i, для которого γ j ∈ ∆i . В частном случае, когда n = 2, обозначим p := p1, тогда p2=1 – p. Если γ j ≤ p , то моделируется событие A1, в противоположном случае – событие A2. На практике часто возникает необходимость моделировать зависимость случайных событий. Для этой цели можно воспользоваться изложенной выше идеей формирования полной группы событий и соответствующей ей дискретной случайной величины. Для иллюстрации рассмотрим простой случай двух зависимых событий A и B, для которых задана исходная информация Ρ( A) = p A , Ρ( B) = pB , Ρ( A∧ B ) = p A ∧ B .
Введем теперь полную группу попарно несовместных событий:1 A1 := A∧ B, A2 := A∧ B , A3 := A ∧ B, A4 := A ∧ B . 1
Через
A обозначается событие, противоположное к A. 57
Вычислим соответствующий набор вероятностей для этой группы. Прежде всего, имеем p1 = p A∧ B . Далее, используя закон умножения вероятностей, получаем2 p2 = Ρ ( A∧ B ) = Ρ ( A) Ρ (B A) = P ( A)(1 − Ρ (B A)) = = Ρ ( A ) − P ( A∧ B ) = p A − p A ∧ B .
p3 = pB − p A∧ B . Аналогично вычисляется Наконец, p4 = 1 − p1 − p2 − p3 = 1 − p A − pB + p A ∧ B . Заметим теперь, что событие A наступает в случае наступления A1 или A2, а событие B наступает при наступлении A1 или A3. Поэтому, если фиксируется элемент γ j последовательности случайных чисел
γ 1 , γ 2 , … , то моделируется наступление события A, если γ j ≤ p1 + p 2 , и наступление события B, если γ j ≤ p1 или p1 + p2 < γ j ≤ p1 + p2 + p3 .
Моделирование непрерывных случайных величин Пусть непрерывная случайная величина X принимает значения в интервале (a;b) и характеризуется плотностью распределения p(x), которая принимает строго положительные значения при x ∈ (a; b ) .3 Обозначая через F(x) функцию распределения данной случайной величины, получим ⎧1, x ≥ b , ⎪ x F ( x ) = ⎨∫ 0 p(t ) d t , x ∈ (a; b ) , (4.3) ⎪ ⎩0, x ≤ a .
2
( )
Через P B A
обозначается условная вероятность события B
условии, что событие A уже наступило. 3 Очевидно, p(x) = 0, если x ∉ a; b .
[ ] 58
при
В принципе допускается ситуация, когда a = −∞ и/или b = ∞ . Заметим, что так как p(x) > 0 при x∈(a;b), то F(x) строго возрастает на интервале (a;b). Согласно методу обратных функций предлагается моделировать случайную величину X на основе решения уравнения F(X) = Г ,
где случайная величина Г равномерно распределена на интервале (0;1). С практической точки зрения такой подход означает, что если задана последовательность случайных чисел γ1, γ2 ,…, то последовательность значений x1 x2,…, подчиненных закону распределения (4.3), генерируется на основе решения уравнения
F (x j ) = γ j ,
j = 1, 2,…
При этом считается, что решением уравнения
F(x) = 0 является множество (-∞; a ], а решением уравнения
F(x) = 1 является множество [ b; ∞ ). Кроме того, так как F(x) строго возрастает на интервале (a;b) от 0 до 1, то при любом y∈(0;1) существует единственное решение уравнения F(x) = y, причем x∈(a;b). Для обоснования данного метода заметим, что так как случайная величина Г распределена равномерно в интервале (0;1), то P ({ F ( x) < Γ < F ( x + d x )}) = F ( x + d x) − F ( x) = p ( x) d x .
59
С другой стороны, ввиду наложенной связи между случайными величинами X и Γ должно выполняться равенство P ({ F ( x) < Γ < F ( x + d x) }) = P ({ x < X < x + d x }),
и из сравнения с предыдущим равенством следует P ( {x < X < x + d x }) = p ( x) d x .
Таким образом, случайная величина X имеет плотность распределения p(x) или, что эквивалентно, функцию распределения (4.3). Если известно аналитическое выражение для функции F -1(y), обратной к F(x), то для моделирования случайной величины X можно пользоваться явной формулой
X = F -1( Г ) . Если же аналитическое выражение для F -1(y) неизвестно или не существует, то для ее вычисления можно применять численные методы. Пример 4.1. Предположим, что случайная величина X имеет плотность распределения 1 −x p ( x) = e . 2
Вычислим функцию распределения: F ( x) = ∫
x −∞
1 x ⎧⎪ x≤0, 1 x −t 2e , p(t ) d t = ∫ −∞ e d t = ⎨ 2 ⎪⎩1 − 12 e − x , x > 0 .
Таким образом легко получить явное выражение для обратной функции 60
ln(2 y ) , y ≤ 12 , ⎧ F ( y) = ⎨ 1 ⎩− ln(2(1 − y )) , y > 2 . −1
откуда получается искомая формула для моделирования X: ln(2 Γ ), Γ ≤ 12 , ⎧ X =⎨ 1 ⎩− ln(2(1 − Γ )) , Γ > 2 . F(x 1
0
х
Рис. 4.1. Смешанное дискретно-непрерывное распределение Замечание 4.1. Мы продемонстрировали метод обратных функций для чисто дискретных и чисто непрерывных случайных величин. Если же случайная величина имеет закон распределения более общего вида, который представляет собой некоторую смесь дискретного и непрерывного распределений, то нужно комбинировать уже изложенные выше идеи. Читателю предлагается самостоятельно рассмотреть вопрос о применении метода обратных функций, когда случайная величина имеет функцию распределения, например, вида указанного на рис. 4.1. 61
4.2 Моделирование нормального распределения Часто применение метода обратных функций приводит к дополнительным математическим трудностям. Например, генерация нормального закона распределения – с параметрами (0, 1), приводит к необходимости решения уравнения X −∞
∫ e
−
t
2
2
dt = 2 π Γ .
В зарубежной литературе для генерации нормального распределения часто используют формулу интерполяции П. Акклама4 для функции, обратной по отношению к функции нормального распределения. Существует еще интерполяционная формула Б. Моро.5 Опишем также часто практикуемый простой прием моделирования нормально распределенной случайной величины. Для пояснения этого приема напомним вначале один важный результат из теории вероятностей. Теорема 4.1 ( Центральная предельная теорема) Пусть имеется n независимых случайных величин X1, X2,…,Xn соответственно с математическими ожиданиями a1, a2,…, an и дисперсиями σ 12 , σ 22 , …, σ n2 . Обозначим :
Λn := X 1 + X 2 + … + X n , An := a1 + a2 + … + an ,
∑ := σ 2 n
2 1
+ σ 22 + … + σ n2 .
4
См. P. J. Acklam, An algorithm for computing the inverse normal cumulative distribution function, Univ. of Oslo, Statistics Division, June 2000. http://www.math.uio.no/rovjacklam/notes/inform. 5 См. B. Moro, The Full Monte, Risk Magazine, 8(2)(1995), p. 57-58.
62
Тогда случайная величина (Λn – An) / ∑n при n → ∞ будет иметь функцию распределения, приближающуюся к функции распределения нормальной случайной величины с параметрами (0, 1). Чтобы воспользоваться данной теоремой для наших целей, положим Xi := Г i , i = 1 ,2,…, n, где Г i – независимые случайные числа.Тогда в нашем частном случае Λn = Γ1 + Γ 2 + … + Γ n , n An = , 2 n . ∑n = 12 Применяя центральную предельную теорему, приходим к выводу, что случайная величина n ∑ in=1 Γ i − 2 (4.4) n 12 при достаточно больших n имеет функцию распределения, близкую к функции 2 1 x − t2 (4.5) ∫ − ∞ e d t, 2π которая как раз и является функцией распределения нормальной случайной величины с параметрами (0, 1). На практике считают, что число 12 достаточно велико. Полагая, таким образом, n = 12 в (4.4), приходим к выводу, что случайная величина 12
∑ Γi − 6
i =1
(4.6)
имеет приближенно закон распределения (4.5). Формула (4.6) и есть искомая практическая формула для генерации нормальной 63
случайной величины с параметрами (0, 1). Для реализации этой формулы генерируются 12 независимых случайных чисел, вычисляется их сумма и из полученной суммы вычитается 6.
4.3 Моделирование многомерных случайных величин Обратимся теперь к проблеме моделирования многомерных случайных величин, их часто называют также случайными точками. Ниже рассматриваются по отдельности некоторые наиболее важные для практики ситуации Моделирование случайных точек с независимыми координатами Пусть требуется смоделировать многомерную случайную величину X = (X1; X2; …;Xn), координаты которой X1, X2,…,Xn – независимые одномерные случайные величины с заданными функциями распределения, соответственно F1(x1), F2(x2),…, Fn(xn). Ввиду независимости случайных величин X1, X2,…, Xn, совместная функция распределения F(x1, x2,…, xn) представляется в виде произведения соответствующих одномерных функций распределения, то есть F ( x1 , x2 , … , xn ) = P ({ X 1 < x1 } ∧ { X 2 < x2 } ∧ … ∧ { X n < xn }) = n
n
i =1
i =1
= ∏ P ({ X i < xi }) = ∏ Fi ( xi ) . Поэтому в данном случае достаточно смоделировать независимо каждую из одномерных случайных величин X1, X2,…,Xn при помощи соотношений Fi ( X i ) = Γ i , i = 1, 2, … , n, где независимые случайные числа. Г 1 , Г 2 ,… , Г n – Окончательно многомерная случайная величина X определяется своими смоделированными координатами. 64
Пример 4.2. Пусть, например, требуется смоделировать nмерную случайную точку X = (X1; X2;…;Xn), равномерно распределенную в открытом гиперпараллепипеде
(a1 ; b1 )× (a2 ; b2 )×…× (a n ; bn ) . Одномерные функции распределения Fi(xi) в данном случае имеют вид6 Fi ( xi ) =
xi − ai , xi ∈ (ai ; bi ). bi − ai
Таким образом, так как обратные функции для Fi(xi) легко вычисляются, получаем формулы для моделирования координат X1, X2,…,Xn случайной точки X: X i = ai + (bi − ai ) Γ i , i = 1, 2, … , n,
где Г 1 , Г 2 ,… , Г n – независимые случайные числа.
Моделирование случайных точек с зависимыми координатами При моделировании многомерных случайных точек с зависимыми координатами уже недостаточно ограничиться независимым моделированием каждой из координат и приходится применять более сложные конструкции. Будем предполагать, что для многомерной случайной величины X = (X1; X2;…,Xn) задана совместная плотность распределения p(x1, x2,…,xn). 6
Очевидно, для моделирования достаточно знать поведение Fi(xi) лишь на интервале (ai; bi), i=1, 2, …, n.
65
Для решения поставленной задачи моделирования введем новые условия плотности вероятности: p1 ( x ) =
∫
∞
…∫
−∞
p 2 ( x 2 x1 ) =
∫
∞ −∞
∞
p ( x1 , x 2 ,… , x n ) d x 2 d x 3 … d x n ,
…∫
−∞
∞ −∞
p ( x1 , x 2 ,… , x n ) d x 3 d x 4 … d x n ×
× ( p1 (x 1 )) −1 , p 3 ( x3 x 1 , x 2 ) =
∫
∞
…∫
−∞
∞ −∞
p ( x1 , x 2 ,… , x n ) d x 4 d x 5 … d x n ×
× ( p1 ( x1 ) p 2 ( x 2 x1 )) −1 , …………………………………… p n − 1 ( x n − 1 x1 , x 2 , … , x n − 2 ) = × (p 1(x 1 ) p 2 (x 2 x1 )
∫
∞ −∞
p ( x1 , x 2 ,… , x n ) d x n ×
p n − 2 (x n − 2 x1 , x 2 , … , x n − 3 )) − 1 ,
p n (x n x 1 , x 2 ,… , x n − 1 ) = p(x 1 , x 2 ,… , x n ) × × (p 1(x 1 ) p 2 (x 2 x1 )
p n − 1(x n − 1 x1 , x 2 ,… , x n − 2 )) − 1 .
В частности, из последнего соотношения имеем
p( x1 , x2 ,… , xn ) = p1 ( x1 ) p2 ( x2 x1 )
pn ( xn x1 , x2 ,… , xn −1 ). (4.7)
Введем также условные функции распределения Fi (xi x1 , x2 ,… , xi −1 ) := ∫
xi
−∞
pi (t x1 , x2 ,… , xi −1 ) d t, i = 1, 2,… , n .
Пусть теперь Г 1 , Г 2 ,… , Г n – независимые случайные числа. Определим одномерные случайные величины X1, X2,…, Xn как решения последовательных уравнений в следующей серии:
66
F1 ( X 1 ) = Γ1 , ⎧ ⎪ F2 ( X 2 X 1 ) = Γ 2 , ⎪ (4.8) ⎨ … = …, ⎪ ⎪ Fn ( X X 1 , X 2 ,… , X n −1 ) = Γ n . n ⎩ Тогда случайная точка X = (X1; X2;…; Xn) будет распределена с совместной плотностью вероятности p(x1, x2,…,xn). Чтобы убедиться в справедливости данного факта заметим, что, ввиду (4.8), при любом фиксированном i = 2, 3,…,n и при X1 = x1, X2 = x2, …, Xi-1 = xi-1 величина Xi определится из соотношения Fi ( X i x1 , x2 , … , xi −1 ) = Γ i ,
откуда, согласно методу обратных функций, имеем
P ({ xi < X i < xi + dxi X 1 = x1, X 2 = x2 ,… , X i −1 = xi −1 })=
= pi (xi x1, x2 ,… , xi −1 ) dxi , i = 2, 3, … , n.
Используя язык условных вероятностей и последовательно применяя последние равенства, получим P ({ x1 < X 1 < x1 + d x1 }∧ { x 2 < X 2 < x 2 + d x 2 }∧ { x n < X n < x n + d x n }) = = P ({ x1 < X 1 < x1 + d x1 }) P ( {x 2 < X 2 < x 2 + d x 2 X 1 = x1 } ) × ×
P ({ x n < X n < x n + d x n X 1 = x1 , X 2 = x 2 ,… , X n −1 = x n −1 }) =
= p1 ( x1 ) d x1 p 2 (x 2 x1 ) d x 2
p n (x n x1 , x 2 ,… , x n −1 ) d x n ,
откуда с учетом (4.7) следует
P ({ x1 < X 1 < x1 + d x1}∧ {x2 < X 2 < x2 + d x2 } ∧
∧ … ∧ { xn < X n < xn + d xn }) = p( x1 , x2 ,… , xn ) d x1 d x2
d xn ,
а это и означает, что случайная точка X имеет нужное распределение. 67
Пример 4.3. Пусть требуется смоделировать двумерную случайную величину (X; Y), принимающую значения в треугольнике x + 4y < 5 с плотностью вероятности p(x, y) = cy. Прежде всего из условия нормировки плотности распределения найдем значение константы c. А именно, выбирая в качестве внешней переменной интегрирования переменную y, имеем 5
1 = ∫ 04 ∫ 0
5−4 y
5
cy d x d y = c ∫04 y (5 − 4 y ) d y =
125 c , 96
откуда c = 96 . Далее, поскольку указанная выше общая 125
методика моделирования случайных точек с зависимыми координатами очевидным образом зависит от принятого порядка координат, в зависимости от этого порядка будут получаться различные формулы моделирования. В случае двух координат имеются всего две различные возможности установить порядок координат (обе эти возможности будут рассмотрены ниже). а). Вначале будем считать x первой, а y – второй координатой. Тогда p1 ( x ) = ∫ 0
(5 − x )/4
p ( x, y ) d y =
96 (5 − x )/4 ydy= ∫ 125 0
96 (5 − x ) 3 (5 − x ) 2 , 0 < x < 5 = 125 32 125 2
= и
p2 ( y x ) =
p( x, y ) 32 y 5− x = , 0< y< 2 p1 ( x ) (5 − x ) 4
.
Соответствующие этим плотностям функции распределения имеют вид 68
F1 ( x ) = ∫ p1 (t ) d t = 1 − x
0
и
1 (5 − x ) 3 , 0 < x < 5, 125
F2 ( y x ) = ∫ 0y p2 (t x ) d t =
16 y 2 5− x , 0< y< 2 4 (5 − x )
.
Таким образом, получаем последовательные уравнения для моделирования X и Y: ⎧⎪(5 − X ) 3= 125 (1 − Γ1 ), ⎨ 2 ⎪⎩ Y 2 = 161 Γ 2 (5 − X ) , где, как обычно, Г 1 и Г 2 – независимые случайные числа. Заметим, что для целей моделирования можно заменить в первой из этих формул 1− Г 1 на Г 1 , так как обе последние величины одинаково распределены. б). Применим теперь общую методику моделирования, изменив порядок координат: первой теперь будет y, а второй – x. Тогда выражения для плотностей будут иметь вид 96 5− 4 y ydx= 0 125 ∫0 96 5 = y (5 − 4 y ), 0 < y < , 125 4
p2 ( y ) = ∫
и p1 (x y ) =
5− 4 y
p(x, y ) d x =
p( x, y ) 1 = , 0< x <5−4y . p2 ( y ) 5 − 4 y
Вычислив соответствующие функции распределения F2 ( y ) = ∫ 0 p2 (t ) d t = y
5 48 2 128 3 y − y , 0< y< 4 25 125 69
,
и F1 (x y ) = ∫ 0 p1 (t y ) d t =
x , 0< x <5−4y , 5−4y получим формулы для моделирования x
2 128 3 ⎧⎪ 48 25 Y − 125 Y = Γ1 , ⎨ ⎪⎩ X = Γ 2 (5 − 4 Y ) , которые очевидно существенно отличаются от полученных. Заметим, что новая пара формул выглядит менее предпочтительно, чем предыдущая, так как для их реализации требуется решать кубическое уравнение, в то время как моделирование по первой паре формул требует для своей реализации (помимо стандартных арифметических операций) всего лишь вычисления кубического и квадратного корней. Если множество значений многомерной случайной величины ограничено криволинейной поверхностью (гиперповерхностью), то ее моделирование может столкнуться с существенными вычислительными трудностями, даже если выражение для соответствующей плотности распределения имеет простой вид. В некоторых частных случаях удается, однако, избежать указанных трудностей, применяя некоторые искусственные приемы. Пример 4.4. Пусть требуется смоделировать трехмерную случайную точку (X; Y; Z), равномерно распределенную в шаре x2 + y2 + z2 < 1. Читатель может без труда убедиться, что хотя совместная плотность такого распределения и является константой внутри указанного шара, а именно, p ( x, y, z ) = 43π ,
применение указанной выше общей методики приводит к достаточно громоздким выражениям для условных плоскостей распределения и в итоге существенно затрудняет моделирование.
70
Для упрощения методики моделирования перейдем к сферическим координатам r, ϑ , ϕ , которые связаны с декартовыми посредством формул x = r sinϑ cosϕ , y = r sinϑsinϕ , z = r cosϑ , 0 ≤ r < 1, 0 ≤ ϑ < π, 0 ≤ ϕ < 2 π .
Если в указанные формулы вместо x, y, z, r, ϑ и ϕ подставить соответственно X, Y, Z, R, Θ и Φ, то получается фактически связь между старыми (декартовыми) случайными величинами X, Y, Z и новыми (сферическими) случайными величинами R, Θ , Φ, принимающими свои значения в интервалах (0; 1), (0; π) и (0; 2π), соответственно. Поскольку якобиан преобразования от декартовых координат к сферическим известен ∂ ( x, y, z ) = r 2 sinϑ , ∂ (r,ϑ ,ϕ )
то легко выписать плотность распределения координатах (обозначим ее через q (r,ϑ ,ϕ ) ): q(r,ϑ ,ϕ ) = p( x, y, z )
в
новых
∂ ( x, y, z ) 3 2 = r sinϑ . ∂ (r,ϑ ,ϕ ) 4π
Как нетрудно заметить, последняя формула переписана в виде
может быть
1 q(r,ϑ ,ϕ ) = (3 r 2) ( sinϑ ) (2π ) -1 . 2 Поскольку каждый из множителей, выделенных структурно в правой части, представляет собой плотность одномерного распределения случайной величины R, Θ и Φ, соответственно, то совместная плотность распределения трехмерной случайной величины (R, Θ ,Φ) представляется в виде произведения соответствующих одномерных плоскостей, что в свою очередь 71
свидетельствует о взаимной независимости одномерных случайных величин R, Θ иΦ. Таким образом, эти случайные величины можно моделировать независимо друг от друга, используя формулы метода обратных функций, R
2 ∫ 0 3 r d r = Γ1 ,
1 2
∫ 0 sinϑ dϑ = Γ 2 , Θ
1 2π
∫ 0 dϕ = Γ 3 , Φ
что впрочем, эквивалентно более простым формулам R = 3 Γ1 , cos Θ = 1 − 2 Γ 2 , Φ = 2 πΓ 3 .
Окончательно, используя результаты моделирования для R, Θ , Φ можно вернуться к исходным случайным величинам по формулам X = R sin Θ соs Φ , Y = R sin Θ sin Φ ,
Z = R cos Θ .
Моделирование многомерной нормальной случайной величины с коррелированными координатами
Корреляция является одной из самых больших проблем, с которыми сталкиваются количественные аналитики и рискменеджеры, практикующие методы статистического моделирования для принятия финансово-инвестиционных решений. В частности, самооценка подверженности риску любого инвестиционного банка, часто рассчитываемая как квантиль VaR (Value at Risk), также заметно меняется при варьировании предположений о взаимозависимости между всеми вовлеченными рыночными факторами риска. Остановимся подробно на исследовании наиболее важного для практики частного случая, когда моделируется многомерная нормально распределенная случайная величина с заданной матрицей ковариации С и с нулевыми 72
математическими ожиданиями.7 Итак, будем моделировать многомерную случайную величину Х = (Х1; Х2; …; Хn) с (совместной) плотностью распределения
p( x) = p( x1 , x 2 ,…, x n) = (2 π )
−
n 2
C
−
1 2
e
1 − 〈 C −1 x,x 〉 2
,
где |С| – определитель матрицы С, 〈 x ,y〉 = ∑in=1 xi y i – скалярное произведение векторов x = (x1; x2;…; xn) и y = (y1; y2;…;yn), а 〈 C − 1 x , x 〉 – соответственно квадратичная форма, порожденная матрицей С -1, то есть n
n
n
〈C −1 x,x〉 = ∑ (C −1 x )i xi = ∑ ∑ (C −1 )ij xi x j . i =1
i =1 j =1
Нам будет удобно ввести набор новых координат y = (y1 ; y2;…;yn), связанных со старыми посредством матричного преобразования x=Vy, (4.9)
n × n – матгде V = (v ij ) – некоторая (пока не определенная) -1 рица. Тогда квадратичную форму можно расписать в новых координатах как = , или, используя известные свойства матричных операций, = ,
(4.10)
где VT — матрица, транспонированная к матрице V. Потребуем теперь, чтобы8 7
Впрочем, приведенная ниже техника легко обобщается на случай ненулевых математических ожиданий. 8 Напомним, что конкретный вид матриц V до сих пор не был еще определен.
73
V TC -1V = E,
(4.11)
где Е — единичная матрица порядка n. Умножая последнее матричное соотношение слева на (VT)-1, а справа на V -1, приходим к формуле C -1=(V T) -1V -1,
откуда для самой матрицы С получаем9 С=VV T. (4.12) Считая в дальнейшем, что матрица V подобрана в соответствии с условием (4.12), якобиан преобразования (4.9) легко вычисляется10 и равен: ∂ ( x1 ; x2 ;…; xn ) =V . ∂ ( y1 ; y2 ;…; yn )
Кроме того, используя формулу (4.12), имеем, применяя известные свойства определителей, 2
C = V VT = V ,
откуда 1
V = C 2,
так что на самом деле можно получить 1 ∂ ( x1 ; x2 ;…; xn ) = С2. ∂ ( y1 ; y2 ;…; yn ) Последний результат позволяет с учетом (4.10) и (4.11) вычислить плотность распределения в новых координатах
9
Напомним, что, как известно из теории матриц (см., например, [ 6, п. 4.59]), при обращении матричного произведения порядок матричных сомножителей изменяется на противоположный. 10 Заметим, что это преобразование — линейное.
74
q ( y1 , y 2 ,… , y n ) = p ( x1 , x2 ,… , xn ) n
= (2 π )− 2 C n − 2
= (2 π )
e
⎛ = ∏ ⎜⎜ (2 π )− i =1
−
−
1 2
e
∂ ( x1 ; x2 ; … ; xn ) = ∂ ( y1 ; y 2 ; … ; yn )
1 −1х, х 2 C
−
1 −1х, х 2 C
1
C2= n
= (2 π )− 2
e
−
1 у, у 2
=
⎞ ⎟⎟ , ⎝ ⎠ координатах плотность откуда следует, что в новых распределения представляется как произведение одномерных плотностей, каждая из которых соответствует нормальному распределению с параметрами (0,1). Обозначая набор соответствующих одномерных случайных величин через Y = (Y1;Y2;…;Yn), можно сделать вывод, что имеет место связь n
1 2
e
−
y i2 2
X = V Y,
(4.13)
а, кроме того, все Y1,Y2,…,Yn – независимы и каждая из них распределена по нормальному закону с параметрами (0,1). Вопрос моделирования таких случайных величин уже обсуждался в параграфе 4.1. Окончательное моделирование многомерной случайной величины Х проводится на основе применения матричного соотношения (4.13). Остался невыясненным вопрос нахождения матрицы V, удовлетворяющей соотношению (4.12). Известно, что матрица ковариации С симметрична и положительно определена. Из теории матриц следует11, что в этом случае существует нижняя треугольная матрица V, удовлетворяющая условию (4.12). Это соображение значительно облегчает построение нужной матрицы V, так как достаточно искать ее в классе нижних треугольных матриц. Другими словами, для матрицы V = (v ) можно считать, что vij = 0 при i < j , а ij n×n 11
См., например, [6, п. 11.10]
75
элементы vij с i ≥ j (их общее количество равно n (n+1)/2) определяются тогда из n (n+1)/2 уравнений j
∑ vil v jl = cij ,
1 ≤ j ≤ i ≤ n,
l =1
где cij – элементы матрицы С. Удобно решать последнюю систему, например, по схеме, указанной на рис. 4.2.
Рис. 4.2. Схема последовательного определения элементов матрицы V
Пример 4.5. Пусть требуется смоделировать нормально распределенные случайные величины Х1 и Х2 с параметрами (0,1) и с заданным коэффициентом корреляции ρ = M[X 1 X 2 ] .12 В качестве исходных объектов для моделирования примем независимые случайные величины Y1 и Y2, каждая из которых распределена нормально с параметрами (0,1). Как уже неоднократно отмечалось ранее, их моделирование представляет собой стандартную и хорошо изученную задачу. Матрица ковариации для моделируемых случайных величин X1 и X2 имеет вид ⎛ 1 ρ⎞ ⎟⎟ . С = ⎜⎜ ⎝ ρ 1⎠ 12
Напомним, что коэффициент корреляции всегда удовлетворяет условию
ρ ∈ [− 1;1] .
76
Легко тогда проверить, что матрица ⎞ ⎟ 1 − ρ ⎟⎠
⎛1 V = ⎜⎜ ⎝ρ
0
2
удовлетворяет условию ⎛1 VV T = ⎜⎜ ⎝ρ
ρ ⎞ ⎛ 1 ρ⎞ ⎟=⎜ ⎟=C . 1 − ρ 2 ⎟⎠ ⎜⎝ ρ 1 ⎟⎠
0 ⎞ ⎛1 ⎟⎜ 1 − ρ 2 ⎟⎠ ⎜⎝ 0
Таким образом, X1 и X2 могут быть смоделированы на основе формулы (4.13) путем использования соотношений:
X 2 = ρY1 + 1− ρ 2 Y2 .
X1=Y1,
4.4 Метод суперпозиции Предположим, что функция F(x) одномерной случайной величины X представима в виде m
F ( x) = ∑ ck Fk ( x) , k =1
(4.14)
где Fk ( x ) – некоторые функции распределения, а все коэффициенты разложения ck > 0, k = 1,2,…,m. В частности, допустимо принять m = ∞ . Полагая в обеих частях данного равенства х → ∞ и пользуясь известным свойством функций распределения lim F ( x ) = lim Fk ( x ) =1, x →∞
приходим к выполняться
выводу,
x →∞
что
с 77
необходимостью
должно
m
∑ ck = c1 + c2 + … + c m =1 .
k =1
Таким образом, коэффициенты сk, k = 1, 2,…, m, имеют смысл вероятностей, с которыми некоторая дискретная случайная величина принимает свои значения. Основываясь на этом наблюдении, введем дискретную случайную величину Y с законом распределения 1 c1
2 c2
… …
m cm
так что P ({Y = k }) = ck , k=1,2,…,m. Метод суперпозиции был предложен Дж. Батлером13 и состоит фактически в следующем. Пусть Г1 и Г2 — независимые случайные числа. Пусть вначале число Г1 используется для моделирования значения Y = k случайной величины Y14, а затем при соответствующем k случайная величина Х моделируется путем решения уравнения Fk(x) = Г2, тогда смоделированная таким образом случайная величина Х будет иметь как раз функцию распределения F(х). Действительно, достаточно применить формулу полной вероятности
P ({ X < x }) = ∑ P ({ X < x | Y = k }) = ∑ Fk ( x )ck = F (x ) , m
m
k =1
k =1
откуда и следует, что F(х) – функция распределения случайной величины Х.
13
См. J. W. Butler, Machine sampling from given probability distributions, Symposium on Monte Carlo methods, ed. H.A. Meyer, Wiley, New York, 1956, p. 249-264. 14 См. параграф 4.1.
78
Функции распределения вида F ( x ) = ∑ ck Fk ( x ) возникают m
k =1
на практике, когда появляется смесь из случайных величин, различным образом распределенных. В этом случае применение метода суперпозиции является по существу рецептом для моделирования случайной величины Х с функцией распределения F(x). С другой стороны, представление (4.14) зачастую вводится искусственным образом с целью облегчить процедуру моделирования искомой случайной величины X. Следующий пример демонстрирует один из часто применяемых приемов моделирования, использующих идею метода суперпозиции.
Пример 4.6 (Дж. Батлер) Пусть случайная величина X принимает значения в интервале (0;1) и пусть ее функция распределения представима рядом ∞
F ( x) = ∑ ck x k , k =1
(4.15)
∞
где ck ≥ 0 при всех k=1,2,… и ∑ ck = 1 . Требуется построить k =1
рациональный алгоритм моделирования случайной величины X. Прежде всего заметим, что представление (4.15) есть по существу разложение функции распределения в ряд Маклорена, при этом вытекающее из (4.15) условие F(0) = 0 является естественным, так как значения Х сосредоточены на интервале (0;1). Далее, положим Fk(x) := xk при x ∈ (0;1) 15 и воспользуемся для моделирования принципом суперпозиции, который в
15
Очевидно, Fk(x) удовлетворяет всем свойствам функции распределения.
79
данном конкретном случае реализуется по двухступенчатой схеме16: а) сначала из условия k −1
k
j =1
j =1
∑ c j < Г1 ≤ ∑ c j
выбирается k; б) затем моделируется сама случайная величина Х по формуле 1
X = ( Г 2) k . Пример 4.7. Рассмотрим для иллюстрации более конкретную версию предыдущего примера. Пусть случайная величина Х принимает значение в интервале (0; 1) и пусть ее плотность распределения представима в виде p( x ) = c(2 x + 6 x 5 ) . Требуется смоделировать случайную величину Х. Определим вначале численное значение константы c из условия нормировки 1
1
1 = ∫ 0 ρ( x) d x = c ∫ 0 (2 x + 6 x 5 ) d x = 2 c , то есть c =
F (x ) = 1 ( x 2
1 2 2
. При этом для функции распределения имеем + x 6 ) . Далее, полагая F1(x) = x2 и F2(x) = x6,
представим F(x) как F(x) = c1F1(x)+c2F2(x). 16
Как и выше, через Г1 и Г2 обозначается пара независимых случайных чисел.
80
Из сравнения двух выражений для F(х) легко получить, что c1 = c2 =
1 2
. Итак, моделирование проводится по схеме:
а) сначала моделируется значение k, при этом ⎧1 , если Г 1 ≤ c1 k =⎨ ⎩2 , если Г1 > c1 . б) затем моделируется сама случайная величина Х по формуле 1
Х = ( Г 2 )к(k +1 ) .
Применение метода суперпозиции для повышения эффективности вычислительных алгоритмов моделирования В качестве одного из полезных приложений метода суперпозиции рассмотрим вопрос о возможном повышении эффективности вычислительного процесса моделирования искомой случайной величины за счет аппроксимации ее плотности распределения другой, близкой к ней и в каком-то смысле более простой плотностью распределения и дальнейшего учета поправок к такой аппроксимации. А именно будем предполагать, что плотность распределения p(x) (для простоты, одномерной) случайной величины Х, принимающей свои значения на интервале (а; b), может быть хорошо аппроксимирована некоторой функцией q(х), такой, что p(x) ≥ q(x) при x ∈ (a; b ) . Функция q(х), сама не обязана являться плотностью распределения, но функция 1 p1 ( x ) := q ( x ) , где с := ∫ ab q( x ) d x , 1 c1 81
уже будет плотностью распределения некоторой новой случайной величины, принимающей значения в том же интервале (а ; b). Заметим, что ввиду наложенного выше неравенства между p(x) и q(x) обязательно должно выполняться c1 ∈ [0;1] . Исключая из дальнейшего рассмотрения
тривиальные частные случаи, когда с1 = 0
и
c2 = 1, будем
считать, что c1 ∈ (0;1) . Представим теперь p(x) в виде суперпозиции двух плотностей p(x) = c1 p1(x) + c2 p2(x) , где с1 и p1(х) были уже определены выше, а кроме того, c2 = 1 – c1 и 1 p2 ( x ) := ( p ( x) − q( x)). c2 При этом элементарно проверяется, что p2(х) играет роль плотности для некоторой непрерывной случайной величины, принимающей значения в интервале (0; 1). По плотностям р(х), p1(х) и p2(х) можно восстановить соответствующие функции распределения F(х), F1(х) и F2(x), для которых естественно должно иметь место равенство F ( x) = c1F1 ( x) + c2 F2 ( x).
Последнее соотношение может быть теперь взято за основу для моделирования при помощи метода суперпозиции. Обсудим, однако, какие преимущества может принести применение метода суперпозиции в данной ситуации. Прежде всего, так как по предположению функция q(х) достаточно близка к р(х) , следует ожидать, что величина с1 будет весьма близка к 1, а величина с2 , соответственно, будет весьма мала. 82
Следовательно, алгоритм, построенный на применении метода суперпозиции, будет существенную часть своего вычислительного времени тратить на обращение к процедуре обращения функции F1(х), которая по нашим предположениям имеет простую структуру, а это должно привести к существенной экономии вычислительных затрат. Что же касается процедуры обращения функции F2(х), то ввиду малости c2 эта процедура, хотя сама по себе и трудоемкая, будет крайне редко использоваться в процессе счета и практически не скажется на увеличении всего алгоритма в целом.
83
Глава 5 Стохастические дифференциальные уравнения Адекватное описание многих развивающихся во времени финансово-экономических процессов связано с использованием аппарата стохастических дифференциальных уравнений. В настоящей главе рассмотриваются на элементарном уровне некоторые вопросы теории таких уравнений, а также вопросы их численного решения (моделирования).
5.1 Дельта-функция Изложение в данной главе начинается с более или менее популярного обсуждения понятия и простейших свойств дельта-функции δ(t), использование которой потребуется для характеризации некоторых случайных процессов специального вида. Прежде всего отметим, что дельта-функция не является функцией в привычном смысле, то есть не может быть представлена как закон соответствия между поточечными значениями независимой и зависимой переменных, как это делается при определении функции в курсе математического анализа.1 На самом деле дельта-функция принадлежит классу так называемых обобщенных функций, элементы которого называются функциями только в силу определенных терминологических традиций, а на самом деле таковыми в указанном выше привычном смысле не являются.2 Более 1
Отметим, что в некоторых физических курсах делаются попытки объяснения дельта-функции именно путем ее задания на основе такого соответствия (см., например, А. А. Соколов, И. М. Тернов, В. Ч. Жуковский, Квантовая механика, М.: Наука, 1979, с. 49-55), в частности, выписываются формулы типа приведенной ниже формулы (5.4), что с нашей точки зрения не только не облегчает, а делает еще более неясным комментарий этой функции. 2 В теории обобщенных функций показывается, что обобщенным функциям, в частности дельта-функции, можно приписать числовые значения при определенных значениях независимого аргумента, но, к сожалению, не для всех.
84
правильно было бы называть их (как это часто и делается) функционалами или мерами. Строгий подход к изучению дельта-функции требует привлечения серьезного математического аппарата, изложение которого в рамках данной книги не представляется возможным. Поэтому приходится ограничиться некоторыми не совсем строгими рассуждениями, которые, как предполагается, будут достаточны для формирования соответствующих понятийных представлений у читателя, не владеющего глубокой математической подготовкой, но стремящегося применять аппарат случайных процессов и стохастических дифференциальных уравнений в прикладных финансовоэкономических исследованиях. Будем исходить из следующего не вполне строгого определения дельта-функции. Определение 5.1. Дельта-функция δ(t) определяется условием ∞
∫ − ∞ δ (t ) f (t ) d t = f (0)
(5.1)
для любой непрерывной функции f(t), t ∈ (− ∞; ∞ ) ‚ где интеграл понимается в некотором более общем смысле, чем интеграл Римана. Нестрогость данного определения как раз и заключается в неопределенности смысла, который придается возникающему в контексте интегралу. Заметим, что невозможно использовать здесь понятие интеграла Римана по той причине, что дельтафункция не является, как было сказано, обычной функцией, а это, в частности, приводит к тому, что интеграл Римана с дельта-функцией в подынтегральном выражении просто не существует.3 Поэтому пока не ясен смысл появляющегося 3
В теории интеграла Римана доказывается, что он может быть определен только для ограниченных функций. В то же время не существует никакой ограниченной обычной функции, которая могла бы удовлетворить основному условию, содержащемуся в определении 5.1.
85
интеграла, но несколько позже он будет объяснен ( опять же не вполне строго), причем данный ниже комментарий мог бы быть доведен до вполне строгих рассуждений в рамках будем соответствующего формализма.4 Так или иначе, надеяться, что данное здесь нестрогое определение дельтафункции в совокупности с последующим комментарием позволит прикладникам получить необходимое для практических целей представление об этом объекте на понятийном уровне. Поскольку наши рассуждения не являются вполне строгими, мы позволим себе иногда проводить определенные формальные выкладки, не затрудняя себя соответствующими обоснованиями. В частности, элементарное преобразование подынтегрального выражения в (5.1), заключающееся в замене подынтегральной функции f(t) → f(t+t0) и последующей замене переменной интегрирования t → t-t0 приводит к более общей, чем (5.1), формуле ∞
(5.2) ∫ − ∞ δ (t − t 0) f (t ) d t = f (t 0) , при любом фиксированном t0 и для любой непрерывной функции f(t). Формулу (5.2) можно рассматривать, как одно из важнейших свойств дельта-функции. Еще одно важное свойство дельта-функции — ее четность
δ(t) = δ(-t), t ∈ (−∞;∞ ) можно также формально получить из (5.1) заменой переменной t → -t в интеграле. Наконец, полагая, в частности, f(t) ≡ 1, приходим к формуле ∞ ∫ − ∞ δ (t ) d t = 1 . 4
На самом деле такой комментарий представляет собой не что иное, как упрощенное объяснение так называемого секвенциального подхода к определению обобщенных функций (см., например, книгу П. Антосик, Теория обобщенных функций. Я. Микусинский, Р. Сикорский, Секвенциальный подход, М.: Мир, 1976).
86
На это свойство часто ссылаются, как на свойство нормировки дельта-функции. В русле комментария введенных выше понятий проведем далее некоторые рассуждения, в которых появляющиеся интегралы будут пониматься в смысле обычного интеграла Римана. Заметим, прежде всего, что для любой непрерывной функции f(t) имеет место формула 1 ε f (0) = lim ∫ − ε f (t ) d t . (5.3) ε →0 2 ε Действительно, по теореме о среднем значении для любого ε > 0 существует τ ∈ (−ε ;ε ) , такое, что ε
∫ − ε f (t ) d t = 2 ε f ( τ ) , и, следовательно, 1 ε ∫ f (t ) d t = f (τ ) . 2ε − ε Очевидно, что при ε → 0 будем иметь τ → 0, так что при стремлении ε к нулю правая часть последнего равенства будет стремиться к f(0), и, таким образом, после предельного перехода ε → 0 в обеих частях этого равенства получается формула (5.3). Вводя теперь функцию ⎧0 , t >ε ⎪ δ ε (t ) = ⎨ 1 ⎪ , t ≤ε ⎩2ε и учитывая, что эта функция обращается в нуль за пределами отрезка [− ε ; ε ] , вычислим интеграл5:
δ ε (t ) f (t ) не является непрерывной, но является ограниченной при любом фиксированном ε > 0 и имеет конечное число разрывов (более
5
Функция
точно, два разрыва), а потому существует интеграл Римана от этой функции.
87
1 1 f (t ) d t = ∫ −ε ε f (t ) d t . 2ε 2ε Сравнивая полученную формулу с предельным соотношением (5.3), приходим к выводу, что ∞
∫ − ∞ δ ε (t ) f (t ) d t = ∫ − ε ε
∞
lim ∫ − ∞ δ ε (t ) f (t ) d t = f (0) , ε →0
или с учетом определения 5.1 lim ∫ −∞∞ δ ε (t ) f (t ) dt = ∫ −∞∞ δ (t ) f (t ) dt, ε →0 где интеграл в левой части равенства – обычный интеграл Римана, а интеграл в правой части содержит дельта-функцию и понимается, как было отмечено выше, в более общем смысле. Есть возможность прояснить этот смысл. А именно интеграл в указанном более общем смысле от произведения дельтафункции на непрерывную функцию f(t) может пониматься как предел при ε → 0 обычного интеграла Римана, содержащего в подынтегральной функции произведение функции δ ε (t ) на все ту же функцию f(t). С другой стороны, проведенные рассуждения показывают, что саму дельта-функцию δ(t) можно рассматривать как результат перехода к пределу в некотором смысле при ε → 0 последовательности функций δ ε (t ) , но сам переход к пределу использует конструкцию интеграла Римана и не эквивалентен обычному (поточечному) переходу к пределу последовательности функций при каждом фиксированном t ∈ (− ∞; ∞ ) . Саму последовательность δ ε (t ) часто называют дельта-образной последовательностью. Рассмотрим попутно, к чему приводит поточечный переход к пределу при ε → 0 последовательности функций δ ε (t ) . На рис.5.1 изображены графики этих функций при различных ε . Из этого рисунка непосредственно видно, что при ε → 0 носитель функции δ ε (t ) стягивается к началу координат и, следовательно, при любом фиксированном t ≠ 0 будет выполняться lim δ (t ) = 0 . ε →∞
ε
88
у
1 2ε
х 2 ε
Рис. 5.1. Поточечная сходимость дельта-образной последовательности С другой стороны, поскольку максимальное значение функции δ ε (t ) неограниченно возрастает при ε → 0 , ясно, что тогда должно выполняться δ ε (0 ) → ∞ . Итак, понимая переход к пределу в смысле поточечной сходимости, получаем ⎧0, t ≠ 0 . lim δ ε (t ) = ⎨ ε →0 ⎩∞ , t = 0 Если считать, что поточечный переход к пределу также должен приводить к дельта-функции, можно было бы тогда написать формулу ⎧0, t ≠ 0 δ (t ) = ⎨ . (5.4) ⎩∞ , t = 0 И, действительно, в некоторых учебниках включают последнюю формулу в определение дельта-функции, пытаясь затем использовать ее в русле обычного математического анализа и игнорируя тот факт, что в стандартном математическом анализе не используются функции, обращающиеся в бесконечность, так как в рамках этой 89
дисциплины не развиты средства для работы с такими функциями. В то же время в теории обобщенных функций доказывается, что дельта-функции δ(t) можно приписать поточечные значения во всех точках кроме t = 0, а именно δ(t) = 0 при t ≠ 0. Данный факт говорит о том, что формула (5.4) имеет смысл по крайней мере частично.
5.2 Случайные процессы Введем теперь некоторые базовые определения из теории случайных процессов, которые потребуются нам при обсуждении центральных вопросов данной главы.
Определение 5.2. Будем говорить, что на числовом множестве T задана случайная функция X = X(t), если каждому t из множества T однозначно поставлена в соответствие по некоторому закону случайная величина X. Если аргумент t играет роль времени, то вместо термина “случайная функция” используют термин “случайный процесс”. Таким образом, случайная функция (случайный процесс) – это функция, значениями которой являются случайные величины. При изучении случайных процессов – а именно они будут объектом нашего внимания – будем считать, что случайный процесс X(t) определен при t ≥ t 0 , где t 0 – некоторое заданное число. Наиболее часто будет встречаться ситуация, когда случайный процесс определен при t ≥ 0.
Определение 5.3. Каждое испытание (эксперимент), связанное (связанный) со случайным процессом X(t), в своем исходе дает некоторую числовую функцию x(t), которая 90
называется реализацией или траекторией этого случайного процесса. Очевидно, ввиду случайности исхода эксперимента случайный процесс может иметь более одной реализации; в общем случае таких реализаций бесконечно много.
Определение 5.4. n-мерным законом распределения случайного процесса X(t), зависящим от моментов времени t1 ,t2 ,...,tn , называется закон совместного распределения n случайных величин X ( t1 ), X ( t 2 ),..., X ( t n ). Соответственно, nмерной функцией распределения случайного процесса называется F(t1 ,t2 ,...,tn ; x1 , x2 ,..., xn ) =
= Ρ ({ X (t 1) < x1 } ∧ { X (t 2 ) < x 2 } ∧ … ∧ { X (t n ) < x n}) . В частности, одномерная функция распределения – это F (t; x) = P ({ X (t ) < x }) . Определение 5.5. Случайный процесс называется нормальным или гауссовским, если любые его законы распределения нормальны.
Определение 5.6. Математическим ожиданием и дисперсией случайного процесса X(t) называются неслучайные функции M[X(t)] и D[X(t)], определяющие при каждом фиксированном t, соответственно, математическое ожидание и дисперсию случайной величины X(t). Определение 5.7. Корреляционной функцией случайного процесса X(t) называется неслучайная функция K (t1 , t 2 ) от двух переменных t1 и t 2 , равная при любых фиксированных t1 и t 2 91
корреляционному моменту (ковариации) случайных величин X (t1 ) и X (t 2 ) , то есть K (t 1, t 2 ) := Μ[X (t1 ) − Μ[X (t 1)] ( X (t 2 ) − Μ[X (t 2 )])] . Очевидно, что корреляционная функция K (t1 , t 2 ) является симметричной функцией своих аргументов, то есть K (t1 , t 2 ) = K (t 2 , t1 ). Кроме того, в теории случайных процессов устанавливается, в частности, что все нормальные случайные процессы полностью описываются своими математическим ожиданием и корреляционной функцией.
Определение 5.8. Случайный процесс называется стационарным в широком смысле, если его математическое ожидание и дисперсия не зависят от t, а корреляционная функция K (t1 , t 2 ) зависит лишь от размерности аргументов: K (t1 , t 2 ) = k (t 2 − t1 ) , где k(t) – некоторая четная функция одной переменной. В дальнейшем вместо “стационарный в широком смысле” будем говорить просто “стационарный случайный процесс”.6
Определение 5.9. Пусть K (t 1 ,t 2 ) = k (t 2 − t 1 ) – корреляционная функция стационарного случайного процесса. Тогда спектральной плотностью S(ω) этого процесса называется преобразование Фурье функции k(τ), то есть ∞
S (ω ) := ∫ k (τ −∞
)e − i ϖ τ
6
dτ .
Существует еще понятие стационарного случайного процесса в узком смысле, которое не будет использоваться ниже.
92
Роль спектральной плотности состоит в том, что она указывает спектральный (частотный) состав корреляционной функции.
Определение 5.10. Если область определения T случайного процесса является дискретным (возможно счетным) множеством, то такой процесс называется случайным процессом в дискретном времени или временным рядом. Разность между двумя последовательными моментами времени, принадлежащими множеству T , называют лагом. На практике наиболее часто встречается ситуация, когда множество точек T, в которых определен временной ряд, состоит из равноотстоящих друг от друга моментов времени (временной ряд с постоянным лагом), например часто полагают T = {1,2,…}. Однако в приложениях нередки и ситуации, когда T образовано весьма произвольным (неравномерным) набором временных точек (временной ряд с переменным лагом).
5.3 Белый шум и винеровский процесс В этом параграфе будут рассмотрены два специальных вида случайных процессов, названия которых фигурируют в заголовке данного параграфа. Эти частные случаи будут играть наиважнейшую роль для развиваемого далее математического аппарата.
Определение 5.11. Белым шумом называется нормальный (гауссовский) стационарный случайный процесс N(t), имеющий нулевое математическое ожидание и дельта-образную функцию корреляции, то есть M[N(t)] = 0, K(t1,t2) = k (t2–t1) = M[N(t1) N(t2)] =
93
N0 δ (t2 −t1 ) , 2
где N 0 = const. Часто также используют термин нормальный белый шум, подчеркивая тем самым, что этот процесс по классификации относится к семейству нормальных N0 (гауссовских) процессов. Величину обычно называют 2 интенсивностью или диффузией белого шума. В случае N0 = 1 белый шум называют стандартным. 2 Спектральная плотность белого шума
N0 ∞ − iωτ dτ = N 0 , ∫ δ(τ)e 2 −∞ 2 −∞ не зависит от ω и совпадает с интенсивностью белого шума. Последний результат означает, что все частоты (гармоники) дают равновеликий вклад в корреляционную функцию белого шума. Хотя белый шум и относят к семейству нормальных случайных процессов, его дисперсия D[N(t)] в каждый момент времени t равна ∞ . Это вынуждает рассматривать белый шум как определенную математическую идеализацию. Тем не менее с точки зрения использования формального математического аппарата удобно вводить в рассмотрение белый шум, считая его хорошим приближением к реальным шумовым случайным процессам, возникающим в практических задачах. Такое приближение случайного процесса белым шумом можно использовать в том случае, когда характерное время корреляции τ cor данного случайного процесса много меньше постоянной времени τ syst системы, на которую воздействует этот процесс. При этом за величину интенсивности белого шума, подменяющего при моделировании реальный случайный процесс X(t), целесообразно брать значение спектральной плотности этого процесса на нулевой частоте, то есть ∞
S (ω ) = ∫ k (τ )e− iωτ dτ =
94
N 0 = (0 ) = ∞ k (τ ) dτ . SX ∫ X 2 −∞ В теории случайных процессов интеграл в правой части последнего равенства часто представляют в виде ∞
∫ k (τ ) dτ = 2σ X
2 X
τ cor ,
−∞
где
σ X2 := k X (0) ,
τ cor :=
1 ∞ ∫ k X (τ ) dτ , σ X2 0
и время корреляции τ cor имеет смысл характерного интервала времени, на котором коррелированность между значениями случайного процесса существенна. Таким образом, “заменяющий” шум вводится с интенсивностью N 0 = 2σ 2 τ . X cor 2 Реализациями белого шума являются очень странные числовые функции – их странность проявляется в том, что они непрерывны, но абсолютно негладкие, то есть ни в одной точке не имеют производной.7 Этот факт – хорошее напоминание того, что белый шум представляет математическую абстракцию 7
.Нигде недифференцируемые непрерывные функции являются настолько непривычными, что поначалу отвергались даже самими математиками. Знаменитый математик Эрмит в письме к своему не менее известному коллеге Стильтьесу писал: "С омерзением и ужасом я отворачиваюсь от этой зловредной язвы – непрерывных функций, нигде не имеющих производных". Считается, что первый пример такой функции был построен Больцано в его рукописи, датированной 1830 годом, однако рукопись была обнаружена лишь около 1920 г. в Венской государственной библиотеке, а была опубликована примерно через 10 лет. Поэтому открытие этих функции было приписано Вейерштрассу, опубликовавшему свой знаменитый пример негладкой непрерывной функции в 1861 г. В последние годы внимание к нигде недифференцируемым непрерывным функциям резко возросло в связи с их использованием в теории фракталов (см., например, книгу А. А. Потапова Фракталы в радиофизике и радиолокации: Топология выборки, М.: Университетская книга, 2005).
95
и не реализуется на практике, а лишь рассматривается как приближение к практическим процессам. На практике часто еще встречается так называемый дискретный белый шум, представляющий собой временной ряд, значениями которого в каждый дискретный момент времени являются нормально распределенные случайные величины с нулевым математическим ожиданием и не зависящим от времени конечным значением дисперсии. Дискретный белый шум может появляться как независимый объект при моделировании, так и для аппроксимации непрерывного белого шума в численных расчетах. Рассмотрим теперь случайный процесс W(t), описываемый дифференциальным уравнением dW = N (t ) . (5.5) dt На самом деле это не дифференциальное уравнение в обычном смысле, т.е в числовых функциях, так как оперирует со случайными процессами. Более точный смысл этого уравнения будет ясен из следующего параграфа книги, где будут рассматриваться стохастические дифференциальные уравнения. А пока, используя знания, приобретенные в курсе дифференциальных уравнений, отнесемся к уравнению (5.5) как к дифференциальному уравнению в числовых функциях, и формально проинтегрируем его, обозначив через t 0 и t 0 + T , соответственно, начальный и конечный моменты наблюдения:
W (t 0 + T ) = W (t 0 ) +
t 0 +T
∫ N(t) dt ,
(5.6)
t0
или t 0 +T
∆W (t 0 ; T ) := W (t 0 + T ) − W (t 0 ) = ∫ N (t ) dt . t0
96
(5.7)
Результатом проведенных преобразований является выражение, в котором вместо производной от случайного процесса фигурирует интеграл от случайного процесса. Таким интегралам будет придан более строгий смысл в следующем параграфе книги. Пока же будем на интуитивном уровне воспринимать интеграл в правой части последнего равенства как некоторую сглаживающую операцию, обладающую основными свойствами обычного интеграла Римана, главным из которых является линейность интеграла по отношению к подынтегральной функции. Например, можно рассматривать интеграл в правой части (5.7) как случайную величину, реализации которой совпадают со значениями интеграла от соответствующих реализаций белого шума N(t). В теории случайных процессов показывается, что если под знаком интеграла стоит нормальный случайный процесс, даже такой обобщенный нормальный процесс, как белый шум, то сам интеграл представляет собой случайную величину, подчиненную нормальному закону распределения, причем уже не обобщенному, а с конечной дисперсией. Таким образом, приращение ∆W( t0 ;T) случайного процесса W(t) на отрезке [t 0 ; t 0 + T ] является нормально распределенной случайной величиной. Далее из теории случайных процессов следует, что стационарность белого шума влечет независимость приращения ∆W( t0 ;T) от начального значения t0 , то есть на самом деле это приращение реально зависит только от T: ∆W( t0 ;T) = ∆W(T). Другими словами, ∆W( t0 ;T) зависит только от разности конечного и начального моментов времени. Говорят также, что случайный процесс W(t) – это процесс со стационарными приращениями. Наконец, пусть моменты времени t 0 и t1 выбраны так, что │ t1 − t0 │ > T, то есть отрезки [t 0 ; t 0 + T ] и [t 1 ; t1 + T ] не пересекаются. В теории случайных процессов устанавливается, 97
что дельта-коррелированность белого шума влечет t1 + T t 0 +T независимость случайных величин ∫ t 0 N (t )dt и ∫ t1 N (t )dt . Это можно пояснить тем, что на отрезке [t 0 ; t 0 + T ] белый шум ведет себя независимо от того, как он ведет себя на отрезке [t 1 ; t1 + T ] ввиду некоррелированности значений N(t) в различные моменты времени. Такое объяснение может не удовлетворить эрудированного читателя, так как известно, что независимость и некоррелированность случайных величин не эквивалентны друг другу. Однако напомним, что оба интеграла от белого шума являются нормальными случайными величинами (с конечными дисперсиями) и, следовательно, их некоррелированность, вытекающая из некоррелированности белого шума в разные моменты времени, эквивалентна их независимости (см., например, [8, Глава 14]). Итак, приходим к выводу, что приращения ∆W( t0 ;T) и ∆W (t1 ;T ) при соблюдении требования пустого пересечения отрезков [t0 ; t0 + T ] и [t1 ; t1 + T ] являются независимыми случайными величинами. Говорят также, что случайный процесс W(t) – это процесс с независимыми приращениями. Вычислим теперь моменты 1-го и 2-го порядка для нормальной случайной величины ∆W (T ) = ∆W (t0 ;T ) . Прежде всего, имея ввиду, что M[N(t)] = 0 при любых t, получаем
⎤ t0 +T ⎡t 0 + T M [∆W (T )] = Μ ⎢ ∫ N (t ) dt ⎥ = ∫ Μ [N (t )] d t = 0 . ⎦ t0 ⎣ t0 При этом, без доказательства используется тот факт, что операцию вычисления математического ожидания можно вносить под знак интеграла, – соответствующие строгие рассуждения подчиняются интуитивным ощущениям, что это действительно так. Для дисперсии D[∆W(T)] имеем, пользуясь тем же свойством математического ожидания,
98
[
]
t0 + T ⎤ ⎡ t0 + T 2 D[∆W (T )] = M ( ∆W (T )) = Μ ⎢ ∫ N (t ′)d t ′ ∫ N (t ′′) d t ′′⎥ = t0 ⎦ ⎣ t0
t 0 +T t 0 +T
=
∫ ∫ Μ[N (t′)N (t′′)]dt′ dt′′ =
t0
t0
N = 0 2 =
N0 2
t0 +T t 0 +T
∫ ∫ δ(t′ − t′′)dt′ dt′′ =
t0
t0
t 0 +T
∫ dt′ =
t0
Таким образом, случайная распределена с плотностью
N0T . 2 величина
∆W(T)
нормально
1 − x 2 /(N 0T) e . πN 0T В дальнейшем будем считать, что t 0 = 0 и введем также дополнительное ограничение W( t0 ) = W(0) = 0. Переобозначим, кроме того t := T, подразумевая тем самым, что данный параметр будет варьироваться. Тогда, как следует из (5.6) и из проведенных выше рассуждений,
p( x;T ) =
t
W(t) = ∫ N(t ′) dt ′
(5.8)
0
и, так как теперь ∆W(0;t) = W(t), делаем вывод, что при каждом фиксированном t случайная величина W(t) имеет плотность распределения 1 − x 2 /(N 0 t) p( x;t ) = e . (5.9) πN 0t
N0 t , то есть дисперсия нормального 2 случайного процесса W(t) растет пропорционально времени наблюдения t. Следовательно, D[W (t )] =
99
Определение 5.12. Нормальный случайный процесс W(t) со стационарными и независимыми приращениями, для которого W(0) = 0, M[W(t)] = 0 и D[W(t)] = σ 2 t , σ 2 = const, называется винеровским процессом. В случае σ 2 = N 0 = 1 2 такой процесс часто называют стандартным винеровским процессом. Как упоминалось ранее, винеровский процесс связан с белым шумом соотношением (5.8). В теории стохастических дифференциальных уравнений часто применяется также другое соотношение между указанными двумя случайными процессами, использующее понятие дифференциала dW(t) винеровского процесса.8 А именно используется формула
dW(t) = N(t) dt.
(5.10)
В отличие от белого шума, для которого независимы именно его значения в различные моменты времени, винеровский процесс характеризуется независимостью своих приращений. Другое важное отличие между этими процессами состоит в том, что разброс значений реализаций белого шума одинаков для любых моментов времени, тогда как разброс значений реализаций винеровского процесса нарастает с увеличением времени (в соответствии с линейно нарастающей дисперсией). Часто винеровский процесс называют также броуновским движением, поскольку, как установлено в 1918 году Н. Винером, этот процесс естественно принять в качестве математической модели частицы (таковой может быть молекула газа или жидкости), находящейся в хаотическом движении (носящем название броуновского движения) под влиянием столкновений с другими аналогичными частицами. 8
Понятие стохастического дифференциала будет обсуждаться в следующем параграфе книги.
100
5.4 Понятие стохастических дифференциальных уравнений
Дифференциальное уравнение (5.5) является простейшим примером так называемого стохастического дифференциального уравнения. Рассмотрению аналогичных, а реально более сложных уравнений целиком посвящен данный параграф. Эти уравнения довольно часто появляются в финансовоэкономических приложениях. В частности, многие случайные процессы, моделирующие динамику поведения финансовых рынков, описываются системами (часто нелинейных) стохастических дифференциальных уравнений. Формально система стохастических дифференциальных уравнений вводится следующим образом:9 dX = f(t, X) dt + g(t, X) dW,
(5.11)
где X = X(t) = (X1(t) ; X2(t) ;…Xn(t)) – искомый n-мерный случайный процесс, W = W(t) = (W1(t) ; W2(t) ;…Wm(t)) – m-мерный вектор из независимых или зависимых управляющих винеровских процессов (m ≤ n), f(t, X) – зависящее от t векторное поле (с n координатами), g(t, X) – зависящая от t и Х матрица размера n x m. Система (5.11) понимается в том смысле, что искомый случайный процесс X(t) удовлетворяет интегральному векторному соотношению t
t
t0
t0
X(t ) = X(t 0 ) + ∫ f (τ , X(τ )) dτ + ∫ g(τ , X(τ )) dW(τ ) ,
где оба интеграла в правой части понимаются в смысле так называемого стохастического интеграла Ито, читаемого по координатам подынтегральной функции. 9
.В теории стохастических дифференциальных уравнении обычно записывают сами уравнения в дифференциалах, а не в производных.
101
Чтобы не загромождать изложение излишними деталями, рассмотрим далее подробно лишь случай одного стохастического дифференциального уравнения dX = f(t,X) dt + g(t,X) dW,
(5.12)
где X = X(t) – искомый случайный процесс, подлежащий определению, W(t) – винеровский процесс, a f(t,x) и g(t,x) – заданные непрерывные функции двух переменных. Все результаты, касающиеся уравнения (5.12), могут быть затем обобщены со ссылкой на аналогию и на случай системы (5.11). В соответствии с изложенным выше, решение уравнения (5.12) понимается в том смысле, что X(t) подчиняется соотношению t
t
t0
t0
X (t ) = X (t 0 ) + ∫ f (τ , X (τ )) dτ + ∫ g (τ , X (τ )) d W (τ ) , где оба интеграла понимаются в смысле стохастического интеграла Ито. Обсудим теперь понятие интеграла Ито по винеровскому процессу t
∫ g (τ,X (τ )) dW (τ )
,
(5.13)
t0
где X(t) – некоторый случайный процесс, W(t) – винеровский процесс. Вначале введем вспомогательное определение. Определение 5.13. Говорят, что последовательность случайных величин X n сходится при n → ∞ в среднем квадратичном к случайной величине X, если 2 lim M ( X n − X ) = 0 . n→∞
При этом пишут
X = l.i.m. X n n→∞
.
Теперь можно определить интеграл (5.13). Определение 5.14. Пусть X(t) – некоторый случайный процесс, W(t) – винеровский процесс. Будем говорить, что 102
стохастический интеграл Ито (5.13) существует, если существует предел в среднем квадратичном: n −1
I = l.i.m.∑ g (t i ,X (t i )) (W (t i +1) − W (t i )) , n→∞
где t i = t0 + i
i =0
t − t0 , n
i = 0 ,1,… ,n − 1 . При этом пишут t
I = ∫ g (τ , X (τ )) dW (τ ) . t0
Аналогично определяется стохастический интеграл t
∫ f (τ,X (τ )) dτ .
(5.14)
t0
Понятно, что для этого нужно в определении 5.14 заменить функцию g(t,x) на функцию f(t,x) и разность W (t i +1) − W (t i ) t − t0 просто на ti +1 − ti = . n Если стохастический интеграл (5.13) существует, то, обозначая его через Y(t), говорят, что процесс Y(t) имеет стохастический дифференциал Ито dY, который записывают в виде dY = g(t, X) dW. Аналогично, в случае существования стохастического интеграла (5.14) говорят, что существует стохастический дифференциал Ито dZ = f(t, X) dt. Предположим теперь, что процесс X(t) имеет стохастический дифференциал Ито dX = f(t, X) dt + g(t, X) dW. Предположим также, что функция F(t,x) непрерывна и имеет ′ ′ ″ непрерывные частные производные Ft , Fx и Fxx . Тогда 103
процесс F(t,X(t)) также имеет стохастический дифференциал, для которого N ⎛ ′ ⎞ ′ ″ dF (t,X (t )) = ⎜ Ft (t,X ) + Fx (t,X ) f (t,X ) + 0 Fxx (t,X )g 2 (t,X )⎟ dt + 4 ⎝ ⎠ ′ (5.15) + Fx (t,X )g (t,X ) dW , N0
где – интенсивность белого шума, порождающего 2 винеровский процесс W(t). Формула (5.15) называется формулой Ито. Заметим, что для детерминированных гладких функций N ″ W(t) выражение 0 Fxx (t,X )g 2 (t,X ) не входит в формулу (5.15). 4 Поэтому интегралы в смысле Ито, содержащие случайные процессы, нельзя при замене переменных преобразовывать по обычным правилам, разработанным в рамках математического анализа для детерминированных функций. В частности, неприменима обычная формула интегрирования по частям. Пример 5.1. В качестве примера рассмотрим процедуру вычисления стохастического интеграла в смысле Ито t
I (t ) = ∫ W (τ ) dW (τ ) , 0
где W(t) – винеровский процесс с интенсивностью N 0 . При 2 этом, будет показано,, что N ⎞ 1⎛ (5.16) I (t ) = ⎜W 2 (t ) − 0 t ⎟ . 2⎝ 2 ⎠ Будем исходить прямо из определения интеграла Ито, согласно которому имеем n −1
I (t ) = l.i.m.U n := l.i.m. ∑ W (ti )(W (ti +1 ) − W (ti )) , n →∞
n →∞ n = 0
104
(5.17)
t где ti = i . Далее, обозначая ∆Wi = (W (ti +1 ) − W (ti )) , запишем n легко проверяемое тождество W (ti ) = ∑ (W (tk ) − W (tk −1 )) = ∑ ∆W k −1 . i
i
k =1
k =1
Подставляя последнее выражение воспользовавшись тождеством10
в
формулу
(5.17)
и
2
n−1 ⎛ n ⎞ n 2 ⎛ i ⎞ ⎜ ∑ yk ⎟ − ∑ yk = 2∑ yi+1⎜ ∑ yk ⎟ , i=0 ⎝ k=1 ⎠ k=1 ⎝ k=1 ⎠
в котором положим yk : = ∆Wk −1 , найдем представление для U n : i n −1 U n = ∑ ∆Wi ⎛⎜ ∑ ∆Wk −1 ⎞⎟ = i =0 ⎝ k =1 ⎠
2 n 1 ⎛⎛ n ⎜⎜ ⎜ ∑.∆Wk −1 ⎞⎟ − ∑ (∆Wk −1 )2 ⎠ k =1 2 ⎝ ⎝ k =1
⎞ ⎟⎟ = ⎠
n 1 2 = ⎛⎜W 2 (t ) − ∑( ∆Wk −1 ) ⎞⎟ . k =1 ⎠ 2⎝
Поскольку W 2 (t ) не зависит от n, то для доказательства формулы (5.16) достаточно установить соотношение
n
2 l.i.m. ∑ (∆W k −1) = n→∞ k =1
N0 t. 2
В терминах обычного числового предела это эквивалентно следующему: 2 ⎡⎛ 2 N0 ⎞ ⎤ t⎟ ⎥ = 0 . lim Μ ⎢⎜ ( ∆Wk −1 ) − (5.18) n→∞ 2 ⎠ ⎦⎥ ⎣⎢⎝ 10
Это тождество есть тривиальное следствие из формулы разложения квадрата суммы нескольких слагаемых.
105
Так как
[
]
t M ( ∆W k −1)2 = D[∆Wk −1 ] = N 0 , 2n
то каждая из случайных величин ∆W k −1 , k=1,2,…,n Qk : = N 0t 2n распределена по нормальному закону с параметрами (0,1). Кроме того, на основании ранее изложенного, эти случайные величины независимы. Следовательно, случайная величина n χ n2 = ∑ k =1 Qk2 распределена по закону χ 2 с n степенями
[ ]
[ ]
свободы, причем M χ n = n и D χ n = 2n (см., например, книгу Г. Крамера [13, глава 18]). Вынося в (5.18) за знак N0t математического ожидания неслучайный множитель и 2n сокращая далее обе части равенства на постоянный множитель 2
2
2
⎛ N0 ⎞ t ⎟ , вместо равенства (5.18) можно эквивалентным ⎜ ⎝ 2 ⎠ образом записать 1
(
[(
)
n 2⎤ 1 2 2 ⎡∑ M Q k − n ⎥ = lim 2 M χ n − n 2 ⎢ n →∞ n ⎣ k =1 ⎦ n →∞ n
lim
[ ]
Наконец с учетом равенства n = M χ n2
2⎤ ⎡ 2 M ⎢ ⎛⎜ χ n − n ⎞⎟ ⎥ = D χ n2 = 2 n , ⎠ ⎥ ⎢⎣ ⎝ ⎦
[ ]
106
) ]= 0 2
. (5.19)
откуда следует, что (5.19) очевидным образом выполняется, а вместе с ним выполняется и (5.18). Таким образом, формула (5.16) доказана. Следует отметить, что тот же самый результат может быть получен при помощи формулы Ито, которая в частном случае F(t, x) = F(x), f (t,x ) ≡ 0 , g (t,x ) ≡ 1 приобретает вид dF (W ) = Fx′(W ) dW +
N0 Fxx′′ (W ) dt . 4
Поэтому, полагая далее F(x) := x2, имеем Fx′(W ) = W, Fxx′′ (W ) = 1 и, с учетом выражения для dF (W ) , приходим к равенству ⎛1 ⎞ N W dW = d ⎜ W 2 ⎟ − 0 dt . ⎝2 ⎠ 4 Следовательно, можно записать t t ⎛1 ⎞ N t I (t ) = ∫ W (τ ) dW (τ ) = ∫ d⎜ W 2 ⎟ − 0 ∫ dt , 0 0 ⎝2 ⎠ 4 0 после чего элементарное вычисление интегралов ведет опять к формуле (5.16). Подчеркнем на данном конкретном примере, что для детерминированной функции W(t) второе слагаемое в круглых скобках формулы (5.16) отсутствует.
Пример 5.2. Другим интересным примером может послужить вычисление стохастического интеграла Ι (t ) = ∫ 0 f (τ ) dW (τ ) , t
N0 , а f(t) – 2 детерминированная функция. Помимо самостоятельного интереса полученный здесь результат будет использоваться
где W(t) – винеровский процесс с интенсивностью
107
ниже в примерах аналитического решения некоторых конкретных стохастических дифференциальных уравнений. В процессе рассмотрения данного примера будет установлено, что I(t) – это нормальный процесс с независимыми приращениями, причем (5.20) M [Ι (t )] = 0 и N t (5.21) D[Ι (t )] = 0 ∫ 0 f 2 (τ ) dτ . 2 Отметим попутно, что в частном случае f (t ) ≡ 1 формулы (5.20), (5.21) эквивалентны формуле (5.9) в полном соответствии в соотношениями (5.8) и (5.10). Прежде всего заметим, что в случае непересекающихся промежутков [t0 ; t0 + T0] и [t1 ; t1 + T1] случайные величины ∆Ι (t0 ;T0 ) = ∫ t 00
f (τ ) dW (τ )
∆Ι (t1; T1 ) = ∫ t11
f (τ ) dW (τ ) ,
t + T0
и t + T1
являющиеся приращениями процесса I(t), соответственно, на отрезках [t0 ; t0 + T0] и [t1 ; t1 + T1] независимы, что показывается так же, как и для соответствующих приращений винеровского процесса W(t). Кроме того, I(t) как стохастический интеграл представляется в виде определённого предела в среднем квадратичном интегральных сумм, линейно зависящих от приращений винеровского процесса, которые к тому же являются независимыми. Таким образом, поскольку каждая интегральная сумма является нормальной случайной величиной как сумма независимых нормальных случайных величин, приходим к выводу, что получаемый в процессе предельного перехода интеграл также является нормальной 108
случайной величиной. Приведенное обоснование последнего утверждения не является строгим, но может быть дано совершенно строго в теории случайных процессов. Займемся теперь выводом формул (5.20) и (5.21). Пользуясь формулой (5.10), найдем t t M[Ι (t )] = M ⎡ ∫ f (τ ) dW (τ )⎤ = ∫ f (τ )M[N (τ )] dτ = 0 , ⎢⎣ 0 ⎥⎦ 0
что доказывает (5.20). Кроме того, с учетом (5.20) и (5.10) имеем t t 2 D[Ι (t )] = M (Ι (t )) = M ⎡ ∫ f (τ ) N (τ ) dτ ∫ f (τ ′) N (τ ′) dτ ′⎤ = ⎢⎣ 0 ⎥⎦ 0
[
]
t t = ∫ f (τ ) ⎛⎜ ∫ f (τ ′) M[N (τ ) N (τ ′)] dτ ′ ⎞⎟ dτ = 0 ⎠ ⎝ 0
=
N0 2
N ∫ f (τ ) ⎛⎜⎝ ∫ f (τ ′) δ (τ − τ ′) dτ ′ ⎞⎟⎠ dτ = 2 ∫ t
t
0
0
0
t
0
f
2
(τ ) dτ ,
доказывая тем самым (5.21). Существуют также некоторые другие понятия стохастических интегралов, в частности понятие симметризованного стохастического интеграла Р.Л. Стратоновича (см., например, книгу В.И. Тихонова и М.А. Миронова [19]). Эти другие стохастические интегралы могут быть выражены определенным образом через стохастический интеграл Ито. При чтении литературы всегда нужно внимательно отслеживать, в каком смысле понимается в контексте стохастический интеграл. В данной книге всюду в дальнейшем стохастический интеграл (и, соответственно, стохастический дифференциал) понимается только в смысле Ито. Таким образом, возвращаясь к стохастическому дифференциальному уравнению (5.12), напоминаем, что существование его решения понимается в смысле существования соответствующего стохастического интеграла – 109
концепцию последнего только что обсудили и привели примеры вычисления стохастических интегралов. Что касается решения стохастического дифференциального уравнения (5.12), для этой цели разработаны специальные численные методы, с простейшими из которых ознакомимся в следующем параграфе книги. А в заключение данного параграфа будут рассмотрены примеры стохастических дифференциальных уравнений, допускающих аналитические решения, и построим эти решения. В последующих трех примерах этого параграфа мы будем работать со стандартным винеровским процессом W(t), то есть порождаемым N стандартным белым шумом (интенсивность которого 0 = 1 ). 2 Во-первых, это связано с тем, что будем ссылаться на конкретные модели финансовой динамики, оперирующие со стандартными винеровскими процессами, а во-вторых, это приводит (без потери общности) к небольшим упрощениям формул при разборе примера 5.5.
Пример 5.3. Пусть требуется решить следующее стохастическое дифференциальное уравнение:
d X = µ dt + σ d W, µ,σ = const . Это уравнение представляет собой известную модель Л. Башелье для описания эволюции стоимости акций (см. [26]). По сути дела ту же форму имеет уравнение эволюции процентной ставки в модели Р. Мертона (см. [35]). С учетом условия W(t) = 0, получаем, непосредственно интегрируя, X (t ) = X (0 ) + µ t + σ W (t ) .
110
Пример 5.4. Решим стохастическое дифференциальное уравнение dX = µ X dt + σ X dW, µ,σ = const . Данное уравнение приводит к знаменитой модели П.Самуэльсона (см. [38]) или, как более употребительно говорить в современной литературе, к модели Блэка-МертонаШоулза (см. [28, 35]), описывающей эволюцию стоимости акций геометрическим (или, как называл его сам Самуэльсон, экономическим) броуновским движением. Аналогичное уравнение для эволюции процентной ставки используется в модели Л. Дотхана (см. [30]). Для решения данного уравнения воспользуемся формулой Ито с F(t,x)= ln x, при этом придем к формуле
1 1 1 ⎛ 1 ⎞ d ln X = ⎜ µ X − σ 2 X 2 ⎟ dt + σ X dW , 2 2 X X ⎠ ⎝X после упрощения которой получаем уравнение 1 ⎞ ⎛ dlnX = ⎜ µ − σ 2 ⎟ dt + σ dW . 2 ⎠ ⎝ Последнее уравнение после формальной замены ln X → X полностью аналогично уравнению, рассматривавшемуся в примере 5.3. Поэтому, воспользовавшись полученным ранее результатом, имеем 1 ⎛ ⎞ lnX (t ) = lnX (0) + ⎜ µ − σ 2 ⎟ t + σ W (t ) 2 ⎠ ⎝ или 1 2⎞ ⎛ ⎜ µ − σ ⎟ t + σ W(t)
X (t ) = X (0 ) e ⎝ 2 ⎠ . Пример 5.5. В теории эволюции краткосрочной процентной ставки используется модель О. Васичека (см. [41]), основанная на описании искомого процесса посредством стохастического дифференциального уравнения вида (при α = 0 это уравнение переходит в уравнение Ортштейна-Уленбека, предложенное в [40]) 111
dX = (α − βX ) dt + γ dW, α, β,γ = const.
Нашей целью будет показать, что это уравнение также допускает аналитическое решение. Перепишем исходное уравнение в виде dX = − β X dt + (α dt + γ dW )
и воспользуемся методом вариации постоянных, рассматривая выражение в круглых скобках как неоднородность уравнения: Х (t ) = X (0 ) e − β t + α ∫ e − β (t − s ) ds + γ ∫ e − β (t − s ) dW (s ) = 0 0 t α = X (0 )e − β t + 1 − e − β t + γ e − β t ∫ e β s dW (s ). 0 β t
t
(
)
Для вычисления оставшегося интеграла применим формулу (5.21) при f (s ) = γ e − β (t − s ) и окончательно получим X (t ) = X (0 )e − β t +
1 − e −2 β t α 1− e −βt + γ Z (t ) , 2β β
(
)
где Z(t) – нормальный случайный процесс, значения которого в различные моменты времени независимы и при любом фиксированном t значение Z(t) – это нормальная случайная величина с параметрами (0,1). При этом было использовано то, что в каждый момент времени t случайная величина γ
1− e −βt Z (t ) 2β
распределена
нормально
с
математическим ожиданием и дисперсией, равной γ 2
112
нулевым 1 − e −2 β t . 2β
Таким образом, при достаточно малых значениях t дисперсия решения растет как γ 2 t ,11 и, следовательно, первоначально краткосрочная ставка X(t) распространяется как стандартный винеровский процесс, хотя и с некоторым дрейфом.12 Однако для больших значений t процесс X(t) сходится к стационарному решению, представляющему собой нормальное распределение с математическим ожиданием
α и β
γ2 . Подобные процессы называют процессами 2β возвращения к среднему.
дисперсией
5.5 Численные методы решения стохастических дифференциальных уравнений К сожалению, аналитическое решение допускают крайне ограниченные классы стохастических дифференциальных уравнений и дополнительные трудности при интегрировании, если сравнивать с интегрированием обычных (то есть детерминированных) дифференциальных уравнений, вносит наличие управляющего случайного (винеровского) процесса. Поэтому для исследования стохастической динамики сложных систем все чаще применяются методы компьютерного моделирования. Кроме того, были разработаны определенные методы решения стохастических численные дифференциальных уравнений и систем таких уравнений. Эти методы основаны на смешении идей интегрирования детерминированных дифференциальных уравнений и
−2 β t
При малых t можно приближенно записать 1 − e ≈ 2β t . 12 Наличие дрейфа обусловлено ненулевым математическим ожиданием 11
X (0)e − β t +
(
)
α 1 − e − β t процесса X(t). β 113
определенной техники, специфической для методов МонтеКарло. Естественным подходом при приближенном компьютерном решении стохастических дифференциальных уравнений следует считать использование специфических разностных методов, которые естественным образом вытекают из данных выше определений стохастических интегралов через организованные специальным образом интегральные суммы. При этом для оценки точности таких разностных методов естественно оценивать уклонение приближенного процесса от точного в среднем квадратичном. В оценках точности, как правило, появляются значения приращения винеровского процесса ∆W := W(t+∆t) – W(t), где ∆t – шаг разностной сетки по времени, поэтому следует иметь в виду, что N 0 ∆t ∆W = W (t + ∆t ) − W (t ) = Z (t ) , 2 где, как и выше, Z(t) – нормальный случайный процесс с нулевым математическим ожиданием и корреляционной функцией ⎧0 , t1 ≠ t2 . K (t1,t 2 ) = ⎨ ⎩1, t1 = t 2 Другими словами, случайная величина ∆W имеет дисперсию ~ ∆t и, следовательно, характерный разброс значений (среднее квадратическое отклонение) ~ ∆t . Продемонстрируем, как строятся разностные методы на примере уравнения (5.12). Итак, будем исходить из уравнения dX = f (t,X ) dt + g (t,X ) dW
(5.22)
с начальным условием
X (t0 ) = X 0 , где X0 – некоторая заданная случайная величина. 114
(5.23)
Введем разностную сетку по времени, задав узлы сетки ti := t0 + i ∆t с фиксированным шагом ∆t. Задача Коши (5.22), (5.23) может быть записана в эквивалентной форме в терминах стохастических интегралов, если временно принять ti за начальный момент, X (t ) = X (ti ) + ∫ f (τ,X (τ )) dτ + ∫ g (τ,X (τ )) dW (τ ) . t
t
ti
ti
(5.24)
Полагая теперь t = ti +1 и ориентируясь на определение стохастических интегралов, приближенно имеем
∫ и
∫
t i +1 ti t i +1 ti
f (τ,X (τ )) dτ ≈ f (ti ,X (τ i ))∆t ,
(5.25)
g (τ,X (τ )) dW (τ ) ≈ g (ti ,X (ti )) ∆Wi ,
(5.26)
где, как и выше, ∆Wi : = W (ti +1 ) − W (ti ). Эти соображения приводят нас к разностной схеме, аппроксимирующей исходную задачу Коши (5.22), (5.23), X i +1 = X i + f (ti ,X i ) ∆t + g (ti ,X i ) ∆Wi , i = 0 ,1,... , (5.27) где случайные величины X i теперь рассматриваются как приближения (аппроксимации) соответствующих точных значений X (ti ) искомого случайного процесса. Таким образом, искомый случайный процесс X (t ) аппроксимируется при помощи (5.27) временным рядом X i , i = 0,1,... на заданной сетке по времени. Разностная схема (5.27) называется схемой Эйлера. При работе компьютерного алгоритма, основанного на применении этой схемы, для вычисления реализации X i +1 используется реализация X i , вычисленная на предыдущем шаге, а величина ∆Wi моделируется как реализация нормальной случайной величины с нулевым математическим 115
N0 ∆ t (или, что то же самое, 2 N0 со средним квадратичным отклонением, равным ∆t ). 2 Таким образом, если теоретическая разностная схема (5.27) определяет последовательность случайных величин (временной ряд) X i , i = 0,1,..., то соответствующий компьютерный алгоритм позволяет получить лишь конкретную реализацию этой последовательности. Поэтому, как это и делается в алгоритмах, основанных на применении методов Монте-Карло, необходимо повторить процесс моделирования, базирующийся на использовании формулы (5.27), большое количество раз, чтобы иметь в своем распоряжении набор компьютерных реализаций последовательности X i , i = 0,1,... , достаточный для проведения дальнейших статистических выводов. В теории приближенного решения стохастических уравнений показывается (см., например, книгу Д. Ф. Кузнецова [16]), что разностная схема Эйлера дает приближенное решение задачи (5.22), (5.23) с оценкой погрешности в среднем квадратичном ожиданием и дисперсией, равной
X (t i ) − X i ∼ ( ∆t) 2 при условии, что коэффициенты уравнения f (t , x ) и g (t , x ) удовлетворяют условию липшицевости: f (t, x ) − f (t, y ) + g (t, x ) − g (t, y ) ≤ L x − y , L=const 1
для любых t, x, y. Оказывается, что низкая точность аппроксимации порядка 1 для схемы (5.27) на самом деле происходит из-за ( ∆t ) 2 недостаточно хорошей принятой аппроксимации (5.26) второго интеграла в (5.24), в то время как аппроксимация (5.25) первого
116
интеграла дает вклад в результирующую точность ~ ∆t.13 Если вместо (5.26) использовать аппроксимацию 1 g (ti ,X (ti )) g ′x (ti ,X (ti )) ∆t + ti 2 1 2 + g (ti ,X (ti )) ∆Wi + g (ti ,X (ti )) g ′x (ti ,X (ti ))( ∆Wi ) , 2 то при достаточной (более высокой, чем в случае схемы Эйлера) гладкости функции g(t, x) новая схема 1 ⎞ ⎛ X i +1 = X i + ⎜ f (ti ,X i ) − g (ti ,X i ) g ′x (ti ,X i )⎟ ∆t + 2 ⎠ 2 ⎝ 1 + g (ti ,X i ) ∆Wi + g (ti ,X i ) g ′x (ti ,X i )( ∆Wi ) i = 0,1,… 2 будет уже иметь аппроксимацию ∼ ∆t. Эта схема называется схемой Милштейна. По аналогии легко записать схему Эйлера для системы стохастических дифференциальных уравнений (5.11). Эта схема имеет вид Xi +1 = Xi + f (ti ,Xi ) ∆t + g(ti ,Xi ) ∆Wi i = 0 ,1,… , , где Xi – аппроксимация к X (ti ) . Можно показать, что и для систем, если предположить достаточную гладкость векторных полей f(t,x) и g(t,x), схема Эйлера имеет аппроксимацию
∫
ti +1
g (τ,X (τ )) dW (τ ) ≈ −
1
~ ( ∆t ) 2 . Что касается обобщения схемы Милштейна на случай систем, то при этом возникают определенные технические трудности, оставленные без обсуждения, отсылая интересующегося читателя к книге Д.Ф. Кузнецова [16].
13
Заметим, что ситуация, когда второй интеграл в (5.24) отсутствует, реализуется при g (t , x ) ≡ 0 . Но тогда исходное уравнение (5.22) становится чисто детерминированным, а разностная схема (5.27) переходит в схему Эйлера для детерминированного уравнения, имеющую, как известно, точность ~ ∆t.
117
118
ЧАСТЬ
II
ПРИМЕНЕНИЕ МЕТОДОВ МОНТЕ-КАРЛО В ФИНАНСОВО-ЭКОНОМИЧЕСКОМ МОДЕЛИРОВАНИИ
1
2
Глава 6 Анализ непрерывного потока финансовых платежей В рамках финансово-инвестиционного анализа приходится вычислять так называемую чистую приведенную стоимость или NPV (Net Present Value) потока финансовых платежей, которая в случае непрерывного потока платежей вычисляется по формуле (см., например, [15] ):
NPV = ∫ e − r t ρ(t ) dt , T
0
(6.1)
где e − r t – значение коэффициента дисконтирования для промежутка времени [0;t]; r – (постоянная) банковская ставка; ρ (t ) – функция интенсивности (плотности) платежей; T –период наблюдения. Таким образом, данная практическая задача сводится к вычислению интеграла, и в данной главе будет рассмотрено, как можно решить ее, применяя методы статистического моделирования. Но вначале целесообразно обсудить возможности применения методов Монте-Карло для вычисления интегралов произвольного вида, поскольку в такой общей постановке задача интегрирования имеет самостоятельный интерес и возникает в других финансовоэкономических приложениях. После этого можно будет вернуться к проблеме вычисления интеграла (6.1). 6.1 Необходимые сведения из математической статистики
Ранее уже упоминалось, что очень многие задачи, решаемые методами Монте-Карло, в частности те, что связаны с вычислением, могут быть интерпретированы как вычисление математического ожидания некоторой случайной величины. Ниже будет приведен необходимый для последующего изложения набор сведений, касающийся 121
статистических оценок величины математического ожидания. Предположим, что поставлена задача оценки математического ожидания а для некоторой одномерной случайной величины Х, то есть следует оценить величину a = M[ X ] . Если при этом имеется в распоряжении некоторый набор (выборка) Х1,Х2,…,ХN из N независимых реализаций случайной величины Х, то в качестве оценки математического ожидания в математической статистике принимается среднее арифметическое 1 N X N := ∑ X i . N i =1 Согласно закону больших чисел (теорема Хинчина) величина X N сходится по вероятности при N → ∞ к математическому ожиданию а случайной величины Х, то есть P
X N → a,
N →∞.
Это означает (см., например, [13 , глава 20]), что при любом фиксированном ε > 0
(
lim P X
N→∞
n
)
−a >ε = 0 .
Проведенное рассуждение дает основание считать, что при больших N выполняется приближенное соотношение XN ≈a, и, таким образом, за приближенное значение (статистическую оценку) величины а можно принять XN.
122
Для определения погрешности полученной оценки предположим, что случайная величина Х имеет конечную дисперсию 2 σ 2 = D[X ] = M X 2 − (M[ X ]) . Согласно центральной предельной теореме, последовательность одинаково распределенных независимых случайных величин с конечной дисперсией σ 2 порождает случайную величину
[ ]
N
1
∑ (X
a = M [X ] , i − a) , σ N i =1 которая в пределе при N → ∞ нормально распределена с параметрами (0,1). Более точно, N ⎛⎧ 1 1 x ⎫⎞ ⋅ ∑ ( X i − a ) < x 2 ⎬ ⎟⎟ = lim P⎜⎜ ⎨ x1 < ∫ 2 N →∞ 2π x1 σ N i =1 ⎭⎠ ⎝⎩
t2
e − 2 dt .
Принимая далее x 2 = − x1 = x, получим
⎛⎧ 1 lim P ⎜⎜ ⎨ N →∞ ⎝⎩ N
N
∑ (X i =1
i
− a) <
x σ ⎫ ⎞⎟ ⎬ = Φ (x ) , N ⎭ ⎟⎠
где Φ ( x ) – интеграл вероятностей: 2
2 x − t2 dt . π ∫0 e Поэтому при больших N можно принять Φ(x ) =
(6.2)
⎛⎧ x σ ⎫⎞ P⎜⎜ ⎨ X N − a < ⎬ ⎟ ≈ Φ(x ) . N ⎭ ⎟⎠ ⎝⎩
В этой приближенной формуле x ≥ 0 можно фиксировать произвольным образом. В частности, задавая доверительную 123
вероятность β и обозначая через x β корень уравнения
Φ ( x ) = β , можно оценить вероятность того, что ошибка xβ σ приближения XN −a меньше величины и N определяется величиной β , то есть ⎛⎧ x σ ⎫⎞ P⎜⎜ ⎨ X N − a < β ⎬ ⎟⎟ ≈ β . N ⎭⎠ ⎝⎩
(6.3)
Чаще всего берут β = 0.977, тогда x β = 3, или β = 0.95, тогда
x β = 1.96. Трудно, конечно, представить себе задачи, в которых требовалось бы определить M[X ] (то есть M[X ] была бы неизвестна) при известной дисперсии D[X ] . Поэтому на практике используют приближенную формулу 2
1 N ⎛1 N ⎞ σ ≈ s : = ∑ X i2 − ⎜ ∑ X i ⎟ . N i =1 ⎝ N i =1 ⎠ 2
2 N
Из математической статистики известно, что это – смещенная статистическая оценка для дисперсии. Но при больших N , а именно при таких N имеет смысл построенная выше приближенная оценка для M[X ] , смещенная оценка для дисперсии мало отличается от несмещенной. Существуют также методы оценки ошибки, не использующие значения дисперсии или оценки дисперсии, а также методы оценки ошибки в задачах с бесконечной дисперсией. За деталями заинтересованный читатель может обратиться к книге [10].
124
6.2 Простейший метод Монте-Карло для вычисления интегралов Теперь обсудим вопрос, каким образом применение техники Монте-Карло позволяет решать задачу вычисления интеграла – задачу чисто детерминированную. Итак, пусть требуется вычислить интеграл Ι = ∫D f (x ) p(x ) dx = ∫ f ( x1,x2 ,...,xn ) p( x1,x2 ,...,xn ) dx1 dx2 D
d xn ,
(6.4) где D – заданная область n-мерного пространства; x = ( x1;x2;...;xn ) – вектор переменных x1, x2 ,…, xn ; f (x ) = f ( x1,x2 ,..., xn ) – заданная функция n переменных; p (x ) = p ( x1 , x2 ,..., xn ) – плотность распределения некоторой n-мерной случайной величины Х, причем p (x ) > 0 при x ∈ D (очевидно, такие случайные величины всегда существуют). Тогда исходный интеграл легко преобразуется к виду (6.4) следующим приемом: ∫D f (x ) dx = ∫D f1 (x ) p(x ) dx ,
(6.5)
f (x ) . В частности, если область D имеет p(x ) конечный объем (объем D < ∞ ), то можно принять в (6.5) 1 p(x ) ≡ – плотность равномерно распределенной в D объем D случайной величины. Итак, без ограничения общности, будем рассматривать задачу вычисления интеграла в форме (6.4), где p (x ) – плотность распределения n-мерной случайной величины Х, принимающей свои значения в области D. Введем далее одномерную случайную величину Y := f (X ) , для которой где
f1 (x ) =
125
M[Y ] = ∫D f (x ) p(x ) dx = Ι . Опираясь теперь на тот факт, что значение I искомого интеграла на самом деле совпадает с математическим ожиданием одномерной случайной величины Y, воспользуемся техникой построения статистических оценок (необходимая сводка результатов приведена в предыдущем параграфе книги). Опишем теперь процедуру применения простейшего метода Монте-Карло. Пусть X1,X 2 ,..., X N – независимые реализации случайной величины Х. Поскольку плотность распределения p (x ) случайной величины Х известна, для можно применять методику, генерации X1,X 2 ,..., X N описанную в параграфе 4.3. Тогда в качестве оценки интеграла (6.4) можно принять 1 N 1 N Y N = ∑ Yi = ∑ f (Xi ) . N i =1 N i =1 При этом, как следует из теории вероятностей, M Y N = Ι и
[ ]
P
Y N → Ι при N → ∞ . Оценка погрешности полученной оценки производится так же, как описано в параграфе 6.1, а именно, задаваясь некоторой доверительной вероятностью β ∈ (0;1) , принимаем, пользуясь центральной предельной теоремой, ⎛⎧ x s ⎫⎞ P⎜⎜ ⎨ Y N − Ι < β N ⎬ ⎟⎟ ≈ β , (6.6) N ⎭⎠ ⎝⎩ где s N – оценка среднего квадратичного отклонения случайной величины YN , которую можно, например, принять в виде 2
1 N ⎞ ⎛1 N 2 SN = . ∑ ( f ( X i )) − ⎜ ∑ f ( X i )⎟ N i =1 ⎝ N i =1 ⎠ Замечание 6.1. Существует большое число различных модификаций указанного выше метода Монте-Карло, 126
которые могут приводить при одном и том же N к различным оценкам для S N и, значит, к различным интервалам допустимого разброса значений искомого интеграла. Однако на практике приходится также учитывать трудоемкость каждого такого метода, которая в основном связана с трудоемкостью генерации нужных случайных величин. Встречаются ситуации, когда, например, из двух сравниваемых методов тот метод, который обладает худшей дисперсией (при фиксированном N), характеризуется в то же время меньшей трудоемкостью, и за счет применения его при большем N, чем для метода с лучшей дисперсией, такой метод оказывается в конечном счете более эффективным. Конкретные примеры такого рода могут быть найдены в книге [18, глава 3].
6.3 Финансовые платежи Вернемся к проблеме анализа потока финансовых платежей, которая, как уже было указано ранее, сводится к задаче вычисления интеграла (6.1). Применим для решения этой задачи простейший метод Монте-Карло. Для удобства t введем нормированное время x := . Тогда вместо (6.1) T получим 1 1 − e −r T 1 NPV = ∫ e − r T x ρ(T x )T dx = ∫0 ρT (x ) p(x ) dx , (6.7) 0 r где
ρT ( x ) : = ρ(T x ),
(очевидно, что
p(x ) : =
∫ p(x ) dx = 1 ). 1
0
127
rT e −r T x 1 − e −r T
Далее,
пусть
x1,x2 ,..., xN – независимые
реализации
случайной величины Х, распределенной с плотностью p (x ) . Тогда, согласно методике, описанной в параграфе 6.2, имеем следующую оценку Монте-Карло для NPV: NPV N =
1 − e− r T N ∑ ρT ( xi ) . r N i =1
(6.8)
Поскольку большинство генераторов выдают обычно случайные числа, распределенные равномерно в (0;1), для генерации случайной величины Х применим метод обратных функций. Вычислим сначала функцию распределения F(x), соответствующую плотности p (x ) : ⎧0 , x ≤ 0 , ⎪ ⎪1 − e − r T x x F ( x ) = ∫ − ∞ ρ( y ) dy = ⎨ , 0 < x <1 , −r T ⎪ 1− e ⎪⎩1, x ≥1 .
Поэтому,
удобно
моделировать
реализации
случайного числа Г и использовать связь 1 − e −r T X =Γ 1 − e −r T или X=
1 1 ln r T 1 − (1 − e − r T ) Γ
128
γ1,γ2 ,...,γN
Таким образом, реальная практическая схема построения оценки Монте-Карло для NPV основывается на применении формулы (6.8), где xi: =
1 1 ln . r 1 − 1 − e − r T γi
(
)
Для того чтобы указать погрешность оценки (6.8), что эквивалентно построению соответствующей интервальной оценки, вычислим статистическую оценку среднего квадратичного отклонения 1
sN = Задаваясь
1− e r
−r T
2 2 ⎡1 N 2 ⎞ ⎤ ⎛1 N ⎢ ∑ ρT ( xi ) − ⎜ ∑ ρT ( xi )⎟ ⎥ ⎠ ⎦⎥ ⎝ N i =1 ⎣⎢ N i =1
некоторой
доверительной
.
вероятностью
β ∈ (0;1) , интервальная оценка принимается приближенно в виде (6.6), в которой Y N и I заменены, соответственно, на NPV N и NPV.
129
Глава 7
Механические торговые системы
Механические торговые системы применяются при использовании активного управления инвестиционным портфелем. По сути дела механическая торговая система (или, сокращенно МТС) – это набор правил, жестко регламентирующих моменты открытия и закрытия позиций; другими словами, МТС задает правила входа в позицию или выхода из позиции в зависимости от складывающейся ситуации. Для получения доходов от операций с ценными бумагами трейдер должен ещё иметь в распоряжении набор правил для управления капиталом. Эти правила должны определять объем открываемых позиций в момент поступления соответствующих сигналов от МТС. В отличие от интуитивного подхода в торговле использование механических торговых систем позволяет полностью исключить эмоциональный фактор при принятии торговых решений и, как следствие, применять научно обоснованные статистические методы для исследования результатов работы МТС. Поскольку правила, определяющие работу МТС, обычно разрабатываются на основе анализа исторических временных рядов цен активов, нельзя представить абсолютную гарантию, что МТС, построенная на таком ретроспективном анализе, будет успешно работать в будущем. Однако чем более качественно проведено тестирование МТС, тем больше имеется оснований рассчитывать на то, что результаты ее работы будут приводить к удовлетворительным для трейдера доходам и в будущем. Успех работы любой МТС существенно зависит от того, насколько успешно выбраны ее параметры – так называются переменные, фигурирующие в правилах открытия и закрытия позиций. В результате тестирования МТС и последующей ее оптимизации определяется набор параметров, при которых важнейшие показатели системы находятся в оптимальных для данного трейдера пределах. Как правило, МТС создается, 130
тестируется и оптимизируется на историческом временном ряде цен некоторого одного актива. Для создания хорошей МТС крайне важно обеспечить предотвращение ее подгонки под конкретные исторические данные, которые заведомо не повторятся в будущем. Одним из наиболее эффективных способов проверки МТС на излишнюю подгонку является ее апробация на исторических рядах цен других активов без изменения параметров системы. Если при неизменных параметрах МТС продолжает демонстрировать хорошие результаты и для других активов, то это позволяет рассчитывать, что данная система окажется эффективной и в реальной торговле. Следует учитывать, что ценность проверки МТС при смене активов существенно снижается, если активы сильно коррелированы. С другой стороны, если активы высококоррелированы, а МТС демонстрирует сбои при смене одного такого актива на другой, то пользоваться такой системой категорически не рекомендуется. Тестирование механических торговых систем проводится при различных значениях оптимизируемых параметров, в результате чего формируются 1 соответствующие отчеты. На основании анализа этих отчетов подбираются значения параметров системы, которые являются в определенном смысле оптимальными для трейдера. Основной целью в данной книге является демонстрация некоторых возможностей методов МонтеКарло при обработке отчетов о тестировании МТС.
7.1 Вероятность получения убытка в серии последовательных сделок Рассмотрим возможный метод Монте-Карло для оценки вероятности получения убытка в серии последовательных сделок. Такая оценка вероятности основана на многократном численном моделировании результатов серии сделок на базе 1
Примеры отчетов о тестировании МТС можно найти в книге С.В. Булашева [4].
131
статистических испытаний. Предполагается, что исходные данные для статистического моделирования берутся из отчета о тестировании данной МТС. Обозначим: Q – полное число проведенных сделок; П (k ) – относительная прибыль (норма прибыли) по итогам первых k сделок; М – длина анализируемой серии сделок. Исходному ряду П (k ) поставим в соответствие вспомогательный ряд x( k ) = ln (1 + П (k ) ), k = 1,2 ,...,Q. Затем по ряду xk строится гистограмма относительных частот и далее – выборочная функция распределения, соответствующая выборке значений x(k ) , k = 1,2,...,Q. 2 Используя генератор псевдослучайных чисел, при помощи метода обратных функций смоделируем выборку y (k ) k=1,2,…,M, длина которой совпадает с длиной М анализируемой серии сделок и распределение которой соответствует построенной выше выборочной функции M
распределения. Фиксируем значение параметра ξ = ∑ y (k ) и k =1
параметра ⎧1, ξ ≤ 0 , ν=⎨ ⎩0 , ξ > 0 . Повторяя с независимо генерируемыми псевдослучайными числами данный этап статистического моделирования N раз, где N – достаточно велико, получим соответствующие выборки ξ1,ξ 2 ,… ,ξ N и ν1,ν2 ,… ,νN . Таким
2
Методику построения гистограмм и выборочных функций распределения можно посмотреть, например, в книгах [4, глава 6] и [8, глава 15].
132
образом, приходим к статистической оценке для вероятности убытка (уб) в серии из М сделок: уб 1 N P N = ∑ νi . N i =1 Вычисляя как обычно выборочное среднее квадратичное отклонение 1
2 2 ⎡1 N ⎛1 N ⎞ ⎤ sN = ⎢ ∑ νi 2 − ⎜ ∑ νi ⎟ ⎥ ⎝ N i =1 ⎠ ⎥⎦ ⎢⎣ N i =1
(7.1)
и
задаваясь некоторой доверительной вероятностью можно также указать соответствующую приближенную интервальную оценку для вероятности убытка в форме (6.6), в которой Y N и I заменены,
β ∈ (0;1) ,
уб
соответственно, на P N и
P уб , где P уб – точное значение
вероятности убытка.
7.2 Вероятность разорения в серии последовательных сделок Вероятностью разорения принято называть вероятность того, что в серии последовательных сделок, проводимых на основании сигналов МТС, накопившаяся величина убытков превысит заранее заданное критическое значение, которое можно интерпретировать как капитал, которым располагает трейдер перед началом данной серии. Вероятность разорения является важной характеристикой хотя бы потому, что она имеет ненулевое значение даже для прибыльных в целом МТС, и это может привести к неверному решению об отказе от пользования такой МТС. Очевидно, что вероятность разорения помимо всего прочего зависит от характера чередования прибыльных и убыточных сделок. В принципе даже при работе с 133
приносящей прибыль системой в силу неблагоприятного стечения случайных обстоятельств может сформироваться такая последовательность следующих друг за другом убыточных сделок, что разорение, как возможный случайный исход, может наступить раньше, чем система проявит свое среднестатистическое свойство приносить прибыль. Таким образом, при оценке вероятности разорения необходимо не только принимать во внимание соотношение между количествами прибыльных и убыточных сделок, но также и учитывать всевозможные последовательности сделок. Методы статистического моделирования как раз хорошо приспособлены для решения такого типа трудоемких задач. Рассмотрим далее простейший метод Монте-Карло, позволяющий дать статистическую оценку вероятности разорения вместе с соответствующим доверительным интервалом. Пусть Q, П (k ) и M имеют тот же смысл, что и в параграфе 7.1 и пусть L – критическое относительное значение убытка, соответствующее порогу разорения. Как и раньше, исходному ряду П (k ) поставим в соответствие вспомогательный ряд x( k ) = ln (1 + П (k ) ) , k = 1,2 ,...,Q . Затем
по ряду x( k ) построим гистограмму относительных частот и далее выборочную функцию распределения, соответствующую выборке значений x(k ) , k = 1,2 ,...,Q. Используя генератор псевдослучайных чисел, при помощи метода обратных функций смоделируем выборку y (k ) , k = 1,2,...,M , длина которой совпадает с длиной М анализируемой серии сделок и распределение которой соответствует построенной выше выборочной функции распределения. При каждом m = 1, 2,…,М последовательно m
вычисляем
ξ m = ∑ y (k ) k =1
и
делаем 134
проверку
на
факт
( ) наступления разорения: если ξ m ≤ ln 1 − L , то разорение в данной серии сделок наступило и дальнейшее увеличение m не производится – в противном случае т далее последовательно увеличивается (если только т не достигло уже значения М) и проверка на разорение повторяется при каждом новом значении m ≤ M . Как результат обработки данной серии из М сделок вычисляется значение параметра ν: ⎧1 ; ξ m ≤ ln ( 1 − L) при некотором m ≤ M , ν=⎨ m ≤ M. ⎩ 0 ; ξ m > ln ( 1 − L) при всех Как и в параграфе 7.1, повторяя с независимо генерируемыми псевдослучайными числами данный этап статистического моделирования N раз, где N – достаточно велико, получим соответствующую выборку ν1,ν2 ,...,νN . Усредняя выборочные значения, приходим к статистической оценке для вероятности разорения в серии из М сделок: разор
PN
=
1 N ∑ νi . N i =1
Вычисляя по формуле (7.1) выборочное среднее квадратичное отклонение и задаваясь некоторой доверительной вероятностью β ∈ ( 0; 1 ) , можно также указать соответствующую приближенную интервальную оценку для вероятности разорения в форме (6.6), в которой разор
Y N и I заменены, соответственно, на P N
P разор – точное значение вероятности разорения.
135
и
P разор , где
.
Глава 8 Моделирование работы массового обслуживания
систем
Рассмотрим модель одной из простейших систем массового обслуживания, которая состоит из п линий (или каналов, или пунктов) обслуживания, каждая (каждый) из которых может независимо "обслуживать" поступающие заявки, но каждая линия в данный момент способна обслуживать не более одной заявки. Предполагается, что в систему поступает случайный (дискретный) поток заявок с заданными вероятностными характеристиками. Если на момент поступления очередной заявки в системе имеются свободные линии, то одна из них принимает на себя обслуживание этой заявки, при этом правило, определяющее, какая из свободных на данный момент линий возьмет на себя обслуживание поступившей заявки, считается заданным. Также считается, что продолжительность обслуживания заявки i-й линией – случайная величина с плотностью распределения pi (t ) , предполагаемой известной. Наконец, считается, что если в данный момент времени все линии заняты, то система выдает отказ и заявка остается не обслуженной. Такие системы массового обслуживания называются системами с отказами. Примером системы с отказами может служить, например, телефонная станция или многоканальный телефонный номер (линии – каналы связи, заявки – вызовы абонентов). В принципе аналогично могут быть смоделированы и другие классы систем массового обслуживания, в частности системы с ожиданием, к которым можно отнести автозаправочные станции или парикмахерские, но для определенности будем рассматривать только системы с отказами. О других типах систем массового обслуживания, равно как и о дополнительных сведениях из теории массового 136
обслуживания можно прочитать, например, в книгах Г. Я. Волошина [7, глава 9], А. Н. Ильченко [11, глава 2], Н. Б. Кобелева [12, глава 5], В. И. Курбатова и Г. А. Угольницкого [17, глава 7], Г. П. Фомина [21, глава 6]. Конкретизируем далее для удобства изложения наши предположения, а именно, будем считать, что на вход системы с отказами поступает стационарный пуассоновский поток заявок – это означает, что случайная величина Θk = tk − tk −1 , равная интервалу времени между двумя последовательными заявками, не зависит от предыстории поступления заявок (другими словами, Θk и Θ j независимы при j ≠ k ) и подчиняется экспоненциальному закону распределения, то есть функция распределения для всех Θk равна F (t ) = 1 − e − a t , 0 ≤ t < ∞ . (8.1) При этом величина a =
1 называется интенсивностью M[Θk ]
потока заявок. Также будем считать, что в системе установлена фиксированная нумерация линий и что работа системы подчиняется следующему правилу выбора свободной линии: очередная заявка поступает на линию, которая освободилась раньше всех, а если таких более одной, то на ту из них, которая имеет наименьший номер. Поставим задачу: оценить среднее число обслуженных заявок в данной системе за промежуток времени [0;Т] и будем решать эту задачу, применяя технику Монте-Карло. Для каждого момента времени и для каждой линии с номером i введем случайную величину τ i – момент освобождения этой линии к данному моменту времени t (должно выполняться τ i ≤ t ); если линия в данный момент
137
времени занята, то полагаем τ i = ∞ . В каждый момент времени будем контролировать величину1 τ = min τ i 1≤ i ≤ n
.
(8.2)
Как и прежде, будем обозначать Γ 1 , Γ 2 ,… через последовательность независимых случайных чисел. Кроме того, обозначая через v количество обслуженных системой заказов, перед тем как начать моделирование, положим ν = 0. Момент поступления 1-й заявки смоделируем по формуле 1 t1 = − ln Γ1 . a Эта формула получается, если применить метод обратных функций, в котором задействована функция распределения (8.1), и положить Γ1 вместо 1 − Γ1 . Тогда 1-ю заявку будет обслуживать 1-я линия, при этом время обслуживания ∆ определится согласно методу обратных функций из условия
∫
∆ 0
p1(y) dy = Γ 2 .
Таким образом, 1-я линия будет занята вплоть до момента τ1 = t1 + ∆ . По формуле (8.2) вычисляется также новое значение τ ; очевидно, последняя величина равна 0, если в системе не меньше двух линий. Кроме того, положим ν : = ν +1 Применим теперь принцип индукции для описания последующих шагов процесса моделирования. Предположим, что сделано (k – 1) шагов этого процесса, то есть полностью смоделирован процесс обслуживания всех заявок вплоть до (k – 1) -й. Далее моделируется момент поступления k-й заявки:
1
Напомним, что через n обозначено общее число линий.
138
1 ln Γ 2 k −1 a и проверяется условие наличия свободных линий: τ ≤ tk . (8.3) Если условие (8.3) выполнено, то система выбирает линию с наименьшим номером i, для которой τ i = τ , и эта линия принимает данную (k-ю) заявку для обслуживания. Продолжительность обслуживания ∆ определяется из условия
tk = tk −1 −
∫
∆ 0
pi ( y ) dy = Γ 2 k
,
а далее вычисляются новые значения τ i = tk + ∆ и τ по формуле (8.2). Наконец, изменяется на единицу количество обслуженных заказов: ν := ν + 1 и на этом моделирование kго шага завершается. Если же условие (8.3) не выполняется (это означает, что в момент времени t k все линии заняты), то система выдает отказ, данная (k-я) заявка остается необслуженной, а моделирование k-го шага процесса опять же завершается. При этом величина ν – счетчика числа обслуженных заявок, сохраняет свое прежнее значение. Моделирование обслуживания поступающих заявок продолжается до тех пор, пока момент поступления очередной заявки не превысит значение Т. К этому моменту содержание счетчика обслуженных заявок будет иметь определенное значение ν . При практическом компьютерном моделировании вместо каждого случайного числа Γ j возможно генерировать лишь серию его независимых реализаций, например при помощи некоторого генератора псевдослучайных чисел. Поэтому компьютерная реализация описанного выше алгоритма должна проводиться путем N -кратного повторения (N – достаточно большое) указанных выше этапов моделирования с различными независимыми последовательностями случайных чисел, что приведет к N 139
смоделированным значениям ν 1 ,ν 2 ,...,ν N количества обслуженных заказов. Отсюда можно получить статистическую оценку для среднего числа обслуженных системой заявок за промежуток времени [0;T]: 1 N ν N = ∑ νi . N i =1 Для указания погрешности этой оценки нужно вычислить выборочное среднее квадратичное отклонение sN по формуле (7.1) и воспользоваться далее формулой (6.6), в которой Y N и I должны быть заменены, соответственно, на ν N и ν ср , где ν ср – истинное значение среднего числа обслуженных заявок в промежутке времени [0;T].
140
Глава 9 Формирование инвестиционного портфеля В данной главе обсуждаются возможности применения техники методов Монте-Карло для численного решения задачи об оптимизации портфеля активов, формируемого инвестором. Известно, что рациональное распределение инвестиций по различным видам активов может существенно снизить риск всего инвестиционного портфеля в целом. Впервые модель формирования оптимального портфеля была предложена в работах Нобелевского лауреата в области экономики, профессора Чикагского университета Г. Марковица и им же указаны определенные методы построения таких портфелей. Задача о формировании и оптимизации инвестиционного портфеля будет рассматриваться именно в постановке Г. Марковица. Для удобства последующего изложения опишем вначале постановку задачи, предложенную Г. Марковицем. Дополнительные детали могут быть найдены в книгах С.В. Булашева [4], М.С. Красса и Б.П. Чупрынова [14] и А.В. Крянева [15].
9.1 Математическая постановка задачи оптимизации портфеля активов Ожидаемый доход и риск портфеля Любому инвестору, принимающему решение о вложении средств в те или иные активы, всегда приходится действовать в условиях неопределенности, поскольку цены активов являются случайными величинами. Как правило, реально полученный от деловой активности доход не совпадает в точности с тем, который ожидается в результате некоторого расчета. Другими словами, инвестирование 141
представляет собой сферу деятельности, связанную с риском. Поэтому прежде чем переходить к каким-либо математическим формализациям, необходимо оговорить, в каком смысле понимается мера риска. Следуя Г. Марковицу, будем характеризовать риск актива мерой рассеяния реально получаемых доходов относительно среднего (то есть ожидаемого) дохода по данному активу или, другими словами, средним квадратичным отклонением доходов по данному активу. Соответственно, риск портфеля отождествляется со средним квадратичным отклонением доходов по всему инвестиционному портфелю. Для вывода формальных соотношений, характеризующих доход портфеля и его риск, предположим, что портфель состоит из n видов активов и обозначим через Ri случайную величину дохода по i-му активу (i = 1,2,…,n) при условии, что инвестор направляет весь свой капитал для приобретения этого актива. Пусть µ i и σ i 2 – соответственно математическое ожидание и дисперсия случайной величины Ri . Тогда, если wi – доля всего капитала, инвестированная в i-й вид актива так, что n
∑w i =1
i
= 1, wi ≥ 0 ,
(9.1) то доход всего портфеля R – это случайная величина, вычисляемая по правилу
R = ∑ wi Ri . n
(9.2)
i =1
µпортф := M[R ]
дохода портфеля получим по правилу сложения математических ожиданий Для
математического
ожидания
142
n
µпортф = ∑ wi µi .
(9.3)
i =1
2 Для дисперсии σ портф := D[R ] всего портфеля имеем:
2 ⎡⎛ n n ⎞⎤ ⎜ ⎟ = M⎢ ∑ wi Ri − ∑ wi µi ⎥ = σ ⎟⎥ i =1 ⎢⎜⎝ i =1 ⎠⎦ ⎣ n ⎡n ⎤ = M⎢∑ wi (Ri − µi ) ∑ wj (R j − µ j )⎥ = j =1 ⎣⎢i =1 ⎦⎥ 2 портф
[
]
= ∑ ∑ w i w j M (R i − µ i ) (R j − µ j ) = n
n
i =1 j =1 n
n
= ∑ ∑ w i w j c ij
,
i =1 j =1
(9.4)
[
сij = M (Ri − µi ) (R j − µ j ) ковариации C := (cij )n× n . где
]
–
элементы
матрицы
Итак, формула (9.3) позволяет определить ожидаемый (средний) доход портфеля активов, в то время как формула (9.4) характеризует риск портфеля в терминах дисперсии доходов по нему1. Диверсификация Перепишем формулу (9.4) в следующем виде: n
n
n
2 = ∑ cij wi2 + 2 ∑ ∑ cij wi w j = σ портф i =1 i =1 j =i +1
1
Очевидно, в соответствии с ранее принятой договоренностью о выборе меры риска, дисперсия доходов равна квадрату выбранной меры риска..
143
n
n
n
= ∑ σ i 2 wi 2 + 2 ∑ ∑ ρij σ i σ j wi w j i =1
i =1 j = i +1
,
(9.5)
где ρ ij – коэффициент корреляции между i-м и j-м активами. Слагаемые вида σ i2 wi2 , характеризующие риски отдельных активов, всегда положительны и работают только на увеличение суммарного риска портфеля. В то же время слагаемые вида ρij σ i σ j wi w j , характеризующие корреляцию между различными парами активов, могут иметь разные знаки или даже зануляться; поэтому эти слагаемые могут вносить различный вклад в суммарный риск портфеля и, в частности, работать на уменьшение суммарного риска. Проведем более детальный анализ величины суммарного риска на примере инвестиционного портфеля, образованного двумя активами, то есть при n = 2. В этом частном случае формула (9.5) принимает вид 2 σ портф = σ12 w12 + σ 22 w22 + 2 ρ12 σ1 σ 2 w1 w2 .
(9.6) Если оба актива полностью коррелированы, то есть ρ12 = 1 , то дисперсия портфеля
2 σ портф = σ 12 w12 + σ 22 w 22 + 2 σ1 σ 2 w1 w2 = (σ1 w1 + σ 2 w2 ) . Отсюда следует, что σ портф = σ1w1 + σ 2 w2 или, другими 2
словами, среднее квадратичное отклонение для всего портфеля просто равно средневзвешенной комбинации средних квадратичных отклонений отдельных активов. В этом случае оба актива выступают в совокупности как актив одного типа и раздельное инвестирование в эти активы не приводит к уменьшению риска портфеля. Если активы не коррелированы, то есть ρ12 = 0, то имеем для дисперсии портфеля 2 σ портф = σ 12 w12 + σ 22 w 22 или σ портф = σ 12 w12 + σ 22 w 22 , 144
и среднее квадратичное отклонение всего портфеля меньше средневзвешенной суммы аналогичных параметров для отдельных активов, так как σ 12 w12 + σ 22 w22 < σ 1 w1 + σ 2 w2 . Это говорит о том, что раздельное инвестирование в два вида актива снижает суммарный риск портфеля, но этот риск тем не менее всегда остается положительным при ненулевых дисперсиях отдельных активов. Наконец, предположим, что активы антикоррелированы, что соответствует случаю, когда ρ12 = −1 . Дисперсия портфеля вычисляется тогда по формуле 2 σ порф = σ12 w12 + σ 22 w22 − 2σ1 σ 2 w1 w2 = (σ1 w1 −σ 2 w2 )
2
или, в терминах среднего квадратичного отклонения, σ портф =| σ 1 w1 − σ 2 w2 | . В данном случае за счет раздельного инвестирования в активы эффект снижения риска всего портфеля может быть наиболее ощутим, в частности при подходящем выборе весов w1 и w2 можно добиться того, чтобы σ портф = 0, то есть
можно в принципе сформировать безрисковый портфель. Следует отметить, что во всех трех рассмотренных случаях математическое ожидание одно и то же, а именно равно µпортф = w1 µ1 + w2 µ2 . Итак, на примере портфеля из двух активов мы убедились в возможности снижения суммарного риска портфеля за счет раздельного инвестирования в различные активы, если только эти активы не являются полностью коррелированными, то есть реально представляющими под различными вывесками один и тот же актив. Подобные, но несколько более громоздкие рассуждения показывают, что эффект снижения суммарного риска портфеля наблюдается и в случае раздельного инвестирования в большее количество активов – при большом количестве таких активов эффект 145
снижения риска портфеля может быть даже еще более заметен. Таким образом, инвестиционный портфель может обладать меньшим риском, чем отдельные составляющие его активы. Это свойство портфеля активов называется диверсификацией. Ясно, что при фиксированном выборе возможных объектов инвестирования эффект диверсификации должен зависеть от распределения капитала инвестора между отдельными активами, то есть от весов wi , i = 1,2,...,n. Поэтому, желая добиться максимального дохода от портфельного бизнеса, инвестор должен решать задачу оптимизации портфеля, то есть задачу оптимального выбора весов wi , i = 1,2,...,n. Эта задача рассматривается далее. Оптимизация инвестиционного портфеля В принципе естественным желанием каждого инвестора является формирование такого инвестиционного портфеля, который обеспечивал бы максимальное значение ожидаемого дохода при одновременном минимальном значении риска. Исходя из полученных выше формул (9.1), (9.3) и (9.4) для оптимизации инвестиционного портфеля инвестор должен был бы выбирать веса wi , i = 1,2,...,n на основе решения следующей оптимизационной задачи2: n
n
2 σ портф = ∑ ∑ cij wi w j → min ; i =1 j =1 n
µпортф = ∑ µi wi → max ; i =1
n
∑ wi =1 , wi ≥ 0 ,
(9.7)
i =1
где величины сij и µ i предполагаются заданными, а веса wi подлежат определению. Задача (9.7) является так называемой 2
Очевидно, задачи минимизации σпортф и
146
2
σ портф эквивалентны.
двухкритериальной задачей, поскольку в ней требуется добиться оптимальных значений сразу двух функционалов. Как правило, такие задачи не имеют решения, поскольку требования максимизации ожидаемого дохода и минимизации риска являются в некотором смысле противоречивыми. Реальный практический путь решения двухкритериальных задач состоит в достижении некоторого разумного компромисса между противоречивыми требованиями. В теории модели Марковица показано, что существует так называемая граница эффективности допустимых решений (или множество эффективных решений, или множество Парето) – это множество векторов w = (w1;w2 ;...;wn ) , удовлетворяющих условию (9.1), или эквивалентно, множество допустимых портфелей3, характеризующееся тем свойством, что для любой пары портфелей из этого множества большему ожидаемому доходу одного из портфелей соответствует и большее значение риска. На рис. 9.1 замкнутая кривая (состоящая частично из жирной и частично из пунктирной линий) ограничивает множество допустимых портфелей, в то время как жирная кривая указывает границу эффективности – фактически наилучшие портфели следует искать именно на этой границе. Если определены всевозможные портфели, соответствующие границе эффективности, то далее инвестор сам выбирает, руководствуясь собственными представлениями о 3
Каждый допустимый портфель может быть отождествлен с некоторым вектором w , подчиненным условию (9.1).
147
подходящем компромиссе между риском и доходностью, из этих портфелей наиболее его устраивающий. Если ввести в задачу (9.7) некоторый компромисс между уровнями достижения своих экстремальных значений каждой из двух целевых функций (критериев), то двухкритериальная задача фактически переходит в однокритериальную. µпортф µпортф макс
* µ портф
σ портф * σ портф
σ портф макс
Рис. 9.1. Множество допустимых и эффективных решений Например, инвестор может зафиксировать по своему желанию устраивающий его уровень доходности µпортф из допустимого диапазона доходностей и выбирать состав портфеля (или, что то же самое, выбирать набор весов wi , i = 1,2,...,n) из условия минимизации риска. В качестве другой разумной возможности сведения двухкритериальной задачи к однокритериальной можно предложить инвестору зафиксировать уровень допустимого им риска (не меньший минимально возможного риска), отвечающий его индивидуальной склонности к риску, и решать задачу максимизации доходности портфеля с заданным априори 148
уровнем риска. Наконец, укажем еще один часто применяемый на практике оправданный способ перехода к однокритериальной постановке портфельной задачи: состав портфеля выбирается из условия максимизации отношения доходности портфеля к его риску; именно для такой постановки мы укажем ниже алгоритм численной оптимизации. Для того чтобы удовлетворить возможные пожелания инвестора в плане перехода от двухкритериальной постановки к однокритериальной, на практике обычно задают некоторую сетку значений µ портф в пределах между * и µ портф
* µ портф макс (см. рис. 9.1) и при каждом сеточном
значении µ портф решают однокритериальную задачу n
n
2 σ портф = ∑ ∑ cij wi w j → min ; i =1 j =1
n
∑ µi wi = µ портф ;
i =1 n
∑ wi =1 , wi ≥ 0 , i =1
(9.8)
которая представляет собой задачу квадратичного программирования с линейными ограничениями. Из решения этой задачи можно получить при каждом * µпортф ∈ [µпортф ; µпортф макс ]
набор
весов
wi , i = 1,2,...,n,
определяющих соответствующий портфель, а также значение риска этого портфеля σ портф . В дальнейшем эта технология не будет использоваться, считается, что инвестор изначально желает максимизировать отношение доходности портфеля к
149
его риску4 и, таким образом, однокритериальную задачу:
решает
следующую
n
Ψ: =
µпортф σ портф
∑ µi wi
=
i =1
⎛ ⎞ ⎜ ∑ ∑ cij wi w j ⎟ ⎝ i =1 j =1 ⎠ n
n
1 2
→ max ;
n
∑ wi = 1, wi ≥ 0 .
i =1
(9.9)
В следующем параграфе обсуждается возможный алгоритм численного решения задачи (9.9). Этот алгоритм, как и все остальные алгоритмы, описываемые в данной книге, основан на идеях использования случайных чисел. 9.2 Численное решение задачи оптимизации портфеля Ранее метод Монте-Карло был определен как любой метод, использующий технику статистических испытаний. С этой точки зрения, метод, который будет применяться ниже для решения задачи (9.9),5 является скорее методом стохастических, а не статистических испытаний, в том смысле, что он не использует каких-либо статистических оценок и не опирается на технику статистических решений, равно как не требует привлечения еще какого-либо развитого в рамках математической статистики технического аппарата, но в то же время существенно базируется на привлечении принципа случайности. Но фактически ниже будет решаться детерминированная задача (то есть задача (9.9)), для которой используется генератор случайных чисел, а ведь именно генерация случайных чисел послужила мотивом для 4
Фактически данное отношение представляет собой величину, обратную так называемому коэффициенту вариации (см., например, [1, п. 5.6.3]) дохода портфеля.. 5 Ниже мы опишем две версии этого метода..
150
рождения термина "метод Монте-Карло".6 Поэтому излагаемый ниже подход также можно назвать методом Монте-Карло, хотя он весьма сильно отличается в заключительной фазе своего применения от всех остальных методов, описанных на страницах данной книги. Отметим, что излагаемым в данном параграфе конструкциям как раз и уделено внимание, чтобы показать широчайшие возможности, вытекающие из применения принципа случайности. Итак, с учетом вышесказанного построим метод численного решения задачи (9.9), основанный на принципе случайного поиска. При этом будем предполагать без ограничения общности,7 что µn ≤ µi , i = 1,2 ,… ,n-1 .
(9.10)
Воспользуемся соотношением n
n
n −1 n −1
n −1
i =1 j =1
i =1
2 ∑ ∑ cij wi w j = ∑ ∑ cij wi w j + ∑ (cin + cni )wi wn + cnn w n , i =1 j =1
и подставим, применяя условие
n
(9.11)
∑ wi = 1 , вместо
i =1
wn
выражение ~ : = 1 − n∑−1w , w n i i =1
в результате чего получим эквивалентную (9.9) постановку
6
Напомним, что этот термин был введен Николасом Метрополисом в связи с тем, что он увидел отчетливую аналогию между методами, использующими генерацию случайных чисел, и ситуациями, возникающими на столах для игры в рулетку. 7 Выполнения этих неравенств всегда можно добиться за счет специального выбора нумерации активов.
151
n −1
∑ (µi − µn )wi + µn
Λ:=
i =1
⎛ ~ +c w ~ 2 ⎞⎟ ⎜ ∑ ∑ cij wi w j + ∑ (cin + cni )wi w n nn n i =1 ⎝ i =1 j =1 ⎠ n −1 n −1
n −1
1 2
→ max ;
n −1
∑ wi ≤1 , wi ≥ 0 . i =1
(9.12) n −1
Заметим, что в формулировке (9.12) неравенство ∑ wi ≤1 i =1
является по сути дела выражением того факта, что wn ≥ 0 . Необходимо указать, что функционал Λ принимает только положительные значения на множестве весов wi , i = 1,2,..., n-1, подчиненных ограничениям, указанным в (9.12), так как числитель соответствующей дроби очевидно положителен ввиду (9.10), а знаменатель представлен положительно определенной квадратичной формой, порожденной матрицей ковариации С, которая, как известно, симметрична и положительно определена и, следовательно, знаменатель тоже принимает только положительные значения8. Более того, значения функционала Λ ограничены сверху, так как числитель представляющей его дроби ограничен сверху, а знаменатель ограничен снизу положительным числом. Действительно, с учетом (9.10) числитель допускает оценку n −1
n −1
i =1
i =1
∑ ( µi − µn ) wi + µn ≤ µ1 ∑ wi + µn ≤ µ1 + µn ≤ 2 µ1 .
По поводу оценки снизу знаменателя, заметим сначала, что ввиду неравенства Коши (см., например, [2, глава 1]) 2
n −1 n n −1 ~ ⎞⎟ ≤ ⎛⎜ n∑−1w 2 + w ~ 2 ⎞⎟ ∑ ~ 2 ⎞⎟ , 1 = ⎛⎜ ∑ wi + w 1 ≤ n⎛⎜ ∑ wi 2 + w n i n n ⎝ i =1 ⎠ ⎝ i =1 ⎠i =1 ⎠ ⎝ i =1 8 ~ n = 0 исключен по очевидной Случай w1 = w2 = … = wn−1 = w
причине .
152
откуда следует n −1
2 ~2 ∑ wi + w n
i =1
≥
1 . n
(9.13)
А поскольку квадратичная форма, порождаемая матрицей ковариации С, положительно определена, то существует с > 0, такое, что n−1 n −1 ~ +c w ~2 ~ 2 ⎞⎟ , с ⎛⎜ ∑ wi 2 + w ∑ ∑ cij wi w j + ∑ (cin + cni ) wi w n nn n ≤ n i =1 j =1 i =1 ⎝ i=1 ⎠
n−1 n−1
и с учетом (9.13), знаменатель дроби, представляющей Λ , c . Итак, функционал Λ ограничен снизу величиной n ограничен сверху на множестве W весов wi , i=1,2,…,n-1, заданном как9 n −1 W := ⎧⎨(w1;w2;...;wn ) ∈ R n −1 : ∑ wi ≤1, wi ≥0⎫⎬ . i =1 ⎩ ⎭
Кроме того, как легко видеть, Λ является непрерывной функцией от wi , i=1,2,…,n-1 , а множество W – замкнуто и ограничено. Таким образом, применяя известную теорему математического анализа о достижении максимума непрерывной и ограниченной сверху функцией, заданной на замкнутом ограниченном множестве (см., например,
9
Фактически множество W является (n-1) - мерным симплексом.
153
[3, глава 8]), делаем вывод, что Λ достигает своего максимального значения на множестве W.10 Теперь можно описать метод случайного поиска для решения задачи оптимизации портфеля в постановке (9.12). Как уже отмечалось выше, будут рассмотрены здесь две версии этого метода, описания которых для задач оптимизации в общем случае можно найти в учебном пособии Ф.П. Васильева [5]. Там же можно ознакомиться с другими возможностями случайного поиска. Алгоритм с возвратом при неудачном шаге Пусть w* = ( w1* ; w2* ;...; wn*−1 ) – некоторая внутренняя точка множества W (то есть w* не лежит на границе множества W), интерпретируемая как некоторый начальный для процесса поиска состав портфеля.11 Пусть далее U = (U1;U2;…;Un-1) – случайный вектор, координаты которого являются независимыми случайными величинами, распределенными ⎛ 1 1⎞ равномерно на промежутке ⎜ − ; ⎟ . С использованием ⎝ 2 2⎠ датчика случайных чисел генерируется реализация этого вектора u = (u1 ; u 2 ;...; u n −1 ) и проверяется, принадлежит ли 10
Максимальное значение Λ может достигаться при различных наборах весов wi, i=1,2,…,n-1. Такая ситуация возникает, например, если два различных актива имеют одинаковые значения как доходности, так и риска. Считается, однако, что для инвестора не имеет значения, с каким составом портфеля он достигает максимума Λ. 11 Коль скоро веса w1, w2, …,wn-1 известны, wn определяется однозначно посредством условия (9.1).
154
вектор w*+u внутренней части множества W. Если нет, то этого добиваются заменой u := q p u с некоторым q = const < 1 и натуральным р. Алгоритмически это осуществляется путем проведения последовательной серии замен u := q u, пока не будет выполнено нужное условие на w* + u. Далее проверяется, выполняется ли условие Λ (w* + u) >Λ (w*) . (9.14) Если данное условие выполняется, то сделанный шаг признается удачным и заменой w* := w* + u определяется новый состав портфеля (с лучшим значением целевого функционала Λ). В противном случае шаг считается неудачным, и тогда с использованием датчика случайных чисел генерируется другая (независимая) реализация u случайного вектора U и делается соответствующая новая попытка улучшить состав портфеля при помощи описанных выше действий вплоть до проверки условия (9.14). Таким образом, получается итерационный процесс приближенной максимизации функционала Λ, при этом остановку итераций можно производить, например, когда два последовательно найденных состава портфеля отличаются друг от друга в пределах заданной точности.12
Алгоритм статистического градиента Пусть, как и в случае предыдущего алгоритма, w* – некоторая внутренняя точка множества W, определяющая 12
Отклонение составов портфеля друг от друга можно измерять в любой метрике, которой может быть наделено (n - 1) - мерное пространство.
155
начало итерационного процесса по поиску оптимального состава портфеля, и пусть, как и ранее, u – реализация введенного выше случайного вектора U, такая, что вектор w* + u принадлежит внутренней части множества W. Вычисляется разность ∆Λ := Λ(w* + u) – Λ (w*) и затем полагается v := ∆Λ u. Далее проверяется условие, принадлежит ли вектор w* + v внутренней части множества W. Если нет, то этого добиваются заменой v := q 1p1 v
с
некоторым q1 = const < 1 и натуральным р1 (желательно наименьшим из возможных),13 после чего определяется новый состав портфеля заменой w* := w* + v. Описанная процедура перехода к новому составу портфеля соответствует одному итерационному шагу алгоритма. Полное количество итераций определяется правилом остановки, которое можно принять таким же, как и в случае алгоритма с возвратом при неудачном шаге.
13
См. аналогичную технологию в случае предыдущего алгоритма.
156
Глава 10 Моделирование финансовых активов
динамики
В настоящей главе обсуждаются некоторые диффузионные модели, позволяющие проводить исследование стохастической эволюции финансовых активов в рыночной среде, и метод Монте-Карло для численной реализации этих моделей, основанный на численном решении соответствующих стохастических дифференциальных уравнений. В качестве финансовых активов рассматриваются для конкретности такие ценные бумаги как акции. Кроме того, выделяется в отдельный вопрос задача моделирования стохастических процентных ставок, которая является крайне важной при оценке и прогнозировании ситуации на финансовых рынках. 10.1 Моделирование эволюции стоимости акций Ранее (см. параграф 5.4) уже рассматривались модели динамики стоимости акций, основанные на работах Башелье [26] и Самуэльсона (Блэка-Мертона-Шоулза) [38, 28], допускающие аналитическое решение. Рассмотрим теперь более общие модели, базирующиеся на использовании стохастических дифференциальных уравнений с зависящими от времени и искомого процесса коэффициентами и потому не допускающие аналитических решений.1 В частном случае постоянных коэффициентов эти модели переходят в модель Самуэльсона (Блэка-МертонаШоулза) – последняя, таким образом, может быть использована в качестве тестовой задачи для апробации численных методов, описываемых в данной главе.
1
Данные модели были введены в теорию эволюции стоимости акций с целью преодолеть определённую ограниченность указанных выше более ранних и более простых моделей.
157
Обобщённая модель Р. Мертона Р. Мертон предложил [35] в более простой модели Самуэльсона (Блэка-Мертона-Шоулза) считать µ и σ функциями от времени, соответственно, µ(t) и σ(t). Другими словами, его предложение состояло в описании текущей стоимости акции путём использования стохастического дифференциального уравнения dS = S ( µ(t ) dt + σ (t ) dW ) , (10.1) где µ(t) и σ(t) – заданные детерминированные функции времени, описывающие, соответственно, доходность и волатильность акции, W = W(t) – стандартный винеровский процесс, S = S(t) – текущая (случайная) стоимость акции. В качестве начального условия для (10.1) принимается
S (t0 ) = S 0 , (10.2) 0 где S – детерминированная или случайная величина, а t0 – заданный фиксированный момент времени. Введём разностную сетку по времени, задав узлы сетки ti := t0 + i ∆t с фиксированным шагом ∆t . Применим для решения задачи (10.1), (10.2) метод Эйлера: S i +1 = S i + S i ( µ (t i ) ∆t + σ (t i ) ∆W i ) , i = 0 , 1,… ;
S0 = S 0
,
(10.3) где Si – приближение к S (ti ) . Метод Монте-Карло для оценки средней стоимости акции в момент времени T > t0 может быть теперь построен (T − t0 ) , тогда следующим образом. Обозначим M := ∆t случайная величина S M , полученная по схеме (10.3), должна рассматриваться как стохастическое приближение к S(T) – случайной стоимости акции в момент времени Т. Пусть N – заданное (достаточно большое) количество статистических испытаний, каждое из которых состоит в 158
моделировании соответствующей реализации случайной величины S M . Для моделирования вначале сгенерируем реализации s10 ,s20 ,...,s N0 случайной величины S 0 по методу обратных функций (закон распределения случайной величины S 0считается заданным).2 Далее, для вычисления sM,1 , sM,2 ,..., sM,N случайной величины SM реализаций используется схема (10.3) при i = 0, 1, …, M-1, в которой j-ю случайная величина ∆Wi заменяется на ∆Wi,j – её реализацию, полученную путём генерации нормального закона распределения с нулевым математическим ожиданием и дисперсией, равной ∆t (набор всевозможных таких реализаций должен быть независимым), а Si заменяется на соответствующую реализацию si,j и расчёт по схеме (10.3) проводится при всевозможных j = 1, 2,…,N. В результате получается набор приближённых реализаций sM,1,sM,2 ,...,sM,N случайной величины S(T); тогда статистическая оценка для S(T) строится, как обычно, усреднением соответствующих реализаций: 1 N ∑ sM,j . SN = N j =1 Кроме того, стандартным образом может быть построена оценка дисперсии и соответствующая интервальная оценка. Вместо схемы Эйлера можно использовать схему Милштейна 1 1 ⎛ ⎞ ⎛ 2⎞ Si + 1 = Si + Si ⎜ µ(t i ) − σ 2 (t i )⎟ ∆t + Si ⎜ σ (t i ) ∆W i + σ 2 (t i )(∆W i ) ⎟ , 2 2 ⎝ ⎠ ⎝ ⎠
i=0,1…;
2
Если
S 0 – заданное
(неслучайное)
s = s = ... = s = S . 0 1
0 2
0 N
0
159
S0=S0.
число,
то
следует
принять
При этом метод Монте-Карло для оценки средней стоимости акции в момент времени Т строится (с очевидными модификациями) так же, как и в случае (10.3). Модель Б. Дюпири Модель Б. Дюпири [31, 32] следует рассматривать как дальнейшее развитие обобщённой схемы Р. Мертона; при этом, вводится предположение, что волатильность σ является функцией не только от времени t, но и от самой текущей стоимости акции S(t). Таким образом, данная модель формализуется следующим образом: dS = S ( µ(t ) dt + σ (t, S ) dW ) ,
(10.4)
где волатильность σ (t, S ) – заданная функция от t и S. Метод Эйлера (10.3) для модели Б. Дюпири фактически сохраняет свою форму с тем небольшим отличием, что σ (ti ) заменяется на σ (ti , S i ) . σ(ti , Si ). В случае использования схемы Милштейна отличие по сравнению с обобщённой моделью Р. Мертона более значительное, а именно, применяется следующая конструкция: 1 1 ⎛ ⎞ Si +1 = Si + Si ⎜ µ(t i ) − σ 2 (t i , S i ) − S i σ (t i S i )σ 'x (t i , S i )⎟ ∆t + 2 2 ⎝ ⎠ 1 ⎛ 2⎞ + Si ⎜ σ (t i , S i ) ∆W i + σ (t i , S i )(σ (t i ,S i ) + Si σ 'x (t i , S i ))(∆W i ) ⎟ , 2 ⎝ ⎠ i=0,1,….,
как обычно, с начальным условием (10.2). Как в случае схемы Эйлера, так и в случае схемы Милштейна, метод Монте-Карло для оценки средней 160
стоимости акции в момент времени Т строится по аналогии с тем, что было сделано в рамках обобщённой модели Р. Мертона.
Модель стохастической волатильности Модель стохастической волатильности основана на использовании предположения, что волатильность σ сама является случайным процессом, определяемым при помощи некоторого дополнительного стохастического дифференциального уравнения. Различные версии этой модели обсуждались в работах [33, 36, 39, 42]. Общая форма такой модели имеет вид dS = S (µ(t,S,σ ) dt + σ d W (1)) , S (t0 ) = S 0 ;
dL = a(t,L ) dt + b(t,L ) dW ( 2 ) ,
L(t 0 ) = L0 ,
(10.5)
где µ(t, S,σ ), a(t, L ) и b(t,L) – заданные неслучайные функции, L 2
σ = e , W (k) = W (k)(t), k = 1, 2 – два независимых стандартных винеровских процесса и S 0 , L0 – некоторые случайные величины с заданными законами распределения.3 Таким образом, случайный процесс σ = σ (t ) выражается по простой формуле через решение второго уравнения в (10.5) и фактически (10.5) представляет собой систему двух стохастических дифференциальных уравнений с соответствующими начальными условиями. Схема Эйлера для решения задачи (10.5) может быть записана в виде Si+1 = Si ( µ (ti ,Si ,σ i )) ∆t + σ i ∆Wi (1) ; 3
В частности, одна из этих величин или обе сразу могут быть неслучайными.
161
Li+1 = a(ti ,Li )∆t + b(ti ,Li )∆Wi( 2 ) ;
i = 0, 1, …
(10.6)
с начальными условиями S0 = S 0 и L0 = L0 , где ∆t – шаг разностной сетки, Si и Li – приближения соответственно к S (ti ) и L(ti ), σ i и Li связаны друг с другом посредством Li
формулы σ i` = e 2 , а W (k) (ti +1 ) − W (k) (ti ), k = 1,2 – приращения соответствующих винеровских процессов. Схема моделирования по методу Монте-Карло для построения оценки средней стоимости акции в момент времени Т > t0 строится по аналогии со схемами, применяемыми в рамках предыдущих моделей динамики стоимости акций; отличие состоит в том, что два разностных уравнения в (10.6), использованные для вычисления выборочных реализаций дискретных случайных процессов Si и Li , применяются последовательно в порядке, обратном их написанию, для всех i = 0, 1, …, М – 1 с пересчётом реализации Li в реализацию σ i .
10.2 Моделирование стохастических процентных ставок Ранее, при рассмотрении примеров аналитического решения стохастических дифференциальных уравнений в параграфе 5.4, фактически анализировались модели Р. Мертона [35], Л. Дотхана [30], О. Васичека [41] для эволюции стохастической процентной ставки. Сейчас обсудим вопрос численного моделирования процентной ставки в рамках более сложных моделей, для которых нет возможности построить решение в аналитическом виде. Поскольку техника Монте-Карло для построения точечных и интервальных оценок прогнозируемой процентной ставки в заданный будущий момент времени ничем не отличается от техники построения аналогичных оценок в случае задачи исследования эволюции стоимости акций, достаточно 162
ограничиться указанием конструкций разностных схем для численного решения стохастических дифференциальных уравнений в рамках каждой из рассматриваемых ниже моделей эволюции процентной ставки. При этом будем считать, что процентная ставка r(t) удовлетворяет начальному условию r (t0 ) = r 0 , где r 0 – заданная случайная (в частности, возможно детерми-нированная величина). Как и выше, для численного моделирования зададим ti = t0 + i ∆t с фиксированным шагом разностную сетку ∆t .
Модель Дж. Халла и А. Уайта Дж. Халл и А. Уайт предложили следующие две модели эволюции процентной ставки (см. [34]): dr = (α (t ) − β (t ) r ) dt + γ(t ) dW ,
(10.7)
и
dr = (α (t ) − β (t ) r ) dt + γ(t ) r 2 dW , 1
(10.8)
где α (t ), β (t ) и γ(t ) – некоторые заданные неслучайные функции, а W = W(t) – стандартный винеровский процесс. Разностные схемы Эйлера для (10.7) и (10.8) представляются, соответственно, в виде ri +1 = ri + (α (t i ) − β(ti )ri ) ∆t + γ(ti ) ∆Wi, i = 0 ,1,...,
и 1 2
ri +1 = ri + (α (t i ) − β(ti )ri ) ∆t + γ(ti ) ri ∆Wi, i = 0,1,...,
где, как обычно, ∆Wi = W (ti +1 ) − W (ti ) – приращение винеровского процесса. Для модели (10.7) разностная схема Милштейна фактически совпадает со схемой Эйлера. Однако 163
в случае более сложной модели (10.8) схема Милштейна записывается как 1 ⎛ ⎞ ri +1 = ri + ⎜ α (t i ) − β (t i ) ri − γ 2 (t i )⎟ ∆t + 4 ⎝ ⎠ 1
1 2 + γ(t i ) ri 2 ∆Wi + γ 2 (t i )( ∆Wi ) , i = 0,1,... 4
Модель Ф. Блэка и П. Карасинского Рассмотрим теперь модель Ф. Блэка и П. Карасинского, предложенную в [27]: dr = r (α (t ) − β (t ) lnr ) dt + γ(t ) r dW,
где α (t ), β (t ), γ(t ) и W = W(t) имеют тот же смысл, что и в случае прежних двух моделей. Разностные схемы Эйлера и Милштейна для этой модели представляются соответственно следующими соотношениями: ri +1 = ri + ri (α (ti ) − β (ti ))ln ri ∆t + γ(ti )ri ∆Wi, i = 0,1,...,
и 1 ri+1 = ri + ri (α (ti ) − β (ti )) ln ri − γ 2 (ti ) ∆t + 2 1 + γ(ti )ri ∆Wi + γ 2 (ti )ri ( ∆Wi )2 , i = 0 ,1,... . 2
Модель Л. Чена Модель Л. Чена, предложенная в [29], считается более адекватной реальным процессам, поскольку она основана на предположении, что коэффициенты стохастического 164
дифференциального уравнения, описывающего эволюцию процентной ставки, сами являются случайными процессами. Эти процессы, как предполагается, удовлетворяют некоторым дополнительным стохастическим дифференциальным уравнениям. Таким образом, модель Л. Чена фактически описывается системой стохастических дифференциальных уравнений: 1
dr = (α − r ) dt + (γ r )2 dW (1) , 1 2
dα = (α* − α ) dt + α dW (2 ), 1
d γ = (γ* − γ ) d t + γ 2 dW ( 3 ) ,
где α* и γ* – некоторые константы, а W(k) = W(k)(t), k=1,2,3 – независимые винеровские процессы. Ограничимся указанием конструкции разностной схемы Эйлера для данной системы: 1
ri +1 = ri + (αi − ri ) ∆t + (γi ri )2 ∆Wi (1), 1
αi +1 = αi + (α* − αi ) ∆t + αi2 ∆Wi (2 ), 1
γi + 1 = γi + (γ* − γi ) ∆t + γi2 ∆Wi (3 ) .
При компьютерной реализации алгоритма сначала используются второе и третье разностные уравнения последней системы, которые являются независимыми, а затем уже производится окончательный расчёт на основе первого уравнения .
165
Глава 11 Моделирование ценообразования опционов Обсудим теперь применение техники Монте-Карло для моделирования ценообразования определённых финансовых инструментов на рынках ценных бумаг. Более конкретно рассмотрим моделирование методом Монте-Карло ценообразования так называемых опционов на покупку (call options) акций и облигаций – последние два вида ценных бумаг и будут рассматриваться в качестве финансовых активов. Для начала обсудим вкратце те финансовые инструменты, с которыми будем иметь дело. Опцион на покупку (call option) – это документ, который даёт его владельцу право, но не обязанность, на покупку определённого актива (пакета ценных бумаг) по предварительно установленной цене (цена исполнения, strike price) на момент определённой даты. За это право без обязательства выплачивается определённая сумма (опционная премия) тому, кто должен выполнить обязательство, декларированное в опционе. Таким образом, опцион имеет фиксированный срок действия, а опционное обязательство, в случае если оно востребовано, исполняется согласно фиксированной и заранее оговорённой цене. В то же время покупатель опциона может отказаться от проведения сделки по опциону без угрозы наложения каких-либо штрафов, но уплаченная им опционная премия не возвращается – такова цена отказа от совершённой сделки. Существуют ещё так называемые опционы на продажу (put options), которые могут быть определены и изучены аналогичным образом. Для конкретности в дальнейшем будем говорить только об опционах на покупку. Кроме того, будем рассматривать только так называемые европейские опционы, срок исполнения которых заранее оговорен и фиксирован. 166
Далее будем считать, что выполнены обычные предположения об идеальности рынка (см., например, [22,23]): а) абсолютная ликвидность и бесконечная делимость всех активов; б) совпадение мгновенных цен покупки и продажи; в) отсутствие налогов и транзакционных издержек; г) возможность неограниченного заимствования и одалживания по одной и той же банковской процентной ставке, одинаковой для всех участников рынка; д) отсутствие кредитного риска. Ввиду различия в используемых математических моделях далее рассматривается проблема ценообразования опционов отдельно в случаях рынка акций и рынка облигаций.
11.1 Опционы на рынке акций Для описания динамики цены акции примем модель Б. Дюпири (10.4) (как и выше S(t) обозначает мгновенную (случайную) цену акции). Обозначая через Т срок действия опциона до момента исполнения, а через К цену исполнения, прибыль по опциону можно выразить по формуле CT = M[max(0 ,S (T ) − K )].
(11.1)
При этом используется известный принцип рискнейтральности (см., например, [22, 23] или [20, глава 10]), постулирующий, что выписанная формула должна рассматриваться в безрисковой среде, в которой ожидаемая доходность любой акции совпадает с безрисковой процентной ставкой, обозначаемой далее через r(t) и считающейся заданной детерминированной функцией. Следовательно, при вычислении CT по формуле (11.1) цена актива должна определяться в соответствии с моделью (10.4), 167
в которой доходность акции µ(t ) должна быть заменена безрисковой процентной ставкой r(t). Для того чтобы определить цену опциона C0 на момент его покупки (будем считать, что этот момент отвечает значению времени t0 = 0 ), величина CT должна быть дисконтирована в соответствии с безрисковой процентной ставкой: T
C0 = e
− r (t ) d t
∫ 0
T
CT = e
− r (t ) d t
∫ 0
M[max(0, S (T ) − K )] .
(11.2)
Таким образом, генерируя выборку приближённых реализаций sM,1,sM,2 ,...,sM,N случайной величины S(T) на основе численного решения (по схеме Эйлера или по схеме Милштейна) стохастического дифференциального уравнения dS = S (r (t )dt + σ (t, S ) d W )
с заданным значением S(0), можно получить статистическую оценку C T; N для CT :
1 N ∑ max (0 ,sM,j − K ) N j =1 для справедливой стоимости опциона
C T;N =
и далее оценку C 0;N C0 :
⎛ − ∫ r (t ) dt ⎞ ⎜1 N ⎟ = ⎜ ∑ max(0,sM,j − K )e 0 ⎟. ⎜ N j =1 ⎟ ⎝ ⎠ T
C 0;N
168
T
Интеграл ∫ r (t ) dt в показателе экспоненциального фактора 0
может быть вычислен любым численным методом. Статистические ошибки (на основе указания доверительных интервалов) для обеих оценок строятся стандартным способом (см. параграф 6.1). В случае, когда r и σ — константы, то есть не зависят от t, в работе Блэка и Шоулза [28] выведена теоретическая оценка справедливой стоимости опциона: C0 = S (0)F (d1 ) − Ke − rT F (d 2 ), где ln( d1 =
S (0) ⎛ σ2 ⎞ ) + ⎜⎜ r + ⎟⎟T K 2⎠ ⎝ σ T
,
d 2 = d1 − σ T,
а F(x) – функция распределения нормальной случайной 1 1 величины с параметрами (0, 1), то есть F ( x ) = + Φ ( x ) . 1 2 2 Ясно, что аналогичная техника статистических испытаний может быть развита и в рамках других стохастических моделей динамики активов. Кроме того, могут быть рассмотрены опционы других типов, например американские или азиатские опционы (см. [25, глава VIII]).
1
Как и в параграфе 3.4, Φ ( x ) обозначает интеграл вероятностей.
169
11.2 Опционы на рынке облигаций Рынок облигаций характеризуется, как известно, определенной спецификой используемых математических моделей, что приводит к необходимости выделить вопрос ценообразования опционов на покупку облигаций в отдельный параграф. Пусть рынок состоит из банковского счета и бескупонной облигации, причем случайный фактор на данном рынке полностью определяется банковской процентной ставкой – все остальные факторы, влияющие на состояние рынка, считаются детерминированными. В качестве начала отсчета времени принимается t0 = 0 . Считается, что облигация подлежит выкупу в момент времени T по единичной цене, то есть P(T,T ) = 1 , где P(t,T) – (случайная) цена облигации в произвольный момент времени t(0 ≤ t ≤T). Далее принимается, что банковская процентная ставка r(t) является случайным гауссовско-марковским процессом, подчиняющимся стохастическому дифференциальному уравнению dr = (α (t )− β (t ) r ) dt + γ(t ) dW
с
неслучайным
начальным
условием
(11.3) r (0) = r0 , где
α (t ), β (t ), γ(t ) – заданные детерминированные функции, а
W = W (t ) – стандартный винеровский процесс. Пусть,
(
)
наконец, T 0 0 < T 0 < T – момент исполнения опциона на покупку упомянутой выше облигации; обозначим, при этом, цену исполнения опциона через K. Используемую модель рынка принято называть однофакторной гауссовой моделью (см., например, [25, глава VIII]).
170
Поскольку рассматриваемый опцион европейского типа, его функция выплат определяется по формуле fT 0 = max⎛⎜ P(T 0 ,T) − K, 0 ⎞⎟ , ⎝ ⎠ а рациональная стоимость опциона CT 0 ,T вычисляется (см. [25, глава VIII]) как
CT 0 ,T
0 ⎡ ⎤ ⎛ T ⎞ = Μ ⎢exp ⎜ − ∫ r(t) dt ⎟ f T 0 ⎥ = ⎜ ⎟ ⎢⎣ ⎥⎦ ⎝ 0 ⎠
0 ⎡ ⎛ T ⎞ = Μ ⎢exp ⎜ − ∫ r(t) dt ⎟ max ⎛⎜ P(T 0 ,T)− K, ⎜ ⎟ ⎝ ⎢⎣ ⎝ 0 ⎠
⎤ 0 ⎞⎟⎥ . ⎠⎥ ⎦ (11.4)
Кроме того в [25, глава VIII] указано, что мгновенная цена облигации P(t,T ), 0 ≤ t ≤ T может быть определена через условное математическое ожидание T ⎡ ⎤ P(t,T ) = Μ ⎢exp ⎛⎜ − ∫ r (t ) dt ⎞⎟| r (t )⎥ . ⎝ t ⎠ ⎣ ⎦
(11.5)
Комбинируя формулы (11.4) и (11.5), можно, таким образом, получить полезную формулу для определения CT 0 , T :
CT 0,T
0 ⎡ ⎞⎤ ⎛ ⎡ ⎛ T ⎞ ⎤ ⎛ T ⎞ = Μ ⎢exp ⎜⎜ − ∫ r (t ) dt ⎟⎟max ⎜⎜ Μ ⎢exp ⎜ − ∫ r (t ) dt ⎟| r (T 0 )⎥ − Κ, 0 ⎟⎟⎥ , ⎝ T0 ⎠ ⎦ ⎝ 0 ⎠ ⎠⎦ ⎝ ⎣ ⎣
(11.6) 171
то есть поставленная задача сводится фактически к последовательному вычислению условного, а затем безусловного математических ожиданий соответствующих случайных величин. Таким образом, техника Монте-Карло для моделирования рациональной стоимости опциона по формуле (11.6) может быть реализована в рамках следующей процедуры. На отрезках 0;T 0 и T 0;T при некоторых достаточно больших натуральных M0 и M1 задаются разностные сетки ti := i ∆t, i = 0,1,..., M 0 и τ l := l ∆τ, l = 0,1,..., M 1 , где
[
] [
]
T −T 0 T0 ∆τ: = . Кроме того, задаются достаточно и M0 M1 большие натуральные N0 и N1, где N0 имеет смысл количества модельных реализаций случайного процесса r(t) на отрезке 0;T 0 , a N1 обозначает количество модельных реализаций r(t) на отрезке T 0 ; T , отвечающих каждой отдельной реализации этого процесса на 0;T 0 .2 Затем на основе численного решения (по схеме Эйлера или по схеме Милштейна) стохастического дифференциального уравнения (11.3) с заданным значением r (0) = r0 генерируется выборка ri;j , i = 0,1,..., M 0 , j = 0 ,1,..., N 0 ∆t :=
[
]
[
]
[
]
[
]
приближенных реализаций процесса r(t) на отрезке 0;T 0 , а при каждом j = 1,2,..., N 0 путем численного решения (11.3) на отрезке T 0 ;T с начальным условием r (T 0 ) = rM 0 ;j
[
]
строится выборка rl;j,k , l = 0,1,..., M 1, k = 1, 2,..., N 1 ветвящихся реализаций r(t) . Далее при помощи квадратурной формулы 2
Таким образом, строятся реализации случайного процесса r(t), ветвящиеся 0
после прохождения этим процессом момента T .
172
прямоугольников, примененной на каждом из отрезков 0;T 0 и T 0;T ,3
[
] [
]
1
T0
M 0 −1
T
M −1
0
i =0
T
l =0
∫ r (t ) dt ≈ ∑ r (ti ) ∆t и ∫0 r (t ) dt ≈ ∑ r (tl ) ∆τ
конструируются наборы приближенных реализаций I 0j и I 1j,k случайных величин
T0
T
0
T0
∫ r (t ) dt и
∫ r (t ) dt (последняя – при
условии заданного значения r(T 0 ) , соответственно, как: 1
M 0 −1
I j,k := ∑ rl;j,k ∆t 0
M −1
I j,k := ∑ rl;j,k ∆τ , 1
и
l =0
l =0
j = 1, 2,..., N , k = 1, 2 ,..., N 1 . 0
Окончательно,
CT 0 ,T моделируется статистическая оценка CT 0 ,T;N 0 ,N 1 =
1 N0
N
0
∑e j =1
0 −I j
приближенно
⎛ 1 N 1 − I1 ⎞ j,k − K, 0 ⎟ . max⎜ e ∑ ⎜ N1 ⎟ k =1 ⎝ ⎠
как
(11.7)
Конструкция интервальной оценки, соответствующей точечной оценке (11.7), является достаточно сложной – ведь сейчас речь идет о двух этапах формирования статистической ошибки (соответствующих оценкам каждого из двух математических ожиданий), перемежаемых к тому же нелинейной операцией взятия максимума. Поэтому ее обсуждение здесь не приводится. 3
Очевидно, нет смысла в использовании более изощренных квадратурных формул, так как даже в случае применения схемы Милштейна процедура численного интегрирования стохастического дифференциального уравнения (11.3) сопровождается ошибкой первого порядка точности.
173
В то же время заметим, что в случае модели О. Васичека [41] коэффициенты постоянны: α(t) ≡ α, β(t) ≡ β, γ(t) ≡ γ, и для задачи о вычислении рациональной стоимости опциона CT 0 ,T существует аналитическое решение CT 0 ,T = P( 0 ,T) F(d + ) − KP( 0 ,T 0 ) F(d − ) ,
где F(x) – функция распределения нормальной случайной величины с параметрами (0,1) и ()
()
P(0,t ) = e A t − r0 B t , ⎛ β γ2 ⎞ γ2 2 1⎛ −βt ⎛⎜1−e − β t ⎞⎟ , ⎞ ⎟− ⎜1−e − β t ⎟ ⎜ − ⎠ ⎠⎜ α 2β2 ⎟ 4β3 ⎝ β⎝ ⎝ ⎠ 1 B(t ) = ⎛⎜1−e − β t ⎞⎟ , ⎠ β⎝ A(t ) =
ln ± d =
P(0, T ) 1 ± φ2(T 0 , T ) 0 K P(0, T ) 2 φ(T 0 , T )
(
)
γ 0 φ(T 0 ,T ) = 1 − е− β (T −T ) β
(
,
⎛ 1 0 ⎜⎜ 1−е− 2 β T ⎝ 2β
)
1
⎞2 ⎟⎟ . ⎠
Следовательно, модель Васичека может быть принята в качестве тестовой задачи для отработки описанной выше методики моделирования.
174
Приложение 1
Критические точки распределения χ2 Число степеней свободы k 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Уровень значимости α 0.01
0.025
0.05
0.95
0.975
0.89
6.6 9.2 11.3 13.3 15.1 16.8 18.5 20.1 21.7 23.2 24.7 26.2 27.7 29.1 30.6 32.0 33.4 34.8 36.2 37.6 38.9 40.3 41.6 43.0 44.3 45.6 47.0 48.3 49.6 50.9
5.0 7.4 9.4 11.1 12.8 14.4 16.0 17.5 19.0 20.5 21.9 23.3 24.7 26.1 27.5 28.8 30.2 31.5 32.9 34.2 35.5 36.8 38.1 39.4 40.6 41.9 43.2 44.5 45.7 47.0
3.8 6.0 7.8 9.5 11.1 12.6 14.1 15.5 16.9 18.3 19.7 21.0 22.4 23.7 25.0 26.3 27.6 28.9 30.1 31.4 32.7 33.9 35.2 36.4 37.7 38.9 40.1 41.3 42.6 43.8
0.0039 0.103 0.352 0.711 1.15 1.64 2.17 2.73 3.33 3.94 4.57 5.23 5.89 6.57 7.26 7.96 8.67 9.39 10.1 10.9 11.6 12.3 13.1 13.8 14.6 15.4 16.2 16.9 17.7 18.5
0.00098 0.051 0.216 0.484 0.831 1.24 1.69 2.18 2.70 3.25 3.82 4.40 5.01 5.63 6.26 6.91 7.56 8.23 8.91 9.59 10.3 11.0 11.7 12.4 13.1 13.8 14.6 15.3 16.0 16.8
0.00016 0.020 0.115 0.297 0.554 0.872 1.24 1.65 2.09 2.56 3.05 3.57 4.11 4.66 5.23 5.81 6.41 7.01 7.63 8.26 8.90 9.54 10.2 10.9 11.5 12.2 12.9 13.6 14.3 15.0
175
Приложение 2 Некоторые значения функции распределения а1(x) x 0.12 0.15 0.18 0.24 0.35 0.46 0.74 0.87 1.17 1.49
а1(x) 0.5 0.6 0.7 0.8 0.9 0.95 0.99 0.995 0.999 0.9998
Список литературы 1.Айвазян С. А. , Енюков И. С. , Мешалкин Л. Д. Прикладная статистика: Основы моделирования и первичная обработка данных. М.: Финансы и статистика, 1983. 2.Беккенбах Э., Беллман Р. Неравенства. М.: Мир, 1965. 3.Бугров Я. С., Никольский С. М. Дифференциальное и интегральное исчисление. М.: Наука, 1988. 4.Булашев С. В. Статистика для трейдеров. М.: Компания Спутник, 2003. 5.Васильев Ф. П. Численные методы решения экстремальных задач. М.: Наука, 1980. 6.Воеводин В. В,.Кузнецов Ю. А. Матрицы и вычис-ления. М.: Наука, 1984. 7.Волошин Г. Я. Методы оптимизации в экономике. М.: Дело и Сервис, 2004. 8.Гмурман В. Е. Теория вероятностей и математическая статистика. М.: Высшая школа, 2005. 9.Джекел П. Применение методов Монте-Карло в финансах. М.: Интернет-Трейдинг, 2004. 10.Ермаков С. М, Метод Монте-Карло и смежные вопросы. М.: Наука. 1971.
176
11.Ильченко А. Н. Экономико-математические методы. М.: Финансы и статистика. 2006. 12.Кобелев Н. Б. Основы имитационного моделирования сложных экономических систем. М.: Дело, 2003. 13.Крамер Г. Математические методы статистики. М.: Мир, 1975. 14.Красс М. С., Чупрынов Б. П. Математика для экономистов. СПб: Питер, 2005. 15.Крянев А. В. Основы финансового анализа и портфельного инвестирования в рыночной экономике. М.: МИФИ, 2000. 16.Кузнецов Д. Ф. Численное моделирование стохас-тических дифференциальных уравнений и стохастических интегралов. 17.Курбатов В. И. Математические методы социальных технологий. М.: Вузовская книга, 2004. 18.Соболь И. М. Численные методы Монте-Карло. М.: Наука, 1973. 19.Тихонов В. И, Миронов М. А. Марковские процессы. М.: Советское радио, 1977. 20.Уотшем Т. Дж., К. Паррамоу. Количественные ме-тоды в финансах. М.: ЮНИТИ, 1999. 21.Фомин Г. П. Математические методы и модели в коммерческой деятельности. М.: Финансы и статистика, 2005. 22.Шведов А. С. О математических методах, исполь-зуемых при работе с опционами. //Экономический журнал ВШЭ.1998. №3.С.385–405. 23.Шведов А. С. Применение метода конечных разностей для оценки финансовых инструментов, //Экономический журнал ВШЭ.2002. №2.C.193–216. 24.Ширяев. А. Н. Основы стохастической финансовой математики. Том 1. Факты. Модели. М.: Фазис, 1998. 25.Ширяев А. Н. . Основы стохастической финансовой математики. Том 2. Теория. М.: Фазис, 1998. 26.Bachelier. L. Théorie de la speculation.//Annuales de l'Escole Normale Supérieure. 1900.№17.P.21–86. 27.Black. F, Karasinski P. Bond and option pricing when short rates are lognormal.//Financial Analysts Journal. 1991. P.52–59. 28.Black. F, Scholes M. The pricing of options and corporate liabilities.//Journal of Political Economy 81.1973.№ 3. P.637–659. 29.Chen. L. A Three-Factor Model of the Term Structure of Interest Rates, Preprint, USA, Washington, Federal Reserve Board, July, 1995. 30.Dothan L. On the term structure of interest rates. //Journal of Financial Economics. 1978.№6. Р.59–69.
177
31.Dupire B. Model Art.//RISK-magazine. 1993. № 6. Р.118–124. 32.Dupire B. Pricing with a smile.//RISK-magazine 1994.№7.Р.18– 20. 33.Hull J., White A. The pricing of options on assets with stochastic volatilities. //Journal of Finance. 1987. №42. Р.281–308. 34.Hull J , White A. Pricing interest rate derivative securities. //Review of Financial Studies. 1990. №3.Р.573–592. 35.Merton R. С. Theory of rational option pricing.//Bell Journal of Economics and Management Science. 1973. №4 (Spring), Р.141–183. 36.Nelson D. B. ARCH models as diffusion approximations. //Journal of Econometrics 1990.№45.Р.7–38. 37.Press W. H., Teukolsky S. A., Welterling W. T, Flannery В. P. Numerical Recipes in C, Cambridge Univ. Press, 1992. 38.Samuelson P. A. Rational theory of warrant pricing. //Industrial Management Review 1965. №6. Р.13–31. 39.Scott L. O. Option pricing when the variance changes randomly: Theory, estimation and an application. //Journal of Financial and Quantitative Analysis 1987. №22. Р.419–438. 40.Uhlenbeck G. E, Ornstein L. S. Physical Review 1930. №36. Р.823–841. 41.Vasicek O. An equilibrium characterization of the term structure. //Journal of Financial Economics. 1977. №5. Р.177–188.
178
Предметный указатель Φ(x ) , 44
NPV(Net Present Value), 121
D [Χ ] , 8 Μ[Χ] , 8 Ρ(Α) ,8
Акклам, 62 Алгоритм с возвратом при неудачном шаге, 153 статистического градиента, 154 Батлер, 78,79 Белый шум, 93 дискретный, 96 интенсивность (диффузия), 94 нормальный, 97 стандартный, 34,112 Блэк,111 Броуновское движение, 100 Булашев, 131 Бюффон, 14 Васичек, 112,161,173 Велтерлинг, 34, 35 Винер, 93 Волошин, 135,137 Генератор Ran0, 34 Ran1, 35 Ran2, 35 Ran3, 35 крутильщик Мерсенна, 35 Госсетт, 13 Граница эффективности допустимых решений, 146 Дельта-образная последовательность,88 Дельта-функция, 84 Джекел, 36 Диверсификация, 142 Доверительная вероятность, 47 Дотхан, 161 Значение высоко значимое, 44
179
значимое, 44 почти значимое, 44 Игла Бюффона, 14 Ильченко, 137 Инвестиционный портфель, 145 доход и риск. 140 оптимизация, 145 Интеграл вероятностей, 44 Кендалл, 49 Кобелев,137 Конгруэнтная генерация, 32 Конгруэнтный генератор, 32 линейный, 33 Корреляция, 72 Коэффициент доверия, 41 Коэффициент корреляции, 76 Крамер, 41,46 Красс, 140 Критерий согласия
χ 2 , 38
ω 2 , 45 статистический, 38 Крянев, 140 Кузнецов, 116 Курбатов, 137 9376 переменный,93 постоянный, 93 Лемер, 33 Марковиц, 140 Матрица ковариации, 75,142 Мертон, 156 Метод Монте-Карло. 13 вычетов, 33 обратных функций, 55 середины квадрата, 13 сравнения,33 статистических испытаний, 11 суперпозиции, 77 Метрополис, 11 Механическая торговая система,130 Мизес, 46
180
Миллер, 34 Миронов, 109 Множество Парето, 146 эффективных решений, 147 Модели Халла и Уайта, 162 Модель Башелье, 110, 156 Блэка и Карасинского, 163 Блэка-Мертона-Шоулза, 150 Васичека,173 Дотхана.11 Дюпири,159,160 Мертона, 90 Самуэльсона, 156 Чена, 164 однофакторная гауссова, 142 стохастической волатильности, 160 Моро, 62 Нейман, 11, 13 Нут, 35 Опцион, 165 на покупку, 165 на продажу, 165 на рынке акций, 166 на рынке облигаций, 168 оценка, 168 цена исполнения (strike price), 165 Опционная премия, 165 Парк, 34 Пирсон, 40
χ2
Плотность распределения , 40 Поток заявок интенсивность, 137 стационарный пуассоновский, 137 Пресс,34 Принцип риск-нейтральности, 166 Процентная ставка, 162 Псевдослучайная последовательность длина отрезка апериодичности, 30 длина периода, 30 отрезок апериодичности, 30 Псевдослучайные числа, 31
181
проверка, 49 Разностная схема Милштейна, 117 Эйлера, 117 Распределение нормальное, 44, 113 Ряд вариационный, 47 временной, 93 Система массового обслуживания, 136 с ожиданием, 136 с отказом, 136 Случайная функция, 90 Случайная цифра, 20 Случайное число, 20 Случайные цифры проверка таблиц, 49 таблица, 25 Случайные числа датчики. 25 проверка, 37 Случайный процесс, 90 в дискретном времени, 93 винеровский, 93, 100 стандартный, 113 возвращения к среднему, 113 дисперсия, 62,92 закон распределения, 56,61 корреляционная функция, 91 математическое ожидание, 92,93 нормальный (гауссовский), 91,94,97 реализация, 115 с независимыми приращениями,97 стационарными приращениями, 97 спектральная плотность, 92 стационарный (в широком смысле), 92 Смирнов, 46 Смит, 49 Соболь, 50, 52, 54 Стохастический дифференциал Ито, 101, 110 Стохастический интеграл Ито, 102 Стохастическое дифференциальное уравнение, 102 численные методы, 110 Стратонович, 109
182
Сходимость в среднем квадратичном, 102 по вероятности, 46 Текольски, 34 Теорема Хинчина, 122 Тихонов, 109 Угольницкий, 137 Улам, 11 Уравнение Орнштейна-Уленбека, 112 Уровень значимости, 41 Фланнери, 34 Фокс, 16 Фомин, 137 Формула Ито,111 Центральная предельная теорема, 62 Чупрынов, 140 Шоулз, 168
183
Николай Юрьевич Бакаев
Методы статистических испытаний в экономике и финансах
Редактор Н.Н. Антонова Подписано в печать 12.11.2007 Печ.л. 11,5 Уч.-изд.л. 9,25 Тираж 200 экз. Заказ 0-627
Формат 60х84 1/16 Изд. № 4/84
Московский инженерно-физический институт (государственный университет) 115409, Москва, Каширское шоссе, 31 Типография издательства “Тровант” г. Троицк Московской области
184