我正在尝试在脚本中添加一个具有 5 分钟时间范围的过滤器,用于过滤最新的可用 15 分钟 MACD 趋势。如何存储 15 分钟时间范围内的最新返回值,直到有新值可用? 因此,如果 MACD 在 15 分钟时间范围内向下倾斜,我想将其应用为我的(5 分钟)脚本中的过滤器,直到 MACD 再次开始向上倾斜(15 分钟)。
我开始了,但卡住了......
// *** Filter for 15 min MACD
// Time Frame for LT MACD
LT = '15'
// Calculate MACD for LT (15-minute) time frame using closed bars
fastMA_LT = request.security(syminfo.tickerid, LT, ta.ema(close, fastLength), lookahead=barmerge.lookahead_off)
slowMA_LT = request.security(syminfo.tickerid, LT, ta.ema(close, slowLength), lookahead=barmerge.lookahead_off)
LT_macd = fastMA_LT - slowMA_LT
// Determine if the LT MACD is increasing or decreasing
isUpTrend = LT_macd > nz(LT_macd[1])
isDownTrend = LT_macd < nz(LT_macd[1])
如果您想存储一个值并保留其值直到您显式修改它,您可以使用
var
关键字。
var
var 是用于赋值和一次性初始化的关键字 变量。
此外,您可以直接将
macd
传递给 request.security()
并检索元组。
[macdLine, signalLine, histLine] = request.security(syminfo.tickerid, LT, ta.macd(close, 12, 26, 9))