基于时段起止时间计算并绘制简单移动平均线的技术实现
基于时段条件计算并绘制简单移动平均线(SMA)
需求:基于指定时段的开始与结束时间,计算并绘制简单移动平均线(SMA)。
现有代码问题分析
你提供的代码存在逻辑错误:虽然正确计算了100周期SMA和时段条件,但绘图时错误输出了1或0,而非SMA的实际数值,无法展示均线走势。
修正后的代码
// 计算100周期简单移动平均线 ma = ta.sma(close, 100) // 定义时段条件:每周一至周日的09:00-16:50 isSession = time(timeframe.period, "0900-1650:1234567") timeCondition = not na(isSession) // 仅在指定时段内绘制SMA,非时段区间隐藏均线 plot(timeCondition ? ma : na, color=color.black, linewidth=2)
代码说明
ta.sma(close, 100):计算收盘价的100周期简单移动平均线time(timeframe.period, "0900-1650:1234567"):定义有效时段为每天09:00至16:50,:1234567表示包含周一到周日所有日期timeCondition = not na(isSession):判断当前K线是否处于指定时段内plot(timeCondition ? ma : na):仅在符合时段条件时绘制SMA数值,非时段区间返回na隐藏均线
内容的提问来源于stack exchange,提问作者BOB122
相关产品推荐
相关产品推荐

