以下示例演示了亚洲式期权定价算法的开放计算语言 (OpenCL™) 实施。亚洲式期权是一种价格取决于路径的金融指令。这种期权的收益取决于从开始时间到到期时间的多个采样点的平均价格。此示例特别考虑了算术亚洲式期权的定价。
通过使用多个内核和英特尔的渠道供应商扩展,该示例展示了如何有效地实施蒙特卡罗模拟来为亚洲式期权定价。计算的核心是实施 Black-Scholes 模型的内核。另外两个内核实施了 Mersenne Twister(梅森旋转演算法)随机数生成器,用于使用通道作为通信机制向 Black-Scholes 内核提供随机数。最后,Black-Scholes 内核的输出由另一个内核聚合以产生总收益值。详细解释可以在设计示例包的源代码中找到。
此示例还支持在多个 OpenCL 设备上同时执行。每个设备用一组不同的参数专门为亚洲式期权定价,展示了对许多期权价格计算进行可扩展的并行卸载。
使用多个 OpenCL 设备进行性能扩展
特性
- 通道供应商扩展
- 双精度浮点
- 多个器件执行
- 多个内核,包括单个工作项目内核
下载
该设计示例提供 OpenCL 设备 (.cl) 和主机应用程序的源代码。为了编译主机应用程序,Linux 包包含一个 Makefile,Windows 包包含一个 Microsoft Visual Studio 2010 项目。
本示例提供以下下载:
- v17.1 x64 Linux package (.tar.gz)
- v17.1 x64 Windows package (.zip)
- 使用 OpenCL 对 FPGA 上的亚洲式期权进行蒙特卡罗定价 (PDF)
该设计的使用受硬件参考设计许可协议中条款和条件的管理和约束。
软件和硬件要求
此设计示例需要以下工具:
- 英特尔® FPGA 软件 v17.1 或更高版本
- 英特尔 FPGA SDK for OpenCL™ v16.1 或更高版本
- Linux:GNU Make 和 gcc
- Windows:Microsoft Visual Studio 2010
要下载英特尔设计工具,请访问 OpenCL 下载页面。对底层操作系统的要求与英特尔 FPGA SDK for OpenCL 的要求相同。
OpenCL 和 OpenCL 标识是苹果公司的商标,需获得 Khronos 的许可方能使用。
*产品基于已发布的 Khronos 规范,并已通过 Khronos 一致性测试流程。最新的一致性状态信息可以在 www.khronos.org/conformance 上找到。