Python (2019-2020)

2019-2020
External Lecturer(s): 
Dr Riaz Ahmad
Course Term: 
Michaelmas
Course Overview: 

Intensive eight-hour non-assessed lecture course.
Why Python? Python is rapidly becoming the standard in scientific computing, receiving much excitement about the application to mathematical finance. Its appeal continues to grow in both academic and industry sectors. Python is available on multiple platforms. It is simple to use, easy to maintain, promotes productivity and free to download, with a growing amount of add-on modules. The course assumes no previous knowledge of python. A set of detailed lecture notes, exercises and code will be provided in the form of a complete and self-contained Jupyter notebook.

Learning Outcomes: 

On completion of the course, a student should be comfortable using python to solve practical problems in mathematical finance.

Course Syllabus: 

Data types and data structures. Input, output and flow control. Functions and modules. Special libraries - numPy (numerical computing), matplotlib (graphics), scipy (scientific algorithms) and pandas (data handling). Numerical recipes in Python – root finding; interpolation; numerical integration; linear systems; random number generation.

Resources:

https://www.continuum.io/downloads

https://www.python.org/

https://docs.python.org/2/library/numeric.html

Reading List: 

Zed A. Shaw; Learn Python the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code (Zed Shaw's Hard Way), Addison Wesley; 3rd edition (2013)

Christian Hill, Learning Scientific Programming with Python, CUP, 2016

Jesse Kinder and Philip Nelson, A student's guide to Python for Physical Modeling, PUP, 2015 (new edition 2018)

Please note that e-book versions of many books in the reading lists can be found on SOLO and ORLO.