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(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.9-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a257dbdae1eb3645031ec176f8f276f5f5773ee329ba1176736b2c62b338f3aa |
|
MD5 | 1d80b78b4a125758e4580f4d854e607e |
|
BLAKE2b-256 | bcf5e9c72633fdcd974c264009f05788e4a8c6b2a44c521c8b93823ff1fcb28a |
Hashes for hikyuu-1.2.9-cp311-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c6ec5c987bbe431e035c1e5a19d48d29f91a79732d6310825b080dc82c26d87e |
|
MD5 | 6e460d0440148a625787d29cf5fe9ec4 |
|
BLAKE2b-256 | e997cb24e3bd621f468d9eb1b6be325ae7a45da4a10b99ed504fa53c25a40547 |
Hashes for hikyuu-1.2.9-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5b8279147b392fee591b8146f7391403e47a0823f9b7d976e5991e5a02c46a4 |
|
MD5 | 244b288c5f346c8a91bb3c10bf057d4e |
|
BLAKE2b-256 | 519fe78fbff9be92709eb025889ef8464a4d63add92da6b8bfae109778ac583a |
Hashes for hikyuu-1.2.9-cp310-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4fe26d43f3e740ca3de6ebf63bbd54124d49fe6df2beae33304476ad5a9f1b4c |
|
MD5 | 74d0fdc9f5a336f7b88dd0db6026ac8e |
|
BLAKE2b-256 | f34152fbbffac344cfff5581516ccb8e0ea38cf3118107e7c25729159b94b3f4 |
Hashes for hikyuu-1.2.9-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7aab1bb817f8703352365d67e3d3542aaba106837419da5e7763239a4a2f31b |
|
MD5 | f04d56cadce380a8a3d5a47929c38ee4 |
|
BLAKE2b-256 | 3809e0e3664670381f61a1f925a1117cd452445f9e4bada67be18fc6f61ab7f7 |
Hashes for hikyuu-1.2.9-cp39-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9af026b52776e388e93765b74fb39ade18bd8a3fc642939154c92c6019afaffb |
|
MD5 | 1b53fc0bf6ca1a85da33ca390922a541 |
|
BLAKE2b-256 | 0a76418ef03ec3840c7f5d08b2682b8f976c9c9ebed2456b68d787323e9ce1e3 |
Hashes for hikyuu-1.2.9-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8bd501ad93ec2ce0052175944f27dc1eef95ff8604d79152d7a5dc522933273 |
|
MD5 | e72ef9d7224dd5c617f256a7c4ec2fa0 |
|
BLAKE2b-256 | a21e5577cb971dad47b7b8a5e395ac4fcec1e17f0cafc711e715b8e456f07cc6 |
Hashes for hikyuu-1.2.9-cp38-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3141f8cb7ec693cb78887a8d2df8ac2657ea52bf9ebf6ca057f6feed299a8e1b |
|
MD5 | a23723688ff6d43c784051d38517f2be |
|
BLAKE2b-256 | 08c6f8c8d12a7592e30a13bd7a9da61745eba69693a160ff30f61d9efb79a0aa |
Hashes for hikyuu-1.2.9-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b95a9625be3c7840b610b573113df3138a2059c975ab32d4769df18d04717308 |
|
MD5 | 3c5befdc2cb0d80ceb4f01c16ba83c98 |
|
BLAKE2b-256 | 791cc0195389ad864008d78418e3d8b7aab24e4240c7dd09bb5f706b0d0ca8d5 |
Hashes for hikyuu-1.2.9-cp37-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 80762a269371175659f30562a6b8083ed6fd2998081adac1ac7cdc39bfccb364 |
|
MD5 | d9a639f766b3dbb5a32b31dbb5bdd6ad |
|
BLAKE2b-256 | 8e067db75d42826b41821099c92f7b5e3682ddb3d492ddc18bc2e12db48ea8b0 |