通达信公式怎么找最近的低点,和次低点

发布时间 2023-12-25 14:28:44作者: 西门飘柔
Crafted by [Genie](https://marketplace.visualstudio.com/items?itemName=genieai.chatgpt-vscode)

You

通达信公式怎么找最近的低点,和次低点

Genie

在通达信公式中,要找最近的低点以及次低点,你可以使用内置的函数如LLVREF等对价格序列进行分析。下面提供了一个示例代码,用于查找最近低点(最低价)和次低点。

{ 通达信查找最近的低点和次低点 }

{ 设置变量存储周期 }
N := 30; { 查找周期范围例如30天内的最低点 }
M := 60; { 查找次低点时忽略最近30天,从第31天开始往前数60天 }

{ 计算最低价的位置 }
LowestPos := BARSLAST(LLV(L, N) = L);

{ 计算次低价的位置 }
SecondLowestPos := BARSLAST(IF(COUNT(LLV(L, M) = REF(L, LowestPos), M) > 0, TRUE, LLV(L, N+M) = L));

{ 输出最低点和次低点价格 }
LowestPrice := REF(L, LowestPos);
SecondLowestPrice := REF(L, SecondLowestPos + LowestPos);

{ 输出结果至图表 }
DRAWTEXT(FIX=1, LowestPos, LowestPrice, '最低点'), COLORRED;
DRAWTEXT(FIX=1, SecondLowestPos + LowestPos, SecondLowestPrice, '次低点'), COLORGREEN;

上述示例代码中:

  • LLV(L, N) 函数用来寻找最近 N 周期内的最低价。
  • BARSLAST 函数返回上一次条件成立到当前的周期数。
  • REF(X, A) 函数引用A周期前X的值。
  • COUNT(COND, N) 函数用于统计条件 COND 在过去 N 周期内出现的次数。
  • DRAWTEXT(FIX, A, B, '文本') 函数用于在指定的位置画文本。

请注意,此代码仅作为参考,具体实施时可能需要根据你的特别需求进行修改和调整。因为在实际情况中,次低点的计算涉及到对已识别的最低点之后的数据区间进行再次分析,这里我们使用 COUNT 来确认在指定区间内是否存在与最低点相同的价格,如果不存在,则将该区间的最低价视为次低价。这是一个比较简单的处理方法,在复杂的市场条件下,可能需要更加精细的逻辑来确保正确性。

确定这些点是为了帮助进行技术分析,但任何自动化的信号都需要有人工的审查和确认,并结合市场情况做出投资决策。