Hikyuu 1.3.0 发布,高性能量化交易研究框架

2023-11-09 07:12

本文主要是介绍Hikyuu 1.3.0 发布,高性能量化交易研究框架,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Hikyuu 是一款基于 C++/Python 的高性能开源量化交易研究框架,用于快速策略分析及回测。与其他量化平台或回测软件相比,具备:

  1. 超快的回测速度;
  2. 对完整的系统交易理念进行抽象,并分解为不同的组件,通过重用不同的方面策略,最大化的减轻编写策略的负担。

更多信息,参见项目主页: https://hikyuu.org 或 http://fasiondog.gitee.io/hikyuu

在 Hikyuu 1.3.0 版本中,我们进行了一系列重要的修复和功能增强,该版本更新如下:

1. 指标融合优化,复杂指标计算速度提升了 8~10 倍左右。

从网上找了一段通达信百变一阳指选股器,计算公式如下:
from hikyuu.interactive import *VAR1=LLV(L,13)
VAR2=HHV(H,13)
VAR3=SMA((C-VAR1)/(VAR2-VAR1)*100,5,1)
VAR4=SMA((VAR2-C)/(VAR2-VAR1)*100,5,1)
AA=VAR3
BB=VAR4
VAR5=SMA(MAX(C-REF(C,1),0),5,1)/SMA(ABS(C-REF(C,1)),5,1)*100
CC=EMA(VAR5,3)
XG = CROSS(CC,BB) & (CC>=REF(CC,1)) & (BB<=REF(BB,3)) & (CC>=49.5) & (MA(C,3)>=REF(MA(C,3),1)) & (MA(C,7)>=REF(MA(C,7),1)) & (MA(C,60)>REF(MA(C,60),3))%time select(XG)

1.2.9 版本计算耗时 10.5 秒 在这里插入图片描述
1.3.0 版本计算耗时 1.3 秒
在这里插入图片描述

2. 功能增强

  • hikyuu_hub 支持指标部件
  • TradeManager 引出买空 / 买空操作至 python
  • Stock 引出 get_index_range 方法至 python
  • 编译选项增加 stacktrace 选项,方便异常时打印 C++ 堆栈
  • 优化 TimerManager、线程池、数据驱动等基础设施
  • MySQL/SQLite 数据引擎支持绑定 datetime
  • 优化指标默认名称
  • 升级 flatbuffers 版本至 23.5.6
  • 优化 Stock 的相等比较
  • KQuery/KRecord/KData 相等 / 不等比较完善并引出至 python
  • 完善 Performance
  • 支持指标组合测试

3. 其他错误修复

  • 更新 SG 信号指示器系列方法,去除移除 OP 后的一些遗留问题
  • 修复 TradeList 转 np 时使用了已废弃的方法
  • 修复 SUM 存在访问越界的问题
  • 修复 IniParser 不支持 windows 中文路径的问题
  • 修复 RSI 存在 NaN 值时计算错误
  • 修复 Ubuntu 23.10 下编译失败的问题

这篇关于Hikyuu 1.3.0 发布,高性能量化交易研究框架的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

定价129元!支持双频 Wi-Fi 5的华为AX1路由器发布

《定价129元!支持双频Wi-Fi5的华为AX1路由器发布》华为上周推出了其最新的入门级Wi-Fi5路由器——华为路由AX1,建议零售价129元,这款路由器配置如何?详细请看下文介... 华为 Wi-Fi 5 路由 AX1 已正式开售,新品支持双频 1200 兆、配有四个千兆网口、提供可视化智能诊断功能,建

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ

五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布

《五大特性引领创新!深度操作系统deepin25Preview预览版发布》今日,深度操作系统正式推出deepin25Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Tr... 深度操作系统今日发布了 deepin 25 Preview,新版本囊括五大特性:磐石系统、全新 DDE、Tree

Linux Mint Xia 22.1重磅发布: 重要更新一览

《LinuxMintXia22.1重磅发布:重要更新一览》Beta版LinuxMint“Xia”22.1发布,新版本基于Ubuntu24.04,内核版本为Linux6.8,这... linux Mint 22.1「Xia」正式发布啦!这次更新带来了诸多优化和改进,进一步巩固了 Mint 在 Linux 桌面

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模

关于Java内存访问重排序的研究

《关于Java内存访问重排序的研究》文章主要介绍了重排序现象及其在多线程编程中的影响,包括内存可见性问题和Java内存模型中对重排序的规则... 目录什么是重排序重排序图解重排序实验as-if-serial语义内存访问重排序与内存可见性内存访问重排序与Java内存模型重排序示意表内存屏障内存屏障示意表Int

MyBatis框架实现一个简单的数据查询操作

《MyBatis框架实现一个简单的数据查询操作》本文介绍了MyBatis框架下进行数据查询操作的详细步骤,括创建实体类、编写SQL标签、配置Mapper、开启驼峰命名映射以及执行SQL语句等,感兴趣的... 基于在前面几章我们已经学习了对MyBATis进行环境配置,并利用SqlSessionFactory核

高效+灵活,万博智云全球发布AWS无代理跨云容灾方案!

摘要 近日,万博智云推出了基于AWS的无代理跨云容灾解决方案,并与拉丁美洲,中东,亚洲的合作伙伴面向全球开展了联合发布。这一方案以AWS应用环境为基础,将HyperBDR平台的高效、灵活和成本效益优势与无代理功能相结合,为全球企业带来实现了更便捷、经济的数据保护。 一、全球联合发布 9月2日,万博智云CEO Michael Wong在线上平台发布AWS无代理跨云容灾解决方案的阐述视频,介绍了