如何根据数据表在图表上识别并绘制3点趋势线

问题描述 投票:0回答:1

我们正在尝试识别并绘制跨越高峰和低谷的趋势线,然后将它们叠加在数据图表上以突出显示突破点。这将有助于我们的研究,并帮助我们找到我们做出改变以扭转或阻止趋势的具体时间点。

我们通常以相等的时间间隔采集 50-100 个数据点。我们有整个数据集的总体趋势线,但这无助于识别转折点。

我们希望在向下趋势的峰值上绘制线条,在向上趋势的山谷下绘制线条,以找到图形突破这些线条的位置。我们往往会忽视与平盘成 8 度以内的横盘趋势。所有这些都更容易直观地解释。

我们所追求的与投资者对股价进行技术分析时使用的三点趋势线相似,甚至几乎相同。我在下面提供了一个例子。

数据因实验而异,因此以下数据仅是示例。请注意,这些值可以为 0 或 null(缺失),但绝不会为负数。

我们在 Google Sheets 中尝试过的内容,以及我在下面提供的一些示例数据。

0.34、0.27、0.24、0.21、0.23、0.22、0.26、0.20、0.18、0.18、0.15、0.18、0.22、0.17、0.11、0.12、0.17、0.16、0.11、0.11、 0.25、0.31、0.26、0.27、0.28

通过 ColA 中的时间间隔数据和 ColB 中的健康数据,这些是我们对公式的最佳尝试,以确定我们寻求的趋势线。

本地分钟 局部最大值 向上 上升趋势 向下 下降趋势 xx
=如果(和(B71 =IF(AND(B71>B70, B71>B72), B71, NA()) =IF(ISNUMBER(C71), ROW(), NA()) =IF(ROW()=MIN(过滤器(E$44:E$103, NOT(ISNA(E$44:E$103)))), B71, NA()) =IF(ISNUMBER(D71), ROW(), NA()) =IF(ROW()=MIN(过滤器(G$44:G$103, NOT(ISNA(G$44:G$103)))), B71, NA()) =IF(ABS(B71-G71) > 阈值, "反转", IF(ABS(B71-H71) > 阈值, "反转", ""))
=如果(和(B72 =IF(AND(B72>B71, B72>B73), B72, NA()) =IF(ISNUMBER(C72), ROW(), NA()) =IF(ISNUMBER(C72), F71 + (斜率(FILTER(B$44:B$103, NOT(ISNA(C$44:C$103)))), FILTER(A$44:A$103, NOT(ISNA(C$44: 103 加元)))) * (A72 - A71)), NA()) =IF(ISNUMBER(D72), ROW(), NA()) =IF(ISNUMBER(D72), H71 + (斜率(过滤器(B$44:B$103, NOT(ISNA(D$44:D$103)))), 过滤器(A$44:A$103, NOT(ISNA(D$44: 103 美元)))) * (A72 - A71)), NA()) =IF(ABS(B72-G72) > 阈值, "反转", IF(ABS(B72-H72) > 阈值, "反转", ""))

对于其余数据重复第二行。

这些突出显示最大值所在的行。和分钟。值是,但不能帮助我们绘制我们所追求的趋势线。

鉴于这与股票的技术分析非常相似,我希望有人已经有了完美的解决方案,并希望很乐意分享。

enter image description here

google-sheets google-sheets-formula
1个回答
0
投票

要从点云方程计算直线,可以使用最小二乘法。 然后,通过对一组滑动点执行此分析,您将获得斜率的变化,您可以将其可视化。

© www.soinside.com 2019 - 2024. All rights reserved.