Study at City
  1. Courses
  2. Applying
  3. Fees and funding
  4. Living in London
  5. Visit us & online events
  6. Student support
  7. International students
  8. Order a prospectus
  9. Ask a student
  1. Short courses
  2. Courses
Study at City

Financial Engineering in Interest Rates and FX (C++ applications in Quantitative Finance) Short Course

Key information

Choose a start date
To be confirmed
To be confirmed
To be confirmed
To be confirmed
Course Code:
To be confirmed
To be confirmed
Booking Deadline:
To be confirmed
To be confirmed
Covid-19 update: The learning doesn't have to stop, join our online community. We will be delivering courses remotely until further notice. Live tutor support and virtual lessons will take place during advertised teaching hours. The classes are taught in small groups, so you'll get lots of support from your tutor. Book now.

Taught by an industry professional, this short course provides you with the high level knowledge you will need for a career in quantitative finance.

Why choose this course?

This high level quantitative finance short course is aimed at those working in Finance or considering a Masters in Finance degree.

The course provides a thoroughly comprehensive overview of the subject from an industry expert; as you learn the most widely used models in the banking industry on the Interest Rates and FX markets.

The course is aimed at those with some knowledge of financial engineering with strong mathematical skills. You should be able to implement object-oriented concepts in C++ at a 'schoolbook' level.

The course takes place in our central London location, taught over 10 weeks in the evenings, allowing you to continue with full-time employment.

Course overview

In this Financial Engineering in Interest Rates and FX (C++ applications in Quantitative Finance) evening course you will learn the most widely used models in the banking industry on the Interest Rates and FX markets.

The short course will start with Libor Market Model for single and Multi-Currency models, then move to Markov Functional Models, the ShortRate Models and then volatility models like SABR models, inflation, etc.

What will I learn?

What will I learn?

  1. Binomial Pricer
    • Cox-Ross-Rubinstein Procedure for Binomial Model Pricing
    • Functions, Pointers, Function Pointers
    • Classes, Inheritance, Virtual Functions
  2. American Options
    • Multiple Inheritance
    • Virtual Inheritance
    • Class Templates
  3. Monte-Carlo Methods
    • Path-dependent Options
    • Pricing Error
    • Greek Parameters
    • Variance Reduction
    • Path-dependent Basket Options
  4. Non-linear solvers
    • Implied volatility
    • Bisection method
    • Newton-Raphson method
    • Function pointers
    • Virtual inheritance
    • Computing implied volatility
  5. Introduction to interest rate concepts and Yield Curve Construction: Bootstrapping and interpolation:
    • Simply and Continuously compounded interest rates
    • Relationship between yield and inst forward rates
    • Zero-Coupon Bonds, Coupon Bearing Bonds, Swaps
    • Swaps as stochastic weighted sums of forward rates
      1. Linear in "yield*T)" (= R(0,T)*T)
      2. Linear in "yield" ( = R(0,T) )
      3. Linear in "log Rate" ( = log R(0,T) )
      4. Linear in "Discount Factors"
    • Tension Splines, Cubic Splines
    • C++ coding for all the above Yield Curve Construction methodologies
  6. Short Rate Modeling
    • Merton, Vasicek, Hull-White (HW) one-factor.
    • Bond pricing/calibration
    • Caplet pricing as Option on Bond
    • Swaption Pricing – Jamshidian's trick
    • Multi-factor HW
    • Shape of the yield curve
    • C++ coding of European option pricing on one and multi-factor HW.
  7. Forward Rate modeling Heath-Jarrow-Merton model (HJM)
    • Libor volatility in terms of forward rate volatilities - Repricing of Caplets through Libor volatility and agreement with HW short-rate models
    • Separability of volatility and Markovian representation of state variables
    • Cheyette model
    • C++ pricing of Options
  8. Libor Market Model
    • Numeraire – Spot, Terminal measures
    • Drift equations
    • Lognormal, CEV, and Displaced Diffusion Dynamics of Libors
    • Libor evolution
    • C++ Coding of Evolution of Libors. Calculation of Libors at reset times
    • PCA – Principal Component analysis and rank reduction of the model
    • Stochastic Volatility
  9. Markov Functional Models
    • Explanation of the model details
    • Calculation of convexity adjustment at reset times
    • C++ code for convexity calculation
  10. Option Pricing in Monte-Carlo Routine.
    • Extraction of the Implied Volatility Skew/Smile from SABR, CEV, and Normal models.
    • Option pricing C++ code for early exercise
    • Inflation, Stochastic spread yield curves, Local Volatility modeling etc. if time allows.
  11. SABR model / Option Hedging in Discrete and continuous time



Prerequisite knowledge

  • ability to implement object-oriented concepts in C++ at a 'schoolbook' level (professional experience in C++  not required);
  • strong mathematical skills;
  • knowledge of financial engineering is expected.

English requirements

You must be proficient in written and spoken English.

Recommended reading

Recommended reading

Books that cover the course well from the theory and coding perspective include:

  • John Hull, Options, Futures and Other Derivatives, Prentice Hall 2006.
  • Steve Shreve, Stochastic Calculus for Finance II, Springer 2004.
  • Martin Baxter and Andrew Rennie, Financial Calculus: An Introduction to Derivative Pricing, Chapter 5, (CUP 1996).
  • Mark Joshi, C++ Design Patterns and Derivative Pricing, (Cambridge University Press, 2004).

Tutor information

  • Emiliano Papa

    Emiliano Papa received his PhD in Theoretical Physics from Oxford University. After that he spent 7 years at various academic research and lecturing positions at the University of Texas at Austin, UVA. Visiting scholar at Caltech, Brokhaven National Lab,etc.

    Currently Emiliano is a Director at Deutsche Bank, Heading the Rates and FX teams, having previously worked at Bank of America Merrill Lynch.