# 应用专题 / 基金研究 / 风格分析 ## `fund_style_index_cfg(type)` 声明:function 基金仓位基准配置函数,用户可自定义 | 参数 | 类型 | 说明 | | ------ | ------- | -------------------------------------- | | `type` | integer | 控制计算方法、数据口径或返回格式的选项 | 返回:array ## `fund_styleQKData(begt, endt, index_id, type)` 声明:function 计算单只基金在指定区间内相对给定基准的风格仓位 | 参数 | 类型 | 说明 | | ---------- | -------- | -------------------- | | `begt` | datetime | 区间开始日 | | `endt` | datetime | 区间截止日 | | `index_id` | string | 市场基准指数代码 | | `type` | integer | 用户自定义的基准类型 | 返回:array ## `tsPositionMeasure` 声明:class 复用行情数据、缓存和优化约束,对指定基金与日期执行仓位测算的求解基类 ### `FDataNum` 声明:field 回归使用的交易日数,默认 20 可见性:`public` 类型:integer ### `FEndT` 声明:field 仓位测算截止日,默认 `Today()` 可见性:`public` 类型:datetime ### `FCycle` 声明:field 行情数据周期,默认 `日线` 可见性:`public` 类型:string ### `FBaseFund` 声明:field 目标测算基金代码,必须设置 可见性:`public` 类型:string ### `FIndexArr` 声明:field 权益基准代码列表 可见性:`public` 类型:array ### `FBondId` 声明:field 固收基准代码;为空时不配置债券仓位 可见性:`public` 类型:string ### `FifConstant` 声明:field 回归模型是否包含常数项,默认 `True` 可见性:`public` 类型:boolean ### `FObjType` 声明:field 优化目标函数类型;设为 -1 时由 `GetObj` 提供自定义目标 可见性:`public` 类型:integer ### `FConType` 声明:field 约束类型;设为 -1 时由 `GetCon` 提供自定义约束 可见性:`public` 类型:integer ### `FThresholdLower` 声明:field 与 `FConType` 配合使用的约束下界 可见性:`public` 类型:real ### `FThresholdUpper` 声明:field 与 `FConType` 配合使用的约束上界 可见性:`public` 类型:real ### `FYdata` 声明:field 目标基金净值收益率序列 可见性:`public` 类型:array ### `FXdata` 声明:field 权益基准收益率矩阵,列顺序与 `FIndexArr` 对应 可见性:`public` 类型:array ### `FOtherX` 声明:field 固收基准收益率序列 可见性:`public` 类型:array ### `Fiffastgetdata` 声明:field 是否优先使用数据仓库中的预计算基金收益率,默认 `True` 可见性:`public` 类型:boolean ### `FifUseCase` 声明:field 是否使用缓存减少重复取数,默认 `True` 可见性:`public` 类型:boolean ### `PortfolioOptimize()` 声明:function 按照优化目标和约束求解仓位配置比例 可见性:`public` 返回:boolean ### `Upm_Endt(EndT)` 声明:function 更新测算截止日并复用约束执行仓位测算 可见性:`public` | 参数 | 类型 | 说明 | | ------ | -------- | -------------- | | `EndT` | datetime | 新的测算截止日 | 返回:boolean ### `Upm_Fund(baseFund)` 声明:function 更新目标基金并复用基准数据和约束执行仓位测算 可见性:`public` | 参数 | 类型 | 说明 | | ---------- | ------ | ------------ | | `baseFund` | string | 新的目标基金 | 返回:boolean ### `GetXData()` 声明:function 设置基金净值收益率数据 `FYdata`;可重写以接入自有数据 可见性:`public` ### `SetXdata()` 声明:function 设置权益基准收益率矩阵 `FXdata`;可重写以接入自有数据 可见性:`public` ### `SetOtherX()` 声明:function 设置固收基准收益率序列 `FOtherX`;可重写以接入自有数据 可见性:`public` ### `GetObj(wa, WEquity_, Wbond)` 声明:function 在 `FObjType=-1` 时提供自定义优化目标 可见性:`public` | 参数 | 类型 | 说明 | | ---------- | ----- | ---------------- | | `wa` | real | 常数项收益 | | `WEquity_` | array | 权益资产配置比例 | | `Wbond` | real | 债券配置比例 | 返回:real ### `GetCon(wa, WEquity_, Wbond)` 声明:function 在 `FConType=-1` 时提供自定义等式与不等式约束 可见性:`public` | 参数 | 类型 | 说明 | | ---------- | ----- | ---------------- | | `wa` | real | 常数项收益 | | `WEquity_` | array | 权益资产配置比例 | | `Wbond` | real | 债券配置比例 | 返回:array ### `GetRealDataNum()` 声明:function 返回对齐市场交易日后基金实际公布的净值点数 可见性:`public` 返回:integer ### `GetPmedParams(wa, WEquity, Wbond)` 声明:function 通过输出参数批量取得优化后的常数项、权益配置和债券配置 可见性:`public` | 参数 | 类型 | 说明 | | --------- | ----- | ---------------- | | `wa` | real | 输出常数项收益 | | `WEquity` | array | 输出权益配置比例 | | `Wbond` | real | 输出债券配置比例 | 返回:nil ## `ts_SameTypeFundEquityPercent` 声明:class 在历史回溯场景中批量测算同类基金仓位,并提供缓存、汇总和误差分析接口 ### `FEndT` 声明:field 测算截止日,默认 `Today()` 可见性:`public` 类型:datetime ### `FBegT` 声明:field 测算开始日,默认从当前日期向前推一年 可见性:`public` 类型:datetime ### `FCycle` 声明:field 测算周期,默认 `日线` 可见性:`public` 类型:string ### `FIndexArr` 声明:field 默认求解器使用的权益基准代码列表 可见性:`public` 类型:array ### `FBondId` 声明:field 默认求解器使用的固收基准代码 可见性:`public` 类型:string ### `FDataNum` 声明:field 默认求解器使用的回归天数,默认 20 可见性:`public` 类型:integer ### `FPMOBJ` 声明:field 仓位测算求解器;为空时按 `FIndexArr`、`FBondId` 和 `FDataNum` 创建默认 `tsPositionMeasure` 可见性:`public` 类型:object ### `FMinDataNum` 声明:field 约束回归使用的最小基金净值点数,默认 -1 表示不计算点数 可见性:`public` 类型:integer ### `FRDateType` 声明:field 真实仓位报告期序列类型;-1 不输出,0 输出季报仓位 可见性:`public` 类型:integer ### `FVersionId` 声明:field 结果缓存模式,默认 -1 表示不缓存 可见性:`public` 类型:integer ### `FDestDir` 声明:field 缓存结果输出目录 可见性:`public` 类型:string ### `FAnyTimeout` 声明:field 是否实时缓存计算结果,默认 `True` 可见性:`public` 类型:boolean ### `FifNoLog` 声明:field 是否启用静默模式,默认 `False` 可见性:`public` 类型:boolean ### `BackMeasure()` 声明:function 执行同类基金历史仓位测算主流程 可见性:`public` ### `GetTimeSeries()` 声明:function 返回仓位测算时间序列;可重写以提供自定义回溯日期 可见性:`public` 返回:array ### `GetFundArr(vEndT)` 声明:function 返回指定日需要求解仓位的基金列表;可重写以自定义基金筛选 可见性:`public` | 参数 | 类型 | 说明 | | ------- | -------- | -------- | | `vEndT` | datetime | 当前时点 | 返回:array ### `GetStatfundData(regmxarrday, day)` 声明:function 从指定日已完成的基金仓位结果中筛选进入统计分析的数据;可重写 可见性:`public` | 参数 | 类型 | 说明 | | ------------- | -------- | ---------------------- | | `regmxarrday` | array | 当日各基金仓位测算结果 | | `day` | datetime | 当前统计日期 | 返回:array ### `GetPMOBJ(vEndT, fund)` 声明:function 返回指定日期、指定基金的仓位求解器参数;可重写以增加个别约束 可见性:`public` | 参数 | 类型 | 说明 | | ------- | -------- | -------- | | `vEndT` | datetime | 截止日 | | `fund` | string | 基金代码 | 返回:any ### `GetPMdetail(vBegT, vEndT)` 声明:function 返回区间基金仓位汇总使用的原始测算明细 可见性:`public` | 参数 | 类型 | 说明 | | ------- | -------- | ---------- | | `vBegT` | datetime | 区间开始日 | | `vEndT` | datetime | 区间截止日 | 返回:array ### `GetPMdistribution(vBegT, vEndT)` 声明:function 返回不同日期下的基金仓位分布统计 可见性:`public` | 参数 | 类型 | 说明 | | ------- | -------- | ---------- | | `vBegT` | datetime | 区间开始日 | | `vEndT` | datetime | 区间截止日 | 返回:array ### `GetOverAllPM(vBegT, vEndT, type_)` 声明:function 返回不同日期和加权方式下的基金整体仓位 可见性:`public` | 参数 | 类型 | 说明 | | ------- | -------- | ---------------- | | `vBegT` | datetime | 区间开始日 | | `vEndT` | datetime | 区间截止日 | | `type_` | integer | 整体仓位加权方式 | 返回:array ### `GetErrorDistribution(vBegT, vEndT)` 声明:function 返回不同日期下基金测算仓位与真实仓位的误差分布 可见性:`public` | 参数 | 类型 | 说明 | | ------- | -------- | ---------- | | `vBegT` | datetime | 区间开始日 | | `vEndT` | datetime | 区间截止日 | 返回:array ### `GetOverAllErrorAnalysis(vBegT, vEndT)` 声明:function 返回基金整体仓位误差分析结果 可见性:`public` | 参数 | 类型 | 说明 | | ------- | -------- | ---------- | | `vBegT` | datetime | 区间开始日 | | `vEndT` | datetime | 区间截止日 | 返回:array