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.0-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13f64bbafb97cfe1b27bc29424abeb9cf949b731e697915286dc4159dbc8cbce |
|
MD5 | 18748a905c94f0b35ac8996eff61b17f |
|
BLAKE2b-256 | 43b312dc1ad74eeadfdc0c510676b1900ac294543261d59df775147fa30c2399 |
Hashes for hikyuu-2.0.0-cp312-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3ef2578eac9c22db6e87ae6d2a762083c27a9ef6b06420abeaf5727f4f79c96d |
|
MD5 | d3f564e4f0acc1e664642fdbf5adda7e |
|
BLAKE2b-256 | 8f5bf105b851f5dea6ab475c313e3faf312eeefc214d391f54c3033f6b7277d2 |
Hashes for hikyuu-2.0.0-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e697fe8cc84e24ed0145555e68367c0650235680ff435e57f6d785d873e23abe |
|
MD5 | f79badd2e7deb11819de5046629fa9af |
|
BLAKE2b-256 | 9b796dfb34c926e3ae93dd8591e765d35bdd11e3209d87f537163f297271008d |
Hashes for hikyuu-2.0.0-cp311-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a0d3063de225913ec7f0ceca86c687019b8a7365667e9770cca7c18da64ab0b |
|
MD5 | 680a3b9b1ba2ed13a76cf252cb3266f7 |
|
BLAKE2b-256 | 0784316b3ac33a3f1d7cb3905fac848152648fc73d6009f2976e48d77495b3ea |
Hashes for hikyuu-2.0.0-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 373f8f1969bdb63e70707723379fcf86ac74c6226db24403e70f453587691f7e |
|
MD5 | f92986487b1750c40899dbbfbcfdec97 |
|
BLAKE2b-256 | 18e7cbe0a651af61cc187f7e485042a9b81f7bccb63faac52132a3acb70b8d89 |
Hashes for hikyuu-2.0.0-cp310-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e0187433907a17f81146f3eff11e730de6e11176bc5effd9eff5bab1a92e7ae |
|
MD5 | b9ebb0a4fa2a7afd9d9d669c5ae214a9 |
|
BLAKE2b-256 | 6789448ba3214c4fcecd163f87eb510c968969129f8f08d6dcf394112b0f676e |
Hashes for hikyuu-2.0.0-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 614ac7f91063265aac843a1eb2279f5f31d3445f63e0d2e7503db4e92c4fc1a3 |
|
MD5 | 2750a97af4c82e3ced4d5ff974f6a8ac |
|
BLAKE2b-256 | 9e79f2dc7a15d5b763c59a7b378f6fcd294cc64b5cfdc3dfdfb7637408a39da9 |
Hashes for hikyuu-2.0.0-cp39-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad015a685e19de5bed510c499d80d113f4573c85c6a5af3ad929b8a1e21b5e12 |
|
MD5 | 23984b274006a59e34c1fe84b1c052ce |
|
BLAKE2b-256 | 276c3bcdf5083abf81e6fef2c78bac251f770b3b09c6c3b713b6003b01886f46 |
Hashes for hikyuu-2.0.0-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9f2c13a06b4847cc5f3d8668b5e250b808edb187b909245b62f447826ce8ac1 |
|
MD5 | d9197442ce9bce01b9ffe3daf5b95d6f |
|
BLAKE2b-256 | ee080c06d2603a036af3b67ffd17aa592888d9b1865da809f299e9e9101e33f3 |
Hashes for hikyuu-2.0.0-cp38-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c749a3908df9c47e20c77a30a1262353998671ed9fe304d3e65183ccab0c52b4 |
|
MD5 | e23c0e4f578e51423a52d7029b224f30 |
|
BLAKE2b-256 | 926713e1e7a1ca572faefce1a893768f93cb3ef51bea632a801585ca26d66e6c |