Hikyuu Quant Framework for System Trading Analysis and backtester
Project description
Hikyuu Quant Framework是一款基于C++/Python的开源量化交易研究框架,用于策略分析及回测(仅受限于数据,如有数据也可用于期货等)。其核心思想基于当前成熟的系统化交易方法,将整个系统化交易抽象为由市场环境判断策略、系统有效条件、信号指示器、止损/止盈策略、资金管理策略、盈利目标策略、移滑价差算法七大组件,你可以分别构建这些组件的策略资产库,在实际研究中对它们自由组合来观察系统的有效性、稳定性以及单一种类策略的效果。
祝贺 HIKYUU 入选 GITEE 最有价值开源项目 GVP
给作者加点油,每天扫扫红包,或者请作者喝杯咖啡
示例:
#创建模拟交易账户进行回测,初始资金30万 my_tm = crtTM(init_cash = 300000) #创建信号指示器(以5日EMA为快线,5日EMA自身的10日EMA作为慢线,快线向上穿越慢线时买入,反之卖出) my_sg = SG_Flex(EMA(CLOSE(), n=5), slow_n=10) #固定每次买入1000股 my_mm = MM_FixedCount(1000) #创建交易系统并运行 sys = SYS_Simple(tm = my_tm, sg = my_sg, mm = my_mm) sys.run(sm['sz000001'], Query(-150))
为什么选择 Hikyuu?
组合灵活,分类构建策略资产库 Hikyuu对系统化交易方法进行了良好的抽象,包含了九大策略组件:市场环境判断策略、系统有效条件、信号指示器、止损/止盈策略、资金管理策略、盈利目标策略、移滑价差算法、交易对象选择策略、资金分配策略。可以在此基础上构建自己的策略库,并进行灵活的组合和测试。在进行策略探索时,可以更加专注于某一方面的策略性能与影响。其主要功能模块如下:
性能保障,打造自己的专属应用 目前项目包含了3个主要组成部分:基于C++的核心库、对C++进行包装的Python库(hikyuu)、基于Python的交互式工具。
C++核心库,提供了整体的策略框架,在保证性能的同时,已经考虑了对多线程和多核处理的支持,在未来追求更高运算速度提供便利。C++核心库,可以单独剥离使用,自行构建自己的客户端工具。
Python库(hikyuu),提供了对C++库的包装,同时集成了talib库(如TA_SMA,对应talib.SMA),可以与numpy、pandas数据结构进行互相转换,为使用其他成熟的python数据分析工具提供了便利。
hikyuu.interactive 交互式探索工具,提供了K线、指标、系统信号等的基本绘图功能,用于对量化策略的探索和回测。
代码简洁,探索更便捷、自由 同时支持面向对象和命令行编程范式。其中,命令行在进行策略探索时,代码简洁、探索更便捷、自由。
安全、自由、隐私,搭建自己的专属云量化平台 结合 Python + Jupyter 的强大能力与云服务器,可以搭建自己专属的云量化平台。将Jupyter部署在云服务器上,随时随地的访问自己的云平台,即刻实现自己新的想法,如下图所示通过手机访问自己的云平台。结合Python强大成熟的数据分析、人工智能工具(如 numpy、scipy、pandas、TensorFlow)搭建更强大的人工智能平台。
数据存储方式可扩展 目前支持本地HDF5格式、MySQL存储。默认使用HDF5,数据文件体积小、速度更快、备份更便利。截止至2017年4月21日,沪市日线数据文件149M、深市日线数据文件184M、5分钟线数据各不到2G。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for hikyuu-2.0.6-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f58f94cb247b64286849ad9263111e14e46e765543167896774e64468254cd5 |
|
MD5 | 71361430d24eeefa3d75d094555858f5 |
|
BLAKE2b-256 | 7efe4a758669f8ba2bd0c0c7501bcbec1055adc95477ca3eb1cd59493e93ecdc |
Hashes for hikyuu-2.0.6-cp312-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bba652bb0acd637ce0c7dc19fcdfdcd64e274cab8cf25f544b7ed01c03436ee7 |
|
MD5 | 49af3ab8799088876b7311bd89a9b783 |
|
BLAKE2b-256 | 4afebd1a4a04de0e6a82d7f8929802408d31372332c4f0db24440e2767a6c1fb |
Hashes for hikyuu-2.0.6-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9ee5084b38b42c938895e55a837d21c0069e2adc2535b686fa0d387dd1f7a9da |
|
MD5 | 5a331c2097aff1c383932f3a2d6ff9ed |
|
BLAKE2b-256 | 9fd0cbc60051d4984c8f936748a88854c8851880c49f8a11d96f16a84fb533a6 |
Hashes for hikyuu-2.0.6-cp311-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ce40fbb59332d06908c73c6a687518d3451f2a27e61ee22b271214b13fc367d |
|
MD5 | 5de740c236e9054c299e28e04357d829 |
|
BLAKE2b-256 | 3afb9f1a8672025c0c0b9d97684619f3535ded7dd88c4b96785c797bf3ffff89 |
Hashes for hikyuu-2.0.6-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa8bdd0149e20ff051c08ef36d554064aaa6c5fc8e291222558d02691d47aab5 |
|
MD5 | 55065bd85e7891fa54382fdbaad893a0 |
|
BLAKE2b-256 | 252848d84f8ddd0c1d815c159b2c8d4d1545f0abf3a30d252f76f2d6a7a6e303 |
Hashes for hikyuu-2.0.6-cp310-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bfe2a9692317ad1354d58f59d192bd6bcad4d96eee36be33e9a1d392dba2f64c |
|
MD5 | 54e5858d497a6e10dd6abf2b405e93ac |
|
BLAKE2b-256 | 94d61294a23f0c7fc008991fc7ce6ca8d36fa5b9cf221e722b2b07f26f891941 |
Hashes for hikyuu-2.0.6-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a858be163133be55f5fa30a4c9a5577c2aab8b2d3ae523c18e66c4a2fd02c8c |
|
MD5 | 9a136b006110522b1962f197bf86add4 |
|
BLAKE2b-256 | 5fbf117493487bdc17d2ca75e3599838d024c3766d628428be8c56fa309ff6d9 |
Hashes for hikyuu-2.0.6-cp39-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b0fb0b6f0bc8532b9645ec519d474fa04713bed490392db2af16501c4cd61a3f |
|
MD5 | fabaf01f63e3ae9fd2d824051e4de4e5 |
|
BLAKE2b-256 | 2e83e7b9d9bbe9970e397dd10c14805c57b0e8c86df0780529e4b52b4f9355b3 |
Hashes for hikyuu-2.0.6-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 769886074738a2c64460f53145ec1c03968a23e9f70249d147c96bd9c02c7ff8 |
|
MD5 | 06a9596c8f9ca4b439750bc4d26ab1f7 |
|
BLAKE2b-256 | 70f8d89089f488a662ae9b2a42a344b9772643605c3273646442c6cc20716a7d |
Hashes for hikyuu-2.0.6-cp38-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eccd000e83b09d9d3dc2ac29c3409a7ac21371b46f1788312438e497a1c419a2 |
|
MD5 | c7364738471fed3e2d0fe897bc54107c |
|
BLAKE2b-256 | df39388a606105efba0bdcb14d19bfd0198d3c10e0bba2bf46d3f5f071cf6d8e |