K 线形态 - 多空夹击
两阳夹一阴
逻辑说明:三根 K 线,两边是阳线,中间是阴线。整体趋势向上,中间的阴线为洗盘调整。第二根阴线的实体通常被第一根阳线的实体覆盖,且第三根阳线的收盘价高于第一根阳线的收盘价。这是一种看涨中继形态。
计算公式:
第一根阳线:收盘 [-2] > 开盘 [-2]
第二根阴线:收盘 [-1] < 开盘 [-1]
第三根阳线:收盘 > 开盘
第三根阳线的收盘价创三根 K 线的新高:收盘 > 收盘 [-2]
第二根阴线的实体通常被第一根阳线的实体覆盖:max(收盘 [-1], 开盘 [-1]) < max(收盘 [-2], 开盘 [-2]) && min(收盘 [-1], 开盘 [-1]) > min(收盘 [-2], 开盘 [-2])
两阴夹一阳
逻辑说明:与“两阳夹一阴”相反。三根 K 线,两边是阴线,中间是阳线。整体趋势向下,中间的阳线为反弹诱多。第二根阳线的实体通常被第一根阴线的实体覆盖,且第三根阴线的收盘价低于第一根阴线的收盘价。这是一种看跌中继形态。
计算公式:
第一根阴线:收盘 [-2] < 开盘 [-2]
第二根阳线:收盘 [-1] > 开盘 [-1]
第三根阴线:收盘 < 开盘
第三根阴线的收盘价创三根 K 线的新低:收盘 < 收盘 [-2]
第二根阳线的实体通常被第一根阴线的实体覆盖:max(收盘 [-1], 开盘 [-1]) < max(收盘 [-2], 开盘 [-2]) && min(收盘 [-1], 开盘 [-1]) > min(收盘 [-2], 开盘 [-2])
返回值:
两阳夹一阴时返回 1,表示看涨中继形态;
两阴夹一阳时返回 -1,表示看跌中继形态;
否则返回 0
指标参数:
$y |
输出列名 |
函数代码:
A |
B |
|
1 |
func PriceSandwich(A,$y) |
=A.run(if(收盘 [-2] < 开盘 [-2] && 收盘 [-1] > 开盘 [-1] && 收盘 < 开盘 && 收盘 < 收盘 [-2] && max(收盘 [-1], 开盘 [-1]) < max(收盘 [-2], 开盘 [-2]) && min(收盘 [-1], 开盘 [-1]) > min(收盘 [-2], 开盘 [-2]):-1, 收盘 [-2] > 开盘 [-2] && 收盘 [-1] < 开盘 [-1] && 收盘 > 开盘 && 收盘 > 收盘 [-2] && max(收盘 [-1], 开盘 [-1]) < max(收盘 [-2], 开盘 [-2]) && min(收盘 [-1], 开盘 [-1]) > min(收盘 [-2], 开盘 [-2]):1; 0):${y}) |
举例:
调用脚本计算浦发银行 2024 年的多空夹击形态:
A |
||
1 |
… |
/计算出源数据 |
2 |
=A1.derive(:PriceSandwich) |
/增加要返回的指标字段 |
3 |
=PriceSandwich(A2, PriceSandwich) |
/调用函数计算指标 |
运行效果: