Hikyuu 1.2.3 发布,高性能量化交易研究框架

Hikyuu 1.2.3 已发布,这是一款量化交易研究框架。该版本更新如下:

  1. 指标支持动态参数

    在通道信等证券行情软件中,其技术指标中的窗口参数通常支持整数,也支持使用指标,如:

    T1:=HHVBARS(H,120); {120内的最高点距今天的天数}
    L120:=LLV(L,T1+1); {120内的最高点至今,这个区间的最低点}
    

    现在,在 Hikyuu 中,也可以使用指标作为参数:

    T1 = HHVBARS(H, 120)
    L120 = LLV(L, T1+1)
    L120.set_context(k)
    L120.plot()
    

    注意事项

    由于无法区分 Indicator(ind) 形式时,ind 究竟是指标参数还是待计算的输出数据,此时如果希望 ind 作为参数,需要通过 IndParam 进行显示指定,如:EMA(IndParam(ind))。

    最佳的的方式,则是通过指定参数名,来明确说明使用的是参数:

    x = EMA(c)  # 以收盘价作为计算的输入
    y = EMA(IndParam(c)) # 以收盘价作为 n 参数
    z = EMA(n=c) # 以收盘价作为参数 n
    
  2. 完善 PF、AF、SE

    现在可以正常使用资产组合。:

    # 创建一个系统策略
    my_mm = MM_FixedCount(100)
    my_sg = my_sg = SG_Flex(EMA(n=5), slow_n=10)
    my_sys = SYS_Simple(sg=my_sg, mm=my_mm)
    
    # 创建一个选择算法,用于在每日选定交易系统
    # 此处是固定选择器,即每日选出的都是指定的交易系统
    my_se = SE_Fixed([s for s in blocka if s.valid], my_sys)
    
    # 创建一个资产分配器,用于确定如何在选定的交易系统中进行资产分配
    # 此处创建的是一个等比例分配资产的分配器,即按相同比例在选出的系统中进行资金分配
    my_af = AF_EqualWeight()
    
    # 创建资产组合
    # 创建一个从2001年1月1日开始的账户,初始资金200万元。这里由于使用的等比例分配器,意味着将账户剩余资金在所有选中的系统中平均分配,
    # 如果初始资金过小,将导致每个系统都没有充足的资金完成交易。
    my_tm = crtTM(Datetime(200101010000), 2000000)
    my_pf = PF_Simple(tm=my_tm, af=my_af, se=my_se)
    
    # 运行投资组合
    q = Query(-500)
    %time my_pf.run(Query(-500))
    
    x = my_tm.get_funds_curve(sm.get_trading_calendar(q))
    PRICELIST(x).plot()
    
  3. 修复fedora 34编译找不到路径报错,waning 提示

  4. fixed mysql 升级脚本错误

  5. fixed 复权后计算的净收益不对,并在使用前复权数据进行回测时给出警告(前复权回测属于未来函数)

Hikyuu 是一款基于 C++/Python 的高性能开源量化交易研究框架,用于策略分析及回测(目前用于国内股票市场)。与其他量化平台或回测软件相比,其独特性在于:将完整的策略分解为不同的组件,通过重用不同的方面策略,最大化的减轻编写策略的负担,如常见的止损和资金管理策略,只需要简单指定已有的止损或资金管理策略等,即可完成不同的策略组合;同时,可自由遍历所有股票,对策略效果进行综合的统计分析。如下面的示例,简单更好不同的资金管理策略。入门示例:https://nbviewer.jupyter.org/github/fasiondog/hikyuu/blob/master/hikyuu/examples/notebook/000-Index.ipynb?flush_cache=True

更多信息,参见项目主页:https://hikyuu.org or  http://fasiondog.gitee.io/hikyuu

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/185311/hikyuu-1-2-3-released

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。