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.7-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1dc237023b36ff5a22899f007073327283ab397b87c29bac4252ef9bf2d194a8 |
|
MD5 | a716eb03fc6f42159fbb11a3cabf6a8a |
|
BLAKE2b-256 | 7bff3cbbce161095577dc5eb123bb1c22ae34c5fdb61a28110dbdbcdaf57c0e4 |
Hashes for hikyuu-1.2.7-cp310-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5b989a92426fc88fa5cd0a5699cc4df2a96643a94f52dac2aea5a85940eb0177 |
|
MD5 | 9012e16c2e1961fb286899f96667d64f |
|
BLAKE2b-256 | c9e2789aa2f86755ae03c5222aadd4ca13e1e8fec3342e303ab9806302c80834 |
Hashes for hikyuu-1.2.7-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea958525a2f019ed63ca85cc4e66413200de5344e27b6c55029225dfdaa3d387 |
|
MD5 | 4960f6215eb5513f401baea06de00b0a |
|
BLAKE2b-256 | ae979929ca0db08e9271c9ef3bf08c5b9f45c2cca16791eaba38d9035edea6c6 |
Hashes for hikyuu-1.2.7-cp39-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 91b0fe9ecab06d4a04311ee374961be6bc0a8eaa78632700848f8a16389f8cf3 |
|
MD5 | 0c80f4063b8fe27dbbee8e4a418d3a6e |
|
BLAKE2b-256 | ab45893a160123a8a5e0a684156f7af977b3be6afabe1e2354cdc3c44f179750 |
Hashes for hikyuu-1.2.7-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 12631054bfb489d967957e739e407b1a33c78cad8397e12653f85dbe8bd200fc |
|
MD5 | 40a1d2e92265c1e8e59b805e4a54d6bf |
|
BLAKE2b-256 | 50909d6d1941a23ea1b284d2c2027f5473d45bcebdbccc75dbfcd2004eade562 |
Hashes for hikyuu-1.2.7-cp38-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e752b58decc59e16b3ce417dafe6a53d5f59371ccd5cd2b20a4208315f7fa192 |
|
MD5 | a3033842b66d19ba0ba23dd4c1a60ab3 |
|
BLAKE2b-256 | 7abe4747e71a2ae98374230d9d6547bdb3aa233fd531eef260af0eef07836305 |
Hashes for hikyuu-1.2.7-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7015ac84b5fc3134d86857278a3c4379d214cd0a8251eac8a64204340582ebe0 |
|
MD5 | 38fa3cb79b9f8dcbda7f7e020fee2fb4 |
|
BLAKE2b-256 | dd09144fb5134689c98349454f53c698c9cc61f1be34778f49ee1860a989441e |
Hashes for hikyuu-1.2.7-cp37-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 825650182b301dd0856e019f2d6e0a3abf623d5feb50816e89dfadb1f3604aba |
|
MD5 | b4494fe483f1171326a612cd5925ccac |
|
BLAKE2b-256 | 8239bb6e4cf64835fe1e867095cc0083685365c876e830a46031f02383dace3d |
Hashes for hikyuu-1.2.7-cp36-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5b85165b0f37126fb18d96051678472cd2b62d055c44988323a62a7578306a33 |
|
MD5 | e31bcbffc0ef2a2fc085079f8b39dcdf |
|
BLAKE2b-256 | 38840b2dde04dd7f588bbba96071b5d8703e61a86dcd011d723a5591350b4889 |
Hashes for hikyuu-1.2.7-cp36-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 322b9a568f986ecd8883186ba45a409fca8a929a7c09e64194c82fefa87769a2 |
|
MD5 | 7962de56fa475109d322985d73537cf4 |
|
BLAKE2b-256 | c7d7b4024d3ccbb2a5ad5fbf9888eebf126369c01fdbff81fb88595813326073 |