bt.Strategy的参数并详细解释
时间: 2023-12-29 09:05:17 浏览: 38
`bt.Strategy` 是 `backtrader` 框架中的策略类,它是用户自定义策略的基类。`bt.Strategy` 类的构造函数接收多个可选参数,这些参数可以用于自定义策略的行为。
以下是 `bt.Strategy` 构造函数的参数及其解释:
- `broker`:一个 `backtrader.broker.Broker` 类的实例,表示策略使用的经纪商。默认值为 `None`,表示使用默认经纪商。
- `cash`:初始现金。默认值为 `100000.0`。
- `comm`:交易佣金,可以是固定金额或按交易金额的百分比。默认值为 `None`,表示使用经纪商的默认佣金。
- `margin`:保证金比例。默认值为 `None`,表示使用经纪商的默认保证金比例。
- `commission`:一个 `backtrader.comminfo.CommInfoBase` 类的实例,表示交易佣金和费用的详细信息。默认值为 `None`,表示使用经纪商的默认佣金和费用信息。
- `plot`:一个布尔值,表示是否绘制策略的图表。默认为 `True`。
- `pyfolio`:一个布尔值,表示是否启用 `PyFolio` 分析工具。默认为 `False`。
- `sizer`:一个 `backtrader.sizers.Sizer` 类的实例,表示头寸大小的计算方法。默认为 `None`。
- `stake`:单次交易的数量。默认为 `None`,表示使用 `stake_pct` 参数计算交易数量。
- `stake_pct`:单次交易的百分比。默认为 `None`,表示使用 `stake` 参数计算交易数量。
- `tradehistory`:一个布尔值,表示是否记录交易历史。默认为 `False`。
- `tz`:一个 `pytz` 时区对象,表示策略使用的时区。默认为 `None`,表示使用本地时区。
- `use_calendar`:一个布尔值,表示是否使用交易日历。默认为 `True`。
- `use_positions`:一个布尔值,表示是否使用头寸管理。默认为 `True`。
以上是 `bt.Strategy` 构造函数的所有参数及其解释。用户可以根据自己的需求,选择需要的参数进行自定义设置。