1

我在 Pyalgotrade 中运行简单的 Python 编写交易策略时遇到导入错误。

from pyalgotrade.tools import yahoofinance
yahoofinance.download_daily_bars('orcl', 2000, 'orcl-2000.csv')

from pyalgotrade import strategy
from pyalgotrade.barfeed import yahoofeed
from pyalgotrade.technical import ma


class MyStrategy(strategy.BacktestingStrategy):
    def __init__(self, feed, instrument):
        strategy.BacktestingStrategy.__init__(self, feed)
        # We want a 15 period SMA over the closing prices.
        self.__sma = ma.SMA(feed[instrument].getCloseDataSeries(), 15)
        self.__instrument = instrument

    def onBars(self, bars):
        bar = bars[self.__instrument]
        self.info("%s %s" % (bar.getClose(), self.__sma[-1]))

# Load the yahoo feed from the CSV file
feed = yahoofeed.Feed()
feed.addBarsFromCSV("orcl", "orcl-2000.csv")

# Evaluate the strategy with the feed's bars.
myStrategy = MyStrategy(feed, "orcl")
myStrategy.run()

错误如下所示。

>>>Traceback (most recent call last):
   File "/Users/johnhenry/Desktop/pyalgotrade2.py", line 1, in <module>
    from pyalgotrade import strategy
   File "/Users/johnhenry/Desktop/pyalgotrade.py", line 1, in <module>
    from pyalgotrade import strategy
   ImportError: cannot import name strategy

我确定我有这个名为 pyalgotrade 的库。

4

1 回答 1

0

您命名了自己的程序pyalgotrade.py

File "/Users/johnhenry/Desktop/pyalgotrade.py"

所以Python认为这就是你的意思。将您的程序重命名为其他名称,删除您可能拥有的任何文件,然后重新启动解释器pyalgotrade.pycpyalgotrade.pyo

于 2014-03-31T15:58:42.017 回答