【问题标题】:Finding MACD Divergence寻找 MACD 背离
【发布时间】:2021-10-29 20:02:56
【问题描述】:

我想创建一个循环来自动查找具有特定场景/标准的 MACD 背离,但我发现执行起来很困难,尽管在肉眼看图表时很容易发现它。注意:您可以轻松地将其作为现成可用的扫描仪,但我想提高我的 python 知识,希望有人能够在这里帮助我完成这项任务。

我的主要问题是如何让它引用 40 行并向前测试 - 无法理解逻辑本身。

规则如下:假设我们有下表

Date Price MACD Hist
04/08/2021 30 1
05/08/2021 29 0.7
06/08/2021 28 0.4
07/08/2021 27 0.1
08/08/2021 26 -0.15
09/08/2021 25 -0.70
10/08/2021 26 -0.1
11/08/2021 27 0.2
12/08/2021 28 0.4
13/08/2021 29 0.5
14/08/2021 30 0.55
15/08/2021 31 0.6
16/08/2021 30 0.55
17/08/2021 29 0.5
18/08/2021 28 0.4225
19/08/2021 27 0.4
20/08/2021 26 0.35
21/08/2021 25 0.3
22/08/2021 24 0.25
23/08/2021 23 0.2
24/08/2021 22 0.15
25/08/2021 21 0.1
26/08/2021 20 0.05
27/08/2021 19 0
28/08/2021 18 -0.05
29/08/2021 17 -0.1
30/08/2021 16 -0.25

我希望代码:

  • 从今天开始回顾 40 天,在这 40 天内获得最低 MACDHist 中达到的点和与之对应的价格(即价格 25$ 在这个例子中是 09/08/2021 和 MACDHist -0.7)

  • 将其与今天的价格和 MACDHist 进行比较,并根据以下 3 条规则给出分歧:

  1. 如果今天的价格
  2. 今天的 MACDHist > 第 1 点以绝对值记录的 MACD (ABS(-0.7) > ABS(-0.20)) AND
  3. 在我们记录价格和 MACDHist 的同一时期(2021 年 9 月 8 日至今),MACDHist 至少有一次为正。

如果我的解释不是很清楚,我很抱歉,因为下面的图片可能有助于说明我所追求的场景: A. The Lowes MACDHist in the specified period B. 同一时期内,MACDHist 至少一次阳性 C. 价格低于 A 点(价格 C 低于 A)且 MACDHist 高于 A 点的 MACDHist(即以 ABS 计算较低)

【问题讨论】:

  • 你到底卡在哪里了?分享你的代码。您已经列出了要做什么(2 个点和 1. 2. 3.)

标签: python pandas algorithm technical-indicator


【解决方案1】:

我在这篇很棒的帖子中找到了答案。它不是直接实现,但至少逻辑是相同的,并且通过用 MACDHist 替换 RSI 信息,您会得到相同的结论。 How to implement RSI Divergence in Python

【讨论】:

    【解决方案2】:

    在类似的情况下,我使用了backtrader。它是一个用于回测和交易的功能丰富的 Python 框架,您还可以使用它来生成大量预定义的指标。除了这个框架,您还可以开发自己的自定义指标,如here 所示。它非常易于使用,并且支持很多数据格式,例如 pandas 数据帧。请看一看!

    【讨论】:

    • 谢谢,我去看看
    猜你喜欢
    • 2020-06-14
    • 1970-01-01
    • 2016-03-18
    • 2017-08-03
    • 2019-04-27
    • 2015-08-04
    • 2018-01-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多