用通达信PEL编写当最低价达到等于MA时显示均线,不满足条件均线不显示
时间: 2024-05-06 10:17:25 浏览: 7
可以使用以下通达信PEL代码实现:
```text
/* 定义变量 */
MA = MA(C, 10); /* 计算10日均线 */
LowestPrice = LLV(L, 10); /* 计算10日最低价 */
/* 判断条件并画出均线 */
If (LowestPrice = MA) {
Plot1(MA, "MA", colorBlue);
} Else {
Plot1(Null, "MA", colorBlue);
}
```
解释一下代码:
首先,我们使用 `MA` 函数计算出了收盘价的10日简单移动平均线,存储在变量 `MA` 中。然后,我们使用 `LLV` 函数计算出了最低价的10日最低值,存储在变量 `LowestPrice` 中。
接下来,我们使用 `If` 语句判断当前最低价是否等于均线。如果是,我们使用 `Plot1` 函数画出均线并标注为 `"MA"`,颜色为蓝色;如果不是,我们画出一个空的均线。
最后,将以上代码保存为一个 `.pel` 文件并在通达信中加载即可实现该功能。
相关问题
通达信五日均线回调不破十日均线选股公式
通达信的五日均线回调不破十日均线选股公式可以使用以下代码实现:
```
C := REF(CLOSE, 1); // 昨收
MA5 := MA(CLOSE, 5); // 五日均线
MA10 := MA(CLOSE, 10); // 十日均线
// 当前收盘价小于五日均线,且昨收大于五日均线
COND1 := CLOSE < MA5 AND C > MA5;
// 当前收盘价大于十日均线
COND2 := CLOSE > MA10;
// 昨收小于等于十日均线
COND3 := C <= MA10;
// 选出符合条件的股票
SELECT IF(COND1 AND COND2 AND COND3, 1, 0);
```
这个公式的意思是,选出当前收盘价在五日均线下方、昨收在五日均线上方、当前收盘价在十日均线上方、昨收在十日均线下方的股票。这种情况通常意味着股价经历了一段回调后重新上涨,但还没有突破十日均线。
通达信五日均线回踩不破十日均线选股公式
通达信公式如下:
C := REF(CLOSE,1);
MA5 := MA(CLOSE,5);
MA10 := MA(CLOSE,10);
SELECT
CROSS(MA5,MA10) AND REF(MA5,1)<REF(MA10,1) AND C<MA10 AND C>MA5;
解释一下公式的含义:
- C := REF(CLOSE,1):将昨日的收盘价赋值给变量 C。
- MA5 := MA(CLOSE,5):计算收盘价的五日简单移动平均并赋值给变量 MA5。
- MA10 := MA(CLOSE,10):计算收盘价的十日简单移动平均并赋值给变量 MA10。
- SELECT:选股关键字,表示以下是选股条件。
- CROSS(MA5,MA10):表示 MA5 上穿 MA10。
- REF(MA5,1)<REF(MA10,1):表示 MA5 在昨天时的值小于 MA10 在昨天时的值。
- C<MA10 AND C>MA5:表示今天的收盘价在 MA10 和 MA5 之间。
综上所述,这个公式选出的股票是五日均线回踩十日均线后又反弹的股票。