Python for Finance: Analyze Big Financial Data
elle
(Elle)
#1
Preface
Not too long ago, Python as a programming language and platform technology was
considered exotic — if not completely irrelevant — in the financial industry. By contrast,
in 2014 there are many examples of large financial institutions — like Bank of America
Merrill Lynch with its Quartz project, or JP Morgan Chase with the Athena project — that
strategically use Python alongside other established technologies to build, enhance, and
maintain some of their core IT systems. There is also a multitude of larger and smaller
hedge funds that make heavy use of Python’s capabilities when it comes to efficient
financial application development and productive financial analytics efforts.
Similarly, many of today’s Master of Financial Engineering programs (or programs
awarding similar degrees) use Python as one of the core languages for teaching the
translation of quantitative finance theory into executable computer code. Educational
programs and trainings targeted to finance professionals are also increasingly
incorporating Python into their curricula. Some now teach it as the main implementation
language.
There are many reasons why Python has had such recent success and why it seems it will
continue to do so in the future. Among these reasons are its syntax, the ecosystem of
scientific and data analytics libraries available to developers using Python, its ease of
integration with almost any other technology, and its status as open source. (See Chapter
for a few more insights in this regard.)
For that reason, there is an abundance of good books available that teach Python from
different angles and with different focuses. This book is one of the first to introduce and
teach Python for finance — in particular, for quantitative finance and for financial
analytics. The approach is a practical one, in that implementation and illustration come
before theoretical details, and the big picture is generally more focused on than the most
arcane parameterization options of a certain class or function.
Most of this book has been written in the powerful, interactive, browser-based IPython
Notebook environment (explained in more detail in Chapter 2). This makes it possible to
provide the reader with executable, interactive versions of almost all examples used in this
book.
Those who want to immediately get started with a full-fledged, interactive financial
analytics environment for Python (and, for instance, R and Julia) should go to
with the IPython Notebook files and code that come with this book). You should also
have a look at DX analytics, a Python-based financial analytics library. My other book,
Derivatives Analytics with Python (Wiley Finance), presents more details on the theory
and numerical methods for advanced derivatives analytics. It also provides a wealth of
readily usable Python code. Further material, and, in particular, slide decks and videos of
talks about Python for Quant Finance can be found on my private website.
If you want to get involved in Python for Quant Finance community events, there are
opportunities in the financial centers of the world. For example, I myself (co)organize