量化之一:均值回归策略

文章目录

  • 均值回归策略
    • 理论基础
      • 数学公式
    • 关键指标
      • 简单移动平均线(SMA)
      • 标准差
      • Z-Score
    • 交易信号
    • 实际应用
    • 优缺点分析
      • 优点
      • 缺点
    • 结论
  • 实践
    • backtrader
      • 参数:
      • 正常情况:
      • 异常情况:

均值回归策略

均值回归(Mean Reversion)是金融市场中一种常见的现象,指的是资产价格在偏离其长期平均值后,最终会回归到该平均值。本文将详细探讨均值回归的理论基础、数学公式以及其在交易策略中的应用。

理论基础

均值回归的理论基础源于统计学中的中心极限定理和随机游走理论。假设资产价格是一个随机过程,其长期平均值可以通过历史数据进行估计。

数学公式

假设资产价格序列为 P t P_t Pt,其均值为 μ \mu μ,标准差为 σ \sigma σ。均值回归假设价格 P t P_t Pt 会围绕均值 μ \mu μ 波动:

P t = μ + ϵ t P_t = \mu + \epsilon_t Pt=μ+ϵt

其中, ϵ t \epsilon_t ϵt 是一个均值为零的随机误差项。

关键指标

简单移动平均线(SMA)

简单移动平均线用于平滑价格数据,计算公式为:

SMA t = 1 N ∑ i = 0 N − 1 P t − i \text{SMA}_t = \frac{1}{N} \sum_{i=0}^{N-1} P_{t-i} SMAt=N1i=0N1Pti

其中, N N N 是时间窗口的长度。

标准差

标准差用于衡量价格波动的幅度,计算公式为:

σ t = 1 N ∑ i = 0 N − 1 ( P t − i − SMA t ) 2 \sigma_t = \sqrt{\frac{1}{N} \sum_{i=0}^{N-1} (P_{t-i} - \text{SMA}_t)^2} σt=N1i=0N1(PtiSMAt)2

Z-Score

Z-Score用于量化价格偏离均值的程度:

Z t = P t − SMA t σ t Z_t = \frac{P_t - \text{SMA}_t}{\sigma_t} Zt=σtPtSMAt

交易信号

均值回归策略的交易信号基于价格的Z-Score:

  • 买入信号:当 Z t < − k Z_t < -k Zt<k 时,价格被认为是低估的,考虑买入。
  • 卖出信号:当 Z t > k Z_t > k Zt>k 时,价格被认为是高估的,考虑卖出。

其中, k k k 是一个预设的阈值,通常取值为2。

实际应用

在实际应用中,均值回归策略可以结合其他技术指标(如相对强弱指数RSI)进行优化。以下是一个简单的均值回归策略实现步骤:

  1. 计算SMA和标准差:选择合适的时间窗口,计算价格的SMA和标准差。
  2. 计算Z-Score:根据当前价格、SMA和标准差计算Z-Score。
  3. 生成交易信号:根据Z-Score判断买入或卖出信号。
  4. 风险管理:设置止损和止盈点,以控制风险。

优缺点分析

优点

  • 理论基础扎实:基于统计学原理,具有较强的理论支持。
  • 适用范围广:可应用于多种金融市场和资产类别。

缺点

  • 假设市场稳定:在极端市场条件下,价格可能不会回归均值。
  • 滞后性:移动平均线和标准差是滞后指标,可能导致信号延迟。

结论

均值回归策略是一种基于统计学原理的交易策略,适用于希望捕捉价格回归趋势的投资者。通过结合数学公式和技术指标,投资者可以更好地理解和应用这一策略。

实践

backtrader

参数:

在这里插入图片描述
股价偏离超过 2 ∗ σ 2*\sigma 2σ且rsii显示超卖或者超买才买入卖出。

正常情况:

每次出手都不一般
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

异常情况:

  • 较大回撤
    在这里插入图片描述
    在这里插入图片描述

  • 错过大涨拍烂腿
    在这里插入图片描述

  • 问题:
    在长期下跌的趋势中,靠正常卖出太困难,加了止损的大多由止损出局,在长期上涨的趋势中又过早的提前出场。

  • 改进:
    加长期ema进行择时,在下跌趋势中不进行买入操作。出场时机改为股价下穿 s m a + 2 ∗ σ sma+2*\sigma sma+2σ线时卖出,这样能稍微缓解一下提前出局的问题,这个只对强势的股票有用,但是因为前期下跌导致很难强势。正常情况可能下穿的信号会很多。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JAVA-数据结构-排序

1.直接插入排序 1.原理&#xff1a;和玩扑克牌一样&#xff0c;从左边第二个牌开始&#xff0c;选中这个&#xff0c;和前面的所有牌比较&#xff0c;插在合适的位置 public static void insertsort(int[] arr){//直接插入排序for (int i 1; i < arr.length; i) {//此循环…

1 机器学习之引言

傍晚小街路面上沁出微雨后的湿润&#xff0c;和煦的细风吹来&#xff0c;抬头看看天边的晚霞&#xff0c;嗯&#xff0c;明天又是一个好天气。走到水果摊旁&#xff0c;挑了个根蒂蜷缩、敲起来声音浊响的青绿西瓜&#xff0c;一边满心期待着皮薄肉厚瓤甜的爽落感&#xff0c;一…

STM32 GPIO

GPIO&#xff08;通用输入输出口&#xff0c;General Purpose Input Output&#xff09;接口的功能是让嵌入式处理器能够通过软件灵活地读出或控制单个物理引脚上的高、低电平&#xff0c;实现内核和外部系统之间的信息交换。 GPIO是嵌入式处理器使用最多的外设&#xff0c;能够…

React和Vue区别,以及注意事项

目录 一、语法和框架特性的差异 二、开发习惯和注意事项 三、特别注意事项 一、语法和框架特性的差异 模板语法&#xff1a; Vue使用了类似于传统HTML的模板语法&#xff0c;通过双大括号{{ }}进行插值&#xff0c;而React则使用了JSX语法。在Vue中&#xff0c;你可以直接在…

甲虫身体图像分割系统源码&数据集分享

甲虫身体图像分割系统源码&#xff06;数据集分享 [yolov8-seg-EfficientRepBiPAN&#xff06;yolov8-seg-C2f-FocusedLinearAttention等50全套改进创新点发刊_一键训练教程_Web前端展示] 1.研究背景与意义 项目参考ILSVRC ImageNet Large Scale Visual Recognition Challen…

SQL Server 计算两个时间相差

在 SQL Server 中&#xff0c;计算两个时间字符串之间的差值 首先将这些字符串转换成日期/时间类型&#xff08;如 datetime 或 datetime2&#xff09;然后使用日期函数来计算它们之间的差异。 1、计算两个时间字符串之间的差值 案例&#xff1a;计算 starttime 和 endtime …

android——activity之间数据共享(单例等)

一、使用 Intent 传递数据&#xff08;适用于简单数据传递&#xff0c;且在 Activity 启动时&#xff09; 二、使用静态变量&#xff08;简单但有风险&#xff09; 原理 在一个类中定义静态变量&#xff0c;例如一个 Application 类或者一个专门用于存储共享数据的工具类。两个…

毕设开源 大数据电影数据分析与可视化系统(源码+论文)

文章目录 0 前言1 项目运行效果2 设计概要3 最后 0 前言 &#x1f525;这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&#xff0c;往往达不到毕业答辩的要求&#xff0c;这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师…

简单粗暴理解GNN、GCN、GAT

GNN 思想&#xff1a;近朱者赤近墨者黑 GNN的流程&#xff1a; 聚合&#xff08;把邻居的信息贴到自己身上来&#xff0c;作为它自己特征的补足&#xff09;更新循环&#xff08;为什么要多次&#xff1f;看以下例子&#xff09; GNN能干嘛&#xff1f; 1.结点分类&#xf…

【多线程】多线程(12):多线程环境下使用哈希表

【多线程环境下使用哈希表&#xff08;重点掌握&#xff09;】 可以使用类&#xff1a;“ConcurrentHashMap” ★ConcurrentHashMap对比HashMap和Hashtable的优化点 1.优化了锁的粒度【最核心】 //Hashtable的加锁&#xff0c;就是直接给put&#xff0c;get等方法加上synch…

STM32的时钟复位控制单元(RCU/RCC)技术介绍

在嵌入式系统开发中&#xff0c;时钟管理和复位控制是确保微控制器稳定运行的关键因素。时钟复位控制单元&#xff08;Reset and Clock Control, RCU/RCC&#xff09; 是 STM32 系列微控制器中的一个重要外设&#xff0c;负责管理系统的时钟源、分频器、外设时钟以及复位功能。…

【网络协议】TCP协议常用机制——延迟应答、捎带应答、面向字节流、异常处理,保姆级详解,建议收藏

&#x1f490;个人主页&#xff1a;初晴~ &#x1f4da;相关专栏&#xff1a;计算机网络那些事 前几篇文章&#xff0c;博主带大家梳理了一下TCP协议的几个核心机制&#xff0c;比如保证可靠性的 确认应答、超时重传 机制&#xff0c;和提高传输效率的 滑动窗口及其相关优化机…

构建可以ssh连接的容器镜像

构建可以ssh连接的容器镜像 构建可以通过ssh进行连接容器镜像&#xff0c;实现远程登录容器的目的。 ubuntu ssh容器镜像 你可以使用以下Dockerfile来构建一个可以SSH的容器镜像&#xff1a; FROM ubuntu:20.04MAINTAINER lldhsds# 配置apt国内源 COPY sources.list /etc/a…

云原生开发 - 工具镜像(简约版)

在微服务和云原生环境中&#xff0c;容器化的目标之一是尽可能保持镜像小型化以提高启动速度和减少安全风险。然而&#xff0c;在实际操作中&#xff0c;有时候需要临时引入一些工具来进行调试、监控或问题排查。Kubernetes提供了临时容器&#xff08;ephemeral containers&…

MyBatis-Plus 的核心插件及其使用介绍

MyBatis-Plus 是基于 MyBatis 的增强工具&#xff0c;为简化 MyBatis 的开发提供了诸多功能扩展。它的目标是减少重复代码、提高开发效率&#xff0c;提供了 CRUD&#xff08;Create, Read, Update, Delete&#xff09;操作的简化方法以及多种实用插件。以下是 MyBatis-Plus 的…

QT学习笔记4.5(文件、参数文件)

QT学习笔记4.5&#xff08;文件、参数文件&#xff09; 1.保存配置参数 1.使用QSettings保存到注册表&#xff0c;ini文件 2.文件存储&#xff1a;使用 QFile 和其他类将参数保存到文本文件、二进制文件、XMLWENJIAN、JSON 文件等。 文本文件&#xff1a;以简单的键值对格式…

Qt实现Halcon窗口显示当前图片坐标

一、前言 Halcon加载图片的窗口&#xff0c;不仅能放大和缩小图片&#xff0c;还可以按住Ctrl键显示鼠标下的灰度值&#xff0c;这种方式很方便我们分析缺陷的灰度和对比度。 二、实现方式 ① 创建显示坐标和灰度的widget窗口 下图的是widget部件&#xff0c;使用了4个label控…

常说的风险评估,那么「基于风险的测试 (RBT)」如何测试?

基于风险的测试 &#xff08;RBT&#xff09; 是一种测试方法&#xff0c;它根据风险的概率和影响确定测试活动的优先级。它涉及在潜在问题发生之前识别它们&#xff0c;并将资源分配给风险最高的测试区域。 在 RBT 中&#xff0c;“风险”是指缺陷的可能性及其对系统运行或业…

DS线性表之单链表的讲解和实现(2)

文章目录 前言一、链表的概念二、链表的分类三、链表的结构四、前置知识准备五、单链表的模拟实现定义头节点初始化单链表销毁单链表打印单链表申请节点头插数据尾插数据头删数据尾删数据查询数据在pos位置之后插入数据删除pos位置之后的数据 总结 前言 本篇的单链表完全来说是…

微信小程序 详情图片预览功能实现详解

详情图片预览功能实现详解 在开发微信小程序时&#xff0c;我们经常需要实现点击商品图片进行全屏预览的功能。这不仅提升了用户体验&#xff0c;还允许用户进行保存图片、发送给朋友等操作。本文将详细介绍如何实现这一功能。 思路分析 当用户在商品详情页点击图片时&#…