You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同一脚本中Pine Script策略与RSI分层显示及形状单次显示问题

Pine Script 问题解决方案

1. 分离主图策略与副图RSI显示

  • 不要给RSI对应的plot()函数添加overlay=true参数。默认逻辑下,策略的交易信号会显示在主图,而RSI的绘图指令会自动生成独立的副图面板(位于主图下方)。
  • 示例代码:
    //@version=5
    strategy("My Strategy", overlay=true) // 策略默认主图显示
    rsiValue = ta.rsi(close, 14)
    plot(rsiValue, title="RSI", color=color.new(color.blue, 0)) // 自动在副图显示,无overlay参数
    

2. 控制开仓标记仅显示一次

  • 通过判断条件的首次触发时机避免重复标记,核心是用not condition[1]确认当前K线是条件从假变真的节点:
  • 基础实现代码:
    //@version=5
    strategy("My Strategy", overlay=true)
    rsiValue = ta.rsi(close, 14)
    longCondition = rsiValue < 30
    // 仅在条件首次满足的K线绘制标记
    isFirstLong = longCondition and not longCondition[1]
    plotshape(isFirstLong, title="Long Entry", location=location.belowbar, style=shape.labelup, color=color.green, text="BUY")
    
  • 若需要限制重复标记的间隔,可结合ta.barssince()设置最小间隔K线数:
    lastLongBar = ta.barssince(isFirstLong)
    // 至少间隔5根K线才允许再次触发标记
    validLongCondition = longCondition and (lastLongBar > 5 or na(lastLongBar))
    isFirstLong = validLongCondition and not validLongCondition[1]
    

内容的提问来源于stack exchange,提问作者김한수

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 17:30:48