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.5-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0862ba72f88d5402764aed2ec4f24449168f3a1920f56f2573213ecc635fbd72 |
|
MD5 | e091452c1a2ccf6046cd9f951c45286d |
|
BLAKE2b-256 | 974aee034599b9d48a7610b2bc2a6e88178937a2356fda71d8f017e0919614f6 |
Hashes for hikyuu-2.0.5-cp312-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 02dd2dff363055021c1f3a21db91c1c52d2e6e64723bd545d9a8bd84c5f0de04 |
|
MD5 | 21299bac98248dbbaae1cb2cad69609a |
|
BLAKE2b-256 | 74baa964532c96852e2f2961a0f8cddf5d12ca3dea83c3e17cd7bf5be315dba4 |
Hashes for hikyuu-2.0.5-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c02547ecd793b4fb7e53b72780a090eb2d92910f6a57f6c4818c2f3e3c4e18fa |
|
MD5 | c482a3d5d45d775edd0c871fe9ce4838 |
|
BLAKE2b-256 | b4e2a4a12b33b7fa50c1f76f84413a144baf241629bba28e5ce58adea4b9cfd8 |
Hashes for hikyuu-2.0.5-cp311-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49fda2f14fcb43522eaa5820b800174744e9a5ea608283f3240fb70430527d7d |
|
MD5 | 98b3e1e17de05bd902c15205c77a6f17 |
|
BLAKE2b-256 | e97a080b89ec6b28115c3d8aa012f210f57c3b07960fa936e315559f2014db9f |
Hashes for hikyuu-2.0.5-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4002650f3d0fbe82585efd704458205f3537066c4260b26969a8b1860628f11a |
|
MD5 | 3c493f8c596c72e7b295fc2e3be85b4f |
|
BLAKE2b-256 | fe08fc2faeb0272e87c154de7ed1f3f701e4573c3e38171289188c7d2422682a |
Hashes for hikyuu-2.0.5-cp310-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c4bb5d2fa118b8a4f63e0063af4ade4f7921f91d792bab8f1ac377095933e0e |
|
MD5 | 27847f6682fe6fc7f7c6de845ba1c194 |
|
BLAKE2b-256 | 4cc015aece87a2b314472d4aee5fd6cd232d0643fe3e76c47cf7a0c0cb6ee649 |
Hashes for hikyuu-2.0.5-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6b9c31110ccbd9b4aafbae011a1a166b47c715fe520d698ca29e2d31fe8de14 |
|
MD5 | f9f92f356dcc2b9a5bae8469c0671a55 |
|
BLAKE2b-256 | 1fe5dbe9a107986401ada84dce74a3e899823d3778de231fd0d943109986f563 |
Hashes for hikyuu-2.0.5-cp39-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ef208d7f4b92bf12ff00b025c2e512e2299e4f57493bc9b757326f5eb8ede1f4 |
|
MD5 | 030e83063cd0bc5f93d0dc2b8b4232f2 |
|
BLAKE2b-256 | ae66abea91214c161447980ce1400669626c4b35fe9faeccba36daa87f37b199 |
Hashes for hikyuu-2.0.5-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9456ff15a8457416f612b60ed06259b5580dd6eb3b725676e124261c67fc0fa3 |
|
MD5 | c523616ebea9655601bb7aebce821444 |
|
BLAKE2b-256 | ffa8ecd1b368567fd1b652d696ad1d7b15ea5aa0b177b49fa0ba8d7c6f39165f |
Hashes for hikyuu-2.0.5-cp38-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | af4c75b218138de9eb73a9f46f48bb4f125a1cdc91d5acc2e0025ca665cc754e |
|
MD5 | ea67d559da13cabb456fb83cd059c133 |
|
BLAKE2b-256 | e912b4ea874269b2af21067da7d376c77de051a2b5f92dc7ae7e523dacadbcf4 |