Pro02丨加强版超级趋势线加减仓策略迭代

2023-12-05 07:20

本文主要是介绍Pro02丨加强版超级趋势线加减仓策略迭代,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 量化策略开发,高质量社群,交易思路分享等相关内容

『正文』

ˇ

大家好,今天为大家带来的Pro第2期迭代策略。该篇是对去年SF37超级趋势线策略的迭代。在SF37策略中,我们通过构建一个滤波器均线,随后根据我们异质化社群中分享的STR指标,构造了新的一种超级趋势线。该趋势线不仅可以作为看盘指标,又可以构建量化策略系统,如下图所示:

一、策略逻辑与迭代内容

在原版SF37背景下,我们采用了单一的进场和单一的出场方式,只不过在出场模块中,我们采用了更为复杂的“Krange+ERratio”自适应出场逻辑。但是在波段以及行情自身运行模式中,无论如何自适应,无论如何吊灯,无论如何跟踪的出场模式,都无法保证某种程度的利润回吐保护。

因此,基于以上利润保护异质化角度出发,异质化进场逻辑出发。在Pro_02迭代版本策略中,我提出以加减仓为核心,时间进出场为表现形式,保护利润与容忍行情为一体的多模块进出场逻辑。如下图所示:

上图中,我们明显看到,白色的线是跟踪止盈止损线,但是出场部分并没有完全按照此线而来。这就是我们迭代的效果。其中,我们注意绿色箭头,该加仓二次进场融合了时间因素,在整体方向未变的基础上,达到了传统CTA未有的异质化效果。

我们将SF37原版中止盈止损线的提速模块注释掉,保持原有的“Krange+ERratio”模块逻辑,而后加入新的减仓逻辑,如下图所示:

其中,如果是偶数仓位,按照一半儿减仓,如果奇数位,我们按照向上取整原则。该逻辑也是上上图中所绘制的减仓逻辑的体现。

进场方面,我们采用延续趋势逻辑前提下,根据减仓与时间逻辑融合,再次进场依照减仓时间逻辑出发,详情请看上面图中绿色剪头,代码如下图所示:

二、可视化

Ss short

i short

Rb long

截取部分品种多空如上图所示,我们可以看到该种减仓模块逻辑,一定程度上可以做到在波段高峰减仓,波段低谷再一次加仓的目的。

三、绩效对比

我们先来看组合绩效,由于时间因素,Pro_02与SF37仅仅比对黑色品种,如下图所示所示:

Pro_02:

SF37:

具体品种如下图所示:

从上述组合绩效来看,我们统一按照100万最大投入资金计算,根据夏普率、最大回撤、胜率、交易次数、平均利润、盈利因子、盈亏比等多个绩效指标综合来看,具体如下图所示:

个别品种绩效对比就不再赘述,有兴趣的大家可以群里讨论。

由于各平台差异,回测绩效以TBQ版本为准!!!

本策略仅作学习交流使用,实盘交易盈亏投资者个人负责。

这篇关于Pro02丨加强版超级趋势线加减仓策略迭代的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python实现网格交易策略的过程

《Python实现网格交易策略的过程》本文讲解Python网格交易策略,利用ccxt获取加密货币数据及backtrader回测,通过设定网格节点,低买高卖获利,适合震荡行情,下面跟我一起看看我们的第一... 网格交易是一种经典的量化交易策略,其核心思想是在价格上下预设多个“网格”,当价格触发特定网格时执行买

Java设计模式---迭代器模式(Iterator)解读

《Java设计模式---迭代器模式(Iterator)解读》:本文主要介绍Java设计模式---迭代器模式(Iterator),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录1、迭代器(Iterator)1.1、结构1.2、常用方法1.3、本质1、解耦集合与遍历逻辑2、统一

SpringBoot中4种数据水平分片策略

《SpringBoot中4种数据水平分片策略》数据水平分片作为一种水平扩展策略,通过将数据分散到多个物理节点上,有效解决了存储容量和性能瓶颈问题,下面小编就来和大家分享4种数据分片策略吧... 目录一、前言二、哈希分片2.1 原理2.2 SpringBoot实现2.3 优缺点分析2.4 适用场景三、范围分片

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

利用Python实现时间序列动量策略

《利用Python实现时间序列动量策略》时间序列动量策略作为量化交易领域中最为持久且被深入研究的策略类型之一,其核心理念相对简明:对于显示上升趋势的资产建立多头头寸,对于呈现下降趋势的资产建立空头头寸... 目录引言传统策略面临的风险管理挑战波动率调整机制:实现风险标准化策略实施的技术细节波动率调整的战略价

C++迭代器失效的避坑指南

《C++迭代器失效的避坑指南》在C++中,迭代器(iterator)是一种类似指针的对象,用于遍历STL容器(如vector、list、map等),迭代器失效是指在对容器进行某些操作后... 目录1. 什么是迭代器失效?2. 哪些操作会导致迭代器失效?2.1 vector 的插入操作(push_back,

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四

Redis中6种缓存更新策略详解

《Redis中6种缓存更新策略详解》Redis作为一款高性能的内存数据库,已经成为缓存层的首选解决方案,然而,使用缓存时最大的挑战在于保证缓存数据与底层数据源的一致性,本文将介绍Redis中6种缓存更... 目录引言策略一:Cache-Aside(旁路缓存)策略工作原理代码示例优缺点分析适用场景策略二:Re

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

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

redis过期key的删除策略介绍

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