win7安装玩64位量化交易常用包talib后,使用时遇到的坑

win7安装玩64位量化交易常用包talib后,使用时遇到的坑

操作系统:win7-64位,python3.6

由于64位系统不能直接使用pip install ta-lib,所以直接下载轮子文件,地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

安装完成后突然发现直接使用talib调用方法有问题,PyCharm会报错。
原代码如下:

import tushare as ts
import pandas as pd
import matplotlib.pyplot as plt

sh = ts.get_hist_data('sh')
sh = sh.sort_index()

import talib
ma = talib.MA(sh['close'].values,20) #20日均线

ma1 = pd.DataFrame(ma)
ma1.index = sh.index
sh['mma5'] = ma1

sh[['close','mma5']].plot(figsize = (15,8),grid = True)
plt.show()

修改成如下形式就没问题了:

import tushare as ts
import pandas as pd
import matplotlib.pyplot as plt

sh = ts.get_hist_data('sh')
sh = sh.sort_index()

# import talib
# ma = talib.MA(sh['close'].values,20) #20日均线
from talib import abstract
ma = abstract._ta_lib.MA(sh['close'].values,20) #20日均线

ma1 = pd.DataFrame(ma)
ma1.index = sh.index
sh['mma5'] = ma1

sh[['close','mma5']].plot(figsize = (15,8),grid = True)
plt.show()
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在windows 7 x64下安装ta-lib python 2.7 x86,32位 anaconda2 4.0.0-32位(Anaconda2-4.4.0-Windows-x86) 如果Python,或者anaconda是3.5以上,64位,可以直接:conda install ta-lib或者pip install ta-lib即可。 以下主要说明32位python安装ta-lib的步骤和错误解决。 一、下载Microsoft Visual C++ Compiler for Python 2.7 https://www.microsoft.com/en-us/download/confirmation.aspx?id=44266 VCForPython27.msi(80多MB,请自己下载吧) 双击VCForPython27.msi安装 二、下载ta-lib源码: http://http//prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-msvc.zip【本教程有提供,可以不用下载】 MSVC是微软windows版的talib 解压到C:\ta-lib 这候,我们继续执行pip install TA-Lib,很可能你就安装成功了。但如果你是64位的系统,可能还是会遇到问题 common.obj : error LNK2019: unresolved external symbol TA_Initialize referenced in function __pyx_pf_5talib_6common_2_ta_initialize 这个问题有点高级,看起来说是链接错误,很多人到这就不知道怎么办了,网上也没有很好的办法。这个问题的来由是,我们下载的ta-lib除了头文件外,还有编译好的库,但是这个库是32位系统编译好的,所以我们需要在64位系统下面重新编译它。还好,我们下载的ta-lib就含了源码,而编译工具就是之前安装的Microsoft Visual C++ Compiler for Python 2.7。 打开【开始菜单】》【Microsoft Visual C++ Compiler Package for Python 2.7】》【Visual C++ 2008 64-bit Command Prompt】,然后在控制台里面进入到目录C:\ta-lib\c\make\cdr\win32\msvc。执行nmake,一段间后,新的64位库就编译好了 三、下载ta-lib的python【本教程有提供,可以不用下载】 Python Extension Packages for Windows - Christoph Gohlke http://www.lfd.uci.edu/~gohlke/pythonlibs/ TA-Lib, a wrapper for the TA-LIB Technical Analysis Library. TA_Lib‑0.4.10‑cp27‑cp27m‑win32.whl 继续在刚才这个Visual C++ 2008 64-bit Command Prompt下执行pip install c:\downloads\TA_Lib‑0.4.10‑cp27‑cp27m‑win32.whl 提示:successful xxxx。 在python下import talib,没报错,成功了。 四、报错注意: 步骤三如果使用pip install TA-Lib。。。有可能还会报下边的错: common.c talib\common.c(240) : fatal error C1083: Cannot open include file: 'ta_libc.h': No such file or directory 使用上面提到的whl文件,pip install ***.whl即可。 参考内容: python27在windows环境安装talib的方法 - kuailelife - CSDN博客 http://blog.csdn.net/kuaile20/article/details/68594755 Windows下安装TA-Lib - AegisRC的专栏 - CSDN博客 http://blog.csdn.net/yiigel/article/details/54353758 Windows 10 安装TA-Lib python库 - 哈鲁曼 - 博客园 http://www.cnblogs.com/Hanuman/p/5943608.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值