当前位置: 首页 > news >正文

量化择时——均线策略及改进方法(第1部分—因子测算)

文章目录

  • 道氏理论
    • 个股股价走势阶段
    • 板块、行业股价走势
  • 均线策略交易逻辑
  • 均线策略效果测算
    • 改进一:设置策略信号偏移量
    • 改进二:生成止盈止损信号

道氏理论

使用盘面数据,根据计算出的一条或多条均线,判断入场与离场的时机,基本上就是技术面分析。而技术面分析的思想我们可以借鉴比较经典的“道氏理论”。

道氏理论是由创办了华尔街日报,创建了道琼斯公司的【查尔斯·亨利·道】发展起来的一种交易方法,同时在当时美国市场上上市公司以工业企业为主的环境下发明了道琼斯工业指数。在他去世后,由后人总结出来并予以命名“道氏理论”。

个股股价走势阶段

道氏理论以有效市场假说为基础,认为任何市场都会有这3种趋势,透过分辨不同的趋势可以找到投资机会。

  • 主要趋势:指长期趋势,持续一年及以上,大部分股票将随主要趋势上升或下跌,大致可以将市场分为牛市、熊市、盘整(横盘震荡)
  • 次要趋势:持续数周或数月,指与主要趋势相反的中期走势,常见于走到主要趋势的1/3或2/3部分时
  • 小型趋势:每日的波动,带有一定的随机性,难以分析

在上升趋势阶段,分为以下三个阶段:

  1. 筑底阶段:市场经过前期的大跌之后,此时普遍估值较低,盘面表现为持续震荡。市场看不到明天的太阳,不知道未来是震荡下跌还是震荡上涨,此时人们对未来的信心已经在逐渐恢复中
  2. 持续上涨:市场找到了上升动力,利好消息不断放出,买盘推动股价不断上涨。盘面表现是成交量随着股价的上涨不断增加。市场的向好也给予企业正反馈,企业与市场形成正向循环促进
  3. 探顶阶段:市场不断出现利好消息,参与者越来越分散,企业估值被不断推高,泡沫不断积累。此时的市场充斥着投机者,基于期待与希望支撑买方力量,但是预期已拉满,市场对于利空消息也逐渐敏感

在下跌趋势阶段,也分为以下三个阶段:

  1. 探顶阶段:紧接着上升阶段的尾巴,此时买方力量与卖方力量相互周旋,盘面表现为持续震荡,此时估值膨胀到买方力量难以支撑,卖方力量蠢蠢欲动
  2. 持续下跌:经济的恶化会导致高估值的企业因为未达预期,股价不断下跌,典型的持续下跌会表现在价格下跌的同时成交量逐渐减小,此时表明在卖方抛售的同时买方持续观望,对于估值的失望性抛售会不断拉低企业估值
  3. 探底阶段:此时市场虽然一片萧条,但是成交量逐渐恢复,企业估值整体偏低,买方蠢蠢欲动

板块、行业股价走势

我们通俗的理解牛市:行情好啊,啥啥都赚钱,熊市则是:经济完蛋了,啥啥都赔钱。同样还有一种情况,即一部分板块在大涨,而另一部分板块在暴跌,这就出现了板块之间的背离。使用道氏理论可以从宏观上佐证以下观点:

  • 牛市:板块普涨
  • 熊市:板块普跌
  • 盘整:过去相关性很高的板块,此时出现了背离,这通常是一个反转的信号。也可以佐证“行业轮动”的现象。打个比方,比如新发现了一座金矿,那么这个地区的铲子和矿泉水预期被大量需要,价格也应该会同步上升。但是,如果铲子的价格上涨,但是矿泉水的价格下降,则出现走势“背离”的现象。此时需要细致的分析。如果分析出这个地方金矿开采难度大成本高,那么铲子的价格会因为需求不及预期导致价格下跌,当时听风就是雨进去的就被坑了。

均线策略交易逻辑

我们常见的是如下的策略:

  1. 以过去10个交易日的收盘价作为快线
  2. 以过去25个交易日的收盘价作为慢线
  3. 当快线向上突破慢线,表示上涨趋势势不可挡,此时买入
  4. 当快线下穿突破慢线,表示下跌趋势不可遏制,此时卖出

这是一快一慢两个指标相互作用的策略,而均线策略通常只使用一个指标,即根据自身指标过去一段时间的走势完成择时。

均线策略思想如下:

  1. 记录过去的一个时间窗口的收盘价均值
  2. 使用滑动窗口将均值变为一条时间序列数据(均线)
  3. 股价突破极小值时买入,突破极大值时卖出

由于极小值、极大值是交替出现的,因此每一对【极小值(买点),极大值(卖点)】都可以构成一个完整的交易

比如我们以20个交易日的收盘价的均值作为参考值,20个交易日的收盘价的均值与收盘价走势图如下图所示:

在这里插入图片描述

上面的图比较典型,可以观测到:

  1. 均线相对更容易描述趋势的走势
  2. 均线相对于收盘价有一定的滞后性
  3. 均线在大方向上的变动不是特别频繁

均线策略效果测算

我们基于均线策略,构建如下策略流程:

  1. 以20个交易日为滑动窗口长度,计算每个交易日的收盘价的均值,作为均线策略的参考值
  2. 如果上一个交易日的股价是极小值点,则以当日收盘价买入
  3. 如果上一个交易日的股价是极大值点,则以当日收盘价卖出
    最后,统计每一次完整的交易,并把这期间的收益转换为年化收益率,以年化收益率>2%记为胜,胜率=胜的次数/总交易次数

买点、卖点如下图所示:
在这里插入图片描述

测算结果如下图所示:
在这里插入图片描述

但是,正如上图所示,因为当出现震荡行情时,极大值与极小值会交替出现。这时,极容易出现:

  • 第一天是极小值,买入
  • 第二天是极大值,卖出
  • 第三天是极小值,买入
  • 第四天是极大值,卖出

加上对交易日相关数据的统计:

在这里插入图片描述

可以发现,有25%的交易是在2天以内,即“今天买明天卖”,这会造成短期大量的换手,增加摩擦成本。为了避免短期频繁的交易,我们我们需要针对极大值、极小值的择时策略做一些优化。

改进一:设置策略信号偏移量

当极小值出现时,对比上一次极小值出现的时点,需要当前的极小值点相对上一个极小值点偏移n%,才会作为新的价格信号;极大值同理

这里我们定3%,因此原有测算的买点与卖点修改为:

  1. 如果上一个交易日的股价是极小值点,且相对于上次的极小值点价格偏移超过3%,则以当日收盘价买入
  2. 如果上一个交易日的股价是极大值点,且相对于上次的极大值点价格偏移超过3%,则以当日收盘价卖出

回测效果如下:

在这里插入图片描述

在这里插入图片描述

改进二:生成止盈止损信号

在买点生成的同时,同步生成止盈与止损信号:

  1. 如果上一个交易日的股价是极小值点,则以当日收盘价买入
  2. 以当日收盘价的正负6%,为止盈止损点。即涨超6%发出止盈信号,跌超6%发出止损信号
  3. 如果上一个交易日的股价是极大值点,或收盘价突破止盈止损点,则以止盈、止损点买入

回测效果如下:

在这里插入图片描述

在这里插入图片描述

及时的止盈与止损会导致交易天数明显缩短,对应的胜率也会下降,但是方差与原有策略相同。

有一点需要注意,有些改进是从以下两个角度出发:

  1. 改进思想1:买入后静默N天,再根据信号进行交易判断;(为了防止短期抖动)
  2. 改进思想2:第二次买入与上一次卖出至少相隔N天;(为了重置交易环境)

虽然上面两种方法的确可以降低交易频率,增加交易的持续时间。但是要注意,我们的目标不是为了【降低交易频率】,而是【降低频繁换手导致的摩擦成本】,只不过为了实现这个目标,“交易频率的降低”是一种可能得结果。

因此博主的建议是,如果我们是组合多种策略,上面两种思路是OK的,但我们在测算指标时,尽量在严格执行信号的情况下,引入外部的一些改进机制,而不是阉割掉原有的策略信号。

下一部分,我们将构建回测策略,对均线及其改进策略进行回测,并评估它的表现

相关文章:

量化择时——均线策略及改进方法(第1部分—因子测算)

文章目录道氏理论个股股价走势阶段板块、行业股价走势均线策略交易逻辑均线策略效果测算改进一:设置策略信号偏移量改进二:生成止盈止损信号道氏理论 使用盘面数据,根据计算出的一条或多条均线,判断入场与离场的时机,…...

封装几个有用的 Vue3 组合式API

本文将介绍如何使用Vue3来封装一些比较有用的组合API,主要包括背景、实现思路以及一些思考。 就我自己的感觉而言,Hook与Composition API概念是很类似的,事实上在React大部分可用的Hook都可以使用Vue3再实现一遍。 为了拼写方便,下文内容均使用Hook代替Composition API。相…...

MyBatisPlus中的条件构造器Wrapper

引言为什么要了解Wrapper?Wrapper解决的了什么问题?一、Wrapper:条件构造抽象类,用来解决单表操作出现的一些复杂问题,例如排序,和模糊查询等等结构图文字解释AbstractWrapper : 用于查询条件封装&#xff…...

类和对象及其构造方法

类和对象 现实世界的事物由什么组成? 属性 行为 类也可以包含属性和行为,所以使用类描述现实世界事物是非常合适的类和对象的关系是什么? 类是程序中的“设计图纸” 对象是基于图纸生产的具体实体什么是面向对象编程? 面向对象编…...

HStream Console、HStreamDB 0.14 发布

近两个月,HStreamDB 相继发布了 0.13 和 0.14 版本,包含多项已知问题修复。同时,我们也发布了全新的 HStream Console 组件,为 HStreamDB 带来了简洁友好的图形化管理界面,将帮助用户更轻松地使用和管理 HStreamDB. H…...

参考文献怎么查找,去哪里查找?一篇文章讲明白这些问题

在我们撰写论文查找参考文献时,往往不知道从哪里入手,本文小编就针对下面这三个方面给大家详细讲解下: 一、查找参考文献方法 二、参考文献资料查找网站 三、参考文献格式规范 一、查找参考文献方法: 1、知网全球最大的中文数据…...

docker-compose+HAProxy+Keepalived搭建高可用 RabbitMQ 集群

基础环境准备 系统环境:Centos7.6 Docker version: 1.13.1, build 7d71120/1.13.1 Docker Compose version: v2.2.2 三个节点: 10.10.11.79 (这一台做rabbitmq集群根节点) 10.10.11.80 (这台做haproxyke…...

自动化框架如何搭建?让10年阿里自动化测试老司机帮你搞定!自动化测试脚本怎么写?

一、何为框架?何为自动化测试框架? 无论是日常技术交流,还是在自动化测试实践中,经常会听到一个词叫:框架。之前对“框架”这个词知其然不知其所以然。现在看过一些资料以及加上我自己的一些实践有了我自己的一些看法…...

剑指 Offer 15. 二进制中1的个数

剑指 Offer 15. 二进制中1的个数 难度:easy\color{Green}{easy}easy 题目描述 编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为 汉明重量).…...

CHAPTER 3 磁盘管理

磁盘管理1 磁盘管理1.1 块设备信息(lsblk)1.2 挂载硬盘1.2.1 挂载单个硬盘(mkfs、mount)1.2.2 磁盘分区工具(fdisk)1.2.3 创建分区1.2.4 相关命令1. df2. partprobe3. mkfs1.3 逻辑卷管理器(LVM)1. 涉及概念2. 使用LVM流程1.4 磁盘检测及修复(fsck)1 磁盘…...

MS python学习(7)

Managing Keys - dotenv Managing keys usage of .env module 项目地址:https://github.com/theskumar/python-dotenv Reads the key,value pair from .env and adds them to environment variable. 将key明文(hard code)形式写在script里…...

工业物联网“杀手级”应用—预测性维护

一、预测性维护的必要性 随着新一轮科技革命和产业变革的兴起,工业物联网、大数据、人工智能等技术正与经济社会各领域加速渗透融合。由于市场竞争对精细化成本管控的要求,设备的重要性越来越凸显,设备的维护对策也必然从响应式维护&#xf…...

Java代码弱点与修复之——Explicit null dereferenced(显式空间接引用)

弱点描述 Explicit null dereferenced, 显示空间接引用。是 Coverity 静态代码分析工具检测到的一种中风险缺陷。这种缺陷通常发生在尝试使用空指针引用调用对象上的方法或访问属性时。 Explicit null dereferenced的缺陷可能会导致程序崩溃或产生不可预测的结果。 在Java语…...

一元导数与多元求导数总结

前序:文章结构 1.一元导数 ①一般函数求导 因为太简单的原因,事实上一般函数求导不会单独出现,大多数都是出现在各种特殊的求导过程中。只要掌握16个基本求导公式没问题。 ②复合函数求导(主要链式法则) 这种一般是…...

通过堆栈分析深拷贝、浅拷贝、赋值的差异

前言数据类型分为:基本数据类型String、Number、Boolean、Null、Undefined、Symbol对象数据类型Object、Array基本数据类型的特点:直接存储在栈(stack)中的数据引用数据类型的特点:存储的是该对象在栈中引用,真实的数据存放在堆内…...

网络割接概述

网络割接概述割接背景企业网络的变化割接概述割接难点割接的操作流程情景模拟及解决方案常见的割接场景割接背景 随着企业业务的不断发展,企业网络为了适应业务的需求不断的改造和优化。无论是硬件的扩容、软件的升级、配置的变更,凡是影响现网运行业务…...

开放开源开先河(下)

目录 1.唯一性定义品牌 2.打造爆款塑造品牌 3.生态系统传播品牌 打造爆款塑造品牌 目前全球100多个开源基金会大部分都在美国,已成功孵化了800多个项目。而开放原子开源基金会现有136家捐赠单位,2020年9月,百度将区块链项目超级链&#xff0…...

maven的学习

为啥要用maven 1、不用认为添加jar包所依赖的其他jar包 2、能在本地仓库只保留一份jar包,避免了多个工程使用相同jar包,需要重复导入的问题,减少冗余 3、能够规范添加jar包,在下载需要的jar包时有多种方法,但是不能保…...

从前端到后端全面解析文件上传

从前端到后端全面解析文件上传1.前端准备(vueelement-ui)2.后端准备(SpringBootminiomysql)2.1解决跨域2.2配置minio与mysql2.3controller层2.4service层1.前端准备(vueelement-ui) <!DOCTYPE html> <html lang"en"> <head><meta charset"…...

全网火爆,软件测试面试题大全,接口测试题+回答 (18k+的offer)

目录&#xff1a;导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09;前言 面试测试工程师的时…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

select、poll、epoll 与 Reactor 模式

在高并发网络编程领域&#xff0c;高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表&#xff0c;以及基于它们实现的 Reactor 模式&#xff0c;为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。​ 一、I…...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档&#xff09;&#xff0c;如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下&#xff0c;风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...

Java求职者面试指南:计算机基础与源码原理深度解析

Java求职者面试指南&#xff1a;计算机基础与源码原理深度解析 第一轮提问&#xff1a;基础概念问题 1. 请解释什么是进程和线程的区别&#xff1f; 面试官&#xff1a;进程是程序的一次执行过程&#xff0c;是系统进行资源分配和调度的基本单位&#xff1b;而线程是进程中的…...

tomcat入门

1 tomcat 是什么 apache开发的web服务器可以为java web程序提供运行环境tomcat是一款高效&#xff0c;稳定&#xff0c;易于使用的web服务器tomcathttp服务器Servlet服务器 2 tomcat 目录介绍 -bin #存放tomcat的脚本 -conf #存放tomcat的配置文件 ---catalina.policy #to…...

Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement

Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement 1. LAB环境2. L2公告策略2.1 部署Death Star2.2 访问服务2.3 部署L2公告策略2.4 服务宣告 3. 可视化 ARP 流量3.1 部署新服务3.2 准备可视化3.3 再次请求 4. 自动IPAM4.1 IPAM Pool4.2 …...

Ubuntu系统复制(U盘-电脑硬盘)

所需环境 电脑自带硬盘&#xff1a;1块 (1T) U盘1&#xff1a;Ubuntu系统引导盘&#xff08;用于“U盘2”复制到“电脑自带硬盘”&#xff09; U盘2&#xff1a;Ubuntu系统盘&#xff08;1T&#xff0c;用于被复制&#xff09; &#xff01;&#xff01;&#xff01;建议“电脑…...

【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道

文/法律实务观察组 在债务重组领域&#xff0c;专业机构的核心价值不仅在于减轻债务数字&#xff0c;更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明&#xff0c;合法债务优化需同步实现三重平衡&#xff1a; 法律刚性&#xff08;债…...

ArcGIS Pro+ArcGIS给你的地图加上北回归线!

今天来看ArcGIS Pro和ArcGIS中如何给制作的中国地图或者其他大范围地图加上北回归线。 我们将在ArcGIS Pro和ArcGIS中一同介绍。 1 ArcGIS Pro中设置北回归线 1、在ArcGIS Pro中初步设置好经纬格网等&#xff0c;设置经线、纬线都以10间隔显示。 2、需要插入背会归线&#xf…...