如何将一个日期时间索引中的值与其他日期时间索引中的值进行比较?

时间:2020-10-28 00:13:15

标签: pandas dataframe python-datetime stock quantitative-finance

我正在使用pandas和mplfinance处理股市数据集。如何将当前索引与以前的(x)索引进行比较?

例如,我想找到当前价格与所使用指标之间的差异。 (背离是指价格移动到低于最低价“ x”时段之前并且共享相同x轴的指标不低于最低价“ x”时段之前。X是时段范围,在这种情况下为范围日期时间索引)。

为此,我需要向后看以前的数据,以查看价格的当前值是否低于前15个周期中的最低值。如果为true,则需要检查指标中的当前值是否高于过去15天的最低值。

我可以写一个长篇的版本,但是如果我想使用不同的时间范围或指标,重写它确实没有效率。

这是我设法拍打的长形:

df[‘bullDiverg’] = np.where( df.close <
((df.close.shift(1) & df.close.shift(2) & df.close.shift(3) & df.close.shift(4) & df.close.shift(5) & df.close.shift(6) &
df.close.shift(7) & df.close.shift(8) & df.close.shift(9) & df.close.shift(10) & df.close.shift(11) & df.close.shift(12) & df.close.shift(13) & df.close.shift(14) & df.close.shift(15))
& 
(df.macd.shift >
(df.macd.shift(1) & df.macd.shift(2) & df.macd.shift(3) & df.macd.shift(4) & df.macd.shift(5) & df.macd.shift(6) &
df.macd.shift(7) & df.macd.shift(8) & df.macd.shift(9) & df.macd.shift(10) & df.macd.shift(11) & df.macd.shift(12) & df.macd.shift(13) & df.macd.shift(14) & df.macd.shift(15))),1,0 )

一个函数,在该函数中输入Datetime df价格和指标值会产生看涨背离Col,因此可以将其添加到我的现有数据中将是理想的选择,但是将是一种更有效的方式来编写我在上面所做的工作。 / p>

0 个答案:

没有答案