我试图在python中使用TA-Lib获取股票的RSI,但它总是给我错误的数字。 import talib
import pandas as pd
from td.client import TDClient
ticker = 'GOOG'
data = TDSession.get_price_history(
symbol = ticker,
period_type = 'month',
frequency_type = 'daily',
frequency = 1,
period = 1,
)
d
我一直试图计算NodeJS中的交易指标相对强弱指数(RSI),时间已经超过了2天。我已经使用了所有的RSI计算和技术指标包,我可以在互联网上找到。到目前为止,它们都没有匹配我在我的个人经纪图表和交易视图(其中显示相同的RSI值)中所引用的任何显示的RSI指示符。
交易视图声称这是他们用于RSI的公式。
来源:
rma()函数代表“相对移动平均”。下面是用来计算相对移动平均值的公式。本例中的26.50是当前价格,而26是前一天的价格。
来源:
alpha变量是应用于源值的基于周期的权重。
我使用以下方法在nodejs中实现了这些计算:
let change;
let gain
我是Python的新手,所以请原谅这个可能微不足道的问题。
我正在尝试生成买入和卖出信号,给定我为特定期货合约计算的RSI值的变化。在我的DataFrame中,我创建了一个名为RSI的列,其中包含我引用的值,我想要做的是根据预定的逻辑检查每个进程值,如果满足该条件,则生成"Buy“或"Sell",然后为每个生成的信号增加一个计数。也就是说,我想象了一个使用for循环比较[i]和[i+1]的解决方案,但我得到了一个错误,显示为-
TypeError: cannot do label indexing on class'pandas.indexes.range.Ra
我刚刚开始使用QuantConnect,但我对Python语言理解得相当好,至少我是这么认为的。这是我的代码的重要部分:
def Initialize(self):
# Set the cash we'd like to use for our backtest
# This is ignored in live trading
self.SetCash(5000)
# Start and end dates for the backtest.
# These are ignored in live trading.
self.Set
我可以把python/pandas变成基本的东西,但是我仍然在和pandas的“不需要循环”的世界作斗争。我倾向于像在VBA中那样转换为列表并执行循环,然后将这些列表带回dfs。我知道有一种更简单的方法,但我想不出来。 我的简单例子是一个非常基本的策略,如果序列高于70,则创建-1信号,并保持该信号,直到该序列在信号变为1时低于30,并保持该信号,直到该值高于70,依此类推。 我可以通过简单的列表循环来做到这一点,但我知道这远不是“Pythonic式的”!有没有人可以帮着把它“翻译”成一些没有循环的更好的代码呢? #rsi_list is just a list from a df colu
我正在努力学习backtesting.py,当我运行下面的示例代码时,它会弹出这些错误,任何人都可以帮助吗?我试图卸载Bokeh软件包并重新安装一个旧版本,但它不起作用。
BokehDeprecationWarning: Passing lists of formats for DatetimeTickFormatter scales was deprecated in Bokeh 3.0. Configure a single string format for each scale
C:\Users\paul_\AppData\Local\Programs\Python\Python310
我试图在Ubuntu12.04上的python中使用TA作为。但是,当使用熊猫DataFrame或Series时,如在不同来源上的多个示例所示,我得到了以下TypeError
追溯(最近一次调用):文件"test1.py",第14行,在分析‘’rsi‘= ta.RSI(spy.Close) TypeError:参数’numpy.ndarray‘有错误的类型(预期的numpy.ndarray,got系列)
例如,在执行此代码时:
import pandas.io.data as data
import pandas as pd
import talib as ta
imp
目标是从维基百科中提取股票代码,使用yfinance获取历史收盘价,并对标准普尔500中列出的每一个股票进行相对强弱指数(RSI)计算。一旦完成这一任务,这些代码将根据各自计算的RSI值分为“买进”、“卖出”或“捐赠”类别。但是,我收到了一个索引错误,它引用[如果RSI245>=30和126 245 -10<30:]索赔245是超出范围的轴线0与尺寸126,126号是收盘价收集的天数。
import yfinance as yf
import pandas as pd
# Read and print the stock tickers that make up S&P5
我是VBA的新手,并且遇到了我认为应该是一个简单的修复方法。下面是我用来创建临时表的代码。代码是功能性的,并且按预期工作,但是,我想添加另一个级别。我想要构建一个循环,对RsP中的多个行重复这个过程!记录集。因此,如果在rsP表中有3行,我想创建这些记录3次。任何关于如何做到这一点的帮助都会受到感谢,尽管我确信答案就在我面前,但我还是碰到了一堵砖墙。谢谢!
Do Until (x = colCount)
With rsNewRedacted
.AddNew
!A0 = rsP![Redacted ID]
我想在每次RSI从某个点开始交叉时发出警报,假设那个点是rsi 50,我希望它不仅在过50的时候,而且在51,52,53等的时候拍摄。
我已经设法使它与这里的代码一起工作,我只想知道是否有更有效的方法来编写这个代码,否则我将不得不一直编码到RSI,100
rsiAlert = ta.crossover(rsi, 50) or ta.crossover(rsi, 51) or ta.crossover(rsi, 52) or ta.crossover(rsi, 53) or ta.crossover(rsi, 48) or ta.crossover(rsi, 54) or ta.crossove
这是我的DB查询,当我使用sortby公司时,它不起作用,我总共有48000条记录,但它只显示了18000条记录。Sortby状态,联系人,城市都很好。任何帮助都会很感激
public static function retreiveCandidates($status,$alpha=NULL,$dash=NULL,$statusid,$sortby=NULL){
DB::enableQueryLog();
$query = DB::table('candidates')->select('candidates.candidateid