读书笔记:基于遗传算法的量化投资策略的优化与决策

2024-06-21 00:18

本文主要是介绍读书笔记:基于遗传算法的量化投资策略的优化与决策,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

遗传算法是建立在达尔文生物进化论的自然选择和遗传学机理基础上的自适应搜索算法,最初由美国Michigan大学的J.Hollan教授于于1975年提出,遗传算法模拟了自然选择和和遗传中发生的复制、交叉和变异等现象,即从任意初始种群出发,通过随机选择、交叉和变异操作,产生一群更适应环境的个体,是群体进化到搜索空间中越来越好的区域,这样一代代地不断繁衍进化,最后收敛到一群最适应环境的个体,进而得到问题的最优解。


遗传算法提供了一种求解分线性、多模型、多目标等复杂系统优化问题的通用框架,它具有并行搜索,群体寻优的特点,是解决大规模优化问题的有力工具。


算法部分:

三个规定:1)开仓+平仓策略;2)开仓和平仓至少一个;3)不允许加仓。


遗传变异过程为:

1)配对

2)遗传

3)变异:参数巨变,策略互换,策略突变


适应度函数

夏普业绩指数法,特雷诺业绩指数法,詹森业绩指数法


种群添加、繁衍和进化


实证分析

采用单参数的趋势追踪策略(Trend Following)和多参数的均值回复策略(Mean Reversion)


实证的其他条件

1)不持仓过夜

2)期货成交价格,买时以卖盘一档成交,卖时以买盘一档作为成交价

3)考虑交易费用


验证策略的延续性或稳定性,统计前五个交易日业绩排名于前5%的交易策略接下来交易排名情况。

前期表现好的会延续原来的表现,时间越近延续性越强。这种动态选用最优策略方法最终获利为266.09万元,最大下跌幅度16.37%。


金融实证研究经常面临“数据挖掘”的质疑,即针对样本数据进行了过度优化,导致其结果过分依赖于样本数据而不具有通用性。


本文最优策略的选择权仅与适应度函数的上一评价周期的样本相关,并不对该评价周期进行优化,实际上只需该数值处在一个合理的范围即可。


待改进之处:

1)适应度函数仅针对交易员上一时间周期的业绩,而没有考虑其累计业绩。

2)统一适应度尺度下,如果某种策略长期表现不好可能会灭绝,使剩余种群面对复杂市场余地受限。

3)产生新种群的策略组合方法可以进一步优化。

这篇关于读书笔记:基于遗传算法的量化投资策略的优化与决策的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Deepseek使用指南与提问优化策略方式

《Deepseek使用指南与提问优化策略方式》本文介绍了DeepSeek语义搜索引擎的核心功能、集成方法及优化提问策略,通过自然语言处理和机器学习提供精准搜索结果,适用于智能客服、知识库检索等领域... 目录序言1. DeepSeek 概述2. DeepSeek 的集成与使用2.1 DeepSeek API

Redis的数据过期策略和数据淘汰策略

《Redis的数据过期策略和数据淘汰策略》本文主要介绍了Redis的数据过期策略和数据淘汰策略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录一、数据过期策略1、惰性删除2、定期删除二、数据淘汰策略1、数据淘汰策略概念2、8种数据淘汰策略

Tomcat高效部署与性能优化方式

《Tomcat高效部署与性能优化方式》本文介绍了如何高效部署Tomcat并进行性能优化,以确保Web应用的稳定运行和高效响应,高效部署包括环境准备、安装Tomcat、配置Tomcat、部署应用和启动T... 目录Tomcat高效部署与性能优化一、引言二、Tomcat高效部署三、Tomcat性能优化总结Tom

SpringBoot中的404错误:原因、影响及解决策略

《SpringBoot中的404错误:原因、影响及解决策略》本文详细介绍了SpringBoot中404错误的出现原因、影响以及处理策略,404错误常见于URL路径错误、控制器配置问题、静态资源配置错误... 目录Spring Boot中的404错误:原因、影响及处理策略404错误的出现原因1. URL路径错

解读Redis秒杀优化方案(阻塞队列+基于Stream流的消息队列)

《解读Redis秒杀优化方案(阻塞队列+基于Stream流的消息队列)》该文章介绍了使用Redis的阻塞队列和Stream流的消息队列来优化秒杀系统的方案,通过将秒杀流程拆分为两条流水线,使用Redi... 目录Redis秒杀优化方案(阻塞队列+Stream流的消息队列)什么是消息队列?消费者组的工作方式每

Redis多种内存淘汰策略及配置技巧分享

《Redis多种内存淘汰策略及配置技巧分享》本文介绍了Redis内存满时的淘汰机制,包括内存淘汰机制的概念,Redis提供的8种淘汰策略(如noeviction、volatile-lru等)及其适用场... 目录前言一、什么是 Redis 的内存淘汰机制?二、Redis 内存淘汰策略1. pythonnoe

Oracle查询优化之高效实现仅查询前10条记录的方法与实践

《Oracle查询优化之高效实现仅查询前10条记录的方法与实践》:本文主要介绍Oracle查询优化之高效实现仅查询前10条记录的相关资料,包括使用ROWNUM、ROW_NUMBER()函数、FET... 目录1. 使用 ROWNUM 查询2. 使用 ROW_NUMBER() 函数3. 使用 FETCH FI

C#使用HttpClient进行Post请求出现超时问题的解决及优化

《C#使用HttpClient进行Post请求出现超时问题的解决及优化》最近我的控制台程序发现有时候总是出现请求超时等问题,通常好几分钟最多只有3-4个请求,在使用apipost发现并发10个5分钟也... 目录优化结论单例HttpClient连接池耗尽和并发并发异步最终优化后优化结论我直接上优化结论吧,

Java内存泄漏问题的排查、优化与最佳实践

《Java内存泄漏问题的排查、优化与最佳实践》在Java开发中,内存泄漏是一个常见且令人头疼的问题,内存泄漏指的是程序在运行过程中,已经不再使用的对象没有被及时释放,从而导致内存占用不断增加,最终... 目录引言1. 什么是内存泄漏?常见的内存泄漏情况2. 如何排查 Java 中的内存泄漏?2.1 使用 J

Python 中 requests 与 aiohttp 在实际项目中的选择策略详解

《Python中requests与aiohttp在实际项目中的选择策略详解》本文主要介绍了Python爬虫开发中常用的两个库requests和aiohttp的使用方法及其区别,通过实际项目案... 目录一、requests 库二、aiohttp 库三、requests 和 aiohttp 的比较四、requ