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

TradingView中Pine Script报错‘Script could not be translated from: null’求助

问题分析与代码修正

你的代码存在几处语法和逻辑问题,直接导致了运行报错,以下是具体修正方案:

1. 版本声明语法错误

第一行的版本声明多了一个多余的单引号,正确写法应为:

//@version=2

2. 空if语句触发语法异常

代码中存在一行无执行体的空if语句:if (distance > breakout) and (close > sma),这属于无效语法,直接删除该行即可。

3. 策略平仓/止盈止损逻辑冲突

  • 同时混用strategy.exit和strategy.close处理平仓,逻辑重复且易引发冲突
  • 多个独立的strategy.exit指令针对同一仓位,会导致策略执行异常,需整合止损、止盈规则

修正后的完整代码

//@version=2
strategy("MA Breakout Strategy", overlay=true)

// 移动平均线周期
length = input(20, minval=1)

// 突破阈值
breakout = input(2)

// 止盈止损参数
takeProfit = input(5)
stopLoss = input(3)

// 计算移动平均线
sma = sma(close, length)

// 计算价格与MA的偏离距离
distance = abs(close - sma)

// 开仓条件:价格偏离MA超过阈值且位于MA上方(仅做多)
if (distance > breakout) and (close > sma)
    strategy.entry("Long", strategy.long)
    // 整合止盈、止损和移动止损规则
    strategy.exit("Exit Long", "Long", 
        limit=sma + takeProfit, 
        stop=sma - stopLoss,
        trail_stop=sma)

// 平仓条件:价格回到MA范围内 或 价格跌破MA
if (distance < breakout) or (close < sma)
    strategy.close("Long")

关键调整说明

  • 新增策略名称声明,让策略直接叠加显示在K线图上
  • 明确开仓条件为价格偏离MA超过设定值且位于MA上方,避免无效开仓
  • 将止盈、止损、移动止损规则整合到同一个strategy.exit指令中,消除逻辑冲突
  • 删除无效空语句,修复语法错误

内容的提问来源于stack exchange,提问作者EagleEye

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 02:10:20