Introduction

功能介绍

分位数 Granger 因果检验:计算各分位区间 Sup-Wald 统计量。

分位数 VAR 模型估计:自回归分布滞后模型

脉冲响应函数计算

各分位点脉冲图绘制

代码实现原理

使用pyqt5生成 GUI 界面

使用statsmodels进行分位数回归

使用pandas将结果保存在 excel 文件

Display

主窗口界面

主要包括:

工具栏:

导入数据:点击该按钮,选择路径导入数据,如没有导入数据,默认导入测试数据

开始运行:点击后进行分位数 Granger 因果检验,计算 Sup-wald 统计量

终止运行:点击后终止程序

查看数据:点击查看导入数据

初始化:点击后初始化各参数设定

QVAR 估计:点击后进行 QVAR 模型参数设定

区间设定:区间起点、中点、个数设定以及生成区间按钮

注意:个数是点的个数,比如设定 17 个,则会生成 16 个分位区间

例子:

起点=0.1,终点=0.9,个数=2,则会生成区间:[0.1, 0.9]

起点=0.1,终点=0.9,个数=3,则会生成区间:[0.1, 0.5]、[0.5, 0.9]

参数设定

日期:勾选表示第一列为日期序列,在进行计算 wald 统计量时会将其删除;若取消勾选,则不会删除第一列数据

模式设定:代表循环模式,默认模式为单因素对各市场

注意:数据要根据模式进行相应的排序

假定 p=1,q=2,估计方程形式则为:Y=c1+c2Y-1+c3X-1+c4X-2

模式选择

内容说明

数据排序

计算规则描述

单因素对各市场

研究单一因素对各市场的因果关系,比如房价对股票,汇率市场的因果关系

data=[X,Y1,Y2,Y3]

X 对 Y1回归;X 对 Y2回归;X 对 Y3回归

相互影响

研究两因素之间的因果关系,比如房价与股票,汇率市场的相互因果关系

data=[X,Y1,Y2,Y3]

X 对 Y1回归;X 对 Y2回归;X 对 Y3回归;Y1对 X 回归;Y1对 Y2回归;Y1对 Y3回归;.........

多因素对单市场

研究多因素对单个市场的因果关系,比如各情绪对汇率市场的因果关系

data=[X1,X2,X3,Y]

X1对 Y 回归,X2对 Y 回归;X3对 Y 回归

信息准则:表示确定最优滞后阶数所选用的信息准则,包括 AIC 或 BIC 准则

AIC(p, q) = lnS(θ) + (p+q+1)/T

BIC(p, q) = lnS(θ) + (p+q+1)×lnT/(2T)

其中 S(θ)表示分位数非对称绝对值残差和,T 为样本容量,p,q 均为滞后阶数。

滞后估计数:计算最优滞后阶数时,需要分区间计算 AIC/BIC 值,选取该区间最小 AIC/BIC 值所对应的滞后阶数,则为最优滞后阶数。该参数是设定在整个分位区间选择计算的分位点个数,默认选取 30 个点

最大阶数:表示选取的最大滞后阶数,默认选取 5 阶

wald 估计数:计算 wald 统计量时,在分位区间选择计算的分位点个数,默认选取 1000 个点

有效数字:表示保留的小数点位数,默认保留三位小数

输出日志:勾选后输出运行细节.txt文件,默认勾选

估计信息显示:展示运行信息

QVAR 估计界面

工具栏:

开始运行:点击后进行 QVAR 模型估计

绘制脉冲图:点击计算各分位点脉冲响应示意图

导入数据:如需增加控制变量,则需点击该按钮导入控制变量数据集

滞后阶数

p:被解释变量 y 的滞后阶数

q:解释变量 x 的滞后阶数

分位点:默认选取 5 个分位点[0.1, 0.25, 0.5, 0.75, 0.9]

√:点击增加分位点

×:点击减少分位点

注意:最多计算 10 个分位点

控制变量:加入控制变量的回归公式

信息显示:显示提示信息

Usage

第一步:在当前路径下的命令行输入:

python main.py

提示:在当前文件夹中,右键点击 cmd 或者 shell 打开命令行

第二步:点击导入数据按钮

输入成功的话,会有导入成功的提示

第三步:设定各参数

第四步:点击开始运行按钮,等待程序运行结束,结果保存在运行结果文件夹下的Granger.xlsx文件内

注:***、**、* 分别代表 1%、5%、10% 显著水平

项目目录

|-- Quantile

|-- beauty_UI.py // 美化 GUI 界面代码

|-- func.py // 主函数代码,定义分位数 Granger 因果检验计算

|-- main.py // 主程序

|-- README.md // 说明文件

|-- data // 数据保存文件夹

| |-- output.xlsx // 测试产生的结果文件

| |-- Sup_wald_lag.xlsx // 检验 Sup_wald 显著性文件

| |-- 测试数据.xlsx // 可以使用该文件进行测试,查看结果

| |-- 运行细节.txt // 测试日志

|-- pyqt5 界面 // 使用 Qt Creator 建立窗口产生的文件

| |-- GUI // 主窗口

| |-- child_GUI // 子窗口

|-- 运行结果 // 运行结果存储文件夹

代码主体为main.py与func.py文件

估计原理

使用函数介绍

使用statsmodels库进行分位数回归命令:

使用 R 型公式来拟合模型

formula

说明

示例

~

分隔符,左边为响应变量,右边为解释变量

y ~ x

+

添加变量

y ~ x1 + x2

-

移除变量

y ~ x - 1(移除截距)

参数命令

属性

说明

方法

说明

res.params

获取估计参数值

res.summary()

展示估计结果

res.bse

获取标准差

res.cov_params()

获取协方差矩阵

res.resid

获取残差

res.f_test("x2 = 0")

Wald 检验

分位数 Granger 因果检验实现原理

Development Tool

工具名

功能

图标 icon

官网下载

Qt Creator

GUI 界面可视化

PyCharm

代码编辑器

Visual Studio Code

代码阅读器

reference

书籍:

《Python Qt GUI 与数据可视化编程》

《陈强高级计量经济学》

文献:

Koenker & Machado1999 Inference QuantileReg

Asymmetric Least Squares Estimation and Testing

Tests-for-Parameter-Instability-and-Structural-Change-With-Unknown-Change-Point

房地产价格与汇率的联动关系研究———基于分位数 Granger 因果检验法

基于分位数 Granger 因果的网络情绪与股市收益关系研究

其他:

Eviews 8 帮助文件

张晓峒分位数回归讲义

License

MIT © 热心市民石头

python分位数回归模型_GitHub - lei940324/Quantile: 介绍分位数回归,包括分位数Granger因果检验、QVAR及脉冲响应函数...相关推荐

  1. R语言使用caret包构建岭回归模型(Ridge Regression )构建回归模型、通过method参数指定算法名称、通过trainControl函数控制训练过程

    R语言使用caret包构建岭回归模型(Ridge Regression )构建回归模型.通过method参数指定算法名称.通过trainControl函数控制训练过程 目录

  2. R语言回归模型构建、回归模型基本假设(正态性、线性、独立性、方差齐性)、回归模型诊断、car包诊断回归模型、特殊观察样本分析、数据变换、模型比较、特征筛选、交叉验证、预测变量相对重要度

    R语言回归模型构建.回归模型基本假设(正态性.线性.独立性.方差齐性).回归模型诊断.car包诊断回归模型.特殊观察样本分析.数据变换.模型比较.特征筛选.交叉验证.预测变量相对重要度 目录

  3. R语言使用xgboost构建回归模型:vtreat包为xgboost回归模型进行数据预处理(缺失值填充、缺失值标识、离散变量独热onehot编码)、构建出生体重的xgboost模型回归模型

    R语言使用xgboost构建回归模型:vtreat包为xgboost回归模型进行数据预处理(缺失值填充.缺失值标识.离散变量独热onehot编码).构建出生体重的xgboost模型回归模型 目录

  4. R语言基于lm模型构建线性回归模型(蟋蟀的鸣叫声与温度的关系)、计算回归模型的RMSE指标、计算回归模型的R方指标(R-squared)

    R语言基于lm模型构建线性回归模型(蟋蟀的鸣叫声与温度的关系).计算回归模型的RMSE指标.计算回归模型的R方指标(R-squared) 目录

  5. R语言使用lm函数拟合回归模型(简单线性回归、一元回归、simple regression)、并解读拟合模型

    R语言使用lm函数拟合回归模型(简单线性回归.一元回归.simple regression).并解读拟合模型 目录

  6. 做面板数据分位数回归模型_面板数据门限回归模型

    来源 | 数量经济学综合整理 转载请联系 进行回归分析,一般需要研究系数的估计值是否稳定.很多经济变量都存在结构突变问题,使用普通回归的做法就是确定结构突变点,进行分段回归.这就像我们高中学习的分段函 ...

  7. 学习机器学习四 回归模型——线性回归、L1正则化(Lasso回归)、L2正则化(ridge回归)

    还记得什么是回归吗?回忆下回归就是连续的输出,分类是离散的. 回归模型一般分为:①线性回归--就是线性方程,类似为一元一次方程(y=wx+b),比如你的年龄: ②逻辑回归(类似为曲线方程) 线性回归 ...

  8. Stata广义矩量法GMM面板向量自回归PVAR模型选择、估计、Granger因果检验分析投资、收入和消费数据

    最近我们被客户要求撰写关于广义矩量法GMM的研究报告,包括一些图形和统计输出. 摘要 面板向量自回归(VAR)模型在应用研究中的应用越来越多.虽然专门用于估计时间序列VAR模型的程序通常作为标准功能包 ...

  9. mysql 做回归模型_GitHub - themycode/intelligent-test-platform: intelligent-test-platform

    概述 Markov(阿里妈妈功能测试平台)是在测试转型大背景下自研的新一代功能测试平台,相较于传统的功能测试框架具有着诸多的优点,比如可视化用例编写管理.分布式的沙盒环境和测试数据构建.测试流程pip ...

最新文章

  1. android系统应用程序,Android系统应用程序基本概念解读
  2. Linux shell条件判断if中的-a到-z的意思
  3. Heritrix 3.1.0 源码解析(八)
  4. NTU 课程笔记: CV6422 regression
  5. Android“应用克隆”漏洞分析
  6. java课程之团队开发冲刺阶段1.7
  7. php sql语句计算距离,sql计算经纬度得出最近距离的公式
  8. SQL Server 2012安装错误案例:Error while enabling Windows feature: NetFx3, Error Code: -2146498298...
  9. [2019杭电多校第四场][hdu6614]AND Minimum Spanning Tree(贪心)
  10. 数字逻辑电路课程设计报告
  11. 平面设计需要学习哪些内容?
  12. 制作3D浪漫炫酷相册【附源码】
  13. p2p-如何拯救k8s镜像分发的阿喀琉斯之踵
  14. 用编程知识提高工作效率
  15. 使用Fastlane编写Android自动打包脚本
  16. 第10 章 量化的项目管理
  17. 【设计指南】避免PCB板翘,合格的工程师都会这样设计!
  18. matlab自动变量名,matlab中如何自动给变量命名?
  19. java根据提供word模板导出word文档
  20. crypto-CommonModulusAttack(GXYCTF2019)

热门文章

  1. 集群服务器上的jupyter配置
  2. 【Web开发的架构】
  3. 【deep_thoughts】30_PyTorch LSTM和LSTMP的原理及其手写复现
  4. 性能测试,你需要了解这款工具
  5. 线程竞争导致的EOFException解决 ---  一次线上问题解决流程
  6. 如何解决计算工作日的问题?
  7. 右上角的引用文献格式_论文要引用的小符号右上角怎么打?
  8. Spark SQL DataFrame新增一列的四种方法
  9. ipad一直卡在白苹果_iPad 为什么至今都没有天气和计算器应用?苹果回答来了
  10. 卫哲:阿里的中供铁军为什么能培养出滴滴程维?