QuantLib 金融计算——基本组件之 Index 类
2024-10-15 19:18:18
QuantLib 金融计算——基本组件之 Index 类
Index
类用于表示已知的指数或者收益率,例如 Libor 或 Shibor。这些指数或收益率的属性可能取决于若干个变量,如基础货币和期限。想象一下,一个交易员正在交易利率互换,浮动收益率定为 3 个月的 Shibor,他肯定需要了解此收益率以及基于此收益率的互换合约的若干结算细节,通常来说这些细节是固定不变的。
这些属性因期限而不同,此外,还取决于相应的基础货币。幸运的是,用户不必为大多数常用指数或收益率指定这些属性,因为它们在 QuantLib 中实现。
例如,用户可以通过 Shibor
类构造特定期限的 Shibor 利率。Shibor
类继承自 IborIndex
类(表示银行间市场收益率的基类), IborIndex
类又继承自 InterestRateIndex
类(表示指数和收益率的基类)。这些类提供了如下几个常用函数:
name()
:指数或收益率的名字fixingCalendar()
:指数或收益率使用的日历表dayCounter()
:指数或收益率使用的天数计算规则currency()
:指数或收益率对应的基础货币tenor()
:指数或收益率的期限businessDayConvention()
:如何调整非工作日
目前版本的 quantlib-python 中没有封装 Shibor
类,只能在 C++ 中调用。
#include <iostream>
#include <ql/indexes/ibor/shibor.hpp>
#include <ql/time/period.hpp>
using namespace std;
using namespace QuantLib;
void testingIndexes1();
int main()
{
testingIndexes1();
return 0;
}
void testingIndexes1()
{
Period tensor(3, Months);
Shibor index(tensor);
cout << "Name :\t" << index.familyName() << endl;
cout << "BDC :\t" << index.businessDayConvention() << endl;
cout << "End of Month rule ?:\t" << index.endOfMonth() << endl;
cout << "Tenor :\t" << index.tenor() << endl;
cout << "Calendar :\t" << index.fixingCalendar() << endl;
cout << "Day Counter :\t" << index.dayCounter() << endl;
cout << "Currency :\t" << index.currency() << endl;
}
Name : Shibor
BDC : Modified Following
End of Month rule ?: 0
Tenor : 3M
Calendar : China inter bank market
Day Counter : Actual/360
Currency : CNY
在 QuantLib 中有若干类的构造函数需要这样一个指数或收益率对象作为输入参数,特别是和构造收益率曲线有关的类,需要收益率的确切属性。Index
类使得其他构造函数的定义更加紧凑。
最新文章
- pt-ioprofile
- 通过Cloudera在hadoop生态圈中安装Sentry服务。
- VS2012下基本类型大小
- oracle数据本机自动备份
- Purchase购物车实例分析
- 3、网页制作Dreamweaver(表单form)
- 尚学堂JavaEE项目备选
- ORACLE数据库存储结构简介(转)
- mvc路由参数注解
- Windows API 之 VirtualAlloc
- Java学习之旅基础知识篇:数组及引用类型内存分配
- 来谈谈JAVA面向对象 - 鲁班即将五杀,大乔送他回家??
- BBS论坛(二十四)
- java 中拿项目路径
- HDU5758 Explorer Bo 思维+树形dp
- TCP的三次握手与四次挥手过程,各个状态名称与含义
- Python-百度经纬度转高德经纬度
- 基于folly的AtomicIntrusiveLinkedList无锁队列进行简单封装的多生产多消费模型
- 【pycharm】pycharm上安装tensorflow,报错:AttributeError: module &#39;pip&#39; has no attribute &#39;main&#39; 解决方法
- win10 docker 安装部署
热门文章
- 未能映射路径";/";
- windows 下mongodb 副本建创建
- Deep learning for visual understanding: A review
- 20169205 2016-2017-2 实验二nmap的使用与分析
- int *a[] 与(int *)a【5】的区别
- Centos 7 安装 mysql5.7
- Tips and Examples Using FNDLOAD (DOC ID 735338.1)
- JQuery --- 第五期 (JQuery节点操作)
- Unity3d中使用Lua
- Hibernate 零配置之Annotation注解