Course Outline
Introduction
Grasping the Fundamentals of Python
Overview of Using Technology and Python in Finance
Overview of Tools and Infrastructure
- Deploying Python Using Anaconda
- Leveraging the Python Quant Platform
- Utilizing IPython
- Utilizing Spyder
Getting Started with Simple Financial Examples with Python
- Calculating Implied Volatilities
- Implementing the Monte Carlo Simulation
- Using Pure Python
- Employing Vectorization with Numpy
- Employing Full Vectorization with the Log Euler Scheme
- Performing Graphical Analysis
- Utilizing Technical Analysis
Understanding Data Types and Structures in Python
- Learning Basic Data Types
- Learning Basic Data Structures
- Utilizing NumPy Data Structures
- Implementing Code Vectorization
Implementing Data Visualization in Python
- Implementing Two-Dimensional Plots
- Utilizing Alternative Plot Styles
- Implementing Finance-Specific Plots
- Generating a 3D Plot
Using Financial Time Series Data in Python
- Exploring the Basics of pandas
- Executing First and Second Steps with the DataFrame Class
- Retrieving Financial Data from the Web
- Utilizing Financial Data from CSV Files
- Implementing Regression Analysis
- Handling High-Frequency Data
Implementing Input/Output Operations
- Understanding the Basics of I/O with Python
- Utilizing I/O with pandas
- Implementing Fast I/O with PyTables
Implementing Performance-Critical Applications with Python
- Overview of Performance Libraries in Python
- Understanding Python Paradigms
- Understanding Memory Layout
- Implementing Parallel Computing
- Utilizing the multiprocessing Module
- Utilizing Numba for Dynamic Compiling
- Utilizing Cython for Static Compiling
- Using GPUs for Random Number Generation
Using Mathematical Tools and Techniques for Finance with Python
- Learning Approximation Techniques
- Regression
- Interpolation
- Implementing Convex Optimization
- Implementing Integration Techniques
- Applying Symbolic Computation
Stochastics with Python
- Generation of Random Numbers
- Simulation of Random Variables and Stochastic Processes
- Implementing Valuation Calculations
- Calculation of Risk Measures
Statistics with Python
- Implementing Normality Tests
- Implementing Portfolio Optimization
- Carrying Out Principal Component Analysis (PCA)
- Implementing Bayesian Regression using PyMC3
Integrating Python with Excel
- Implementing Basic Spreadsheet Interaction
- Using DataNitro for Full Integration of Python and Excel
Object-Oriented Programming with Python
Building Graphical User Interfaces with Python
Integrating Python with Web Technologies and Protocols for Finance
- Web Protocols
- Web Applications
- Web Services
Understanding and Implementing the Valuation Framework with Python
Simulating Financial Models with Python
- Random Number Generation
- Generic Simulation Class
- Geometric Brownian Motion
- The Simulation Class
- Implementing a Use Case for GBM
- Jump Diffusion
- Square-Root Diffusion
Implementing Derivatives Valuation with Python
Implementing Portfolio Valuation with Python
Using Volatility Options in Python
- Implementing Data Collection
- Implementing Model Calibration
- Implementing Portfolio Valuation
Best Practices in Python Programming for Finance
Troubleshooting
Summary and Conclusion
Closing Remarks
Requirements
- Foundational programming experience
- A strong command of mathematics relevant to finance
Testimonials (2)
Hands-on exercises related to content really helps to understand more about each topic. Also, style of start class with lecture and continue with hands-on exercise is good and helpful to relate with the lecture that presented earlier.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Course - Introduction to Data Science and AI using Python
Examples/exercices perfectly adapted to our domain