量化进阶——量化交易模型的“钝化”与“圣杯”[通俗易懂]

量化进阶——量化交易模型的“钝化”与“圣杯”[通俗易懂]阅读原文:http://club.jr.jd.com/quant/topic/1326857京东金融官方资讯QQ群:417082141有什么想咨询的都可以来询问我们哦钝化的烦恼常有人提到量化交易模型的“钝化”问题,通俗的说,也就是一个模型从赚大钱变为不赚钱,甚至亏损的一个过程。甚至在海洋部落那样高手云集的社会中,不少高人眼里,钝化是每个量化交易模型都会很快发生的事,赚钱机

大家好,又见面了,我是你们的朋友全栈君。

阅读原文:http://club.jr.jd.com/quant/topic/1326857

京东金融官方资讯QQ群:417082141 有什么想咨询的都可以来询问我们哦

钝化的烦恼

常有人提到量化交易模型的“钝化”问题,通俗的说,也就是一个模型从赚大钱变为不赚钱,甚至亏损的一个过程。甚至在海洋部落那样高手云集的社会中,不少高人眼里,钝化是每个量化交易模型都会很快发生的事,赚钱机遇可谓稍纵即逝。钝化已成量化交易的头号敌人。那么,量化交易模型钝化的实质是什么呢?

最典型的钝化过程,是量化交易模型开发者从最近几个月的行情数据入手来编写模型。这样的模型往往在过去几月或者包括当前都非常厉害,稍微再过几月就出现了明显的“钝化”。显然,样本数据过少,是导致此类钝化的首要原因。稍有经验的开发者都会避免这样情况的发生。

可是推而广之,更多从数年数据入手开发的模型,就没有类似情况了吗?以股指期货为例,开市仅仅两年多,任何人也只有这两年多的可参考数据。那么在未来的数月、数年以及数十年,谁又能保证不因基础数据样本相对过少而钝化呢?

钝化的实质是较优参数的无规律性,我们来看看影响模型收益变化的内在因素。

模型在编写完成后,基础原理是不会再改变的,否则就不是同一个模型了。那么影响量化交易模型收益的内在因素很简单就是参数。

通常,一个比较简洁的模型包含2-3个基本参数(其中一个是运行周期),然后还包括数量不等的止损等辅助参数。模型开发者往往使用通过历史数据回测的较优(也包括最优、次优)参数来进行实盘交易。

以每个量化交易型必备的运行周期为例,某个以2010年数据为基础,测试出最佳运行周期为10分钟(见下图)。结果到了2011年后期,因为市场节奏的变化,10分钟模型的收益大规模下降直至出现局部亏损,形成了典型的钝化曲线。量化进阶——量化交易模型的“钝化”与“圣杯”[通俗易懂]

同样的量化交易模型如果以2011年后的数据为基础,则测试出测试出最佳运行周期为5分钟(见下图)。有趣的是我们发现其2010年的收益就远远低于使用10分钟周期的模型。可以想象,如果市场节奏恢复2010年状况,5分钟模型也将出现同样的钝化。

+量化进阶——量化交易模型的“钝化”与“圣杯”[通俗易懂]

可是,一个模型如何能知道什么时候使用5分钟,什么时候又使用10分钟呢?

圣杯:参数的规律

由于每种市场节奏交替变化并无固定规律,因为每种参数(包括周期)理论上都不可能通吃各种行情,而只能冀望在不适应的行情中少亏或不亏。

而如果这个世界上存在圣杯的话,那就一定是如下两种可能:

1、其主要较优参数长期稳定,无须修改。

2、其主要较优参数有自身的变化规律。开发者知道什么时候朝什么方向修改参数,或者说参数本身就能够根据市场节奏自适应调整。

很多人发现,每次对量化交易模型进行参数优化的时候,看不出调整的方向有任何线性或可辨识的规律。因此也不知道什么时候应该调整参数以及如何调整。

而那些所谓“圣杯”的拥有者一定告诉你,要么不需要调整参数,要么他早知道在什么时候、朝什么方向调整。你和“圣杯”的分别,不在于你不善于发现参数的规律,而是你的参数本身就没有规律。本质上,你的参数是某一段时候获利较大的概率的体现,而不具有某种有所指的涵义。

比如这样的模型,虽然有不错的回测收益,因为参数的调整无规律,却不能保证未来收益的正负。

量化进阶——量化交易模型的“钝化”与“圣杯”[通俗易懂]

而这样的模型,在每个周期都有其相对固定的较优参数,无论在哪一年都基本一致。那它才是可能中的“圣杯”。

量化进阶——量化交易模型的“钝化”与“圣杯”[通俗易懂]

使用有规律参数的模型,发现波动规律本身所波动的规律,才是“圣杯”之所在。相反,如果没有任何模型可以使用恒定参数而赢利、没有任何模型能把握较优参数变化的规律,那么,“没有圣杯”就是圣杯。另外,以上各模型皆非引用未来函数。

真正带点未来函数的,是这样的模型:

量化进阶——量化交易模型的“钝化”与“圣杯”[通俗易懂]

阅读原文:http://club.jr.jd.com/quant/topic/1326857

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/153220.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • stm32直流电机控制—PID算法篇

    stm32直流电机控制—PID算法篇stm32直流电机控制—PID算法篇提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章Python机器学习入门之pandas的使用**加粗样式*提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录stm32直流电机控制—PID算法篇前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了

  • Oracle number类型的语法和用法

    Oracle number类型的语法和用法Oraclenumber类型的语法和用法2012-10-2910:37:08    我来说两句     作者:liwenshui322收藏  我要投稿Oraclenumber类型的语法和用法    number类型的语法很简单,就是:   number(p,s)   p,s都是可选的,假如都不填,p默认为38,s默认为-48~127。

  • XGBoost:在Python中使用XGBoost

    XGBoost:在Python中使用XGBoost在Python中使用XGBoost下面将介绍XGBoost的Python模块,内容如下:*编译及导入Python模块*数据接口*参数设置*训练模型l*提前终止程序*预测AwalkthroughpythonexampleforUCIMushroomdatasetisprovided.安装首先安装XGBoost的C++版本,然后进入源文件的根目录下

  • 阿里云产品介绍

    阿里云产品介绍文章目录一、阿里云四大件1、云服务器ECS2、云数据库RDS3、负载均衡SLB4、对象存储OSS5、其他的云计算产品1)内容分发网络CDN:2)专有网络VPC:2)弹性伸缩:二、阿里云安全系列产品1、DDoS高防IP2、安骑士3、证书服务4、态势感知5、堡垒机三、阿里云网络中间件相关消息队列MQ四、阿里云万网产品1、域名2、虚拟主机3、企业邮箱4、云解析DNS公有云和私有云概念bai概念imghttps://www.aliyun.com/product/rds/mysql?spm=a2cls.b9237

  • 从汇编语言到Windows内核编程_windows内核编程pdf

    从汇编语言到Windows内核编程_windows内核编程pdf天书夜读-从汇编语言到Windows内核编程链接:https://pan.baidu.com/s/1sk6alCWRQvDziEYLUrxArw提取码:podo

  • win7 64位官方旗舰版上搭建ruby on rails的步骤

    win7 64位官方旗舰版上搭建ruby on rails的步骤今天在win7上安装ruby成功,步骤记录下来了,分享给朋友们。亲测,可行。———-第一步:安装ruby————1.安装rubyinstaller-2.2.4-x64.exe,记得勾选addpath…选项,安装完之后ruby-v查看版本号,比如ruby2.2.4p230(2015-12-16revision53155)[x64-mi

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号