首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在mac上的Visual Studio代码中,在'cerebro = bt.Cerebro()‘行使用python错误“语法错误:无效语法”

在mac上的Visual Studio代码中,在'cerebro = bt.Cerebro()‘行使用python错误“语法错误:无效语法”
EN

Stack Overflow用户
提问于 2020-11-25 04:29:08
回答 1查看 268关注 0票数 0

我正在使用VSCode和python来做一些使用backtrader的反向测试。我刚开始学习一个教程,第一个测试代码在实例化cerebro时似乎出现了一个语法错误。代码如下:

代码语言:javascript
复制
import backtrader as bt
from datetime import datetime

class LogClass(bt.Strategy):
  def __init__(self):
    self.dataclose = self.datas[0].close

  def log(next, txt, dt=None):
    dt = dt or self.datas[0].datetime.date(0)
    print(f'{dt} {txt}')

  def next(self):
    self.log('Close: {}'.format(self.dataclose[0])

cerebro = bt.Cerebro()

data = bt.feeds.YahooFinanceData(dataname=LogClose.params.ticker,
                             fromdate= LogClose.params.fromDate,
                             todate= LogClose.params.toDate)

cerebro.adddata(data)

cerebro.addstrategy(LogClose)

cerebro.run()

当我使用'Run Python file in Terminal‘运行文件时,我得到错误

代码语言:javascript
复制
File "log.py", line 16
cerebro = bt.Cerebro()
      ^
SyntaxError: invalid syntax

我试着寻找一个解决方案,但没有运气。我将解释器更改为使用python3.7,安装了pylint,更新了pip。重新启动了笔记本电脑,什么都没有。帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-25 06:01:12

在def next()中,self.log()不匹配(在self.log的末尾添加a)(‘Close:{}'.format(self.dataclose) )

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64994343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档