遗传算法在参数优化中的应用.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 PAGE 1 页 共 NUMPAGES 3 页 目 录 简介 4 遗传算法介绍 4 算法介绍和算法特定 4 遗传算法主要元素 4 遗传算法的基本运算流程 5 python 遗传算法工具包 DEAP 介绍 6 目标波动率法 6 回测 7 进一步研究方向 10 风险提示 10 图 目 录 图 1:遗传算法流程简介 6 图 2:板块权重确定流程 7 图 3:市值走势图 9 图 4:回撤比例走势图 9 图 5:保证金比例走势图 9 表 目 录 表 1:待优化参数范围 8 表 2:最优参数 8 表 3:策略回测评价指标 8 简介 CTA 策略中常见的参数优化方式有网格法(穷举法)、遗传算法、通过机器学习模型确定参数等。 网格法是最简单的参数确定方法,网格法是根据各个参数的范围,依次遍历各种参数组合的结果,从而确定最佳参数的方法,也称穷举法。网格法的优点是其结果一定是全局最优的,其缺点是当参数较多且参数范围较大时,其需要测试的参数组合数量较大,计算量较大。 遗传算法可以在一定程度上减少参数确定中计算量的同时确保一定的全局寻优能力。故本报告我们主要介绍一下遗传算法在 CTA 策略中参数确定的应用。 此外,在上一篇报告中,我们的仓位管理方法中,假设可接受的单日最大回撤比例为一个常数,而在实际中,单日最大回撤比例或总体仓位,应该是随着行情的波动而改变的。我们测试了使用目标波动率法来进行总体仓位控制的方法。 遗传算法介绍 算法介绍和算法特定 遗传算法(Genetic Algorithm)是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法。它是由美国的 J.Holland 教授 1975 年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法, 能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。遗传算法的这些性质,已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。它是现代有关智能计算中的关键技术。 遗传算法主要元素 因为遗传算法主要是借鉴生物进化规律,故其算法中的基本概念多以生物学名词命名,遗传算法中涉及到的基本概念包括:编码、评价、配种、变异等等,其含义如下: 个体编码: 将问题的解空间编码映射到搜索空间的过程。常用的编码方式有二值 编码,浮点数编码,粒子编码等。 评价:设定一定的准则评价族群内每个个体的优秀程度,也称为适应度。配种选择:建立准则从父代中选择个体参与育种。 变异:变异过程包括一系列受到生物启发的操作,例如交叉,突变等。通过变异操作,父代的个体编码以一定方式继承和重新组合后,形成后代族群。 环境选择:将父代与子代重组成新的族群。这个过程中育种得到的后代被重新插入到父代种群中,部分或全体替换父代种群中的个体,形成新的族群,新族群的数量可与父代族群相同,也可不同。 停止准则:确定算法何时停止,通常有两种情况:算法目前找的最优解符合评价标准或种群更新次数达到了初始设定的最大更新次数。 遗传算法的基本运算流程 1、初始化:设置最大进化代数T,族群数量M,确定基因编码方式、长度、范围等,根据编码方式随机生成 M 个个体作为初始族群。 2、个体评价:根据解码后基因编码,确定适应度函数来计算族群中各个个体的适应度。 3、算法停止检查:检查族群中的所有个体评价是否有符合最优评价标准的个体, 若有则算法停止,或族群迭代次数达到最大值,则算法停止。 4、突变:针对父代族群中的个体,在一个概率条件下进行基因突变运算,包括交叉运算和变异运算两种,形成新的个体,并插入到父代族群中。 5,选择运算:从父代族群中根据环境选择条件确定新的族群,再重复步骤 2-步骤 5 的运算。 图 1:遗传算法流程简介 python 遗传算法工具包 DEAP 介绍 Python 下的遗传算法工具包有 GAFT、DEAP、Geatpy 等,我们选择使用 DEAP 包。使用 DEAP 包处理遗传算法优化的主要流程为: 确定问题类型,包括:确定要求解的问题个数,是单目标最优化问题还是多目标最优化,每个最优化目标是取最大值还是取最小值。 初始化,包括初始化基因编码位数、初始值等基本信息。 注册算子,向 DEAP 类中以(别名、函数)的方式注册在优化过程中的算子函数,包括交叉运算,变异运算,环境选择运算,评价函数等等。DEAP 自带了多种可能用到的各种交叉运算、变异运算、环境选择函数等。包括锦标赛选择、轮盘赌选择、随机抽样选择、两点交叉、均匀交叉、有序交叉、混合交叉、高斯突变、乱序突变、位翻转突变等等。 设计 main 函数,包括确定

您可能关注的文档

文档评论(0)

535600147 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6010104234000003

1亿VIP精品文档

相关文档