Fetching FX Forward Rates
Use the /fx_forward endpoint to get forward exchange rates for any supported currency pair, enabling FX hedging, cash flow forecasting, and valuation models.
The /fx_forward endpoint returns the forward exchange rate for a specific currency pair and future date. Use this for hedging foreign currency exposure, forecasting cash flows, or building financial models that require future FX rates.
For a list of specific dates in one request, use /fx_forwards (see Multiple Dates in One Call). For the full term structure, use /fx_forward_curve.
Basic Example
import requests
url = "https://api.bluegamma.io/v1/fx_forward"
headers = {"x-api-key": "your_api_key"}
params = {
"currency_pair": "EURUSD",
"date": "2026-12-15"
}
response = requests.get(url, headers=headers, params=params)
data = response.json()
forward_rate = data["rate"]curl -X GET "https://api.bluegamma.io/v1/fx_forward?currency_pair=EURUSD&date=2026-12-15" \
-H "x-api-key: your_api_key_here"Response:
currency_pair
The currency pair requested
date
The future date for the forward rate
valuation_time
The snapshot the rate was priced off (null for the latest data)
rate
The forward exchange rate for the specified date
spot_rate
The spot rate at the valuation time, for reference
forward_diff
Absolute difference between the forward rate and spot
premium
Forward premium as a percentage of spot
days_forward
Calendar days between the valuation date and the forward date
extrapolated
true when the date lies beyond the pair's last quoted tenor
Parameters
currency_pair
Yes
Currency pair in ISO format (e.g., EURUSD, GBPUSD, USDJPY)
date
Yes
Future date for the forward rate (ISO 8601 format: YYYY-MM-DD)
valuation_time
No
Historical timestamp (ISO 8601) for reproducibility
Currency Pair Format
Currency pairs follow the ISO standard format:
Base currency (first 3 letters) + Quote currency (last 3 letters)
Example:
EURUSDmeans EUR is the base, USD is the quoteThe forward rate represents how many units of quote currency equal 1 unit of base currency
Common Currency Pairs:
EURUSD- Euro to US DollarGBPUSD- British Pound to US DollarUSDJPY- US Dollar to Japanese YenAUDUSD- Australian Dollar to US DollarUSDCAD- US Dollar to Canadian DollarEURGBP- Euro to British Pound
For the full list of supported currency pairs, see Supported FX Currency Pairs.
When to Use FX Forward Rates
FX hedging
Lock in forward rates for foreign currency debt service payments
Cash flow forecasting
Project future revenue or expenses in different currencies
Valuation models
Discount foreign currency cash flows back to home currency
Risk management
Assess FX exposure across a portfolio of foreign assets
Financial planning
Model capital expenditures or investments in foreign currencies
Multiple Dates in One Call
The /fx_forwards endpoint returns forward rates for an explicit list of value dates in a single request, all priced off one curve snapshot. This is the most efficient way to price a set of specific dates, for example a schedule of payment or settlement dates, in one request rather than one call per date.
Response:
Each entry in rates carries the same fields as /fx_forward, plus extrapolated, which is true when the date lies beyond the pair's last quoted tenor. valuation_time is null when you request the latest data, and timestamp is the snapshot the whole set was priced off.
Parameters
currency_pair
Yes
Currency pair in ISO format (e.g., EURUSD)
dates
Yes
List of value dates (ISO 8601 YYYY-MM-DD), up to 500, in any order
Notes
All dates are priced off a single curve snapshot, so the values are mutually consistent.
A value date on or before the snapshot returns the spot rate.
Prefer this over repeated
/fx_forwardcalls whenever you need a set of specific dates, such as monthly payment dates.
Building an FX Forward Curve
For a full forward curve in a single call, use /fx_forward_curve. It returns the spot rate plus standard tenor points out to 10 years (weekly to 3 weeks, monthly to 1 year, then annual points), or forward rates at a custom interval over a date range. The exact set of standard tenors depends on the market data available for the pair.
Standard tenors (default)
Response (abbreviated to a few tenors):
Custom frequency
Pass any tenor-style interval (1D, 1W, 1M, 3M, 6M, 12M) along with a start_date and end_date to get forward rates at that cadence.
Parameters
currency_pair
Yes
Currency pair in ISO format (e.g., EURUSD)
frequency
No
standard (default) for standard tenors, or an interval like 1D, 1W, 1M, 3M
start_date
No
Start of the date range for custom frequency (ignored when frequency=standard)
end_date
No
End of the date range for custom frequency (ignored when frequency=standard)

When to use /fx_forward or /fx_forwards instead
If you only need a forward rate at a single arbitrary date (e.g. matching a specific cash flow), call /fx_forward directly. For a set of specific dates that are not standard tenors, use /fx_forwards. Use /fx_forward_curve whenever you want the full term structure or a regular interval.
Reproducibility with valuation_time
For reproducible valuations, use valuation_time to lock in the market state at a specific point in time:
Without valuation_time, you get the latest data. With it, you get the forward rate exactly as it was at that timestamp—essential for reproducing valuations months later or for audit trails.
Practical Example: Cash Flow Forecasting
If you have revenue or expenses in EUR but report in USD, you can forecast the USD equivalent using forward rates. The whole schedule can be priced in a single call with /fx_forwards:
Need FX forward data for your treasury models? Get an API key and start pulling live rates. Book a demo →
Related Endpoints
Current spot rate
/fx
Forwards for several specific dates
/fx_forwards — an explicit list of value dates in one call
A full forward curve
/fx_forward_curve — spot + standard tenors (or a custom frequency) in a single call
Interest rate forwards
/forward_rate
Error Handling
Need an API key? 📩 support@bluegamma.io | 📅 Book a call
Last updated
Was this helpful?

