# 股票 / 综合指标 ## `financialConstraint(report_date)` 声明:function 融资约束(专用函数),与当前股票pn_stock(),当前时间pn_date()相关。 如果t年的每股股利高于t-1年的每股股利,那么融资约束是1, 如果不变,融资约束是0,如果减少,融资约束是-1 | 参数 | 类型 | 说明 | | ------------- | -------- | -------------------- | | `report_date` | datetime | 报告期类型,报告期; | 返回:int ### 示例 ```tsl setsysparam(pn_stock(),"SZ300296"); return FinancialConstraint(20171231); ``` ## `rfToDay(rf, _type)` 声明:function 折年百分比折算为周/日 | 参数 | 类型 | 说明 | | ------- | ------ | ------------------- | | `rf` | float | 实数,折年收益率(%) | | `_type` | string | 字符串,数据周期 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(PN_Precision(),4); return RfToDay(2.2,'周线'); ``` ## `Risk_NonSystem(t1, t2, rf, theta, cy)` 声明:function 通过参数t1、t2给定的证券和指数的涨幅数据,计算非系统性风险,返回信息比(%)、MCV、效用调整法(%)。注意,t1、t2必须包含“涨幅(%)”列。 其中, 信息比(%)= 两数据的alpha/两数据回归残差的标准差\*100 MCV=两数据的alpha/(t1的标准差-t2的标准差-两数据的beta)\*abs(t2的平均涨幅- Rf\_) 效用调整法(%)= -(1+ Rf\_)/Theta\* 证券的复合增长率 Rf\_ :由无风险年收益率(%)Rf 按照周期Cy转化的指定周期的无风险收益率(%) | 参数 | 类型 | 说明 | | ------- | ------ | -------------------------------------------------- | | `t1` | array | 数据表类型,证券日涨幅数据;必须包含“涨幅(%)”列 | | `t2` | array | 数据表类型,Benchmark涨幅数据;必须包含“涨幅(%)”列 | | `rf` | float | 用户自定义类型,无风险年收益率(%) | | `theta` | float | 实数类型,θ | | `cy` | string | 周期类型,数据周期 | 返回:float ## `Risk_System(t1, t2, rf, zxd, cy)` 声明:function 系统风险 特雷诺(%)、詹森(%)、β、选股(%)、上涨择时(%)、下跌择时(%)、VAR@标准正态法(%)、VAR@历史模拟法(%) | 参数 | 类型 | 说明 | | ----- | ------ | ----------------------- | | `t1` | any | 数组,数据 | | `t2` | any | 数组,Benchmark数据 | | `rf` | float | 实数,无风险年收益率(%) | | `zxd` | float | 实数,置信度(%) | | `cy` | string | 字符串,数据周期 | 返回:array ## `Risk_Total(t, rf, r_max, cy)` 声明:function 总风险 夏普(%)、绍坦诺比率(%)、标准差(%)、下方标准差(%) | 参数 | 类型 | 说明 | | ------- | ------ | ----------------------------- | | `t` | any | 数组,数据 | | `rf` | float | 实数,无风险年利率(%) | | `r_max` | float | 实数,最低可接受的年收益率(%) | | `cy` | string | 字符串,数据周期 | 返回:array ## `rtheta(x, rf, theta)` 声明:function 效用调整法 | 参数 | 类型 | 说明 | | ------- | ----- | ---------------------------- | | `x` | Table | 数组,数据 | | `rf` | float | 实数,无风险收益率(已折算过) | | `theta` | float | 实数,θ | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(pn_date(),inttodate(20120419)); X:=nday3(180,spec(StockLnZf3(),'SZ000002')); return Rtheta(X,0.0225,0.1); ``` ## `sf_Normal3(x)` 声明:function 置信度-->概率水平 | 参数 | 类型 | 说明 | | ---- | ----- | ------------ | | `x` | float | 实数,置信度 | 返回:float ## `sf_Normal3_CallBack(x)` 声明:function 计算置信度-->概率水平回调 | 参数 | 类型 | 说明 | | ---- | ----- | ------------ | | `x` | float | 实数,置信度 | 返回:float ## `stockAlpha(index_id, beg_t, end_t)` 声明:function α系数(区间) 取股票和指数对数收益率序列,求α系数(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | -------- | ---------------- | | `index_id` | string | 字符串,指数代码 | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockAlpha('SH000001',inttodate(20120101),inttodate(20120419)); ``` ## `stockAlpha4(index_id, n)` 声明:function N个交易日α系数(定日期间隔),与当前股票pn_stock(),当前时间pn_date()相关。 注:(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | ------ | ------------------------ | | `index_id` | string | 指数类型,指数代码; | | `n` | int | 用户自定义类型,日期间隔 | 返回:float ### 示例 ```tsl setsysparam(pn_date(),20181012T); return StockAlpha4("SH000018",8); ``` ## `stockAlphaVsVolatility(index_id, beg_t, end_t)` 声明:function α/σ(区间) 取股票和指数对数收益率序列,求α/σ(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | -------- | -------- | | `index_id` | string | 指数代码 | | `beg_t` | datetime | 起始日期 | | `end_t` | datetime | 截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockAlphaVsVolatility ('SH000001',inttodate(20120101),inttodate(20120419)); ``` ## `stockAlphaVsVolatility4(index_id, n)` 声明:function N个交易日α/σ(定日期间隔),与当前股票pn_stock(),当前时间pn_date()相关。 注:(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | ------ | ------------------------ | | `index_id` | string | 指数类型,指数代码; | | `n` | int | 用户自定义类型,日期间隔 | 返回:float ### 示例 ```tsl setsysparam(pn_date(),20181012T); return StockAlphaVsVolatility4("SH000018",8); ``` ## `stockATotalValue(end_t)` 声明:function 指定日A股总市值(万元),与系统参数(股票)相关。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期。结束日期。 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),"SH600026"); return StockATotalValue(20241217T); ``` ## `stockBeta(index_id, beg_t, end_t)` 声明:function β系数(区间) 取股票和指数对数收益率序列,求β系数(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | -------- | ---------------- | | `index_id` | string | 字符串,指数代码 | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockBeta('SH000001',inttodate(20120101),inttodate(20120419)); ``` ## `stockBeta4(index_id, n)` 声明:function N个交易日β系数(定日期间隔),与当前股票pn_stock(),当前时间pn_date()相关。 注:(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | ------ | ------------------------ | | `index_id` | string | 指数类型,指数代码; | | `n` | int | 用户自定义类型,日期间隔 | 返回:float ### 示例 ```tsl setsysparam(pn_date(),20181012T); return StockBeta4("SH000018",8); ``` ## `stockBetaAlpha(beg_t, end_t, index_id, beta, alpha, mean_reaturn, risk, residual, sim_rm, corr)` 声明:function 计算股票Beta,Alpha,平均收益率,收益率标准差,残差标准差。 | 参数 | 类型 | 说明 | | -------------- | -------- | -------------------- | | `beg_t` | datetime | 日期。开始日期 | | `end_t` | datetime | 日期。截止日期 | | `index_id` | string | 字符串。指数代码 | | `beta` | float | 实数。Beta实数 | | `alpha` | float | 实数。Alpha系数 | | `mean_reaturn` | float | 实数。平均收益率 | | `risk` | float | 实数。标准差标准差 | | `residual` | float | 实数。残差标准差 | | `sim_rm` | float | 实数。指数平均收益率 | | `corr` | float | 实数。相关系数 | 返回:array ## `stockBTotalValue(end_t)` 声明:function 指定日B股总市值(万元),与系统参数(股票)相关。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期。结束日期。 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),"SH600054"); return StockBTotalValue(20241217T); ``` ## `stockCorr(index_id, beg_t, end_t)` 声明:function 相关系数ρ(区间) 取股票和指数对数收益率序列,求相关系数(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | -------- | ---------------- | | `index_id` | string | 字符串,指数代码 | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockCorr('SH000001',inttodate(20120101),inttodate(20120419)); ``` ## `stockCorr4(index_id, n)` 声明:function N个交易日相关系数ρ(定日期间隔),与当前股票pn_stock(),当前时间pn_date()相关。 注:(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | ------ | ------------------------ | | `index_id` | string | 指数类型,指数代码; | | `n` | int | 用户自定义类型,日期间隔 | 返回:float ### 示例 ```tsl setsysparam(pn_date(),20181012T); return StockCorr4("SH000018",8); ``` ## `stockCov(index_id, beg_t, end_t)` 声明:function 协方差(区间) 取股票和指数对数收益率序列,求协方差(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | -------- | ---------------- | | `index_id` | string | 字符串,指数代码 | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockCov ('SH000001',inttodate(20120101),inttodate(20120419)); ``` ## `stockCov4(index_id, n)` 声明:function N个交易日协方差(定日期间隔),与当前股票pn_stock(),当前时间pn_date()相关。 注:(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | ------ | ------------------------ | | `index_id` | string | 指数类型,指数代码; | | `n` | int | 用户自定义类型,日期间隔 | 返回:float ### 示例 ```tsl setsysparam(pn_date(),20181012T); return StockCov4("SH000018",8); ``` ## `stockDr(beg_t, end_t, right_type)` 声明:function 个股贡献度(%)=个股市值变动/大盘市值变动\*100 | 参数 | 类型 | 说明 | | ------------ | -------- | ------------------ | | `beg_t` | datetime | 日期,统计开始日期 | | `end_t` | datetime | 日期,统计截止日期 | | `right_type` | int | 整数,加权方式 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); return StockDR(inttodate(20120101),inttodate(20120419),0); ``` ## `stockFreeMarketValue(endt)` 声明:function 自由流通市值,与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------ | -------- | ------------- | | `endt` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockFreeMarketValue(20211118T); ``` ## `stockFreeMarketValue3()` 声明:function 最新自由流通市值,与系统参数(证券代码,日期)相关 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); setsysparam(pn_date(),20211118T); return StockFreeMarketValue3(); ``` ## `stockFreeMarketValueAdjust(endt)` 声明:function 自由流通市值(调整后),与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------ | -------- | ------------- | | `endt` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockFreeMarketValueAdjust(20211118T); ``` ## `stockFreeMarketValueAdjust3()` 声明:function 最新自由流通市值(调整后),与系统参数(证券代码,日期)相关 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); setsysparam(pn_date(),20211118T); return StockFreeMarketValueAdjust3(); ``` ## `stockHTotalValue(end_t)` 声明:function 指定日H股总市值(万元),与系统参数(股票)相关。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期。结束日期。 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),"SH600036"); return StockHTotalValue(20241217T); ``` ## `stockMarketValue(end_t)` 声明:function 指定日流通市值(万),与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------- | -------- | ------------- | | `end_t` | datetime | 日期,结束日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockMarketValue(20250619T); ``` ## `stockMarketValue2(n)` 声明:function 最近N日平均流通市值(万) | 参数 | 类型 | 说明 | | ---- | ---- | ---------- | | `n` | int | 整数,天数 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_date(),inttodate(20120419)); return StockMarketValue2(5); ``` ## `stockMarketValue3()` 声明:function 最新流通市值(万) 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_date(),inttodate(20120419)); return StockMarketValue3 (); ``` ## `stockMarketValueGrow(beg_t, end_t)` 声明:function 流通市值变动(万) | 参数 | 类型 | 说明 | | ------- | -------- | -------------- | | `beg_t` | datetime | 日期,开始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); return StockMarketValueGrow(inttodate(20120101),inttodate(20120419)); ``` ## `stockMarketValueGrowRatio(beg_t, end_t)` 声明:function 流通市值变比(%) | 参数 | 类型 | 说明 | | ------- | -------- | -------------- | | `beg_t` | datetime | 日期,开始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); return StockMarketValueGrowRatio(inttodate(20120101),inttodate(20120419)); ``` ## `stockMarketValuePercent(end_t, bk_name)` 声明:function 指定日流通市值占市场流通市值比例(%) | 参数 | 类型 | 说明 | | --------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期 | | `bk_name` | string | 字符串,市场名称 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); savebk('我的沪深300','用户板块', getbkbydate('SH000300',inttodate(20111230))); return StockMarketValuePercent(inttodate(20111230),'我的沪深300'); ``` ## `stockMeanReturn(beg_t, end_t)` 声明:function 平均收益率μ(区间) 取股票对数收益率序列,求均值(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ------- | -------- | -------------- | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockMeanReturn(inttodate(20120101),inttodate(20120419)); ``` ## `stockMeanReturn4(n)` 声明:function 平均收益率μ(定日期间隔,用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---- | ---- | -------------- | | `n` | int | 整数,日期间隔 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_date(),inttodate(20120419)); return StockMeanReturn4(10); ``` ## `stockPcf(end_t)` 声明:function 指定日市现率(最新年度报告)=指定日总市值/最新年度报告经营活动产生的现金流量净额。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockPCF(inttodate(20120830)); return v; ``` ## `stockPcf3()` 声明:function 市现率(最新年度报告)=当前时间总市值/最新年度报告经营活动产生的现金流量净额。与当前时间有关,取当前时间的最新年度报告。 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockPCF3(); return v; ``` ## `StockPCF3_II()` 声明:function 市现率(最新财务数据加权)。 (1)市现率(最新财务数据加权)=总市值/(最新财务的经营活动产生的现金流量净额\*加权系数); (2)加权系数: 季报 加权系数值 一季报 12/3 中报 12/6 三季报 12/9 年报 12/12 返回:float ## `StockPCF3_V()` 声明:function 市现率(最近12个月)。 市现率(最近12个月)=当前时间总市值/最近12个月经营活动产生的现金流量净额。 返回:float ## `StockPCF_II(end_t)` 声明:function 指定日市现率(最新财务数据加权),与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ------- | -------- | -------------------- | | `end_t` | datetime | 日期类型,截止日期; | 返回:float ## `StockPCF_III(end_t, r_date)` 声明:function 指定日市现率(指定财务数据加权)。 (1)市现率(指定财务数据加权)=总市值/(指定财务的经营活动产生的现金流量净额\*加权系数); (2)加权系数: 季报 加权系数值 一季报 12/3 中报 12/6 三季报 12/9 年报 12/12 | 参数 | 类型 | 说明 | | -------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | | `r_date` | datetime | 整数,报告期; | 返回:float ## `StockPCF_V(end_t)` 声明:function 指定日市现率(最近12个月)=指定日总市值/最近12个月经营活动产生的现金流量净额。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ## `StockPCF_VI(end_t)` 声明:function 指定日市现率(最近12个月,按公布日)。 (1)指定日市现率(最近12个月,按公布日)=指定日总市值/最近12个月经营活动产生的现金流量净额; (2)按公布日取报告期,再取该报告期对应的最近12个月的数据。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ## `stockPe(end_t, data_type)` 声明:function 指定日市盈率(最新年度报告)。 (1)取指定日对应的最新年度报告(向后兼容)RDate。 (2)当DataType为空或者0时,指定日市盈率(最新年度报告)=指定日总市值/RDate报告期的净利润。 当DataType为其他值时,指定日市盈率(最新年度报告)=指定日总市值/RDate报告期的扣除非经常性损益后的净利润 | 参数 | 类型 | 说明 | | ----------- | -------- | --------------------------------------------------------------------------------------------- | | `end_t` | datetime | 日期,截止日期; | | `data_type` | int | 取值为0,市盈率=总市值/最新年度报告净利润; 取值为1,市盈率=总市值/扣除非经常性损益后的净利润 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockPE(inttodate(20120830)); return v; ``` ## `stockPe3()` 声明:function 市盈率(最新年度报告)。 (1)取当前日期对应的最新年度报告(向后兼容)RDate。 (2)市盈率(最新年度报告)=当前日期总市值/RDate报告期的净利润。 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockPE3 (); return v; ``` ## `StockPE3_II()` 声明:function 市盈率(最新财务数据加权)。 (1)取当前日期对应的最新财务报告(向后兼容)RDate。 (2)市盈率(最新财务数据加权)=当前日期总市值/(RDate报告期的加权净利润\*加权系数)。 (3)加权系数: 季报 加权系数值 一季报 12/3 中报 12/6 三季报 12/9 年报 12/12 返回:float ## `StockPE3_IV(data_type)` 声明:function 获取当前时间市盈率(专用),与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ----------- | ---- | ---------------- | | `data_type` | any | 整数类型,类型; | 返回:float ## `StockPE3_V()` 声明:function 市盈率(最近12个月)=当前日期的总市值/当前日期的最近报告期计算出的最近12个月净利润。 返回:float ## `stockPe4(end_t, data_type)` 声明:function 指定日市盈率(季度),与系统参数(证券代码)相关。 | 参数 | 类型 | 说明 | | ----------- | -------- | -------------- | | `end_t` | datetime | 日期。截止日期 | | `data_type` | int | 整数。类型 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),"SZ000001"); return StockPE4(20200930T,1); ``` ## `StockPEG_III(end_t, n, data_type)` 声明:function 指定日PEG(最近12个月加权),与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ----------- | -------- | ---------------------------- | | `end_t` | datetime | 日期类型,截止日期; | | `n` | any | 用户自定义类型,增长率标准; | | `data_type` | any | 整数类型,类型; | 返回:float ## `StockPEG_V(end_t, n, data_type)` 声明:function 指定日PEG(最近12个月),与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ----------- | -------- | ---------------------------- | | `end_t` | datetime | 日期类型,截止日期; | | `n` | any | 用户自定义类型,增长率标准; | | `data_type` | any | 整数类型,类型; | 返回:float ## `StockPE_II(end_t)` 声明:function 指定日市盈率(最新财务数据加权)。 (1)取指定日对应的最新财务报告(向后兼容)RDate。 (2)指定日市盈率(最新财务数据加权)=指定日总市值/(RDate报告期的加权净利润\*加权系数)。 (3)加权系数: 季报 加权系数值 一季报 12/3 中报 12/6 三季报 12/9 年报 12/12 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ## `StockPE_III(end_t, r_date)` 声明:function 指定日市盈率(指定财务数据加权) (1)指定日市盈率(指定财务数据加权)=指定日总市值/(指定报告期的加权净利润\*加权系数)。 (3)加权系数: 季报 加权系数值 一季报 12/3 中报 12/6 三季报 12/9 年报 12/12 | 参数 | 类型 | 说明 | | -------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | | `r_date` | datetime | 整数,报告期 | 返回:float ## `StockPE_Ipo1()` 声明:function 返回指定证券的发行市盈率,与系统参数(证券代码)相关。 发行市盈率(每股收益=扣非前后净利润孰低/发行前总股本) 返回:float ## `StockPE_Ipo2()` 声明:function 返回指定证券的发行市盈率,与系统参数(证券代码)相关。 发行市盈率(每股收益=扣非前后净利润孰低/发行后总股本) 返回:float ## `StockPE_IV(end_t)` 声明:function 指定日市盈率(专用)。 (1)取EndT对应年度的中报和3季报; (2)加权净利润=3季报的净利润/3\*2+中报的净利润; (3)指定日市盈率(专用)=指定日总市值/加权净利润。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ## `StockPE_V(end_t)` 声明:function 指定日市盈率(最近12个月)=指定日总市值/最近12个月净利润。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ## `StockPE_VI(end_t)` 声明:function 指定日市盈率(最近12个月,按公布日)=指定日总市值/指定日当天已公布的最新报告可计算出的最近12个月净利润。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ## `stockPmi(end_t)` 声明:function 指定日市销率(最新年度报告),与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ------- | -------- | ---- | | `end_t` | datetime | | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SZ300296"); setsysparam(pn_date(),20181011T); return StockPMI(20180822T); ``` ## `stockPmi3()` 声明:function 当前时间的市销率(最新年度报告),与当前股票pn_stock(),当前时间pn_date()相关。 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SZ300296"); setsysparam(pn_date(),20181011T); return StockPMI3(); ``` ## `StockPMI3_II()` 声明:function 市销率(最新财务数据加权),与当前股票pn_stock(),当前时间pn_date()相关。 返回:float ## `StockPMI3_V()` 声明:function 当前时间的市销率(最近12个月),与当前股票pn_stock(),当前时间pn_date()相关。 返回:float ## `StockPMI_II(end_t)` 声明:function 指定日市销率(最新财务数据加权),与当前股票pn_stock(),当前时间pn_date()相关。 注:计算假设:中报和年报的净利润是简单的倍数关系 | 参数 | 类型 | 说明 | | ------- | -------- | ---- | | `end_t` | datetime | | 返回:float ## `StockPMI_III(end_t, r_date)` 声明:function 指定日市销率(指定财务数据加权),与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | -------- | -------- | ---- | | `end_t` | datetime | | | `r_date` | datetime | | 返回:float ## `StockPMI_VI(end_t)` 声明:function 指定日市销率(最近12个月,按公布日),与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ------- | -------- | ---- | | `end_t` | datetime | | 返回:float ## `stockPna(end_t)` 声明:function 指定日市净率(最新年度报告)=指定日总市值/最新年度报告净资产 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockPNA(inttodate(20120830)); return v; ``` ## `stockPna3()` 声明:function 市净率(最新年度报告) =当前时间总市值/最新年度报告净资产。与当前时间有关,取当前时间的最新年度报告。 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); setsysparam(pn_stock(),'SZ000002'); v:=StockPNA3(); return v; ``` ## `StockPNA3_II()` 声明:function 市净率(最新财务数据)=当前时间总市值/最新财务报告净资产。与当前时间有关,取当前时间的最新财务报告数据。 返回:float ## `StockPNACutGW3_I()` 声明:function 市净率(扣除商誉、最新年度报告),与系统参数(证券代码,时间)相关。 返回:float|datetime ## `StockPNACutGW3_II()` 声明:function 市净率(扣除商誉、最新财务数据),与系统参数(证券代码,时间)相关。 返回:float|datetime ## `StockPNACutGW3_III(r_date)` 声明:function 市净率(扣除商誉、指定财务数据),与系统参数(证券代码,时间)相关。 | 参数 | 类型 | 说明 | | -------- | -------- | ------------ | | `r_date` | datetime | 整数。报告期 | 返回:float ## `StockPNACutGW_I(endt)` 声明:function 指定日市净率(扣除商誉、最新年度报告),与系统参数(证券代码)相关。净资产取指定日最新年度报告的归属母公司股东权益合计。 | 参数 | 类型 | 说明 | | ------ | -------- | -------------- | | `endt` | datetime | 日期。截止日期 | 返回:float ## `StockPNACutGW_II(endt)` 声明:function 指定日市净率(扣除商誉、最新财务数据),与系统参数(证券代码)相关。净资产取最近报告期的归属母公司股东权益合计-按公布日 | 参数 | 类型 | 说明 | | ------ | -------- | -------------- | | `endt` | datetime | 日期。截止日期 | 返回:float ## `StockPNACutGW_III(end_t, r_date)` 声明:function 指定日市净率(扣除商誉、指定财务数据),与系统参数(证券代码)相关。净资产取指定报告期的归属母公司股东权益合计。 | 参数 | 类型 | 说明 | | -------- | -------- | -------------- | | `end_t` | datetime | 日期。截止日期 | | `r_date` | datetime | 整数。报告期 | 返回:float ## `StockPNA_II(end_t)` 声明:function 指定日市净率(最新财务数据)=指定日总市值/最近报告期净资产 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ## `StockPNA_III(end_t, r_date)` 声明:function 指定日市净率(指定财务数据)=指定日总市值/指定报告期净资产 | 参数 | 类型 | 说明 | | -------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | | `r_date` | datetime | 整数,报告期 | 返回:float ## `StockPNA_VI(end_t)` 声明:function 指定日市净率(最新财务数据,按公布日)=指定日总市值/最近报告期净资产。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期; | 返回:float ## `StockPTBR3_II()` 声明:function 股价有形净值比(最新财务数据),与当前股票pn_stock(),当前时间pn_date()相关。 返回:float ## `StockPTBR_II(end_t)` 声明:function 指定日股价有形净值比(最新财务数据),与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ------- | -------- | ---- | | `end_t` | datetime | | 返回:float ## `stockResidualRisk(index_id, beg_t, end_t)` 声明:function 残差标准差(区间) 取股票和指数对数收益率序列,求残差的标准差(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | -------- | ---------------- | | `index_id` | string | 字符串,指数代码 | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); returnStockResidualRisk ('SH000001',inttodate(20120101),inttodate(20120419)); ``` ## `stockResidualRisk4(index_id, n)` 声明:function 残差标准差(定日期间隔,用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | ------ | ---------------- | | `index_id` | string | 字符串,指数代码 | | `n` | int | 整数,日期间隔 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_date(),inttodate(20120419)); return StockResidualRisk4('SH000001',10); ``` ## `stockRisk(index_id, beg_t, end_t)` 声明:function 对数收益率标准差σ(区间),波动率 取股票和指数对数收益率序列,求α系数(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | -------- | ---------------- | | `index_id` | string | 字符串,指数代码 | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockRisk('SH000001',inttodate(20120101),inttodate(20120419)); ``` ## `stockRisk4(index_id, n)` 声明:function 标准差σ(定日期间隔,用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | ------ | ---------------- | | `index_id` | string | 字符串,指数代码 | | `n` | int | 整数,日期间隔 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_date(),inttodate(20120419)); return StockRisk4('SH000001',10); ``` ## `stockSelfCov(beg_t, end_t)` 声明:function 一阶自协方差(区间) 取股票对数收益率序列,求一阶自协方差(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ------- | -------- | -------------- | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockSelfCov (inttodate(20120101),inttodate(20120419)); ``` ## `stockSelfCov4(index_id, n)` 声明:function 一阶自协方差(定日期间隔,用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | ------ | ---------------- | | `index_id` | string | 字符串,指数代码 | | `n` | int | 整数,日期间隔 | 返回:float ### 示例 ```tsl oV:=BackUpSystemParameters2(); SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_date(),inttodate(20120419)); return StockSelfCov4('SH000001',10); ``` ## `stockTe(index_id, beg_t, end_t)` 声明:function 跟踪误差(区间) | 参数 | 类型 | 说明 | | ---------- | -------- | ---------------- | | `index_id` | string | 字符串,指数代码 | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockTE ('SH000001',inttodate(20120101),inttodate(20120419)); ``` ## `stockTe4(index_id, n)` 声明:function N个交易日跟踪误差(定日期间隔),与当前股票pn_stock(),当前时间pn_date()相关。 注:(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---------- | ------ | ----------------------------------------- | | `index_id` | string | 指数类型,指数代码; | | `n` | int | 用户自定义,指定计算时间段,具体取值如下: | 返回:float ### 示例 ```tsl setsysparam(pn_date(),20181012T); return StockTE4("SH000018",8); ``` ## `stockTobinsQValue(report_date, method_select)` 声明:function 股票的托宾Q值,与当前股票pn_stock(),当前时间pn_date()相关。 注:MethodSelect=1,用权益的市场价值比上账面(Q1) =2,以公司的市场价值加上负债再除以公司的总资产(Q2) | 参数 | 类型 | 说明 | | --------------- | -------- | -------------------- | | `report_date` | datetime | 报告期类型,报告期; | | `method_select` | int | 整数类型 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SZ300296"); setsysparam(pn_date(),20181012T); return StockTobinsQValue(20180331,0); ``` ## `stockTotalValue(end_t)` 声明:function 指定日总市值(万),与系统参数(证券代码)相关 | 参数 | 类型 | 说明 | | ------- | -------- | ------------- | | `end_t` | datetime | 日期,结束日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SH600834"); return StockTotalValue(20250619T); ``` ## `stockTotalValue2(n)` 声明:function 最近N日平均总市值(万) | 参数 | 类型 | 说明 | | ---- | ---- | ---------- | | `n` | int | 整数,天数 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_date(),inttodate(20120419)); return StockTotalValue2(5); ``` ## `stockTotalValue3()` 声明:function 最新总市值(万) 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_date(),inttodate(20120419)); return StockTotalValue3(); ``` ## `stockTotalValueGrow(beg_t, end_t)` 声明:function 总市值变动(万StockTotalValueGrow) | 参数 | 类型 | 说明 | | ------- | -------- | -------------- | | `beg_t` | datetime | 日期,开始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); return StockTotalValueGrow(inttodate(20120101),inttodate(20120419)); ``` ## `stockTotalValueGrowRatio(beg_t, end_t)` 声明:function 总市值变比(%) | 参数 | 类型 | 说明 | | ------- | -------- | -------------- | | `beg_t` | datetime | 日期,开始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); return StockTotalValueGrowRatio(inttodate(20120101),inttodate(20120419)); ``` ## `StockTotalValue_II(end_t)` 声明:function 指定日总市值(万元),与系统参数(股票)相关。 | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `end_t` | datetime | 日期。结束日期。 | 返回:float ## `stockTotalValuePercent(end_t, bk_name)` 声明:function 指定日市价总值占市场市价总值比例(%) | 参数 | 类型 | 说明 | | --------- | -------- | ---------------- | | `end_t` | datetime | 日期,截止日期 | | `bk_name` | string | 字符串,市场名称 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); savebk('我的沪深300','用户板块', getbkbydate('SH000300',inttodate(20111230))); return StockTotalValuePercent(inttodate(20111230),'我的沪深300'); ``` ## `stockVaR(beg_t, end_t)` 声明:function VaR(区间),与当前股票pn_stock(),当前时间pn_date()相关。 注:(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ------- | -------- | -------------------- | | `beg_t` | datetime | 日期类型,开始日期; | | `end_t` | datetime | 日期类型,截止日期 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SZ300296"); setsysparam(pn_date(),20181012T); return StockVaR(20000101T,20180927T); ``` ## `stockVaR4(n)` 声明:function N个交易日VaR(定日期间隔),与当前股票pn_stock(),当前时间pn_date()相关。 注:(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ---- | ---- | ------------------------ | | `n` | int | 用户自定义类型,日期间隔 | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SZ300296"); setsysparam(pn_date(),20181012T); return StockVaR4(8); ``` ## `stockVariance(beg_t, end_t)` 声明:function 方差(区间) 取股票对数收益率序列,求方差(用复权后的日线数据计算) | 参数 | 类型 | 说明 | | ------- | -------- | -------------- | | `beg_t` | datetime | 日期,起始日期 | | `end_t` | datetime | 日期,截止日期 | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SZ000002'); SetSysParam(pn_cycle(),cy_day()); return StockVariance (inttodate(20120101),inttodate(20120419)); ``` ## `stockVariance4(n)` 声明:function 返回指定股票方差(指定时间区间),(用复权后的日线数据计算),该函数和证券代码、当前设置的时间有关。 | 参数 | 类型 | 说明 | | ---- | ---- | ----------------------------------------- | | `n` | int | 用户自定义,指定计算时间段,具体取值如下: | 返回:float ### 示例 ```tsl SetSysParam(pn_stock(),'SH600000'); setsysparam(pn_date(),20150601T); N:=10; return StockVariance4(N);//4.74 ``` ## `tobinsQValue(report_date)` 声明:function 托宾Q值,与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ------------- | -------- | ---- | | `report_date` | datetime | | 返回:float ### 示例 ```tsl setsysparam(pn_stock(),"SZ300296"); setsysparam(pn_date(),20181012T); return TobinsQValue_III(20180331); ``` ## `TobinsQValue_I(report_date)` 声明:function 托宾Q值I,与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ------------- | -------- | ---- | | `report_date` | datetime | | 返回:float ## `TobinsQValue_III(report_date)` 声明:function 托宾Q值III,与当前股票pn_stock(),当前时间pn_date()相关。 | 参数 | 类型 | 说明 | | ------------- | -------- | ---- | | `report_date` | datetime | | 返回:float ## `VAR_HistSimulation(t, alpha)` 声明:function VAR-历史模拟法 | 参数 | 类型 | 说明 | | ------- | ----- | ------------ | | `t` | any | 数组,数据 | | `alpha` | float | 实数,置信度 | 返回:float