Hikyuu Quant Framework for System Trading Analysis and backtester
Project description
Hikyuu Quant Framework是一款基于C++/Python的开源量化交易研究框架,用于策略分析及回测(仅受限于数据,如有数据也可用于期货等)。其核心思想基于当前成熟的系统化交易方法,将整个系统化交易抽象为由市场环境判断策略、系统有效条件、信号指示器、止损/止盈策略、资金管理策略、盈利目标策略、移滑价差算法七大组件,你可以分别构建这些组件的策略资产库,在实际研究中对它们自由组合来观察系统的有效性、稳定性以及单一种类策略的效果。
详细文档: https://hikyuu.org/
如果上述网站无法访问,请戳这里: http://fasiondog.gitee.io/hikyuu/
祝贺 HIKYUU 入选 GITEE 最有价值开源项目 GVP
给作者加点油,每天扫扫红包,或者请作者喝杯咖啡
示例:
#创建模拟交易账户进行回测,初始资金30万 my_tm = crtTM(init_cash = 300000) #创建信号指示器(以5日EMA为快线,5日EMA自身的10日EMA作为慢线,快线向上穿越慢线时买入,反之卖出) my_sg = SG_Flex(OP(EMA(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-1.2.8-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 712260439c43517bba7fe9dba07e0ddb908abf661306f1e53815d2719afe6f96 |
|
MD5 | 363953bbd46843a9bfb4a2c834727925 |
|
BLAKE2b-256 | 468df6c2a7bfdea3cc156ddd67ee2fbc2b6560070352e920c2a31176d1835ce8 |
Hashes for hikyuu-1.2.8-cp311-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 61510a4e370166c2e0b8ed744ad916269f88742199d1fa1b5f09199cf8be664e |
|
MD5 | 328141f5da38b3433f537f4609258993 |
|
BLAKE2b-256 | 0d67bdcb12593fa070388822432e92ec5501f55499543ccd1f477ace0e7009c2 |
Hashes for hikyuu-1.2.8-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a137d8f1812473b5d00de432043ab848bae3df8ecc5eb694b81236d0a31d1a37 |
|
MD5 | c8f59248febcb3c323681e8a7e581b3b |
|
BLAKE2b-256 | a3b3544d5022f6dd918a1068f746157e85121c0130da82dd57be71dd928daece |
Hashes for hikyuu-1.2.8-cp310-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbc386fb906256c9840782633c471866ebdd3d943af23c808e355e52c3299754 |
|
MD5 | 8451c0525d11a3b60005efd00e80df31 |
|
BLAKE2b-256 | 0700a2fa5088491585d8c5813895905b96d47cd1ee698023e7b2e2391eef87fa |
Hashes for hikyuu-1.2.8-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3d47bea48d181c7a73bf4f9b44d93a9b9d175ad50c20da755383e95143047c7f |
|
MD5 | 73a2bfe8a78418c162cb3a1cf60e1f3f |
|
BLAKE2b-256 | defa6a8323fd7ce7086e9fb3f87d60b9608318b6f3919ff0d08516de1a90c743 |
Hashes for hikyuu-1.2.8-cp39-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eacec85bff1a9c07fed15044d76d2290c3d2814cc33d738c3ec1eb7191be32e5 |
|
MD5 | 257e33e61966e9c58924f2515de53454 |
|
BLAKE2b-256 | c94924857c0d9f05be020da7dce9636d958942c438ed96b0b62505361ea5bf40 |
Hashes for hikyuu-1.2.8-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 09c191569e51e68d6270209307a1a87aef58515068f01ba8b073df3f8ff566a4 |
|
MD5 | 293115873db54e0a5e3b795ae7beb031 |
|
BLAKE2b-256 | c3149dacf6a04b9f59fed4bd794b6ae76c043c91d8ac1d0df720dbedfc165ec3 |
Hashes for hikyuu-1.2.8-cp38-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 94e9f2d0019f7385cda5b1b22be36d9a1f3ede84d0a1221f63ab352d807aec6f |
|
MD5 | a3da87549d4cb276d9864bf9660c0d9b |
|
BLAKE2b-256 | 6a67ec290e2cc94a16e0f9613cad4e5b00462c81fb9b82c70629aaecc3764321 |
Hashes for hikyuu-1.2.8-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c80daf77a6ec969b04cc8d72745121ae0056aa37f112767686742dd74cee8766 |
|
MD5 | 2f4c7e4743f452c823731938d95d43e7 |
|
BLAKE2b-256 | fd9b0923ad4374e2b2dd353282922566d19fa53edbf2c060f365b372b782bd5b |
Hashes for hikyuu-1.2.8-cp37-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d34b9b1ee58501fe1c17f17cc5719e292be4840d3936179180dcacf299f4438a |
|
MD5 | 87cda17547d86351f14830a9e6fcf64f |
|
BLAKE2b-256 | 3ff5d0cfe14ef5922a59bc82df3d49f5852be59851853cc246790338882f75f2 |