How to value FX forward pricing example

FX forward


An FX Forward contract is an agreement to buy or sell a fixed amount of foreign currency at previously agreed exchange rate (called strike) at defined date (called maturity).

FX Forward Valuation Calculator

FX forward example

  1. trade date : 1/oct/2012
  2. maturity date: 1/oct/2013

on maturity date A will buy 100 USD at exchange rate EURUSD 1.23

FX forward pricing

What market data do we need?

  1. forward points
  2. EUR discount curve

Forward points for 1 month represent how many basis points to add to current spot to know the forward EURUSD exchange rate
(for valuation date of today could be found on page fxstreet)

for example if forward points for EURUSD for 1 month is 30 and eurusd spot for valuation date is 1.234 then
the forward rate EURUSD for valuation date+ 1 month would be 1.234+30/10000=1.237

FX forward valuation algorithm

  1. calculate forward exchange rate in euros: Forward in dollars=spot+Forwardpoints/10000 , Forward in Euros=1/ForwardInDollars
  2. caclulate net value of transaction at maturity: NetValue=Nominal*(Forward-Strike)
  3. discount it to valuation date with EUR discount curve: NPV=DiscountFactorEUR(maturity)*NetValue

FX forward example valuation:

valuation date: 1/oct/2012

market data:

forward FX points EURUSD 12months = 100

discount factor EUR (1/oct/2013) = 0.9

Spot EURUSD (1/oct/2012) = 1.234

1) calculate FX Forward for 12 months maturity:

Forward 12m EURUSD=1.234+100/10000  = 1.244

Forward USDEUR = 1/1.244=0.8039

2) calculate value at maturity:

strike in EUR = 1/1.23 = 0.813

Value(maturity)=100 (0.8039-0.813)=-0.91496 EUR

3) descount value to valuation date

NPV= 0.9*(-0.91496)=-0.82346 EUR

Excel calculation example (you can edit white cells):

Excel offline file using quantlib addin:
FX forward valuation example EURUSD using quantlib excel addin

Posted in OTC derivatives valuation Tagged with: , , ,