张_小_琪 2023-01-07 20:46 采纳率: 44.4%
浏览 28
已结题

在backtrader的init方法中,如何引入RMA指标?

本人刚刚解除量化编程。在使用backtrader回测框架时,碰到一个问题。
自带的bt.indicators包中,没有包含RMA的方法,是否需要自建指标呢?
请各位专家教我,感谢~

def init(self):
self.order = None
self.buyprice = None
self.buycomm = None

    self.dataopen = self.datas[0].open
    self.dataclose = self.datas[0].close
    self.datalow = self.datas[0].low
    self.datahigh = self.datas[0].high
    self.datavolume = self.datas[0].volume
  • 写回答

1条回答 默认 最新

  • m0_54204465 2023-01-11 16:28
    关注

    在backtrader的init方法中,如果要引入RMA指标,可以使用自定义的指标代码或第三方库来实现。

    首先,你需要找到一个能够实现RMA指标的库或者指标代码。可以在网络上搜索资源,也可以自己编写RMA指标代码。

    然后,可以在init方法中添加以下代码,引入RMA指标:

    # Import the RMA indicator library or code
    from my_rma_indicator_library import RMA
    
    # Create the RMA indicator with the desired parameters
    self.rma = RMA(self.data.close, period=14)
    
    

    这里需要注意的是, 我假设了有个名为my_rma_indicator_library的库里有个RMA的类,并且能接受数据和周期,同时还假设datas里拿到的是原始的价格数据。

    在这个示例中,我们使用了自定义的RMA库来创建一个新的RMA指标对象,并将其存储在self.rma变量中。然后你就可以在后面的代码中使用self.rma来访问RMA指标的值了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 2月6日
  • 已采纳回答 1月29日
  • 创建了问题 1月7日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵