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.4-cp312-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ef5936dee1570ed86e3b44d1d6b192ffa92a80a72c3c923aa3f79fe9011ea60 |
|
MD5 | bf33b917c967e487ec0794f716066088 |
|
BLAKE2b-256 | 3a8c55f9133c4a444eabd73037d3c144d8633383b47b682d5fad7d58af1858c2 |
Hashes for hikyuu-2.0.4-cp312-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 958910db88dd24246a73ecdf7492f238ac042f362618e259e7c642b87ec247fa |
|
MD5 | 386d7f3f8e2c408a4c4b350bb4980ffa |
|
BLAKE2b-256 | c2525745b43be7796b886c85bd60db386cdea7000f37c148c4cb5f58a2174b81 |
Hashes for hikyuu-2.0.4-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9819e9d237c99d07200ec186e9c01f10aa9e143ae8d4895ab37c9a77c8638a84 |
|
MD5 | b57e45a18b306395173bd4143f6f21af |
|
BLAKE2b-256 | be07f9f6b0c0a356b783e8367c54c8559a4ff0cfe134489d85e689e86aba2a27 |
Hashes for hikyuu-2.0.4-cp311-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 03911a708b12da83247dfe57f4cfb93610d181747dd6e9e4e8455369a3b6bb1c |
|
MD5 | 7c0bb00d74b7cc958bf9ddf6870d5a65 |
|
BLAKE2b-256 | 99452a1a8cb058174bbe57bd839f512beae26cf2b4e5f494eaa2ac274a907321 |
Hashes for hikyuu-2.0.4-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8fb6f96d956ebbcb97e7db42d7457055ffc652238b08a68b354aec1959b8d70 |
|
MD5 | 8f90cd451d5e811613fe9265a9a127b3 |
|
BLAKE2b-256 | 0365230f606097db874434bba9ba48967be895a274383de31b7b33240a2b51c3 |
Hashes for hikyuu-2.0.4-cp310-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70238528df883b0891ea4af9a7719a156d2095718a45b7d79c05901aa0b6600d |
|
MD5 | 79f9556e43fafdd217afd6305b022d9a |
|
BLAKE2b-256 | b364f2de00fc75f1d889139aa7d79d00f09addc1ce9fab88f865109ff04355fc |
Hashes for hikyuu-2.0.4-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | de7e3e6db5bf07a93936371faad253bb7647880c16b1d26f92f728e13799f80c |
|
MD5 | e5744cd7f7a834c7b1c2079757ea9f98 |
|
BLAKE2b-256 | 45e8ea94a571396023f0cf1ccc5d7ef9b13e84e2f5cfa1ddb1fc7bb53dbaa226 |
Hashes for hikyuu-2.0.4-cp39-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2e6af608f5f33ec52c2e820e5dc47e0b63b0f83f9ea0af3a3b15250bac4cd0a |
|
MD5 | 71e28b0c45e5ecbbf52b7aa8c2c1c409 |
|
BLAKE2b-256 | 856f0b27e1a58622d7ba53a5ef183d185af6785ad4e3196f407e2c347b8e6ad2 |
Hashes for hikyuu-2.0.4-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c5c40ea1c3bc17eaced8965a9f97cff2bdde251a881c859bb14bd5f9651150eb |
|
MD5 | 48bb232fffba98d2d5573bd67e04cbec |
|
BLAKE2b-256 | 83032f779a60c6918bf6a879b386085fdf593b8bc62b182e0e8eb4e73a9237cf |
Hashes for hikyuu-2.0.4-cp38-none-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b1e6e6fd4622d4fcf0e6117645dd19986bc143283cd07a8759eda1fb02285de6 |
|
MD5 | 80108d020182c9bae9968aad1394edb8 |
|
BLAKE2b-256 | 97e45fcf3b031f5a3afef42276cd9b1d124142d7d9455d02e5fdc76372e7afa2 |