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.5-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a481e748bb3a08d5fe49fd97f791dfe62e6550a439d877837613b38660417af |
|
MD5 | c8298d74bfcdac5249c30cb43c102625 |
|
BLAKE2b-256 | de680bfca65baf2bd5a246be00bb848e1b7e6a27a9435b25b5802beca214c336 |
Hashes for hikyuu-1.3.5-cp312-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81da5ea87dd5102441b2336ba7e440b414d88306b632edc9aecea83fa2d4beea |
|
MD5 | 06e05ec914d53eb15ebbaa20f982e48e |
|
BLAKE2b-256 | dd83b1dcaa7c12ac2a8dcaae24c755b0657ebfc2fe435836ee842f507fe3fce4 |
Hashes for hikyuu-1.3.5-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25a6266453accb0cb1118569a26d4b742dc28827deac7e4ec2f1a2e2d19f280c |
|
MD5 | af5e7d55e5bac502bcab4ffa47f0985d |
|
BLAKE2b-256 | 990932890c0318fbbe25e539db28d1f1bdb408f87a640fccc8ac8086036178cc |
Hashes for hikyuu-1.3.5-cp311-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ac1082770260611663d9893cec58e1af1b7461d8b4cd6bfb8487162f99860e8 |
|
MD5 | c5181a763b18401450e12a6d5d009ba0 |
|
BLAKE2b-256 | 35fbdc8271b1c4039268ec2f833a7f611d7dd71a4b1f62e49870bb648eebe873 |
Hashes for hikyuu-1.3.5-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd41f2e8a4fcfc5fa8202cd4c8903d8a1a03441777fb8b695360d420c4db15f6 |
|
MD5 | 209d4a028c000007179fe7b148fa0746 |
|
BLAKE2b-256 | f5d2d0a3096866f96e8aca04858b69bb05308a8b99d961ed53c6199d2300dc22 |
Hashes for hikyuu-1.3.5-cp310-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8e3d82f528dfc68f99bdebbe204c45417bbc63da1ee18dece43ff4881ab442e |
|
MD5 | 802b1682be8566ad014c0d568f88467f |
|
BLAKE2b-256 | b2a2e88f9083d68d0d2325f6656befc44807a7e05da3d0b6761cce98e2c47844 |
Hashes for hikyuu-1.3.5-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b20845caf05da8eb4e758259c69db45e2fca82c3b6469ff830fa1f4d19c77b61 |
|
MD5 | 329466d1289f6851bbcb92f975d5840b |
|
BLAKE2b-256 | bc75db36727b986c2a105b307470f4d849bf67cf7db669d83cc58d6a5e8225e0 |
Hashes for hikyuu-1.3.5-cp39-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 47d97614300382b1c2398d86ba2ce96fdf79fdde181d3b55ceecc04b44a5979e |
|
MD5 | 74a1fb99859c54b5f1f0d0739b42e140 |
|
BLAKE2b-256 | cf759446a13045c05200d02691df84f1302d0286009a019367674c226d7a8265 |
Hashes for hikyuu-1.3.5-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a498c64ea7dc5e1bcf08436b58f7fbe0d488cc746395b698e3fd7aa4598cc64 |
|
MD5 | 5512e550da504c2de520b23849716e25 |
|
BLAKE2b-256 | 53d2d1b02ac2fdde5fd875ea2ffbb8e824a39bc765ed3deaad1c707477673264 |
Hashes for hikyuu-1.3.5-cp38-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcbba62f5b691c2197f99aa386c22bc306e8d4d6b7eb7a9672f2b400a0c4f579 |
|
MD5 | d8a2945fc5aee7909ba5588a151ea4e9 |
|
BLAKE2b-256 | 2965f44e8d840adac1b6b17b0f25bdb5b6a1619eda8b21572b42cea49ccc8bd2 |