基本概念

金融术语

  1. 回撤(Drawdown):是一个重要的风险指标,用于衡量投资组合或资产价格从最高点下跌到最低点的幅度

    它反映了投资者可能面临的最大损失,以及投资组合在不利市场条件下的抗风险能力

  2. 赔率和胜率: xxx

  3. 年化收益: 假设投资在T天内的收益为R,则年化收益率R年化可以通过以下公式计算:

    其中:

    • R是投资的实际收益(以小数表示,例如 10% 的收益表示为 0.10)
    • T是投资期限(以天数表示)
    • 365 是一年的天数

    例子:假设你在 90 天内获得了一个 5% 的投资收益,那么年化收益率计算如下:

    这意味着,如果按照相同的收益水平持续投资一年,你将获得大约 21.94% 的年化收益率

  4. 股票(Stocks):股票是公司的所有权证券,代表对公司一部分所有权,购买股票意味着成为公司的股东,并有权分享公司的利润

  5. 投资组合(Portfolio):投资组合是由多种不同资产(如股票、债券、期货等)构成的一揽子投资。通过构建投资组合,投资者可以分散风险,提高收益潜力

  6. 风险管理(Risk Management):风险管理是一种通过各种手段来识别、衡量和控制投资中的潜在风险的方法。在量化金融中,使用统计学和数学模型来评估和管理投资组合的风险

  7. 收益(Return):收益是投资的盈利,通常以百分比表示。投资者追求最大化收益,同时要考虑风险

  8. 算法交易(Algorithmic Trading):算法交易是使用预定的规则和数学模型进行交易的一种方法。这些规则通常通过计算机程序执行,可以高速、高效地进行交易

  9. 量化模型(Quantitative Models):量化模型是使用数学和统计学工具来分析和预测金融市场行为的模型。这些模型可以基于历史数据、技术分析、基本面分析等

  10. 高频交易(High-Frequency Trading):高频交易是指以非常快的速度进行交易,通常依赖于先进的计算机算法。目标是在极短的时间内利用市场波动获得微小的利润

  11. 套利(Arbitrage):套利是通过同时买入和卖出同一资产或相似资产来利用价格差异的交易策略。套利目的是无风险或低风险地获得利润

  12. 蒙特卡洛模拟(Monte Carlo Simulation):蒙特卡洛模拟是一种用于模拟金融市场不确定性的数学技术。通过生成大量随机样本来评估投资组合的风险和收益

  13. 夏普比率(Sharpe Ratio):夏普比率是衡量投资组合每承受一单位总风险所获得的超额收益的指标。它是量化金融中常用的性能指标之一

  14. 采购经理指数(PMI):通过对企业采购经理的调查结果统计汇总、编制而成的月度综合性指数,涵盖企业采购、生产、流通等各个环节,能够及时反映一个国家或地区经济运行的景气状况,是国际上通行的宏观经济监测指标之一。由于采购经理调查简单易行,科学合理,目前国际上有50多个国家和地区编制并发布PMI指数

    在采购经理指数(PMI)的调查中,不填写问卷是不被允许的,或者至少是不被期望的

  15. GDP(国内生产总值):衡量一个国家或地区在一定时期内生产的所有最终产品和服务的市场价值的总和。GDP的计算方法主要有三种:支出法、收入法和生产法

量化术语

以下是一些与量化交易相关的基础概念和术语的解释:

  • 策略(Strategy): 量化交易的基础是交易策略,它是一个定义了在何时、何地、以何种条件进行买卖的系统。策略可以基于技术指标、统计模型、机器学习等方法
  • 因子(Factor): 因子是用于衡量资产或市场特征的数值。在量化交易中,因子可以是任何与股价或交易量相关的变量,如价格、均线、市值等
  • 信号(Signal): 信号是根据策略和因子生成的指令,告诉投资者在何时买入或卖出。信号通常基于对市场条件的量化分析
  • 模型(Model): 量化交易使用数学模型来表示市场行为,这些模型可以是简单的统计模型,也可以是复杂的机器学习算法
  • 回测(Backtesting): 回测是在历史市场数据上模拟和评估一个交易策略的过程。回测能够提供有关策略表现的信息,但也需要小心防止过度拟合(overfitting)
  • Alpha: Alpha 是一个衡量策略相对于市场基准(通常是无风险收益率)的超额收益的指标。正的 Alpha 表示策略相对于市场有超额收益。
  • Beta: Beta 表示一个投资组合相对于市场的敏感性。Beta 值大于1表示投资组合比市场更敏感,小于1表示比市场不敏感
  • 夏普比率(Sharpe Ratio): 夏普比率是一种衡量投资组合风险调整后收益的指标,计算方式为(策略收益率 - 无风险利率)/ 策略波动率
  • 最大回撤(Maximum Drawdown): 最大回撤是策略在历史上任何时期内可能损失的最大百分比,通常用于衡量策略的风险水平
  • 资金管理(Money Management): 资金管理是一种控制投资组合风险和保护资金的方法,包括投资组合分散、仓位控制等

经济概念

  1. 信托:通俗的语言来解释信托,其实就是一种“财产托管”的方式

    想象一下,你有一笔钱或者一些财产,但你觉得自己可能管不好,或者暂时不想直接交给某个家人、朋友或者其他受益人。于是,你找了一个你信任的人(或者专业机构),把这笔财产交给他们,让他们按照你的要求去管理和使用,最终让指定的人(比如你的孩子、父母或者某个慈善机构)受益。

    举个生活中的例子:

    假设你是个父亲,想给孩子留下一笔钱,但孩子还小,你担心他一下子拿到钱会乱花。于是你找到一个信得过的银行或者专业机构,说:“我把这笔钱交给你们,你们每年按时给孩子一定的生活费,等他长大到一定年龄再把剩下的钱给他。” 这样一来,既保证了孩子的基本生活,又避免他一次性拿到钱后挥霍掉。

    这就是信托的核心思想:把自己的财产交给别人管理,按照你的意愿分配给受益人

    简单来说:

    • 委托人:就是你,把财产交出去的人。
    • 受托人:帮你管理财产的人或机构。
    • 受益人:最终拿到好处的人。

    信托的好处是灵活、安全,还能实现很多特殊目的,比如教育基金、养老安排、遗产规划、慈善捐赠等等。

  2. 债券是一种债务投资工具,通过这种方式,投资者实质上是借钱给借款人(可以是政府、市政当局、企业等)。借款方为了筹集资金,会发行债券,并承诺在特定期限内支付利息(通常每年或每半年支付一次),并在到期时偿还本金。因此,购买债券实际上就是成为了一名债权人。

    以下是债券的一些基本要素:

    • 发行人:这是指发行债券的实体,它可以是政府(例如国债)、地方政府(如市政债券)、公司(公司债)等。
    • 面值/票面价值:这指的是债券到期时将偿还的金额,也是计算利息的基础。
    • 票面利率:也称为名义利率,是指债券每年应付的利息百分比。例如,一张面值为1000元人民币、票面利率为5%的债券每年将支付50元的利息。
    • 到期日:这是指债券的期限结束日期,在这一天,债券的发行人必须偿还债券的面值给债券持有人。
    • 市场价格:债券可以在二级市场上买卖,其价格可能会高于或低于面值,取决于市场利率变化、债券信用等级变动等因素。

    债券可以根据不同的标准进行分类。以下是几种常见的分类方式:

    • 按发行主体分类

      1. 政府债券:由国家政府发行,目的是为了筹集资金以支付公共支出。包括国债、地方政府债券等。
      2. 金融债券:由银行或其他金融机构发行,用于补充营运资金或特定项目的融资。
      3. 公司债券:由企业发行,旨在为公司的运营、扩张或其他商业目的筹集资金。
    • 按计息方式分类

      1. 单利债券:利息仅基于本金计算,不考虑之前周期的利息。
      2. 复利债券:利息不仅基于本金计算,还会基于之前未支付的利息累积计算。
      3. 贴现债券(零息债券):以低于面值的价格出售,到期时按面值赎回,差额即为投资者收益。
    • 按利率类型分类

      1. 固定利率债券:在整个债券期限内,利息率保持不变。
      2. 浮动利率债券:利息率根据市场条件定期调整,通常与某个基准利率挂钩。
    • 按偿还期限分类

      1. 短期债券:一般指期限在1年以内(含1年)的债券。
      2. 中期债券:期限介于1年至10年之间的债券。
      3. 长期债券:期限超过10年的债券。
      4. 永久债券:没有明确的到期日,但会定期支付利息。
    • 按流通性质分类

      1. 可上市流通债:可以在证券交易所买卖的债券。
      2. 不可上市流通债:不能在公开市场上交易的债券,如某些凭证式国债。
    • 其他特殊类型的债券

      1. 可转换债券:持有人可以选择在特定时间内将债券转换为发行公司的股票。
      2. 提前赎回债券:允许发行人在特定条件下提前赎回债券。
      3. 信用债券:无抵押担保的债券,依赖于发行人的信用等级。
      4. 担保债券:有抵押品或其他形式担保支持的债券。

扩散指数(Diffusion Index)

1. 什么是扩散指数?

扩散指数是一个用来衡量股票市场中上涨股票和下跌股票数量对比的指标。简单来说,它能告诉我们市场上有多少股票在涨,有多少股票在跌

2. 为什么重要?

  • 判断市场情绪:如果大部分股票都在涨,说明市场情绪积极,投资者信心足,市场整体趋势向上
  • 预测市场走势:如果扩散指数持续上升,可能预示着市场将继续上涨;反之,如果扩散指数下降,可能预示着市场将面临调整

3. 怎么计算?

扩散指数的计算公式是这样的:

  • 上涨股票数:当天股价上涨的股票数量
  • 下跌股票数:当天股价下跌的股票数量
  • 总股票数:市场上所有股票的数量。

4. 举例说明

假设:

  • 今天有1000只股票
  • 其中600只股票上涨,400只股票下跌
  • 昨天的扩散指数是50%

那么今天的扩散指数计算如下:

这意味着今天市场整体表现积极,上涨的股票比下跌的多

5. 注意事项

  • 不能单独使用:扩散指数只是众多市场分析工具中的一个,不能单独用来做决策。最好结合其他指标一起使用
  • 市场变化快:扩散指数反映的是当天的情况,市场情绪可能很快就会变化,所以要时刻关注

总之,扩散指数是一个很实用的工具,能帮助我们快速了解市场的整体情绪和趋势

金融市场

央行、商行、企业

三者关系

从零开始建立“金融世界观”- 基础分析框架 【阿周的Eureka】

  • 央行: 央行负责货币的发行和调控
  • 商行: 将货币传导到实体经济中(政府借钱找商行)
  • 企业(居民): 适用货币进行生产、投资和消费活动

央行_商行_企业间的关系

衍生概念

  1. 资产负债表

    • 资产:按资产的流动性大小不同,分为流动资产非流动资产两类:
      • 流动资产类由货币资金、交易性金融资产、应收账款、预付账款、其他应收款、存货和待摊费用等项目组成
      • 非流动资产类由持有至到期投资、可供出售金融资产、长期股权投资、固定资产、无形资产和长期待摊费用等项目组成
    • 负债:按负债的流动性不同,分为流动负债和非流动负债两类:
      • 流动负债类由短期借款、应付账款、预收账款、应付职工薪酬、应交税费、应付股利、其他应付款、预提费用等项目组成
      • 非流动负债类由长期借款和应付债券组成
    • 所有者权益:按所有者权益的来源不同,由实收资本、资本公积、盈余公积和未分配利润等项目组成
  2. 货币供应量:指一个经济体中在某一时点上流通中的货币总量,它包括现金、活期存款以及其他形式的准货币

    货币供应量的统计和划分有助于分析经济活动中的货币流通情况,以及评估货币政策的效果

    货币供应量通常被划分为以下几个层次:

    • M0(流通中的现金): 指流通中的现金,包括居民手中的现金和企业持有的现金,M0 是最狭义的货币供应量,具有最高的流动性,可以直接用于交易
    • M1(狭义货币供应量): M1 是 M0 加上企业活期存款、机关团体部队存款、农村存款和个人持有的信用卡类存款,反映了经济中的短期流动性。活期存款可以随时支取,具有较高的流动性
    • M2(广义货币供应量): M2 是 M1 加上城乡居民储蓄存款、企业存款中具有定期性质的存款、外币存款和信托类存款,是最广义的货币供应量,包括了 M1 和其他形式的准货币。这些准货币虽然流动性较低,但在需要时可以转换为现金或活期存款
  3. 准备金:

    • 准备金: 商业银行为了满足客户提取存款和资金清算的需要,按照规定存放在中央银行的存款
    • 准备金率: 商业银行持有的准备金与存款总额的比例
    • 存款准备金率: 特指法定存款准备金率,是中央银行规定的比例,用于控制货币供应量和银行流动性
  4. 基础货币和派生货币:

    • 基础货币:央行通过公开市场操作、外汇占款、再贷款等方式向商业银行投放基础货币
    • 派生货币:商业银行通过信贷业务创造出来的货币,它是基础货币的衍生形式

    假设央行向商业银行投放了100万元的基础货币,法定存款准备金率为10%。商业银行可以将其中90万元用于发放贷款,10万元作为准备金

    当这90万元贷款被企业和个人使用并存入其他银行时,其他银行又可以将其中的81万元(90万元 × 90%)用于发放贷款,依此类推

    最终,整个银行体系可以创造出更多的存款货币,这就是派生货币

  5. 货币政策工具:

    常规货币政策工具

    1. 公开市场操作(OMO):通过在金融市场上买卖有价证券,调节银行体系流动性水平、引导货币市场利率走势、促进货币供应量增长。包括回购交易(正回购和逆回购)、现券交易和发行中央银行票据
    2. 存款准备金率:中央银行规定商业银行必须持有的准备金与存款总额的比例。调整法定存款准备金率可以影响商业银行的信贷资金供应能力,进而调控货币供应量
    3. 再贷款与再贴现:再贷款是中央银行对金融机构的贷款,再贴现是中央银行对金融机构持有的未到期已贴现商业汇票予以贴现。两者都能吞吐基础货币、实施金融宏观调控

    利率政策工具

    • 基准利率调整:通过调整中央银行基准利率(如再贷款利率、再贴现利率等)以及金融机构法定存贷款利率,影响社会资金供求状况,实现货币政策目标

    新型货币政策工具

    1. 常备借贷便利(SLF):满足金融机构期限较长的大额流动性需求,期限通常为1—3个月,以抵押方式发放
    2. 中期借贷便利(MLF):提供中期基础货币,通过调节向金融机构中期融资的成本,引导金融机构向符合国家政策导向的实体经济部门提供低成本资金
    3. 短期流动性调节工具(SLO):在流动性出现临时波动时相机使用,是公开市场常规操作的必要补充

    结构性货币政策工具

    • 包括抵押补充贷款(PSL)、专项支持工具、支持计划等,如支农支小再贷款、普惠小微贷款支持工具、碳减排支持工具等。这些工具旨在支持特定领域或行业,促进经济结构调整和转型升级
  6. 回购与逆回购:想象一下,你有一个朋友(我们叫他“央行”),他有很多钱,而你(“一级交易商”)有一些值钱的东西,比如债券。有一天,你手头有点紧,需要一些现金来周转,但你又不想长期卖掉你的债券。于是,你和你的朋友央行达成了一个协议:

    央行借钱给你:央行给你一笔钱(投放流动性),你把你的债券暂时抵押给央行

    约定未来还款:你们约定在未来的某个特定日期,你把钱还给央行,并且央行把债券还给你

    • 回购:回购的意思是“买回来”。在回购交易中,央行把债券卖给你,你把钱给央行,然后在未来某个日期,央行把钱还给你,你把债券还给央行
    • 逆回购:逆回购就是回购的反向操作。央行从你手里买债券,你从央行那里拿钱,然后在未来某个日期,你把钱还给央行,央行把债券还给你

    货币

    钱是什么?你思考过钱的本质吗?祯相实验室货币金融系列

因子相关

文章列表

  1. 宏观流动性

    • 中金: 资产宏观流动性驱动指数及其应用

      1. 更新频率:指标每半年更新一次

      2. 滚动时间窗口: 05年-当前,15年后以当前时间前推10年作为滚动时间窗口

      3. 指标后置:每一个指标按其更新频率后置一期

      4. 指标平稳性检验:对于每一个指标,对其滚动时间窗口中的时间序列进行ADF检验,若P值小于0.1则保留该指标,否则对指标差分再进行ADF检验,若P值小于0.1则保留差分后指标,否则放弃该指标

      5. 指标标准化:对每一个通过平稳性检验的指标,对其在滚动时间窗口的取值进行时序Z-score标准化

      6. 线性回归:对于每一个标准化后的指标,以其在滚动时间窗口的取值作为自变量,以中证全指对应日期未来63个交易日的平均涨跌幅作为因变量,进行一元线性回归

        若回归系数P值小于0.1,且回归系数方向与中经济学逻辑方向相同(未列示方向的指标仅需考虑P值),则将该指标纳入本次有效指标名单,并记录其回归系数,否则放弃该指标

      7. 调整后的回归系数作为加权权重

        • 对于具有多个参数的指标,各子指标系数按组内有效指标数量进行缩小

        • 限制指标的权重上限: 计算截面各指标“绝对系数值”的均值和标准差,将大于均值+3倍标准差的“绝对系数值”压缩到均值+3倍标准差,并按同样的压缩幅度将各子指标的回归系数向下调整

      8. 资产宏观流动性驱动指数:在每一个指标更新时点,对有效指标的回归系数进行以上两方面调整后,我们便可以按照调整后权重对下一期的有效指标进行加权,得到资产驱动指数。

        由于在得到回归系数时,我们对各指标进行了滚动时序Z-score标准化,因此在加权时,也应使用滚动时序标准化后的指标值。具体来说,对于每一天,我们以当天前推10年作为滚动窗口(对于2015年之前的日期,以2005年1月1日~当日作为滚动窗口),计算滚动窗口内指标时间序列的均值与标准差,并以“(指标在滚动窗口内最近的一个取值-均值)/标准差”作为当天标准化后取值。

        各指标标准化后取值与对应权重相乘后求和,得到当日驱动指数增加值。每日驱动指数增加值累加,得到资产宏观流动性驱动指数时间序列。

    • 中金:股市宏观驱动力轮动:经济增长or流动性?

      驱动力轮动模型的择时效果要优于单一经济增长驱动指数与流动性驱动指数的择时效果

    • 量化专题 | 构建大类资产的宏观胜率评分卡:货币、信用、增长、通胀与海外五因子

  2. 数据清洗技巧

    • 宏观经济量化系列之一:中国经济领先指数 | 量化专题报告
      1. 简化宏观逻辑:通过程序化与流程化方式,筛选出对基准指标有领先意义的宏观指标,综合制成领先指数
      2. 数据清洗: 指标选取、去除趋势、去除季节效应、去除噪声(HP滤波、LLT滤波)
        领先期判断: 拐点识别(Bry-Boschan算法)、相关性分析(时差相关、K-L信息量)、噪声判断(噪声波动比率)
        指数编制: 扩散指数(上升占比衡量景气度)、合成指数(标准化、加权求和)、PCA指数(主成分分析降维)、日度指数(滚动更新,增强实效性)
  3. 中金:剩余流动性的测算与择时应用

  4. 宏观风险因子构建与应用

  5. 【利得研究 · FOF策略】高频宏观因子在资产配置中的应用初探

  6. 系统化宏观视角下的资产分析框架

  7. 【国盛量化】视角透析:A股景气度高频指数构建与观察 | 量化分析报告

  8. 国盛量化 | 分析师行业景气指数构建与应用

流动性因子数据

基础货币投放

派生货币扩张

个体融资投资

其他:

  1. 中国国债收益率曲线

统计学算法

  1. 单位根检验(ADF).html):ADF检验是一种常见的单位根检验方法,用于检测时间序列是否存在单位根,即序列是否是非平稳的。如果ADF检验结果显示序列存在单位根,则说明序列是非平稳的,可能需要通过一阶或更高阶差分来使其变为平稳序列。adfuller函数通常被用来执行这种检验,并返回统计量、临界值以及检验结果的判定(如:拒绝原假设意味着序列不包含单位根,可能是平稳的或趋势平稳的)

  2. 线性回归中的P值计算:在线性回归中,回归系数的显著性通常通过t检验来评估

    1. 计算回归系数的估计值(β): 通过最小二乘法(OLS)或其他估计方法,得到回归系数的估计值。

    2. 计算回归系数的标准误差(SE): 标准误差用于衡量回归系数的估计精度。对于简单线性回归,标准误差可以通过以下公式计算:

      其中,是观测值,是预测值,是自变量值,是自变量的均值,是样本量。

    3. 计算t统计量: t统计量用于检验回归系数是否显著不为零。其计算公式为:

    4. 计算P值: P值是根据t统计量在t分布下的概率计算得出的。具体来说,P值是t统计量在t分布下出现的概率。对于双尾检验,P值的计算公式为:

      其中,是t分布的累积分布函数(CDF),统计量的绝对值

数据清洗

预测:方法与实践(第三版)

预测:方法与实践(第二版)

最全总结【时间序列】时间序列的预处理和特征工程

时间序列通常包含以下几部分组成:

  1. 趋势(Trend):时间序列的长期变化方向,表示数据随时间的整体上升或下降趋势

  2. 季节性(Seasonality):时间序列中随季节变化的周期性波动,通常是年、月或季度等周期性的波动

    季节性是指数据在固定周期内的规律性波动。例如,零售销售数据在每年的假日季节通常会大幅上升,或者气温在每年春夏秋冬季节之间会有规律的波动

  3. 周期性(Cyclicality):时间序列中较长周期的波动,通常与经济周期、社会周期等相关,但与季节性不同,周期的时间长度不固定

    周期性的变化往往比较复杂,且难以精确预测,因为其波动周期不如季节性那样固定

  4. 随机波动(Noise):时间序列中的随机成分,表示无法预测的变化

    无法通过其他成分(如趋势、季节性或周期性)解释的随机成分。它代表了无法预测的部分,可能由测量误差、外部不可控因素或自然波动所导致

模拟时间序列,包含了趋势,周期性,季节性和随机波动

趋势要素(T)、循环(周期)要素(C)、季节要素(S)与不规则要素(I),可使用加法模型对其进行近似的分解:

循环要素是我们希望得到的指标周期性波动,因此为了能将循环要素剥离出来,需要尽可能的去除趋势要素、季节要素与不规则要素的影响

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import numpy as np
import matplotlib.pyplot as plt

# 设置随机种子,确保每次生成相同的结果
np.random.seed(42)

# 生成时间序列的时间范围
time = np.arange(0, 100, 1)

# 定义趋势部分 (线性趋势)
trend = 0.05 * time

# 定义季节性部分 (周期性波动)
seasonal = 10 * np.sin(2 * np.pi * time / 12)

# 定义周期性部分 (更长周期的波动)
cycle = 5 * np.cos(2 * np.pi * time / 50)

# 定义随机波动 (噪声)
noise = np.random.normal(0, 2, size=len(time))

# 将所有部分合成一个时间序列
data = trend + seasonal + cycle + noise

# 绘制图像
plt.figure(figsize=(10, 6))
plt.plot(time, data, label='Time Series with Trend, Seasonality, and Noise')
plt.title('Time Series')
plt.xlabel('Time')
plt.ylabel('Value')
plt.legend(loc='upper left')
plt.grid(True)
plt.show()

宏观

去除趋势

  1. 差分法(Differencing Method): 差分法是通过计算时间序列的一阶差分来去除趋势

    一阶差分是将当前时刻的值减去前一个时刻的值得到的差值。可以使用pandas库中的diff()函数来实现

    对于一阶差分,公式为,其中为时间点的数据

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    import pandas as pd

    # 原始时间序列数据
    data = [10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32]

    # 将原始数据转化为Series对象
    series = pd.Series(data)

    # 计算一阶差分
    differenced = series.diff().dropna()

    差分法通过计算时间序列相邻项的差值来消除趋势:

    • 一阶差分:计算当前值与前一时刻值的差,这适用于线性趋势的消除,公式为:

    • 二阶差分:对一阶差分后的序列再次进行差分,这适用于二次趋势的消除,公式为:

    统计检验:使用单位根检验(如ADF检验)确认差分后的序列是否平稳

    数据丢失:差分会减少数据长度:一阶差分后丢失1个数据点,二阶差分丢失2个数据点

    金融时间序列:股票价格常使用一阶差分转化为收益率序列

去除季节

时序数据分析的利器——STL分解

注意:对于绝对量类的指标,月份效应可以通过计算同比的方式去除。对于非量类的指标(如利率数据),往往不含有明显的月份效应

需要调整的指标主要包括消费与商品价格类、货币类、工业生产与进出口类

用Python实现时间序列模型实战——Day 4: 时间序列分解

  • 如果数据具有稳定的季节性和趋势,seasonal_decompose 是一个简单有效的选择。
  • 如果需要处理复杂的季节性变化和异常值,X-13 ARIMA-SEATS 是更好的选择。
  • 如果需要更细致的分解,尤其是数据中存在非线性趋势和不规则季节性,STL 是最灵活的选择
  1. 季节性分解法(Seasonal Decomposition): 季节性分解法是将时间序列分解为趋势、季节性和随机项三个部分。可以使用statsmodels库中的seasonal_decompose()函数来实现

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    from statsmodels.tsa.seasonal import seasonal_decompose
    import pandas as pd

    # 原始时间序列数据
    data = [10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32]

    # 将原始数据转化为Series对象
    series = pd.Series(data)

    # 季节性分解
    result = seasonal_decompose(series, model='additive')

    # 打印分解结果
    print(result.trend) # 趋势
    print(result.seasonal) # 季节性

    seasonal_decompose 主要基于经典的加法模型或乘法模型来分解时间序列。选择哪种模型取决于时间序列数据的特性:

    经典时间序列分解

    • 加法模型:适用于季节效应在整个时间段内相对稳定的情况

    • 乘法模型:当季节效应随时间序列水平变化而变化时使用,例如销售量随整体增长而增加的情况

  1. 增强的X-11方法X-13 ARIMA-SEATS是X-11方法的扩展,通过引入ARIMA模型来处理异常值、边界效应以及节假日和交易日的影响,从而提供更精确的季节性调整

    X-13 ARIMA-SEATS被广泛应用于经济学、金融学和统计学等领域,用于分析和调整各种经济指标,如失业率、消费者价格指数(CPI)、采购经理人指数(PMI)等。例如,在中国,该方法被用于调整月度CPI数据,以消除移动假日效应的影响

  2. STL(Seasonal-Trend decomposition using LOESS):STL基本上是利用加法原理对于时序数据进行分解。如果想用乘法,可以做对数之后再用STL分解

    基本原理是:Real_Data = Trend + Season + Resid

    • Trend:趋势 ——可预测
    • Season:季节 ——可预测
    • Resid:残差 ——不可预测,类似随机游走或者白噪声

    美国零售就业人数(顶部)和它的由稳健的STL分解得出的具有灵活的趋势周期性和固定的季节性的三个加法分解项

    例如一位 业务员的工资 = 基础工资 + 业务提成 + 老板红包

    • 逐年的基础工资上涨就是趋势,当然逐年下降也是趋势,或者说一直不涨也是趋势
    • 每年的业务经常周期波动,夏天业务多,冬天业务少,这就是季节
    • 最后就是无法预测的老板心情,老板心情好给红包,老板心情不好扣工资
    • 残差很像是白噪声,随机游走,不可预测。
  3. xxx

去除不规则噪声

样本内全局平滑(HP滤波)和样本外滚动平滑(LLT滤波)

  • 平滑性:HP滤波由于使用了全局数据,通常能够得到更平滑的趋势线;而LLT滤波由于仅使用历史数据,平滑性相对较弱,但能够更及时地反映数据的变化。
  • 时效性:LLT滤波在时效性方面更具优势,因为它不需要等待未来数据即可进行平滑,适合实时分析;HP滤波则需要使用未来数据,时效性较差。
  • 结果稳定性:HP滤波的结果会随着新数据的加入而发生变化,稳定性较差;LLT滤波的结果相对稳定,不会因新数据的加入而改变之前的平滑结果
  1. 移动平均法:通过计算移动平均来平滑数据,去除短期波动和噪声

  2. HP滤波,即Hodrick-Prescott Filter,是一种数据平滑技术,主要用于宏观经济学领域,

    HP滤波基于时间序列的谱分析方法,可以将时间序列分解为趋势成分和周期成分。

    通过最小化波动方差,HP滤波能够提取出时间序列中的长期趋势,同时平滑掉短期的随机波动。

    在操作过程中,HP滤波主要涉及一个关键参数:平滑参数λ,它通常用于权衡趋势的平滑度和对原始数据的拟合度

  3. LLT低延迟趋势线择时交易初探

    LLT趋势线对应二阶低通滤波器,也可以看作是EMA的升级版,具体的公式推导过程较为复杂

填补空缺值

  1. 异常值检测与处理:识别并处理数据中的异常值,这些异常值可能是噪声的来源

微观

在量化交易领域,历史数据的质量对交易策略的可靠性起着决定性作用。

“回测成功、实盘失败”的现象,往往可以追溯到历史数据质量的问题。

真实的市场环境充满了各种复杂情况。停牌、复牌、除权除息、市场熔断等特殊事件都会在历史数据中留下特殊痕迹。如果不对这些特殊情况进行恰当的清洗和处理,就可能误导策略的开发方向。

对于A股市场来说,这种情况尤为明显。

另外数据源的数据本身可能就存在质量不高的问题。

资料

svn: 大丰收