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-1.3.3-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8af685c1c81cb451cbafde52360843262f4a1d29e7e68f529928244133884974 |
|
MD5 | db4b853157cf95cf235ffab59224cb0b |
|
BLAKE2b-256 | 7011d96206f8568747abc5623702b16bdece075ae20161607884ab31459f5cd6 |
Hashes for hikyuu-1.3.3-cp312-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc9fd95fcf7a0ce9061e041a9b69aba7d88d4a594d05e7aacf66229b52a57bc7 |
|
MD5 | 08c25962f077495aec27da647b8cf077 |
|
BLAKE2b-256 | 04801920d3840efcb100595b050343d4a16e9c7b408fc34ff7ca89f1a1b59407 |
Hashes for hikyuu-1.3.3-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 53d305692d32cb718a21bc4cea5355110fd343389d99f80d7bca16ea62ae657a |
|
MD5 | ffe15abf2144dd40258b079d7cf725aa |
|
BLAKE2b-256 | 81c2ec89861361a54a83db48abddb2d7e91d75370e09ee5cca20f02976b01597 |
Hashes for hikyuu-1.3.3-cp311-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8cf1e8b751c02e9b2dc24fadd36f83c5fe69eacc1411a415d557ab7ddae604c |
|
MD5 | fd7e77431c584a0a87ffb7215c477910 |
|
BLAKE2b-256 | 577b6064f0845bbf00f5d3197d45da696e311268c7c9f983234de08bfa6a8994 |
Hashes for hikyuu-1.3.3-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 82e3da94fa5979dd876de00e4e324727d5cb16b77d1f653550bb1e89cbfcdbb2 |
|
MD5 | 6d981d9f24e0183d835270f2729a602d |
|
BLAKE2b-256 | 3b3bc94b6164c02a215154af03c4f91ae734f141a9451ac3e9d963c7c94900df |
Hashes for hikyuu-1.3.3-cp310-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | efa17c8b703085a25e7c51570884508b7c5ba9497909b9e6894168e08247e6b3 |
|
MD5 | 11c545ab730ebf1e3b9eb1d1456c85bf |
|
BLAKE2b-256 | e45791505151f231c78921a844eb8e32bfb33534d5f788b5f4ae2d270172c713 |
Hashes for hikyuu-1.3.3-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e38ca4f1988700deef1c77309d9844afb691e3272a82e66cba156b1bdbbf216 |
|
MD5 | 585b2df8c269fa07b187b89a9609a9b4 |
|
BLAKE2b-256 | b9ea13f95b8aced97f7e680876d0a161a01610e5bf90d10cfd317bb5ae55993c |
Hashes for hikyuu-1.3.3-cp39-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 189415e701cb627932fcfc5f7b651125236009fa68d4c46a07d3010de2babde0 |
|
MD5 | dc5d6c0e6f8b58ed70802cf43cc10e40 |
|
BLAKE2b-256 | 402ce577ce51af20e9b0f73d62edd09ad4ddc8e56126c9053dc3694f393b4e4d |
Hashes for hikyuu-1.3.3-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dbc072b17e3533c4551e9370b1178ecfc911754ccfb974a23e85b97e60415a4b |
|
MD5 | 13cf627f77ee6404f0a36124492ba306 |
|
BLAKE2b-256 | c1d223513c3648d0a6c7bc9b6a0a79dc0297a6593d1b69fefbaf302905e83d8a |
Hashes for hikyuu-1.3.3-cp38-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c6e69c175fe67833650e555e42a94929b3d292524f10a6b640a8d6b24a3bde0 |
|
MD5 | 8777ec89130ebc4569d2c48e4e23b9d7 |
|
BLAKE2b-256 | cba26e6d27a3b19e8be00becccf36f518579b706f9a608fc41b67ed48344dba5 |