Erhalten Sie Zugang zu diesem und mehr als 300000 Büchern ab EUR 5,99 monatlich.
Программирование, математика и финансы неразрывно связаны между собой. Ив Хилпиш, автор бестселлера «Python для финансовых расчетов», объясняет базовые концепции и дает в ваши руки все необходимые инструменты для работы в мире финансовой инженерии. В этой книге вы: •изучите основы программирования на Python и познакомитесь с теорией финансов через математику; •узнаете о моделировании данных и использовании Python в финансовой инженерии; •научитесь статическому и динамическому моделированию финансовых задач: ценообразование, принятие решений и распределение активов; •получите общее представление о необходимый библиотеках Python: NumPy, SciPy, Matplotlib и SymPy.
Sie lesen das E-Book in den Legimi-Apps auf:
Seitenzahl: 183
Veröffentlichungsjahr: 2024
Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:
Переводчик С. Черников
Ив Хилпиш
Python для финансистов. — СПб.: Питер, 2023.
ISBN 978-5-4461-2250-9
© ООО Издательство "Питер", 2023
Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав.
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. — Примеч. науч. ред.