---
source_url: https://docs.dolphindb.cn/zh/funcs/f/fxForwardPricer.html
fetched_at: 2026-05-19T09:22:12Z
category: funcs
title: fxForwardPricer
sha1: d32a1a09012e8135e0aea0fde774e118219e9297
---

# fxForwardPricer

首发版本：3.00.4

## 语法

`fxForwardPricer(instrument, pricingDate, spot,
domesticCurve, foreignCurve)`

## 详情

基于给定的即期汇率、本币与外币的贴现曲线，以及定价日期，计算外汇远期合约的净现值（NPV）。

## 参数

注意：所有输入向量必须等长，输入标量将自动扩展以匹配其它向量的长度。

**instrument** 一个 INSTRUMENT 类型标量或向量（FxForward）。表示需要定价的外汇远期。外汇远期所需的关键字段见 [FxForward 字段要求](#topic_ylx_cf2_ngc)。

**pricingDate** DATE 类型标量或向量，表示定价日期。

**spot** DOUBLE 类型标量或向量，表示即期汇率。

**domesticCurve** MKTDATA 类型标量或向量（IrYieldCurve），表示本币贴现曲线。曲线所需包含的关键字段见[曲线字段要求](#topic_q1d_df2_ngc)。

**foreignCurve** MKTDATA 类型标量或向量（IrYieldCurve），表示外币贴现曲线。曲线所需包含的关键字段见[曲线字段要求](#topic_q1d_df2_ngc)。

## 返回值

DOUBLE 类型标量或向量。

## 例子

```dolphindb
pricingDate = 2025.08.18

fxForward = {
    "productType": "Forward",
    "forwardType": "FxForward",
    "expiry": 2025.12.16,
    "delivery": 2025.12.18,
    "currencyPair": "USDCNY",
    "direction": "Buy",
    "notionalCurrency": "USD",
    "notionalAmount": 1E6,
    "strike": 7.1
}

curveDates = [2025.08.21,
              2025.08.27,
              2025.09.03,
              2025.09.10,
              2025.09.22,
              2025.10.20,
              2025.11.20,
              2026.02.24,
              2026.05.20,
              2026.08.20,
              2027.02.22,
              2027.08.20,
              2028.08.21]
domesticCurveInfo = {
    "mktDataType": "Curve",
    "curveType": "IrYieldCurve",
    "referenceDate": pricingDate,
    "currency": "CNY",
    "dayCountConvention": "Actual365",
    "compounding": "Continuous",  
    "interpMethod": "Linear",
    "extrapMethod": "Flat",
    "frequency": "Annual",
    "dates": curveDates,
    "values":[1.5113, 
              1.5402, 
              1.5660, 
              1.5574, 
              1.5556, 
              1.5655, 
              1.5703, 
              1.5934, 
              1.6040, 
              1.6020, 
              1.5928, 
              1.5842, 
              1.6068]/100
}
foreignCurveInfo = {
    "mktDataType": "Curve",
    "curveType": "IrYieldCurve",
    "referenceDate": pricingDate,
    "currency": "USD",
    "dayCountConvention": "Actual365",
    "compounding": "Continuous",  
    "interpMethod": "Linear",
    "extrapMethod": "Flat",
    "frequency": "Annual",
    "dates": curveDates,
    "values":[4.3345, 
              4.3801, 
              4.3119, 
              4.3065, 
              4.2922, 
              4.2196, 
              4.1599, 
              4.0443, 
              4.0244, 
              3.9698, 
              3.7740, 
              3.6289, 
              3.5003]/100
}

instrument = parseInstrument(fxForward)

domesticCurve = parseMktData(domesticCurveInfo)
foreignCurve = parseMktData(foreignCurveInfo)
spot = 7.1627

fxForwardPricer(instrument, pricingDate, spot, domesticCurve, foreignCurve)   // output: 1919.8118
fxForwardPricer([instrument, instrument], pricingDate, spot, domesticCurve, foreignCurve)
fxForwardPricer(instrument, [pricingDate, pricingDate], spot, domesticCurve, foreignCurve)
fxForwardPricer(instrument, pricingDate, [spot, spot], domesticCurve, foreignCurve)
fxForwardPricer(instrument, pricingDate, spot, [domesticCurve, domesticCurve], foreignCurve)
fxForwardPricer(instrument, pricingDate, spot, domesticCurve, [foreignCurve, foreignCurve])
```

**相关函数：**[parseInstrument](../p/parseInstrument.html), [parseMktData](../p/parseMktData.html)

## 远期字段要求

| 字段名 | 类型 | 描述 | 是否必填 |
| --- | --- | --- | --- |
| productType | STRING | 产品名称，固定值为 "Forward" | 是 |
| forwardType | STRING | 远期类型，固定值为 "FxForward" | 是 |
| notional | ANY 向量 | 名义本金，格式如 ["USD", 1.0] | 是 |
| instrumentId | STRING | 金融工具 ID | 否 |
| expiry | DATE | 到期日 | 是 |
| delivery | DATE | 交割日 | 是 |
| currencyPair | STRING | 货币对，格式如："EURUSD"，"EUR.USD" 或 "EUR/USD"。支持如下货币对：   - EURUSD：欧元兑美元 - USDCNY：美元兑人民币 - EURCNY：欧元兑人民币 - GBPCNY：英镑兑人民币 - JPYCNY：日元兑人民币 - HKDCNY：港币兑人民币 | 是 |
| direction | STRING | 交易方向。可选："Buy"、"Sell" | 是 |
| strike | DOUBLE | 执行价格 | 是 |
| domesticCurve | STRING | 定价时参考的本币贴现曲线名称 | 否 |
| foreignCurve | STRING | 定价时参考的外币贴现曲线名称 | 否 |

## 曲线字段要求

| 字段名 | 类型 | 描述 | 是否必填 |
| --- | --- | --- | --- |
| mktDataType | STRING | 固定填 "Curve" | 是 |
| referenceDate | DATE | 参考日期 | 是 |
| curveType | STRING | 固定填 "IrYieldCurve" | 是 |
| dayCountConvention | STRING | 曲线的日期计数惯例，可选值为：   - "Actual360"：实际天数除以360 - "Actual365"：实际天数除以365（不区分闰年） - "ActualActualISMA"：实际天数/实际天数（ISMA规则） - "ActualActualISDA"：实际天数/实际天数（ISDA规则） | 是 |
| interpMethod | STRING | 内插方法，可选值为：   - "Linear"：线性插值 - "CubicSpline"：三次样条插值 - "CubicHermiteSpline"：三次埃尔米特样条插值 | 是 |
| extrapMethod | STRING | 外插方法，可选值为：   - "Flat"：平插 - "Linear"：线性插值 | 是 |
| dates | DATE 向量 | 数据点的日期 | 是 |
| values | DOUBLE 向量 | 数据点的值，与 *dates* 中的元素一一对应 | 是 |
| curveName | STRING | 曲线名称 | 否 |
| currency | STRING | 货币，可选值为"CNY", "USD", "EUR", "GBP", "JPY", "HKD" | 是 |
| compounding | STRING | 复利类型，可选值为：   - "Simple"：单利 - "Compounded"：离散复利 - "Continuous"：连续复利 | 是 |
| settlement | DATE | 结算日，如果指定了结算日，则后续期限间隔的计算都将从 *settlement* 开始，而不是 *referenceDate* | 否 |
| frequency | INTEGRAL或 STRING | 计息频率，可选值为：   - -1 或 "NoFrequency"：无效计息频率 - 0 或 "Once"：到期一次还本付息 - 1 或 "Annual"：每年付息一次 - 2 或 "Semiannual"：每半年付息一次 - 3 或 "EveryFourthMonth"：每四个月付息一次 - 4 或 "Quarterly"：每季度付息一次 - 6 或 "BiMonthly"：每两月付息一次 - 12 或 "Monthly"：每月付息一次 - 13 或 "EveryFourthWeek"：每四周付息一次 - 26 或 "BiWeekly"：每两周付息一次 - 52 或 "Weekly"：每周付息一次 - 365 或 "Daily"：每日付息一次 - 999 或 "Other"：其他计息频率 | 否 |
| curveModel | STRING | 曲线构建模型，目前仅支持 "Bootstrap"。 | 否 |
| curveParams | DICT | 模型的参数。 | 否 |
