Python for Finance: Analyze Big Financial Data (英語) ペーパーバック – 2014/12/27
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
The financial industry has adopted Python at a tremendous rate recently, with some of the largest investment banks and hedge funds using it to build core trading and risk management systems. This hands-on guide helps both developers and quantitative analysts get started with Python, and guides you through the most important aspects of using Python for quantitative finance.
Using practical examples through the book, author Yves Hilpisch also shows you how to develop a full-fledged framework for Monte Carlo simulation-based derivatives and risk analytics, based on a large, realistic case study. Much of the book uses interactive IPython Notebooks, with topics that include:
- Fundamentals: Python data structures, NumPy array handling, time series analysis with pandas, visualization with matplotlib, high performance I/O operations with PyTables, date/time information handling, and selected best practices
- Financial topics: mathematical techniques with NumPy, SciPy and SymPy such as regression and optimization; stochastics for Monte Carlo simulation, Value-at-Risk, and Credit-Value-at-Risk calculations; statistics for normality tests, mean-variance portfolio optimization, principal component analysis (PCA), and Bayesian regression
- Special topics: performance Python for financial algorithms, such as vectorization and parallelization, integrating Python with Excel, and building financial applications based on Web technologies
Yves Hilpisch is the founder and managing partner of The Python Quants, an analytics software provider and financial engineering group. The Python Quants offer, among others, the Python Quant Platform (http: //quant-platform.com) and DX Analytics (http: //dx-analytics.com). Yves also lectures on mathematical finance and organizes meetups and conferences about Python for Quantitative Finance in New York and London.
The middle chapters cover different Python libraries which are useful in finance such as Numpy and Pandas. The later chapters cover financial simulations again. I did not really understand this ordering of the chapters. It felt like the book dived too fast into simulations, then took a bunch of steps back to cover Python, and then switched back to financial discussion.
Python 2.7 is the language used in this book along with the IPython interactive prompt. I did not understand this decision at all either as Python 3 and files would have been a lot better to stay up to date with current programming practices.
Some of the programming practices mentioned were just plainly inaccurate in certain cases. For example there is the reduce function mentioned on page 92 where the author says: "reduce helps when we want to apply a function to all elements of a list object that returns a single value only." Reduce is not available in Python 3 because it is now deprecated. I went on StackOverflow to learn more about reduce and the top rated answers said that you should not use reduce anymore, and that in 99% of cases it is better to write out a loop for this functionality instead.
I found the author to recommend the non-Pythonic way in a number of different places. In chapter 13 on object orientated programming the author briefly describes how you can make variables private in Python by adding an underscore. He says (p.385): "It might be helpful to have (class/object) private attributes". I thought this was a poorly worded description that does not describe the Pythonic way at all.
Some sections use repetitive wording often. For example, in the first couple chapters the author uses the expression "On one hand... On the other hand" at least 5 times. I think the author needed to tell a better story overall and work on sentence structure.
The financial code sections seemed like they could be really useful to someone in the industry. I do have enough previous experience with the options models to say how accurate these parts are. The book does cover both the European and American options models. Sections about Monte Carlo simulations were helpful.
Overall, this book could be really useful to someone in finance that has not programmed much in Python. I think this book would have worked a lot better to have assumed that the reader is familiar with Python, and then go more in depth on practical applications.
- 洋書 > Business & Investing > Finance
- 洋書 > Computers & Technology > Computer Science > Information Theory
- 洋書 > Computers & Technology > Computer Science > Modeling & Simulation
- 洋書 > Computers & Technology > Programming > Languages & Tools > Python
- 洋書 > Computers & Technology > Software > Business > Accounting
- 洋書 > Education & Reference
- 洋書 > Nonfiction > Economics
- 洋書 > Professional & Technical > Accounting & Finance > Finance