量化交易入门阶段:三均线策略是否好于双均线(上)?

2024-02-12 17:50

本文主要是介绍量化交易入门阶段:三均线策略是否好于双均线(上)?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

在文章《双均线策略优化会怎样?》中,我给大家留下了很多问题,在本篇文章,我给大家解答其中一个问题,那就是如果在双均线的基础之上,再加一条,变为三均线策略会怎么样?

 

基础策略,我们还是用双均线,经过上次的提高,我们用的参数是30、60两条均线,那么在这两条均线的基础之上,我们进行进一步优化。

上一次30/60两条均线的收益率是1.4%,虽然低,但是这已经是目前均线策略之中拿到的最好结果。

所以如果各位投资者还用比这个方法更差的策略的话,那么想要得到更好的收益恐怕很难了。

 

那么在30/60的基础之上,我们应该加一条短均线比如10日线,还是应该加一条长均线比如90日线呢?

本篇文章,我先加一条10日线。

那么这次策略可就变得复杂了,三条均线理论上应该有三个金叉死叉。以我们目前用的10/30/60为例分别是:

10和30,金叉,死叉。

10和60,金叉,死叉。

30和60,金叉,死叉。

那么以哪一种金叉死叉作为进场信号和出场信号呢?

很多老股民,马上就会说,很简单啊,60均线作为大的方向,股价在60以上,并且10上穿30就做多,10打穿30就平仓。要是股价在60以下,就不进场了,就算出现10上穿30也不进场。

那么我们今天就回测一下这个最经典的方法,看看结果怎么样?

 

这回我们的策略是:

入场时间:

2019年1月1日-2019年12月1日

入场信号:

股价大于60日均线的条件之下,10日均线上穿30日均线,金叉进场

仓位:

每只股票都买1000元

出场信号:

股价大于60日均线的条件之下,10均线下穿30日均线,死叉平仓;或者股价下穿60日均线,死叉就平仓

股票选择:

股票池的选择我用的是全市场沪深两市所有股票的三分之一,即从深圳000开头开始升序排列,到沪市的600开头,取前1000只股票作为样本,也只有这样才能相对客观的评价这个指标是否有效,不然的话,同样都出现金叉,有的买有的不买,回测的结果并不能说明方法的好坏。

 

大家想想,会不会提高?

我们看看答案吧。

 

策略收益是亏损6.27%,胜率0.22,盈亏比0.85

可以发现交易次数明显是减少了,但是依旧亏钱。

 

上面的三均线的用法,是大多数投资者都能想到的用法,但是并不是三均线的全部用法,比如10日上穿60买入,30日打穿60日卖出,或者其他方式都可以尝试,并不能说明三均线策略到此就结束了。

三均线策略开始,策略的复杂度开始逐渐加大,变化也开始增多,希望看官们跟住我的思路,接下来还有更精彩的策略变化。

相信大家逐渐明白了,量化交易其实很简单,很客观,也不难学,这些方法都是大家平时用的方法,只不过没有真正发挥出他们的全部实力,我将逐渐让大家明白指标的真正实力。

大家有任何问题也欢迎留言,我看见之后,会给大家进行解答。

如果自己有策略,但是不会写代码的话,可以给我私信,价钱从几十到几百不等,看策略实现的难易程度而定,我使用的是聚宽平台,代码写好之后,可以在上面上模拟盘和实盘,对应的券商是第一创业证券。

这篇关于量化交易入门阶段:三均线策略是否好于双均线(上)?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/703207

相关文章

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

Python如何精准判断某个进程是否在运行

《Python如何精准判断某个进程是否在运行》这篇文章主要为大家详细介绍了Python如何精准判断某个进程是否在运行,本文为大家整理了3种方法并进行了对比,有需要的小伙伴可以跟随小编一起学习一下... 目录一、为什么需要判断进程是否存在二、方法1:用psutil库(推荐)三、方法2:用os.system调用

redis过期key的删除策略介绍

《redis过期key的删除策略介绍》:本文主要介绍redis过期key的删除策略,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录第一种策略:被动删除第二种策略:定期删除第三种策略:强制删除关于big key的清理UNLINK命令FLUSHALL/FLUSHDB命

Python中判断对象是否为空的方法

《Python中判断对象是否为空的方法》在Python开发中,判断对象是否为“空”是高频操作,但看似简单的需求却暗藏玄机,从None到空容器,从零值到自定义对象的“假值”状态,不同场景下的“空”需要精... 目录一、python中的“空”值体系二、精准判定方法对比三、常见误区解析四、进阶处理技巧五、性能优化

SpringRetry重试机制之@Retryable注解与重试策略详解

《SpringRetry重试机制之@Retryable注解与重试策略详解》本文将详细介绍SpringRetry的重试机制,特别是@Retryable注解的使用及各种重试策略的配置,帮助开发者构建更加健... 目录引言一、SpringRetry基础知识二、启用SpringRetry三、@Retryable注解

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

SpringBoot首笔交易慢问题排查与优化方案

《SpringBoot首笔交易慢问题排查与优化方案》在我们的微服务项目中,遇到这样的问题:应用启动后,第一笔交易响应耗时高达4、5秒,而后续请求均能在毫秒级完成,这不仅触发监控告警,也极大影响了用户体... 目录问题背景排查步骤1. 日志分析2. 性能工具定位优化方案:提前预热各种资源1. Flowable

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

SpringBoot如何通过Map实现策略模式

《SpringBoot如何通过Map实现策略模式》策略模式是一种行为设计模式,它允许在运行时选择算法的行为,在Spring框架中,我们可以利用@Resource注解和Map集合来优雅地实现策略模式,这... 目录前言底层机制解析Spring的集合类型自动装配@Resource注解的行为实现原理使用直接使用M

Python FastAPI入门安装使用

《PythonFastAPI入门安装使用》FastAPI是一个现代、快速的PythonWeb框架,用于构建API,它基于Python3.6+的类型提示特性,使得代码更加简洁且易于绶护,这篇文章主要介... 目录第一节:FastAPI入门一、FastAPI框架介绍什么是ASGI服务(WSGI)二、FastAP