如何修改Pine Script代码将defval设为美股每日9:30开盘价生成水平线
修复后可直接运行的代码
study("Percent Lines", overlay=true) // 存储当日开盘价,var关键字保证当日内数值不会自动变化 var float dailyOpen = na // 检测到新交易日开始时,更新为当日9:30的开盘价 if ta.change(time("D")) dailyOpen := open // 绘制四条百分比涨幅线,逻辑和你原有代码完全一致 line15 = plot(dailyOpen * 1.15, color = green) line20 = plot(dailyOpen * 1.20, color = green) line25 = plot(dailyOpen * 1.25, color = green) line30 = plot(dailyOpen * 1.30, color = green)
修改说明
- 移除了原来需要手动选择数据源的
input配置,替换为自动获取当日开盘价的逻辑 var声明的dailyOpen变量只会在新交易日触发时更新数值,当日交易时段内会保持9:30开盘价不变,不会随K线波动变化ta.change(time("D"))用于判断当前K线是否为新交易日的第一根K线,对应美股的9:30开盘时段,此时赋值的open就是你需要的当日基准开盘价- 原有四条百分比线的计算、颜色配置完全保留,符合你最初的需求
使用注意
- 该脚本仅适用于日线以下周期(1分钟/5分钟/1小时/4小时等)的美股标的图表,日线及以上周期不需要使用该逻辑
- 如果需要调整涨幅比例,直接修改
plot行中dailyOpen后乘的数值即可,比如要改10%线就改成*1.1
内容的提问来源于stack exchange,提问作者DarkWingDuck
相关产品推荐
相关产品推荐

