Files
playbook/skills/tsl-api-reference/references/codegen/dotnet/financial/bond-intermediate.md
T
csh 9010829c6d feat(tsl-api-reference): expand and reorganize api catalog
Flatten builtin pages, add third-party and platform scopes, and import financial and data warehouse references.

Keep the existing generated index without rebuilding after signature normalization.
2026-08-10 18:26:24 +08:00

273 lines
6.5 KiB
Markdown

# 金融 / 债券 / 中间函数
## `bdV_dataProvider(dbtype)`
声明:function
债券估值-供应商类型
| 参数 | 类型 | 说明 |
| -------- | ---- | ----------------------------------- |
| `dbtype` | int | 用户自定义,数据供应商,其取值如下: |
返回:string
## `bdV_getFactorValue(dbtype, id, settlement_date, option)`
声明:function
根据ID获取债券指标
| 参数 | 类型 | 说明 |
| ----------------- | -------- | ---------------------- |
| `dbtype` | int | 用户自定义,数据提供商 |
| `id` | int | 用户自定义,债券指标 |
| `settlement_date` | datetime | 日期,结算日 |
| `option` | int | 用户自定义,选择权 |
返回:array
## `bdV_internalCode(dbtype, id)`
声明:function
债券内部代码,与系统股票相关
| 参数 | 类型 | 说明 |
| -------- | ------ | ---------------------- |
| `dbtype` | int | 用户自定义,数据提供商 |
| `id` | string | 字符串,代码 |
返回:string
### 示例
范例01:返回SH124063'的债券内部代码
```tsl
return bdV_InternalCode(0, 'SH124063');
// 输出:SH124063.zz
```
## `bondCoupDayBS(goal_date, end_t, f)`
声明:function
当前付息期内截止到交易日的天数,与系统股票相关
| 参数 | 类型 | 说明 |
| ----------- | ----------- | ------------------ |
| `goal_date` | t_data_time | 日期类型,到期日 |
| `end_t` | t_data_time | 日期类型,交易日 |
| `f` | int | 整数类型,付息频率 |
返回:integer
### 示例
范例01:调用函数
```tsl
// 返回'BK000002'在2003年3月18日当前付息期内截止到交易日的天数
setSysParam(PN_Stock(), 'BK000002'); // 设置股票代码
goal_date := intToDate(base(502026)); // 到期日
end_t := 20030318T; // 交易日
f := base(502021); // 付息频率
return bondCoupDayBs(goal_date, end_t, f);
// 输出:334
```
## `bondCoupDaysNC(goal_date, end_t, f)`
声明:function
债券交易日距下一次付息日的实际天数,与系统股票相关
| 参数 | 类型 | 说明 |
| ----------- | -------- | ---------------- |
| `goal_date` | datetime | 日期类型,到期日 |
| `end_t` | datetime | 日期类型,交易日 |
| `f` | int | 整数,付息频率 |
返回:int
### 示例
范例01:调用函数
```tsl
SetSysParam(PN_Stock(), 'BK000002'); // 设置股票代码
GoalDate := IntToDate(base(502026)); // 到期日
EndT := 20030318T; // 交易日
f := base(502021); // 付息频率
return BondCoupDaysNC(GoalDate, EndT, f);
```
## `bondDaysbetween(begt, endt, o_ption)`
声明:function
相隔天数
| 参数 | 类型 | 说明 |
| --------- | -------- | ----------------------------------- |
| `begt` | datetime | 日期。起始日期 |
| `endt` | datetime | 日期。截止日期 |
| `o_ption` | int | 用户自定义。返回结果类型,取值如下: |
返回:int
## `bondDuration(bond_type, y, t, c, f)`
声明:function
债券的久期,与系统股票相关
| 参数 | 类型 | 说明 |
| ----------- | ---- | --------------------------------- |
| `bond_type` | int | 用户自定义,债券类型,其取值如下: |
| `y` | real | 实数,到期收益率/年 |
| `t` | real | 实数,到期支付期 |
| `c` | real | 实数,息票率/年 |
| `f` | int | 整数,付息频率 |
返回:real
### 示例
范例01:调用函数
```tsl
return bondDuration(0, 0.0799999982118607, 40, 0.100000001490116, 2);
// 输出:19.74
```
## `bondProvider()`
声明:function
债券数据来源系统参数
返回:real
## `bondRemainPayNumber(goal_date, end_t, f)`
声明:function
债券剩余的付息次数,与系统股票相关
| 参数 | 类型 | 说明 |
| ----------- | ----------- | ------------------ |
| `goal_date` | t_data_time | 日期类型,到期日 |
| `end_t` | t_data_time | 日期类型,交易日 |
| `f` | int | 整数类型,付息频率 |
返回:integer
### 示例
范例01:调用函数
```tsl
// 返回'BK000002'在2003年4月18日剩余的付息次数
setSysParam(PN_Stock(), 'BK000002'); // 设置股票代码
goal_date := intToDate(base(502026)); // 到期日
end_t := 20030418T; // 交易日
f := base(502021); // 付息频率
return bondRemainPayNumber(goal_date, end_t, f);
// 输出:8
```
## `nSharesOfConvertibleBond(info_id, end_t)`
声明:function
可转债流通股本,与系统股票相关
| 参数 | 类型 | 说明 |
| --------- | -------- | ------------------ |
| `info_id` | int | 整数,数据表索引号 |
| `end_t` | datetime | 日期,截止日期 |
返回:float
### 示例
范例01:调用函数
```tsl
SetSysParam(PN_Stock(), 'BK000002'); // 设置股票代码
EndT := 20030318T; // 截止日
return NSharesOfConvertibleBond(91, EndT);
```
## `nSharesOfCorporationBond(info_id, end_t)`
声明:function
企业债券流通股本,与系统股票相关
| 参数 | 类型 | 说明 |
| --------- | -------- | ------------------ |
| `info_id` | int | 整数,数据表索引号 |
| `end_t` | datetime | 日期,截止日期 |
返回:float
### 示例
范例01:调用函数
```tsl
SetSysParam(PN_Stock(), 'BK000002'); // 设置股票代码
EndT := 20120318T; // 截止日
return NSharesOfCorporationBond (90, EndT);
```
## `nSharesOfGovBond(info_id, end_t)`
声明:function
国债流通股本,与系统股票相关
| 参数 | 类型 | 说明 |
| --------- | -------- | -------- |
| `info_id` | int | 无效参数 |
| `end_t` | datetime | 无效参数 |
返回:float
### 示例
范例01:调用函数
```tsl
SetSysParam(PN_Stock(), 'BK000000'); // 设置股票代码
return NSharesOfGovBond(0, 0);
```
## `pn_bonddataprovider()`
声明:function
返回字符串”bdpd”,债券提供商系统参数
返回:string
## `pn_bondStandardDate()`
声明:function
债券基准公布日串,用于债券取现金流
返回:string
### 示例
范例01:结果:BondStandardDate
```tsl
return Pn_BondStandardDate();
// 输出:BondStandardDate
```