# 股票 / 股本结构 ## `getNShares(info_id, end_t, value_field_name, changed_field_name, declared_date_field)` 声明:function 指定日股本,与系统参数(股票)相关。 | 参数 | 类型 | 说明 | | --------------------- | -------- | ------------------ | | `info_id` | int | 整数。数据表索引号 | | `end_t` | datetime | 日期。截止日期 | | `value_field_name` | string | 字符串。返回字段 | | `changed_field_name` | string | 字符串。变动日字段 | | `declared_date_field` | string | 字符串。公告日字段 | 返回:float ### 示例 ```tsl SetSysParam(PN_Stock(),'SZ000002'); return GetNShares(16,20230801T,"总股本","变动日","公告日"); ``` ## `mergeReformListDate()` 声明:function 提取股票的股权分置后交易首日,与系统股票pn_stock()、当前时间pn_date()相关。 返回:float ### 示例 ```tsl setsysparam(pn_stock(),'SH600019'); Return MergeReformListDate(); ``` ## `nSharesOfA(info_id, end_t)` 声明:function A股流通股本,与系统参数(股票)相关。 | 参数 | 类型 | 说明 | | --------- | -------- | ------------------ | | `info_id` | int | 整数。数据表索引号 | | `end_t` | datetime | 日期。截止日期 | 返回:float ### 示例 ```tsl SetSysParam(PN_Stock(),'SZ000002'); return NSharesOfA(16,20230801T); ``` ## `nSharesOfB(info_id, end_t)` 声明:function B股流通股本,与系统参数(股票)相关。 | 参数 | 类型 | 说明 | | --------- | -------- | ------------------ | | `info_id` | int | 整数。数据表索引号 | | `end_t` | datetime | 日期。截止日期 | 返回:float ### 示例 ```tsl SetSysParam(PN_Stock(),'SZ000002'); return NSharesOfB(16,20230801T); ``` ## `stockanshares(endt)` 声明:function 股票A股总量,单位:(股)。与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) A股=总股本-B股-H股-其中:有限售外资股-外资法人股 | 参数 | 类型 | 说明 | | ------ | -------- | ------------- | | `endt` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),"SZ000002"); return StockANShares(20200924T); //结果:9724196533 ``` ## `stockBnShares(end_t)` 声明:function B股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回B股股本数。 与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); EndT:=inttodate(20120830); v:=StockBNShares(EndT); return v; ``` ## `stockBTotalShares(end_t)` 声明:function B股总股本,单位:(股),与系统参数(证券代码)相关。 与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期。截止日期。 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),"SZ000488"); return StockBTotalShares(20241224T); ``` ## `stockCpShares(end_t)` 声明:function 转配股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回转配股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SH600690'); v:=StockCPShares(20000620T); return v; ``` ## `stockDsShares(end_t)` 声明:function 境内法人股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回境内法人股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SH600690'); v:=StockDSShares (20040712T); return v; ``` ## `stockFlShares(end_t)` 声明:function 外资发起人股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回外资发起人股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SH600221'); v:=StockFLShares (20021125T); return v; ``` ## `stockFnShares(end_t)` 声明:function 有限售外资股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回有限售外资股。 与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SH600015'); v:=StockFNShares(20120830T); return v; ``` ## `stockFreeNegotiableShares(endt)` 声明:function 自由流通股本,与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------ | -------- | ------------- | | `endt` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockFreeNegotiableShares(20211118T); ``` ## `stockFreeNegotiableShares3()` 声明:function 最新自由流通股本,与系统参数(证券代码,日期)相关 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); setsysparam(pn_date(),20211118T); return StockFreeNegotiableShares3(); ``` ## `stockFreeNegotiableSharesAdjust(endt)` 声明:function 自由流通股本(调整后),与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------ | -------- | ------------- | | `endt` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockFreeNegotiableSharesAdjust(20211118T); ``` ## `stockFreeNegotiableSharesAdjust3()` 声明:function 最新自由流通股本(调整后),与系统参数(证券代码,日期)相关 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); setsysparam(pn_date(),20211118T); return StockFreeNegotiableSharesAdjust3(); ``` ## `stockFreeNegotiableSharesAdjustNPercent(endt)` 声明:function 自由流通股占流通股本(%)(调整后),与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------ | -------- | ------------- | | `endt` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockFreeNegotiableSharesAdjustNPercent(20211118T); ``` ## `stockFreeNegotiableSharesAdjustNPercent3()` 声明:function 最新自由流通股占流通股本(%)(调整后),与系统参数(证券代码,日期)相关 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); setsysparam(pn_date(),20211118T); return StockFreeNegotiableSharesAdjustNPercent3(); ``` ## `stockFreeNegotiableSharesAdjustPercent(endt)` 声明:function 自由流通股占总股本(%)(调整后),与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------ | -------- | ------------- | | `endt` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockFreeNegotiableSharesAdjustPercent(20211118T); ``` ## `stockFreeNegotiableSharesAdjustPercent3()` 声明:function 最新自由流通股占总股本(%)(调整后),与系统参数(证券代码,日期)相关 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); setsysparam(pn_date(),20211118T); return StockFreeNegotiableSharesAdjustPercent3(); ``` ## `stockFreeNegotiableSharesNPercent(endt)` 声明:function 自由流通股占流通股本(%),与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------ | -------- | ------------- | | `endt` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockFreeNegotiableSharesNPercent(20211118T); ``` ## `stockFreeNegotiableSharesNPercent3()` 声明:function 最新自由流通股占流通股本(%),与系统参数(证券代码,日期)相关 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); setsysparam(pn_date(),20211118T); return StockFreeNegotiableSharesNPercent3(); ``` ## `stockFreeNegotiableSharesPercent(endt)` 声明:function 自由流通股占总股本(%),与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------ | -------- | ------------- | | `endt` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockFreeNegotiableSharesPercent(20211118T); ``` ## `stockFreeNegotiableSharesPercent3()` 声明:function 最新自由流通股占总股本(%),与系统参数(证券代码,日期)相关 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); setsysparam(pn_date(),20211118T); return StockFreeNegotiableSharesPercent3(); ``` ## `stockHasNaShares(end_t)` 声明:function 已上市流通A股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回已上市流通A股。 与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockHasNAShares(20171231T); return v; ``` ## `stockHnShares(end_t)` 声明:function H股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回H股。 与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SH600011'); v:=StockHNShares (20120830T); return v; ``` ## `stockHTotalShares(end_t)` 声明:function H股总股本,单位:(股),与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期。截止日期。 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),"SZ000488"); return StockHTotalShares(20241224T); ``` ## `stockNegotiableShares(end_t)` 声明:function 流通股本。 如果是A股,则返回已上市流通A股;如果是B股票,则返回流通B股。 与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockNegotiableShares(20120830T); return v; ``` ## `stockNegotiableShares3()` 声明:function 最新流通股本。 函数默认截止日为今天,如果在调用该函数之前,设置当前日期,则返回设置的日期的流通股本数据。 与系统参数(证券代码、时间),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); setsysparam(pn_date(),inttodate(20120930)); v:=StockNegotiableShares3(); return v; ``` ## `stockNegotiableSharesBeforeReform()` 声明:function 返回指定股票的股权分置前流通股本,单位:(股),该函数与证券代码有关。Real。 特别说明:数据下架,本模型已废弃 返回:float ## `stockNnShares(end_t)` 声明:function 未流通股,单位:(股)。 (1)未流通股=发起人股+募集法人股+自然人法人股+内部职工股+优先股+转配股+其他未流通股; (2)从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,可以取出最近的发起人股、募集法人股等股本数据,根据算法计算出未流通股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockNNShares (20120830T); return v; ``` ## `stockNnShares2(end_t)` 声明:function 有限售条件的流通股,单位:(股)。 (1)有限售条件的流通股=总股本-已上市流通A股-B股-H股; (2)从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,可以取出最近的总股本、已上市流通A股等股本数据,根据算法计算出有限售条件的流通股。 与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockNNShares2(20171231T); return v; ``` ## `stockNnSharesBeforeReform()` 声明:function 返回指定股票的股权分置前非流通股,单位:(股),该函数与证券代码有关。Real。 特别说明:数据下架,本模型已废弃 返回:float ## `stockNpShares(end_t)` 声明:function 自然人法人股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回自然人法人股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SH600355'); v:=StockNPShares(20030515T); return v; ``` ## `stockNShares(end_t)` 声明:function 流通股(A.B.H),单位:(股)。 (1)流通股(A.B.H)=流通A股+B股+H股; (2)从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,可以取出最近的流通A股、B股、H股等股本数据,根据算法计算出流通股(A.B.H)。 与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockNShares (20120830T); return v; ``` ## `stockOnShares(end_t)` 声明:function 其它股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回其它股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockONShares(20120830T); return v; ``` ## `stockPpShares(end_t)` 声明:function 募集法人股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回募集法人股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockPPShares (20051107T); return v; ``` ## `stockPriorShares(end_t)` 声明:function 优先股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回优先股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockPriorShares (20051107T); return v; ``` ## `stockRdShares(end_t)` 声明:function 有限售其他内资股,与系统参数(证券代码)相关 系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) 有限售其他内资股=有限售境内法人股+有限售境内自然人股 | 参数 | 类型 | 说明 | | ------- | -------- | ------------- | | `end_t` | datetime | 日期,截止日期 | 返回:bool ### 示例 ```tsl SetSysParam(pn_stock(),"SZ000002"); return StockRDShares(20200924T); //结果:9881598 ``` ## `stockRfShares(end_t)` 声明:function 有限售外资股,与系统参数(证券代码)相关 系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) 有限售外资股=有限售境外法人股+有限售境外自然人持股 | 参数 | 类型 | 说明 | | ------- | -------- | ------------- | | `end_t` | datetime | 日期,截止日期 | 返回:bool ### 示例 ```tsl SetSysParam(pn_stock(),"SH600038"); return StockRFShares(20250924T); //结果:2648616 ``` ## `stockRShares(end_t)` 声明:function 有限售股份,与系统参数(证券代码)相关 系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ------------- | | `end_t` | datetime | 日期,截止日期 | 返回:bool ### 示例 ```tsl SetSysParam(pn_stock(),"SZ000002"); return StockRShares(20200924T); //结果:9881598 ``` ## `stockShare(end_t)` 声明:function 股本结构。 从股本结构表中取出截止至EndT的股本结构表数据。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:array ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockShare (20120830T); return v; ``` ## `stockShares(end_t, return_field)` 声明:function 股本数量,单位(股)。 | 参数 | 类型 | 说明 | | -------------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | | `return_field` | any | 整数,股本类别; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockShares(inttodate(20120830),SSS_TotalSharesField()); return v; ``` ## `stockShares3(return_field)` 声明:function 最新股本数量,与系统参数(证券代码\时间)相关 系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | -------------- | ---- | ------------------- | | `return_field` | int | 用户自定义,股本类别 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); setsysparam(pn_date(),inttodate(20120830)); v:=StockShares3(SSS_TotalSharesField()); return v; ``` ## `stockSharesRatio(end_t, share_name1, share_name2)` 声明:function 股本比(%)。 (1)股本比(%)=ShareName1的股本/ShareName2的股本\*100; (2)函数从股本结构表中取出EndT的ShareName1和ShareName2两个股本数据,根据算法可以计算出股本比(%)。 | 参数 | 类型 | 说明 | | ------------- | -------- | ------------------------ | | `end_t` | datetime | 实数,截止日期; | | `share_name1` | any | 整数,股本类型(分子); | | `share_name2` | any | 整数,股本类型(分母); | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockSharesRatio(inttodate(20120830),SSS_NSharesField(), SSS_TotalSharesField()); return v; ``` ## `stockSoShares(end_t)` 声明:function 国家股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回国家股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockSOShares(20051107T); return v; ``` ## `stockSShares(end_t)` 声明:function 发起人股,单位:(股)。 (1)发起人股=国家股+境内法人股+外资法人股+其他法人股; (2)从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,可以取出最近的国家股、境内法人股等股本数据,根据算法计算出发起人股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockSShares(20051107T); return v; ``` ## `stockStuffShares(end_t)` 声明:function 内部职工股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回内部职工股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockStuffShares(20120830T); return v; ``` ## `stockTlShares(end_t)` 声明:function 高管股,单位:(股)。 从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回高管股。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockTLShares(20120830T); return v; ``` ## `stockTotalShares(end_t)` 声明:function 总股本,单位:(股)。 与系统参数(证券代码),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) (1)总股本=未流通股+流通股; (2)从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,可以取出最近的未流通股、流通股等股本数据,根据算法计算出总股本。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockTotalShares(20120830T); return v; ``` ## `stockTotalShares3()` 声明:function 最新总股本 函数默认截止日为今天,如果在调用该函数之前,设置当前日期,则返回设置的日期的总股本。 与系统参数(证券代码,时间),系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); Setsysparam(pn_date(),inttodate(20120930)); setsysparam(pn_stock(),'SZ000002'); v:=StockTotalShares3(); return v; ``` ## `stockTotalSharesBeforeIssue()` 声明:function 总股本(发行前)。 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockTotalSharesBeforeIssue (); return v; ``` ## `stockTotalSharesForPs(end_t)` 声明:function 总股本(计算每股指标用),单位:(股)。 (1)从股本结构表中,取出小于变动日小于EndT且最接近EndT的记录,返回高管股; (2)如果EndT未上市,则取上市前的总股本(发行后总股本-发行额度)。如果上市首日没有数据,则取变动表中的第一条记录。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockTotalSharesForPS (20120830T); return v; ``` ## `stockTotalSharesRight(end_t)` 声明:function 总股本(加权),单位:(股)。 (1)加权的总股本=加权的债转股+加权新股+加权增发; (2)根据EndT得到期初报告期RDate; (3)加权债转股=RDate至EndT之前的债转股总和/RDate至EndT之前的月份; 加权增发=RDate至EndT之前的增发股总和/RDate至EndT之前的月份; 加权新股=RDate至EndT之前的增发股总和/RDate至EndT之前的天数; | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 实数,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockTotalSharesRight(20120830T); return v; ``` ## `stockUnShares(end_t)` 声明:function 无限售条件股份,与系统参数(证券代码)相关 系统参数PN_ChangedDateMode()相关,默认PN_ChangedDateMode()=0,同时考虑变动日和公布日,PN_ChangedDateMode()=1,表示只考虑变动日的情况(以前的) | 参数 | 类型 | 说明 | | ------- | -------- | ------------- | | `end_t` | datetime | 日期,截止日期 | 返回:bool|void ### 示例 ```tsl SetSysParam(pn_stock(),"SZ000002"); return StockUNShares(20200924T); //结果:11607850603 ``` ## `tSharesOfA(info_id, end_t)` 声明:function A股总股本,与系统参数(股票)相关。 | 参数 | 类型 | 说明 | | --------- | -------- | ------------------ | | `info_id` | int | 整数。数据表索引号 | | `end_t` | datetime | 日期。截止日期 | 返回:float ### 示例 ```tsl SetSysParam(PN_Stock(),'SZ000002'); return TSharesOfA(16,20230801T); ``` ## `tSharesOfB(info_id, end_t)` 声明:function B股总股本,与系统参数(股票)相关。 | 参数 | 类型 | 说明 | | --------- | -------- | ------------------ | | `info_id` | int | 整数。数据表索引号 | | `end_t` | datetime | 日期。截止日期 | 返回:float ### 示例 ```tsl SetSysParam(PN_Stock(),'SZ000002'); return TSharesOfB(16,20230801T); ``` ## `shareStructure(bk_name, end_t, low_v, high_v, step_v, value)` 声明:function 返回指定板块指定日期股本结构相关数据。 | 参数 | 类型 | 说明 | | --------- | ------- | -------------------- | | `bk_name` | String | 字符串类型,板块名称 | | `end_t` | Date | 日期类型,截止日期 | | `low_v` | Real | 实数,股本下限(万) | | `high_v` | Real | 实数,股本上限(万) | | `step_v` | Real | 实数,统计间距(万) | | `value` | Integer | 整型,分类标准 | 返回:Array ### 示例 ```tsl //返回上证A股在20201231股本结构相关的数据 return shareStructure("上证A股",20201231T,0,10,1,0); //结果: ```