Python for Finance. Mastering Data-Driven Finance. 2nd Edition - Helion
ISBN: 9781492024293
stron: 720, Format: ebook
Data wydania: 2018-12-05
Księgarnia: Helion
Cena książki: 254,15 zł (poprzednio: 299,00 zł)
Oszczędzasz: 15% (-44,85 zł)
The financial industry has recently adopted Python at a tremendous rate, with some of the largest investment banks and hedge funds using it to build core trading and risk management systems. Updated for Python 3, the second edition of this hands-on book helps you get started with the language, guiding developers and quantitative analysts through Python libraries and tools for building financial applications and interactive financial analytics.
Using practical examples throughout 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.
Osoby które kupowały "Python for Finance. Mastering Data-Driven Finance. 2nd Edition", wybierały także:
- GraphQL. Kurs video. Buduj nowoczesne API w Pythonie 169,00 zł, (50,70 zł -70%)
- Receptura na Python. Kurs Video. 54 praktyczne porady dla programist 199,00 zł, (59,70 zł -70%)
- Podstawy Pythona z Minecraftem. Kurs video. Piszemy pierwsze skrypty 149,00 zł, (44,70 zł -70%)
- Twórz gry w Pythonie. Kurs video. Poznaj bibliotekę PyGame 249,00 zł, (74,70 zł -70%)
- Data Science w Pythonie. Kurs video. Algorytmy uczenia maszynowego 199,00 zł, (59,70 zł -70%)
Spis treści
Python for Finance. 2nd Edition eBook -- spis treści
- Preface
- Conventions Used in This Book
- Using Code Examples
- OReilly Safari
- How to Contact Us
- Acknowledgments
- I. Python and Finance
- 1. Why Python for Finance
- The Python Programming Language
- A Brief History of Python
- The Python Ecosystem
- The Python User Spectrum
- The Scientific Stack
- Technology in Finance
- Technology Spending
- Technology as Enabler
- Technology and Talent as Barriers to Entry
- Ever-Increasing Speeds, Frequencies, and Data Volumes
- The Rise of Real-Time Analytics
- Python for Finance
- Finance and Python Syntax
- Efficiency and Productivity Through Python
- Shorter time-to-results
- Ensuring high performance
- From Prototyping to Production
- Data-Driven and AI-First Finance
- Data-Driven Finance
- AI-First Finance
- Conclusion
- Further Resources
- The Python Programming Language
- 2. Python Infrastructure
- conda as a Package Manager
- Installing Miniconda
- Basic Operations with conda
- conda as a Virtual Environment Manager
- Using Docker Containers
- Docker Images and Containers
- Building an Ubuntu and Python Docker Image
- Using Cloud Instances
- RSA Public and Private Keys
- Jupyter Notebook Configuration File
- Installation Script for Python and Jupyter Notebook
- Script to Orchestrate the Droplet Setup
- Conclusion
- Further Resources
- conda as a Package Manager
- II. Mastering the Basics
- 3. Data Types and Structures
- Basic Data Types
- Integers
- Floats
- Booleans
- Strings
- Excursion: Printing and String Replacements
- Excursion: Regular Expressions
- Basic Data Structures
- Tuples
- Lists
- Excursion: Control Structures
- Excursion: Functional Programming
- Dicts
- Sets
- Conclusion
- Further Resources
- Basic Data Types
- 4. Numerical Computing with NumPy
- Arrays of Data
- Arrays with Python Lists
- The Python array Class
- Regular NumPy Arrays
- The Basics
- Multiple Dimensions
- Metainformation
- Reshaping and Resizing
- Boolean Arrays
- Speed Comparison
- Structured NumPy Arrays
- Vectorization of Code
- Basic Vectorization
- Memory Layout
- Conclusion
- Further Resources
- Arrays of Data
- 5. Data Analysis with pandas
- The DataFrame Class
- First Steps with the DataFrame Class
- Second Steps with the DataFrame Class
- Basic Analytics
- Basic Visualization
- The Series Class
- GroupBy Operations
- Complex Selection
- Concatenation, Joining, and Merging
- Concatenation
- Joining
- Merging
- Performance Aspects
- Conclusion
- Further Reading
- The DataFrame Class
- 6. Object-Oriented Programming
- A Look at Python Objects
- int
- list
- ndarray
- DataFrame
- Basics of Python Classes
- Python Data Model
- The Vector Class
- Conclusion
- Further Resources
- A Look at Python Objects
- III. Financial Data Science
- 7. Data Visualization
- Static 2D Plotting
- One-Dimensional Data Sets
- Two-Dimensional Data Sets
- Other Plot Styles
- Static 3D Plotting
- Interactive 2D Plotting
- Basic Plots
- Financial Plots
- Conclusion
- Further Resources
- Static 2D Plotting
- 8. Financial Time Series
- Financial Data
- Data Import
- Summary Statistics
- Changes over Time
- Resampling
- Rolling Statistics
- An Overview
- A Technical Analysis Example
- Correlation Analysis
- The Data
- Logarithmic Returns
- OLS Regression
- Correlation
- High-Frequency Data
- Conclusion
- Further Resources
- Financial Data
- 9. Input/Output Operations
- Basic I/O with Python
- Writing Objects to Disk
- Reading and Writing Text Files
- Working with SQL Databases
- Writing and Reading NumPy Arrays
- I/O with pandas
- Working with SQL Databases
- From SQL to pandas
- Working with CSV Files
- Working with Excel Files
- I/O with PyTables
- Working with Tables
- Working with Compressed Tables
- Working with Arrays
- Out-of-Memory Computations
- I/O with TsTables
- Sample Data
- Data Storage
- Data Retrieval
- Conclusion
- Further Resources
- Basic I/O with Python
- 10. Performance Python
- Loops
- Python
- NumPy
- Numba
- Cython
- Algorithms
- Prime Numbers
- Python
- Numba
- Cython
- Multiprocessing
- Fibonacci Numbers
- Recursive algorithm
- Iterative algorithm
- The Number Pi
- Prime Numbers
- Binomial Trees
- Python
- NumPy
- Numba
- Cython
- Monte Carlo Simulation
- Python
- NumPy
- Numba
- Cython
- Multiprocessing
- Recursive pandas Algorithm
- Python
- Numba
- Cython
- Conclusion
- Further Resources
- Loops
- 11. Mathematical Tools
- Approximation
- Regression
- Monomials as basis functions
- Individual basis functions
- Noisy data
- Unsorted data
- Multiple dimensions
- Interpolation
- Regression
- Convex Optimization
- Global Optimization
- Local Optimization
- Constrained Optimization
- Integration
- Numerical Integration
- Integration by Simulation
- Symbolic Computation
- Basics
- Equations
- Integration and Differentiation
- Differentiation
- Conclusion
- Further Resources
- Approximation
- 12. Stochastics
- Random Numbers
- Simulation
- Random Variables
- Stochastic Processes
- Geometric Brownian motion
- Square-root diffusion
- Stochastic volatility
- Jump diffusion
- Variance Reduction
- Valuation
- European Options
- American Options
- Risk Measures
- Value-at-Risk
- Credit Valuation Adjustments
- Python Script
- Conclusion
- Further Resources
- 13. Statistics
- Normality Tests
- Benchmark Case
- Real-World Data
- Portfolio Optimization
- The Data
- The Basic Theory
- Optimal Portfolios
- Efficient Frontier
- Capital Market Line
- Bayesian Statistics
- Bayes Formula
- Bayesian Regression
- Two Financial Instruments
- Updating Estimates over Time
- Machine Learning
- Unsupervised Learning
- The data
- k-means clustering
- Gaussian mixture
- Supervised Learning
- The data
- Gaussian Naive Bayes
- Logistic regression
- Decision trees
- Deep neural networks
- DNNs with scikit-learn
- DNNs with TensorFlow
- Feature transforms
- Train-test splits: Support vector machines
- Unsupervised Learning
- Conclusion
- Further Resources
- Normality Tests
- IV. Algorithmic Trading
- 14. The FXCM Trading Platform
- Getting Started
- Retrieving Data
- Retrieving Tick Data
- Retrieving Candles Data
- Working with the API
- Retrieving Historical Data
- Retrieving Streaming Data
- Placing Orders
- Account Information
- Conclusion
- Further Resources
- 15. Trading Strategies
- Simple Moving Averages
- Data Import
- Trading Strategy
- Vectorized Backtesting
- Optimization
- Random Walk Hypothesis
- Linear OLS Regression
- The Data
- Regression
- Clustering
- Frequency Approach
- Classification
- Two Binary Features
- Five Binary Features
- Five Digitized Features
- Sequential Train-Test Split
- Randomized Train-Test Split
- Deep Neural Networks
- DNNs with scikit-learn
- DNNs with TensorFlow
- Conclusion
- Further Resources
- Simple Moving Averages
- 16. Automated Trading
- Capital Management
- The Kelly Criterion in a Binomial Setting
- The Kelly Criterion for Stocks and Indices
- ML-Based Trading Strategy
- Vectorized Backtesting
- Optimal Leverage
- Risk Analysis
- Persisting the Model Object
- Online Algorithm
- Infrastructure and Deployment
- Logging and Monitoring
- Conclusion
- Python Scripts
- Automated Trading Strategy
- Strategy Monitoring
- Further Resources
- Capital Management
- V. Derivatives Analytics
- 17. Valuation Framework
- Fundamental Theorem of Asset Pricing
- A Simple Example
- The General Results
- Risk-Neutral Discounting
- Modeling and Handling Dates
- Constant Short Rate
- Market Environments
- Conclusion
- Further Resources
- Fundamental Theorem of Asset Pricing
- 18. Simulation of Financial Models
- Random Number Generation
- Generic Simulation Class
- Geometric Brownian Motion
- The Simulation Class
- A Use Case
- Jump Diffusion
- The Simulation Class
- A Use Case
- Square-Root Diffusion
- The Simulation Class
- A Use Case
- Conclusion
- Further Resources
- 19. Derivatives Valuation
- Generic Valuation Class
- European Exercise
- The Valuation Class
- A Use Case
- American Exercise
- Least-Squares Monte Carlo
- The Valuation Class
- A Use Case
- Conclusion
- Further Resources
- 20. Portfolio Valuation
- Derivatives Positions
- The Class
- A Use Case
- Derivatives Portfolios
- The Class
- A Use Case
- Conclusion
- Further Resources
- Derivatives Positions
- 21. Market-Based Valuation
- Options Data
- Model Calibration
- Relevant Market Data
- Option Modeling
- Calibration Procedure
- Portfolio Valuation
- Modeling Option Positions
- The Options Portfolio
- Python Code
- Conclusion
- Further Resources
- A. Dates and Times
- Python
- NumPy
- pandas
- B. BSM Option Class
- Class Definition
- Class Usage
- Index