Python для финансистов - Ив Хилпиш - E-Book

Python для финансистов E-Book

Ив Хилпиш

0,0

Beschreibung

Программирование, математика и финансы неразрывно связаны между собой. Ив Хилпиш, автор бестселлера «Python для финансовых расчетов», объясняет базовые концепции и дает в ваши руки все необходимые инструменты для работы в мире финансовой инженерии. В этой книге вы: •изучите основы программирования на Python и познакомитесь с теорией финансов через математику; •узнаете о моделировании данных и использовании Python в финансовой инженерии; •научитесь статическому и динамическому моделированию финансовых задач: ценообразование, принятие решений и распределение активов; •получите общее представление о необходимый библиотеках Python: NumPy, SciPy, Matplotlib и SymPy.

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern
Kindle™-E-Readern
(für ausgewählte Pakete)

Seitenzahl: 183

Veröffentlichungsjahr: 2024

Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:

Android
iOS
Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Ив Хилпиш
Python для финансистов

Переводчик С. Черников

Ив Хилпиш

Python для финансистов. — СПб.: Питер, 2023.

ISBN 978-5-4461-2250-9

© ООО Издательство "Питер", 2023

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

Оглавление

Введение
Почему именно эта книга?
Целевая аудитория
Краткое описание книги
Условные обозначения
Примеры кода, использованные в книге
Благодарности
От издательства
Глава 1. Финансы и Python
Краткая история финансов
Главные тенденции в области финансов
Четырехъязычная сфера
Структура книги
Вводная информация о Python
Резюме
Справочные материалы
Глава 2. Экономика с двумя состояниями
Экономика
Денежный поток
Неопределенность
Финансовые активы
Риск
Условные требования
Ценные бумаги Эрроу — Дебре
Ценообразование по мартингалу
Портфель Марковица
Резюме
Справочные материалы
Глава 3. Экономика с тремя состояниями
Неопределенность
Финансовые активы
Достижимые условные требования
Ценообразование по мартингалу
Суперрепликация
Аппроксимирующая репликация
Линия рынка капитала
Модель ценообразования капитальных активов
Резюме
Справочные материалы
Глава 4. Оптимальность и равновесие
Максимизация полезности
Ожидаемая полезность
Ценообразование в условиях полного рынка
Безрисковая процентная ставка
Пример в числовом виде (часть 1)
Ценообразование в условиях неполного рынка
Пример в числовом виде (часть 2)
Резюме
Справочные материалы
Глава 5. Статическая экономика
Неопределенность
Финансовые активы
Условные требования
Полнота рынка
Фундаментальные теоремы ценообразования финансовых активов
Модель ценообразования опционов Блэка — Шоулза — Мертона
Полнота модельной экономики в системе Блэка — Шоулза — Мертона
Модель ценообразования опционов со скачкообразной диффузией Мертона
Ценообразование через репрезентативного агента
Резюме
Справочные материалы
Глава 6. Динамическая экономика
Биномиальное ценообразование опционов
Модель ценообразования опционов Блэка — Шоулза — Мертона
Резюме
Справочные материалы
Глава 7. Что дальше?
Математика
Теория финансов
Программирование на языке Python
Python для финансовых расчетов
Послесловие
Об авторе
Иллюстрация на обложке
Рекомендуем прочитать

Введение

Python быстро становится языком науки о данных, машинного обучения и обработки естественного языка. Его использование постоянно открывает источники инноваций. У Python есть многочисленное сообщество разработчиков приложений с открытым исходным кодом, что позволяет быстро внедрять и адаптировать передовые технологии1.

Киндман и Тейлор (2021)

Почему именно эта книга?

Эта книга обучает финансам и языку программирования Python (http://python.org/) с нуля. Сейчас финансы и программирование — тесно переплетенные дисциплины, а Python — один из наиболее часто используемых в финансовой отрасли языков программирования. Здесь комплексно изложены основы математики, финансов и программирования в понятном для обычных людей виде. Долгое время теория финансов и финансовая инженерия были отдельными дисциплинами. Однако то, что программирование (например, на Python и C++) стало неотъемлемой частью магистратуры по финансовой инженерии и подобных университетских программ, доказывает, насколько важным стал этот навык в данной области.

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

Тем не менее все еще довольно часто основы математики, теория финансов и основы программирования преподаются независимо друг от друга и только в самом конце обучения — в комплексе с финансовой инженерией. В этой книге используется другой подход: финансовые концепции и методы программирования представлены во взаимосвязи с математическими понятиями (например, из линейной алгебры и теории вероятностей). Таким образом, абстрактные математические понятия объясняются с двух различных точек зрения — финансов и программирования. Вдобавок такой подход позволяет получить новый полезный опыт, поскольку и математические, и финансовые понятия могут быть переведены непосредственно в исполняемый код и исследованы в интерактивном режиме.

Несколько человек, прочитавших одну из моих предыдущих книг, «Python для финансовых расчетов»2, справедливо отметили, что она не подходит тем, кто только начинает знакомство с теорией финансов и программированием на Python. Действительно, предполагается, что читатель той книги имеет хотя бы небольшой опыт в данных сферах. Книга «Python для финансистов» восполняет этот пробел, поскольку фокусируется на основах и тем самым естественным образом подготавливает к прочтению «Python для финансовых расчетов», что в дальнейшем позволит развиваться и совершенствовать навыки работы с Python применительно к финансовым расчетам. Более подробно об этом рассказано в последней главе.

Целевая аудитория

Об использовании Python в финансовой сфере я написал несколько книг, а моя компания, The Python Quants, предлагает соответствующее онлайн-обучение. И книги, и курсы предполагают, что читатель или слушатель уже обладает определенными знаниями в области финансов и программирования на Python или аналогичном ему языке.

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

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

Даже если читатель не собирается переходить к более сложным темам финансовой инженерии, вычислительных финансов, алгоритмической торговли или управления активами, знания по Python и финансам, которые он почерпнет из этой книги, можно использовать при выполнении стандартных финансовых задач, например, при составлении инвестиционных портфелей в соответствии с современной портфельной теорией (modern portfolio theory, MPT). Книга также рассказывает об оценке опционов и других деривативов с помощью стандартных методов, таких как портфельная репликация или риск-нейтральный подход к ценообразованию.

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

Краткое описание книги

Книга состоит из следующих глав.

Глава 1. Финансы и Python. Эта глава формирует основу всей книги. В ней кратко излагается история финансов, освещается подход к Python как к инструменту для финансовых расчетов, показывается, как работать с базовой инфраструктурой Python, на примере кода, представленного в интерактивных блокнотах Jupyter.Глава 2. Экономика с двумя состояниями. Здесь рассматривается наиболее простая модель экономики, в которой возможен финансовый анализ в условиях неопределенности, когда есть только две релевантные даты и два неопределенных состояния в будущем. Иногда ее называют статической экономикой с двумя состояниями. Несмотря на свою простоту, она позволяет представить такие базовые финансовые понятия, как чистая приведенная стоимость, ожидаемая доходность, волатильность, условные требования, репликация опционов, арбитражное ценообразование, мартингальная мера, полнота рынка, риск-нейтральный подход к ценообразованию и портфели Марковица.Глава 3. Экономика с тремя состояниями. В этой главе в модель добавляется третье неопределенное состояние в будущем и анализируется статическая экономика с тремя состояниями, что позволяет рассмотреть такие понятия, как неполнота рынка, неопределенность мартингальных мер, суперрепликация условных требований и аппроксимирующая репликация условных требований. Вдобавок здесь представлена модель ценообразования капитальных активов (Capital Asset Pricing Model, CAPM) в качестве подхода к равновесному ценообразованию финансовых активов.Глава 4. Оптимальность и равновесие. Основной темой здесь являются экономические агенты с их индивидуальными проблемами принятия решений. Анализ здесь опирается на доминирующую парадигму финансов для принятия решений в условиях неопределенности — максимизацию ожидаемой полезности. Через так называемого репрезентативного агента вводятся понятия равновесия, демонстрируется связь между оптимальностью и равновесием, с одной стороны, и мартингальными мерами и риск-нейтральным подходом к ценообразованию — с другой. Ко всему прочему, использование концепции репрезентативного агента представляет собой один из способов преодоления трудностей, возникающих в экономиках с неполными рынками.Глава 5. Статическая экономика. Обобщает рассмотренные понятия и сводит полученные результаты к конечному (возможно, большому) числу неопределенных будущих состояний. Для анализа такой обобщенной статической экономики требуется немного больше математических формул.Глава 6. Динамическая экономика. Основываясь на анализе обобщенной статической экономики, здесь в финансовое моделирование добавляется динамика, что позволяет рассмотреть два частных случая динамической экономики в дискретном времени. Основная идея заключается в том, что неопределенность относительно будущих состояний экономики в целом разрешается постепенно с течением времени. Это можно смоделировать с помощью стохастических процессов, например биномиального процесса, который можно представить в виде биномиального дерева.Глава 7. Что дальше? В заключительной главе приводится множество дополнительных материалов для изучения из области математики, теории финансов и программирования на Python, также читателю даются рекомендации о дальнейших действиях.

Условные обозначения

В книге используются следующие условные обозначения.

Курсив

Служит для выделения новых понятий.

Интерфейс

Применяется для выделения URL-адресов, электронных адресов.

Моноширинныйшрифт

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

Этот рисунок обозначает обычное примечание.

А этот — предупреждение или предостережение.

Этим рисунком обозначена важная информация.

Примеры кода, использованные в книге

Все вспомогательные материалы — примеры кода, упражнения и т.д. — можно скачать здесь: https://finpy.pqp.io.

По техническим вопросам или проблемам, связанным с примерами кода, можно обращаться по адресу [email protected].

В общем случае все примеры кода из книги вы можете использовать в своих программах и в документации. Вам не нужно обращаться в издательство за разрешением, если вы не собираетесь воспроизводить существенные части программного кода. Если вы разрабатываете программу и используете в ней несколько фрагментов кода из книги, вам не нужно обращаться за разрешением. Но для продажи или распространения примеров из книги вам потребуется разрешение от издательства O’Reilly. Вы можете отвечать на вопросы, цитируя данную книгу или примеры из нее, но для включения существенных объемов программного кода из книги в документацию вашего продукта потребуется разрешение.

Мы рекомендуем, но не требуем добавлять ссылку на первоисточник при цитировании. Под ссылкой на первоисточник мы подразумеваем указание авторов, издательства и ISBN.

За получением разрешения на использование значительных объемов программного кода из книги обращайтесь по адресу [email protected].

Благодарности

В книге приведены ценные отзывы участников наших сертификационных программ по Python для финансовых расчетов.

Благодарю научных редакторов за их полезные комментарии. Они помогли внести многочисленные улучшения.

Я также признателен всей команде O’Reilly за помощь и поддержку.

Эта книга посвящена моей жене Сандре. Ты — любовь всей моей жизни.

От издательства

Ваши замечания, предложения, вопросы отправляйте по адресу [email protected] (издательство «Питер», компьютерная редакция).

Мы будем рады узнать ваше мнение!

На веб-сайте издательства www.piter.com вы найдете подробную информацию о наших книгах.

1Kindman A., Taylor Т. Why We Rewrote Our USD30 Billion Asset Management Platform in Python. March 29, 2021. https://oreil.ly/GghS6.

2Хилпиш И. Python для финансовых расчетов. — 2021.

3Pemberton M., Rau N. Mathematics for Economists: An Introductory Textbook. 4th ed. — Manchester University Press, 2016.

4 Русскоязычным читателям рекомендуем главную книгу по финансовой математике в России: Ширяев А.Н. Основы стохастической финансовой математики. В двух томах. Том 1. Факты. Модели. Том 2. Теория. — М.: МЦНМО, 2016. — Примеч. науч. ред.