标签: ta-lib

如何在python中使用TA-Lib和pandas的技术指标

我是python和pandas的新手,主要是学习它以使我的编程技能多样化以及python作为通用程序语言的优势.在这个程序中,我使用它从雅虎获取历史数据,并使用talib中的函数进行一些技术分析

import pandas_datareader.data as web
import datetime
import talib as ta

start = datetime.datetime.strptime('12/1/2015', '%m/%d/%Y')
end = datetime.datetime.strptime('2/20/2016', '%m/%d/%Y')
f = web.DataReader('GOOG', 'yahoo', start, end)
print 'Closing Prices'
print f['Close'].describe()
print f.Close
print ta.RSI(f.Close,2)
print ta.SMA(f.Close,2)
print ta.SMA(f.Volume,4)
print ta.ATR
print ta.ATR(f.High,f.Low,f.Close,3)
Run Code Online (Sandbox Code Playgroud)

上面的代码工作,print f.Close但它显示此错误

 print ta.RSI(f.Close,2)
TypeError: Argument 'real' has incorrect type (expected numpy.ndarray, got Series)
Run Code Online (Sandbox Code Playgroud)

我使用R及其库进行库存技术分析,它有一个内置的库Quantmod,可以使技术分析更容易,代码更少.

library(quantmod)
symbol=getSymbols(AAPL)
SMA=SMA(Cl(Symbol),2)
Run Code Online (Sandbox Code Playgroud)

是否有类似的Python可用的库?

python pandas ta-lib technical-indicator

9
推荐指数
1
解决办法
1万
查看次数

在 Python 3.7 中安装 TA-Lib 时遇到问题

我正在尝试为 Python 3.7 安装 TA-Lib。我已经阅读了许多解决方案,但到了我无法弄清楚的地步。这是我从 pip 得到的消息:

Collecting ta-lib
  Using cached https://files.pythonhosted.org/packages/90/05/d4c6a778d7a7de0be366bc4a850b4ffaeac2abad927f95fa8ba6f355a082/TA-Lib-0.4.17.tar.gz
Requirement already satisfied: numpy in c:\python37_64\lib\site-packages (from ta-lib) (1.15.4)
Installing collected packages: ta-lib
  Running setup.py install for ta-lib: started
Command "c:\python37_64\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\Todd\\AppData\\Local\\Temp\\pip-install-0c2__0gf\\ta-lib\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\Todd\AppData\Local\Temp\pip-record-3dpfanca\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\Todd\AppData\Local\Temp\pip-install-0c2__0gf\ta-lib\
    Running setup.py install for ta-lib: finished with status 'error'
    Complete output from command c:\python37_64\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\Todd\\AppData\\Local\\Temp\\pip-install-0c2__0gf\\ta-lib\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install …
Run Code Online (Sandbox Code Playgroud)

python ta-lib

9
推荐指数
2
解决办法
2万
查看次数

如何在Pyalgotrade中使用多种工具创建复合策略?

我正在使用pyalgotrade交易策略,我想在列表中使用多个代码.

它现在的设置方式,它为列表中的每个单独的股票代码运行策略,但我希望它做的是将它们全部作为一个复合策略运行.

我该怎么做呢?

这是代码:

    from pyalgotrade.tools     import yahoofinance
    from pyalgotrade           import strategy
    from pyalgotrade.barfeed   import yahoofeed
    from pyalgotrade.technical import stoch
    from pyalgotrade           import dataseries
    from pyalgotrade.technical import ma
    from pyalgotrade           import technical
    from pyalgotrade.technical import highlow
    from pyalgotrade           import talibext
    from pyalgotrade.talibext  import indicator
    import numpy as np
    import talib


    testlist = ['aapl', 'msft', 'z']

    class MyStrategy( strategy.BacktestingStrategy ):

        def __init__( self, feed, instrument ):
            strategy.BacktestingStrategy.__init__( self, feed )
            self.__position = []
            self.__instrument = instrument
            self.setUseAdjustedValues( True ) …
Run Code Online (Sandbox Code Playgroud)

python quantitative-finance yahoo-finance pyalgotrade ta-lib

8
推荐指数
1
解决办法
1268
查看次数

How do I correctly calculate EMA for a stock using Ta-lib or Pandas?

Edit!

For anyone wondering this same thing, I figured it out. There is nothing wrong with the implementations below. Its just the fact that EMA requires more than 21 data points to count a 20 data point exponential moving average. The reason for this is that the earlier data points effect the datapoints you are trying to calculate. In simple terms you i tested and you need about 40-50 datapoints to get the same 20 day EMA as with 100+ …

python pandas ta-lib

8
推荐指数
1
解决办法
6466
查看次数

为Anaconda安装TA-Lib时出错

我在Win7 x64上运行Python 3.4.1 Anaconda 2.1.0.Cython版本是0.21,我可以确认它已经安装.

我试图通过命令安装TA-lib包装器easy_install TA-lib.

我已经有了ta-lib文件夹c:\ta-lib.

这是发生的事情的完整打印:

easy_install ta-lib
搜索ta-lib
阅读https://pypi.python.org/simple/ta-lib/
阅读http://github.com/mrjbq7/ta-lib
阅读https://github.com/mrjbq7/ta-lib/releases
最佳匹配:TA-Lib 0.4.8
下载https://github.com/mrjbq7/ta-lib/archive/TA_Lib-0.4.8.zip
处理TA_Lib-0.4.8.zip
写C:\Users\ULYATES\AppData\Local\Temp\easy_install-mxydk494\ta-lib-TA_Lib-0.4.8\setup.cfg
运行ta-lib-TA_Lib-0.4.8\setup.py -q bdist_egg --dist-dir C:\用户\ ULYATES \应用程序数据\本地的\ Temp\easy_install的-mxydk494\TA-LIB-TA_Lib-0.4.8 \蛋DIST-TMP的dvmbdia1

C:/ anaconda3/mingw的/ bin中/../ LIB/GCC/x86_64的-W64-的mingw32/4.7.0 /../../../../ x86_64的-W64-的mingw32/bin中/ ld.exe:搜索-lta_libc_cdr c时跳过不兼容的c:\ ta-lib\c\lib/ta_libc_cdr.lib:/ anaconda3/mingw/bin /../ lib/gcc/x86_64-w64-mingw32/4.7.0 /../ ../../../x86_64-w64-mingw32/bin/ld.exe:在搜索-lta_libc_cdr c时跳过不兼容的c:\ ta-lib\c\lib/ta_libc_cdr.lib:/ anaconda3/mingw/bin /../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw32/bin/ld.exe:跳过不兼容的c:\ ta-lib\c\lib\ta_libc_cdr.lib搜索-lta_libc_cdr c时:/ anaconda3/mingw/bin /../ lib/gcc/x86_64-w64-mingw32/4.7.0 /../../../ .. /x86_64-w64-mingw32/bin/ld.exe:找不到-lta_libc_cdrcollect2.exe:错误:ld返回1退出状态错误:安装脚本退出并显示错误:命令'C:\ Anaconda3\Scripts\gcc.bat'退出状态1失败

python mingw anaconda ta-lib

6
推荐指数
2
解决办法
6561
查看次数

MACD函数返回不正确的值

我正在尝试使用PHP 交易函数(可用作PECL扩展)来计算各种证券的移动平均收敛/差异(MACD).但是,返回的值似乎与我的计算不符.

考虑以下一系列股票的收盘价:

$close = array (
  0 => 459.99,
  1 => 448.85,
  2 => 446.06,
  3 => 450.81,
  4 => 442.8,
  5 => 448.97,
  6 => 444.57,
  7 => 441.4,
  8 => 430.47,
  9 => 420.05,
  10 => 431.14,
  11 => 425.66,
  12 => 430.58,
  13 => 431.72,
  14 => 437.87,
  15 => 428.43,
  16 => 428.35,
  17 => 432.5,
  18 => 443.66,
  19 => 455.72,
  20 => 454.49,
  21 => 452.08,
  22 => 452.73,
  23 => 461.91, …
Run Code Online (Sandbox Code Playgroud)

php ta-lib technical-indicator

6
推荐指数
1
解决办法
2895
查看次数

在 anaconda 中安装 talib

我尝试在命令提示符中安装 ta-lib 时遇到问题,并收到以下消息。有解决问题的想法吗?

(base) C:\Users\LEGION>conda install -c quantopian ta-lib
Run Code Online (Sandbox Code Playgroud)

正在收集包元数据(current_repodata.json):已完成 解决环境: / 环境不一致,请仔细检查包计划 以下包导致不一致:

  • 默认/win-64::anaconda==2019.07=py37_0
    • defaults/win-64::numba==0.44.1=py37hf9181ef_0 因初始冻结求解而失败。使用灵活的解决方案重试。解决环境:current_repodata.json 中的 repodata 失败,将使用下一个 repodata 源重试。收集包元数据 (repodata.json):已完成 解决环境:初始冻结解决失败。使用灵活的解决方案重试。解决环境: - 发现冲突!寻找不兼容的包。这可能需要几分钟的时间。按 CTRL-C 中止。失败的

UnsatisfiableError:发现以下规范与您环境中现有的 python 安装不兼容:

规格:

  • ta-lib -> python[版本='2.7. |3.5。|>=3.5,<3.6.0a0']
  • ta-lib -> python[版本='>=2.7,<2.8.0a0']

你的Python:python=3.7

如果 python 位于链的最左侧,则这就是您要求的版本。当 python 出现在右侧时,表明左侧的内容在某种程度上不适用于您所限制的 python 版本。请注意,除非您明确指定,否则 conda 不会将您的 python 版本更改为不同的次要版本。

发现以下规格彼此不兼容:

msgpack-python 包冲突:

ta-lib -> python=2.7 -> pip -> cachecontrol -> msgpack-python 软件包 ca 证书冲突: ta-lib -> python=2.7 -> ca 证书 python=3.7 -> openssl[version='> =1.1.1a,<1.1.2a'] -> ca-certificates 软件包 …

python installation ta-lib

6
推荐指数
2
解决办法
1万
查看次数

Tensorflow 2.6.0 和 TA-lib 0.4.21 numpy 版本冲突

我尝试在同一个项目中使用 TA-lib 版本 0.4.21 和 Tensorflow 2.6.0。两者都需要不同的 numpy 版本: TF ~= 1.19.2 TA-lib >= 1.19.4

考虑到这些依赖关系,numpy 1.19.4 或 1.19.5 应该可以正常工作,但我得到以下异常:

numpy.ndarray size changed, may indicate binary incompatibility. Expected 88 from C header, got 80 from PyObject

我尝试在 python 3.8 和 3.9 上卸载并安装 numpy 1.19.4 和 1.19.5 多次,但结果是相同的。

删除 TF 并在 numpy 上使用最新版本可以解决该问题 - 但这对我来说不是解决方案。

在网上没有找到任何关于两个库之间的冲突的信息。

将很高兴获得帮助,谢谢!

numpy python-3.x ta-lib tensorflow

6
推荐指数
1
解决办法
3305
查看次数

如何在Windows中使用python 3.11安装Ta-lib?

TA-Lib Windows 发行版来自此处https://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib,但仅支持到 3.10。如何在Windows中使用python 3.11安装Ta-lib?

自述文件中有关在 Windows 上安装的说明

下载ta-lib-0.4.0-msvc.zip并解压到C:\ta-lib.

这是一个 32 位二进制版本。如果您想使用 64 位 Python,则需要构建 64 位版本的库。在 64 位 Windows 10 上构建的一些非官方(且不受支持)说明,此处供参考:

  1. 下载并解压ta-lib-0.4.0-msvc.zip
  2. 将解压后的文件夹移动ta-libC:\
  3. 下载并安装 Visual Studio Community(2015 或更高版本)
    • 记得选择[Visual C++]功能
  4. 构建 TA-Lib 库
    • 从 Windows 开始菜单,开始[VS2015 x64 Native Tools Command Prompt]
    • 移动to C:\ta-lib\c\make\cdr\win32\msvc
    • 建立图书馆nmake

但是之后:

ERROR: Failed building wheel for TA-Lib
Failed to build TA-Lib
ERROR: Could not build wheels for TA-Lib, which …
Run Code Online (Sandbox Code Playgroud)

python ta-lib python-3.11

6
推荐指数
1
解决办法
2万
查看次数

Mac M1 用户是否有可能无法使用 TA-Lib 的 Python 包装器?

所以我一直在尝试不同的方法来安装 TA-Lib,并找到了几种不同的方法来安装它,其中没有一个是容易的,但即使 TA-Lib 已安装并出现在 pip 列表中,甚至设法安装它在 Pipenv 虚拟环境中,但是如果我真的想继续输入并使用它

import talib

我收到以下错误:

ImportError: 2): Symbol not found: _TA_ACOS Referenced from: /Users/teo/.local/share/virtualenvs/trendingcoin-nriNAUCq/lib/python3.8/site-packages/talib/_ta_lib.cpython-38-darwin.so Expected in: flat namespace in /Users/teo/.local/share/virtualenvs/trendingcoin-nriNAUCq/lib/python3.8/site-packages/talib/_ta_lib.cpython-38-darwin.so

现在我想让你知道,我已经尝试了很多不同的方法来安装它,这些方法在这个线程中有详细介绍:在 Brew 上安装 TA-Lib 就足以使用它吗?Pip 向我抛出一个错误

作为一名想成为技术分析师的人,如果我不能使用臭名昭著的 TA-Lib,那将是一件很遗憾的事情。

python import ta-lib

5
推荐指数
1
解决办法
5147
查看次数