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

相关文章

关于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无代理跨云容灾解决方案的阐述视频,介绍了

usaco 1.3 Prime Cryptarithm(简单哈希表暴搜剪枝)

思路: 1. 用一个 hash[ ] 数组存放输入的数字,令 hash[ tmp ]=1 。 2. 一个自定义函数 check( ) ,检查各位是否为输入的数字。 3. 暴搜。第一行数从 100到999,第二行数从 10到99。 4. 剪枝。 代码: /*ID: who jayLANG: C++TASK: crypt1*/#include<stdio.h>bool h

usaco 1.3 Calf Flac(暴搜)

思路是暴搜。 需要注意的地方是输入的方法,以及输出时的换行。 代码: /*ID: who jayLANG: C++TASK: calfflac*/#include<stdio.h>#include<string.h>#include<math.h>int main(){freopen("calfflac.in","r",stdin);freopen("calfflac.ou

usaco 1.3 Barn Repair(贪心)

思路:用上M块木板时有 M-1 个间隙。目标是让总间隙最大。将相邻两个有牛的牛棚之间间隔的牛棚数排序,选取最大的M-1个作为间隙,其余地方用木板盖住。 做法: 1.若,板(M) 的数目大于或等于 牛棚中有牛的数目(C),则 目测 给每个牛牛发一个板就为最小的需求~ 2.否则,先对 牛牛们的门牌号排序,然后 用一个数组 blank[ ] 记录两门牌号之间的距离,然后 用数组 an

usaco 1.3 Mixing Milk (结构体排序 qsort) and hdu 2020(sort)

到了这题学会了结构体排序 于是回去修改了 1.2 milking cows 的算法~ 结构体排序核心: 1.结构体定义 struct Milk{int price;int milks;}milk[5000]; 2.自定义的比较函数,若返回值为正,qsort 函数判定a>b ;为负,a<b;为0,a==b; int milkcmp(const void *va,c

MySQL高性能优化规范

前言:      笔者最近上班途中突然想丰富下自己的数据库优化技能。于是在查阅了多篇文章后,总结出了这篇! 数据库命令规范 所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来) 数据库对象的命名要能做到见名识意,并且最后不要超过32个字符 临时库表必须以tmp_为前缀并以日期为后缀,备份

cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个?

跨平台系列 cross-plateform 跨平台应用程序-01-概览 cross-plateform 跨平台应用程序-02-有哪些主流技术栈? cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个? cross-plateform 跨平台应用程序-04-React Native 介绍 cross-plateform 跨平台应用程序-05-Flutte

Vue3项目开发——新闻发布管理系统(六)

文章目录 八、首页设计开发1、页面设计2、登录访问拦截实现3、用户基本信息显示①封装用户基本信息获取接口②用户基本信息存储③用户基本信息调用④用户基本信息动态渲染 4、退出功能实现①注册点击事件②添加退出功能③数据清理 5、代码下载 八、首页设计开发 登录成功后,系统就进入了首页。接下来,也就进行首页的开发了。 1、页面设计 系统页面主要分为三部分,左侧为系统的菜单栏,右侧