加载中…
  
博文
标签:

股票

分类: 量化交易

VNPY - CTA策略模块策略回测

转载I天辉I 最后发布于2018-08-10 16:50:05 阅读数 6220  收藏

作者:魔元

目录

量化策略主要是从历史数据统计或者发现规律然后应用于实盘交易。当然历史不是简单的重复,这就要求策略需要根据市场调整和优化参数。通过回测历史数据可以验证策略的有效性,了解策略的历史收益、最大回撤和回撤时长,对策略参数进行优化等等。CTA策略模块的主要回测目标是验证交易信号是否正确,仓位大小的问题在实盘中则由交易员来确定。

使用回测引擎

vnpy的回测引擎位于vnpy/trader/app/ctaStrategy/ctaBacktesting.py,此文件中主要包含以下几个类:

  • BacktestingEngine

    • 回测引擎类,主要功能是设置回测参数,初始化策略对象,运行回测并输出结果。类接口和实盘引擎类(CtaEngine)保持一致,从而实现同一套策略代码从回测到实盘。用户主要是调用本类的接口来回测策略
  • TradingResult

    • 撮合好的交易结果类,由回测引擎计算回测结果时使用。类成员包含开仓价格,平仓价格,交易数量,成交金额,滑点成本,手续费成本及净盈亏等。

    这里面有一点注意是交易数量的正负代表开仓方向。以股指IF为例,3000点时开1手多单,3010点平仓,这时就会生成一个TradingResult实例,交易数量为1。若3000点时开1手空单,3010点平仓,这时生成的TradingResult实例的交易数量为-1。
    代码如下:

    
    
阅读    收藏 
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有