Pine Script V4如何结合交叉历史状态与RSI条件判断多空入场信号
Pine Script V4 多条件组合信号实现方案
你需要先通过var变量记录最近一次价格与EMA1的交叉方向,再和RSI条件组合即可实现需求,完整实现逻辑如下:
// 你已定义的基础判断条件 Condition1 = crossover(close,ema1) Condition2 = crossunder(close,ema1) Condition3 = crossover(rsi,50) Condition4 = crossunder(rsi,50) // 新增:存储最近一次EMA交叉方向,1=上次为金叉(Condition1),-1=上次为死叉(Condition2) var int lastEmaCrossDir = 0 if Condition1 lastEmaCrossDir := 1 if Condition2 lastEmaCrossDir := -1 // 最终信号输出,返回布尔值True/False Long = lastEmaCrossDir == 1 and Condition3 Short = lastEmaCrossDir == -1 and Condition4
逻辑说明
- 用
var声明的lastEmaCrossDir变量仅在脚本加载时初始化一次,每根K线计算时不会重置状态,可以持续保留最近一次的交叉方向结果 - 最终信号只有同时满足「最近一次EMA交叉为对应方向」+「当前RSI交叉条件成立」两个要求时才会返回True,完全匹配你需要的场景
内容的提问来源于stack exchange,提问作者Kumar Velautham
相关产品推荐
相关产品推荐

