返回

用python实现量化交易——【Backtrader】 —— Guidance 详探(二)

前端

【Backtrader】Guidance 详探(二) —— 更深一步


文章内容

在第一篇文章《【Backtrader】Guidance 详探(一)》中,我们已经体验了【Our First Strategy】的 Demo ,对于如何使用【Backtrader】,大家或许有一个初步的了解。本篇文章,咱们继续再深入了解【Backtrader】,咱们先从数据说起。

数据是所有量化交易策略的基础,没有数据,策略无从谈起。一般量化交易的数据主要有价格数据和非价格数据。

价格数据,即我们常见的股票或者期货、期权的开盘、收盘、最高、最低的价格,以及成交量等数据。

非价格数据,一般包括各种各样的财经数据、基本面数据等。通常非价格数据被用于构建各种衍生指标。

而【Backtrader】处理数据的形式主要有两种。一种是时序数据(Time Series Data),另一种是历史数据(Historical Data)。其中时序数据是最常用的,因为其可以储存大量的数据,如上面提到的价格数据、成交量数据等。

历史数据也是一种常见的数据类型,不过一般仅储存开盘、收盘、最高、最低的价格,以及成交量等关键的数据。

当然,除了上述数据类型之外,【Backtrader】还支持其他多种类型的数据。诸如通用的 Python 数据类型(如整型、浮点型、字符串等)、NumPy 的数据类型(如数组、矩阵等)、以及 Pandas 的数据类型(如数据框、面板等)。

说完了数据,咱们再来说说【Backtrader】的存储机制。

【Backtrader】的存储机制非常简单,它采用一种叫做“ Cerebro ”的类来管理所有的数据。所谓“ Cerebro ”,本质上就是一个容器,它可以储存各种各样的数据,包括价格数据、非价格数据、以及策略等等。

举个例子,如果我们想创建一个策略,我们可以先创建一个 Cerebro 实例,然后将价格数据、非价格数据、以及策略添加到这个 Cerebro 实例中。这样,我们就可以使用这个 Cerebro 实例来运行策略。

看完数据和存储,咱们再来说说【Backtrader】的回测功能。

回测是量化交易中非常重要的一个环节。通过回测,我们可以模拟真实交易的情况,从而评估策略的性能。【Backtrader】的回测功能非常强大,它可以模拟各种各样的交易场景,包括开盘交易、收盘交易、盘中交易等。

此外,【Backtrader】还提供了一些非常实用的回测工具,比如绩效分析工具、绘图工具等。这些工具可以帮助我们快速评估策略的性能,并找出策略的优缺点。

好了,今天咱们就聊到这里。关于【Backtrader】,还有很多值得探索的地方,咱们下次继续。


注意:

  1. 本文仅供参考学习之用,不能作为投资建议。
  2. 量化交易涉及一定的风险,请谨慎参与。