【问题标题】:How to install zipline module in pycharm?如何在 pycharm 中安装 zipline 模块?
【发布时间】:2017-02-21 03:20:11
【问题描述】:

我使用 pycharm 作为我的 IDE,我发现将 zipline 安装到 pycharm 时出现问题。我已经通过 pip install zipline 尝试了该方法,但它不起作用。

有没有我遗漏的部分或处理它的指南?

【问题讨论】:

  • 通过 pip 安装有什么问题?
  • 终端通过成功安装 Logbook-1.0.0 Mako-1.0.6 alembic-0.8.10 bcolz-0.12.1 cachetools-2.0.0 cyordereddict-1.0.0 empyrical-0.2 的结果。 2 intervaltree-2.1.0 pandas-0.17.1 pandas-datareader-0.3.0.post0 python-editor-1.0.3 requests-file-1.4.1 requests-ftp-0.3.1 sortedcontainers-1.5.7 zipline-1.0。 2 当我输入 import zipline 时它​​会导致错误
  • 您确定您的终端使用与 PyCharm 相同的解释器吗?尝试转到设置(或首选项),然后选择项目 -> 项目解释器。查看 zipline 是否列在已安装的软件包中。如果没有,请使用 PyCharm 的 UI(+ 号)从 PyCharm 中添加滑索。
  • 我的滑索不在列表中,当我在 PyCharm 的 UI 中安装时,PyCharm 出现错误收集滑索使用缓存的 zipline-1.0.2.tar.gz 命令 python setup.py 的完整输出egg_info:回溯(最近一次调用最后):文件“”,第 1 行,在 文件“/private/var/folders/jh/m1gpqh3n7fqby5hgpv04f6rr0000gn/T/pycharm-packaging/zipline/setup.py”中,第 277 行,在 packages=find_packages(include=['zipline', 'zipline.*']) 中,TypeError: find_packages() got an unexpected keyword argument 'include'

标签: python pycharm zipline


【解决方案1】:

不幸的是,MikeyE 的 suggested solution 对我不起作用,因为我没有在那里列出滑索——对我有用的是

conda install -c Quantopian zipline

【讨论】:

  • 你说你没有列出滑索是什么意思?
【解决方案2】:

首先,在 PyCharm 中打开 Settings -> Project(XXX) -> Project Interpreter。然后点击屏幕右上角的+图标,在搜索栏中输入Zipline,然后点击Install Package安装Zipline。

您需要通过在命令行上运行来下载示例 Quandl 数据:

zipline ingest -b quantopian-quandl

要测试 Zipline 是否安装成功,请创建“dual_moving_average.py”并粘贴到此示例应用程序中:

from zipline.api import (
history,
order_target,
record,
symbol,
)

def initialize(context):
    context.i = 0

def handle_data(context, data):
    # Skip first 300 days to get full windows
    context.i += 1
    if context.i < 300:
        return

    # Compute averages
    # history() has to be called with the same params
    # from above and returns a pandas dataframe.
    short_mavg = history(100, '1d', 'price').mean()
    long_mavg = history(300, '1d', 'price').mean()

    sym = symbol('AAPL')

    # Trading logic
    if short_mavg[sym] > long_mavg[sym]:
        # order_target orders as many shares as needed to
        # achieve the desired number of shares.
        order_target(sym, 100)
    elif short_mavg[sym] < long_mavg[sym]:
        order_target(sym, 0)

    # Save values for later inspection
    record(AAPL=data[sym].price,
           short_mavg=short_mavg[sym],
           long_mavg=long_mavg[sym])

要使用 Zipline 运行算法,请在命令行上执行以下命令(当然,您可以根据自己的喜好将日期更改为时间范围):

zipline run -f dual_moving_average.py --start 2011-1-1 --end 2012-1-1 -o dma.pickle

如果所有这些都正常运行,请跳一段快乐的舞蹈! :-) 因为,现在已经安装了 Zipline,并且你已经运行了你的第一个算法。

【讨论】:

  • 初学者问题。您是否以某种方式使用命令行语法从 PyCharm 中调用算法???
  • @JohnStrong 是的,我要做的是右键单击我要运行的dual_moving_average.py 文件,然后单击Run。这通常会失败,但随后我在 PyCharm 中编辑运行配置,将 Script Path 更改为 zipline 可执行文件,并在 Parameters 字段中添加我需要的任何参数。配置完成后,您可以从工具栏或通过映射热键来运行它。
  • 您是否无法放弃对脚本路径的调整而只使用run_algorithm() 调用算法?
  • @JohnStrong 我已经有一段时间没有尝试过了,但如果我没记错的话,我在 PyCharm 中直接使用run_algorithm() 时遇到了一些问题。从那时起,从事 Zipline 工作的人可能已经做出了一些改进,但我还没有尝试过。我唯一能够让它工作的是使用我在上面的答案中提到的zipline run... 命令。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-04-29
  • 2020-06-22
  • 1970-01-01
  • 2018-10-23
  • 2020-07-25
  • 2020-11-03
  • 1970-01-01
相关资源
最近更新 更多