金融时间序列【量化理论】

业界常用的技术分析指标都与价格本身有关,而时间序列分析由于对数据平稳性的要求常常是基于收益率这样更加偏稳定的数据(收益率由于会涨停和跌停每天最多10%)

平稳性:

强平稳性:随时间变化,各个统计特征都保持不变,那么这个随机过程具有强平稳性——一般我们只要求金融序列是弱平稳性的也就是均值,方差,协方差随着时间的变化不会发生变化即可

注意‼️:对于不平稳的数据很有可能会产生伪回归

用ARIMA构建有关收益率的时间序列:

在时间序列当中,最简单的模型就是ARIMA模型,其中,AR的含义是自回归,I的含义是差分,MA的含义是移动平均

其中,自回归系数的计算方法:

在AR模型中要对AR模型进行平稳性检验:

又因为白噪声有如下特征:

对原AR求期望可以得到:

有平稳性特征:期待值是相同的

因此进一步化简:

我们称该方程的解的倒数为模型的特征根

当他的特征根的模都小于1,则可以认为序列是平稳的

如下是ARIMA模型简单的代码实例:

import numpy as np
 
import pandas as pd
 
import matplotlib.pyplot as plt
 
from statsmodels.tsa.stattools import acf, pacf
 
 
 
# 设置支持中文的字体
 
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用黑体显示中文
 
plt.rcParams['axes.unicode_minus'] = False  # 正确显示负号
 
 
 
# 数据准备
 
data = {
 
    '年份': list(range(1997, 2024)),
 
    '报考人数': [24.20, 27.40, 31.90, 39.20, 46.00, 62.40, 79.70, 94.50, 117.20, 127.12, 128.20, 120.00, 124.60, 140.00, 151.10, 165.60, 176.00, 172.00, 164.90, 177.00, 201.00, 238.00, 290.00, 341.00, 377.00, 457.00, 474.00],
 
    '录取率': [21.08, 21.17, 20.38, 21.69, 24.02, 31.25, 33.88, 34.92, 27.72, 31.69, 28.40, 32.50, 33.31, 33.71, 32.76, 31.48, 30.73, 31.90, 34.58, 33.32, 35.82, 32.02, 27.93, 29.05, 27.87, 24.15, 24.23]
 
}
 
df = pd.DataFrame(data)
 
df.set_index('年份', inplace=True)
 
 
 
# 选择一个时间序列列,例如 '报考人数'
 
ts = df['报考人数']
 
 
 
# 计算ACF和PACF值
 
acf_values = acf(ts, nlags=9)
 
pacf_values = pacf(ts, nlags=13)
 
 
 
# 计算置信区间
 
conf_int = 1.96 / np.sqrt(len(ts))
 
 
 
# 绘制ACF柱状图
 
plt.figure(figsize=(12, 6))
 
plt.bar(range(len(acf_values)), acf_values, color='blue', alpha=0.7)
 
plt.axhline(y=0, color='black', linestyle='--')
 
plt.axhline(y=-conf_int, color='red', linestyle='--', label='95% 置信区间')
 
plt.axhline(y=conf_int, color='red', linestyle='--')
 
plt.title('ACF图')
 
plt.xlabel('滞后期')
 
plt.ylabel('自相关系数')
 
plt.xticks(range(len(acf_values)), labels=range(len(acf_values)))
 
plt.legend()
 
plt.show()
 
 
 
# 绘制PACF柱状图
 
plt.figure(figsize=(12, 6))
 
plt.bar(range(len(pacf_values)), pacf_values, color='blue', alpha=0.7)
 
plt.axhline(y=0, color='black', linestyle='--')
 
plt.axhline(y=-conf_int, color='red', linestyle='--', label='95% 置信区间')
 
plt.axhline(y=conf_int, color='red', linestyle='--')
 
plt.title('PACF图')
 
plt.xlabel('滞后期')
 
plt.ylabel('偏自相关系数')
 
plt.xticks(range(len(pacf_values)), labels=range(len(pacf_values)))
 
plt.legend()
 
plt.show()
常用定阶方法:

求解AR(p)的p的过程叫做定阶,定阶一般有两种方法,一种是偏自相关系数,另一种是利用信息准则函数:

利用偏自相关系数:构建一连串的AR(p)模型,绘制pacf图,其中纵坐标表示的是偏自相关系数,横坐标表示的是相差的序列数,从哪一个数字开始,稳定在范围以内,就从哪一个数字以前的数作为最终的时间序列

利用信息准则:最常见的有AIC(赤池信息准则):

其中,k为包括结局项在内,自由参数的数量;L为似然函数的最大值

最大似然估计(MLE)的核心思想确实是通过不断调整模型参数 ,来寻找使得观察到的数据出现概率(即似然函数)最大的参数值。

在ARIMA(p,q)当中p和q分别代表自回归和滑动平均部分的阶数,可以通过绘制热力图来找到最小的AIC(BIC准则同理)

具体可以参考这篇arima模型预测考研难度(基于考研难度系数评价模型)-CSDN博客

用ARCH和GARCH来预测金融时间序列的波动率:

在金融时间序列里,还有一种处理方法是对波动率进行处理,这种方法相比收益率相对来说没有那么直观但是更加常用,在金融时间序列当中往往存在波动率聚集现象(volatility cluster),也就是说,波动率在一段时间内都比较高,在另一段时间内都比较低,且波动率会随着时间相对平稳的变化。

ARCH:

波动率模型(ARCH)采用自回归来体现波动聚集性,其假设资产收益率的扰动序列虽然不相关,但也并非完全独立(可以用延迟值的简单二次函数来表示)

(用方差预测条件方差)

同样的,我们会对其进行相关性检验

GARCH:

更常用的干扰率预测模型其实是GARCH(在ARCH的基础上进一步改进)

其中残差平方反应的是以往实际观测值与模型预测值之间差异的影响,捕捉了波动性的长期记忆效应;而条件方差反应了过去信息对当前信息的预测,是一种波动性的长期记忆效应。

GARCH的阶数在实际应用当中不太容易确定,因此往往直接采用低阶的

(在arch模块当中,可以用res.summary来查看拟合结果)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/972980.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

nvm安装、管理node多版本以及配置环境变量【保姆级教程】

引言 不同的项目运行时可能需要不同的node版本才可以运行,由于来回进行卸载不同版本的node比较麻烦;所以需要使用node工程多版本管理。 本人在配置时,通过网络搜索教程,由于文章时间过老,或者文章的互相拷贝导致配置时…

8 SpringBootWeb案例(上): 查询【分页功能(分页插件)】、删除、新增、修改

文章目录 前言:SpringBootWeb案例1. 准备工作1.1 需求&环境搭建1.1.1 需求说明1.1.2 环境搭建1.2 开发规范1.2.1 开发规范-REST(不强求非要这种风格,传统风格有时候更方便)1.2.2 开发规范-统一响应结果和异常处理1.2.3 开发流程2. 部门管理2.1 查询部门2.1.1 原型和需求…

新手小白如何挖掘cnvd通用漏洞之存储xss漏洞(利用xss钓鱼)

视频教程和更多福利在我主页简介或专栏里 (不懂都可以来问我 专栏找我哦) 如果对你有帮助你可以来专栏找我,我可以无偿分享给你对你更有帮助的一些经验和资料哦 目录: 一、XSS的三种类型: 二、XSS攻击的危害&#x…

用《软件方法》引导AI全流程高效开发

和“敏捷”的拍脑袋“试错”不同,《软件方法》一直强调严谨地思考、推导和建模。 如何尽量借助现有AI的力量,降低建模人员A→B→C→D的推导工作量,是一个非常有价值的课题。我们将用一个实例来分享和展示《软件方法》作者潘加宇的建议实践。…

全面收集中间件Exporter适配:从Redis到ActiveMQ,掌握监控数据采集的最佳实践

#作者:任少近 文章目录 说明:一 Redis的适配exporter版1.1 Redis的exporter源码版本1.2 Redis的exporter的releases版1.3 Redis_exporter版本选择理由1.4 Redis_exporter docer镜像 二 Zookeeper的适配exporter版2.1 Zookeeper的exporter源码版本2.2 Zo…

npm在install时提示要安装python问题处理

使用npm\yarn\pnpm下载以来的时候,一直提示python异常,有的项目安装了python之后,下载依赖还是异常 而且旧版本项目使用python2,新的使用Python3…很烦 解决方案1:cnpm 使用cnpm 安装教程: npm安装cnpm,解…

浅谈网络 | 容器网络之Cilium

目录 Cilium介绍Cilium是什么Cilium 主要功能特性为什么用Cilium? 功能概述组件概况BPF 与 XDPeBPF (Extended Berkeley Packet Filter)XDP (eXpress Data Path) Cilium介绍 Cilium是什么 Cilium 是一个开源网络和安全项目,专为 Kubernetes、Docker 和…

前端知识点---vue的声明周期(vue)

文章目录 创建挂载更新销毁 vue的生命周期有四个阶段: 创建 挂载, 更新和销毁 创建 是vue组件从创建到准备渲染的过程 dom还没挂载到页面中 进行了初始化工作: 初始化数据(data,props) . 设置计算属性computed 初始化方法 methods 绑定事件watch 创建阶段的钩子函数beforeCrea…

MySQL如何解决幻读?

目录 一、什么是幻读? 1.1 幻读的定义 1.2 幻读的示例 1.3 幻读产生的原因? 1.4?读已提交(Read Committed) 1.4.1 确定事务等级 1.4.2 非锁定读取 准备 示例 结论 1.4.3 锁定读取 准备 示例 分析 结论 1.5?可重…

Day15-后端Web实战-登录认证——会话技术JWT令牌过滤器拦截器

目录 登录认证1. 登录功能1.1 需求1.2 接口文档1.3 思路分析1.4 功能开发1.5 测试 2. 登录校验2.1 问题分析2.2 会话技术2.2.1 会话技术介绍2.2.2 会话跟踪方案2.2.2.1 方案一 - Cookie2.2.2.2 方案二 - Session2.2.2.3 方案三 - 令牌技术 2.3 JWT令牌2.3.1 介绍2.3.2 生成和校…

支持所有模拟器根证书一键植入方便快捷

qq 点-我咨-】--询 群 Android系统中的安全证书分为“用户证书”和“系统证书”两类。用户可以在设备的设置 -> 安全 -> 查看安全证书页面中,分别查看“系统”和“用户”两个独立的证书列表。其中,用户证书通常是通过浏览器下载安装,或…

WinMerge深度解析:开源免费的文件与文件夹比较利器

在文件与文件夹比较工具中,WinMerge凭借其开源免费、功能全面的特点,赢得了广大用户的喜爱。本文将对WinMerge进行深度解析,帮助大家更好地了解这款工具。 一、开源免费,持续更新 WinMerge是一款专为Windows设计的开源免费文件与文件夹比较工具,自2000年诞生以来,至今已…

OpenCV形态学操作

1.1. 形态学操作介绍 初识: 形态学操作是一种基于图像形状的处理方法,主要用于分析和处理图像中的几何结构。其核心是通过结构元素(卷积核)对图像进行扫描和操作,从而改变图像的形状和特征。例如: 腐蚀&…

PHP旅游门票预订系统小程序源码

🌍 旅游门票预订系统:一站式畅游新体验,开启您的梦幻旅程 🌟 一款基于ThinkPHPUniapp精心雕琢的旅游门票预订系统,正翘首以待,为您揭开便捷、高效、全面的旅游预订新篇章!它超越了传统预订平台…

第8章作业

接口ip配置 r2 [r2]interface GigabitEthernet 0/0/0 [r2-GigabitEthernet0/0/0]ip address 13.0.0.3 24 [r2-GigabitEthernet0/0/0]interface GigabitEthernet 0/0/1 [r2-GigabitEthernet0/0/1]ip address 100.1.1.254 24 [r2-GigabitEthernet0/0/1]interface GigabitEthernet…

连续学习、增量学习有哪些应用场景?

游戏场景 在游戏环境中,智能体需要不断学习如何在复杂的环境中取得高分。例如: Atari游戏:智能体通过观察游戏画面(状态)并输出操作(动作)来玩游戏。由于游戏的动态性和复杂性,智能体…

java项目之学术成果管理系统源码(ssm+前端+mysql)

项目简介 学术成果管理系统实现了以下功能: 宠物医院信息管理系统的主要使用者分为管理员:个人中心、用户管理、医生管理、医学知识管理、科室信息管理、医生信息管理、预约挂号管理、医嘱信息管理、药品信息管理、订单信息管理、留言板管理、系统管理…

【Spring+MyBatis】_图书管理系统(下篇)

图书管理系统上篇、中篇如下: 【SpringMyBatis】_图书管理系统(上篇)-CSDN博客 【SpringMyBatis】_图书管理系统(中篇)-CSDN博客 目录 功能5:删除图书 6.1 约定前后端交互接口 6.2 后端接口 6.3 前端…

《STL 六大组件之容器探秘:深入剖析 string》

目录 一、string 类简介二、string 类的常用接口1. 构造函数(constructor function)2. 与容量相关的接口(capacity)3. 与迭代器有关的接口(iterator)4. 与元素访问有关的接口(element access&am…

深⼊理解指针(1)

1. 内存和地址 1.1 内存 我们知道计算机上CPU(中央处理器)在处理数据的时候,需要的数据是在内存中读取的,处理后的 数据也会放回内存中。 那这些内存空间如何高效的管理呢? 其实也是 把内存划分为⼀个个的内存单元&…