Skip to Main Content

MFE5250 Programming for Financial Engineering: Home

Course Description

This course is designed for those students who would like to acquire introductory knowledge in programming and who aim to be financial engineers, quantitative analysts, accountants, and other finance professionals. The course first gives an introduction to basic object-oriented programming skills in C++ and Python. Equipped with basics in C++, application programming interfaces (API) for popular financial databases will be covered. Selected applications in pricing, risk management of financial instruments, and asset allocation models are covered at the end of the course.

Recommended Books

Introduction to C++ for Financial Engineers

This book introduces the reader to the C++ programming language and how to use it to write applications in quantitative finance (QF) and related areas. No previous knowledge of C or C++ is required -- experience with VBA, Matlab or other programming language is sufficient. The book adopts an incremental approach; starting from basic principles then moving on to advanced complex techniques and then to real-life applications in financial engineering.

Learning Python

Get a comprehensive, in-depth introduction to the core Python language with this hands-on book. Based on author Mark Lutz’s popular training course, this updated fifth edition will help you quickly write efficient, high-quality code with Python. It’s an ideal way to begin, whether you’re new to programming or a professional developer versed in other languages.

Effective Python

It's easy to start writing code with Python: that's why the language is so immensely popular. However, Python has unique strengths, charms, and expressivity that can be hard to grasp at first -- as well as hidden pitfalls that can easily trip you up if you aren't aware of them. Effective Python will help you harness the full power of Python to write exceptionally robust, efficient, maintainable, and well-performing code. Utilizing the concise, scenario-driven style pioneered in Scott Meyers's best-selling Effective C++, Brett Slatkin brings together 59 Python best practices, tips, shortcuts, and realistic code examples from expert programmers.

Python Cookbook

If you need help writing programs in Python 3, or want to update older Python 2 code, this book is just the ticket. Packed with practical recipes written and tested with Python 3.3, this unique cookbook is for experienced Python programmers who want to focus on modern tools and idioms.

C++ Design Patterns and Derivatives Pricing

Newly updated second edition and now in paperback! This is the first book on implementing financial models using object-oriented C++. Assuming only a basic knowledge of C++ and mathematical finance, the reader learns how to produce well-designed, structured, reusable code via carefully-chosen examples. This new edition includes several new chapters covering topics of increasing robustness in the presence of exceptions, designing a generic factory, interfacing C++ with EXCEL, and improving code design using the idea of decoupling. Complete ANSI/ISO compatible C++ source code is hosted on an accompanying website for the reader to study in detail, and reuse as they see fit. Whether you are a student of financial mathematics, a working quantitative analyst or financial mathematician, you need this book. Offering practical steps for implementing pricing models for complex financial products, it will transform your understanding of how to use C++.

A Guide to MATLAB Object-Oriented Programming

A Guide to MATLAB Object-Oriented Programming is the first book to deliver broad coverage of the documented and undocumented object-oriented features of MATLAB. Unlike the typical approach of other resources, this guide explains why each feature is important, demonstrates how each feature is used, and promotes an understanding.

Recommended Databases