Pine Script触发'resolution'参数与有副作用函数不兼容报错如何解决?
报错根因
该报错属于TradingView Pine Script策略的典型兼容问题:strategy.entry()属于会触发交易操作的有副作用函数,不能和strategy()声明中的resolution(自定义K线周期)参数同时使用。
你贴出的strategy.entry("Long",strategy.long,1,when=EnterLong)代码本身没有语法错误,不需要修改。
修复步骤
- 找到代码开头的
strategy()初始化行,格式类似strategy("你的策略名", overlay=true, ...) - 删除该行中所有
resolution、resolution_gaps相关的参数配置 - 如果你确实需要跨周期取数,不要用全局
resolution参数,改用request.security()函数单独提取对应周期的数据,示例:dailyClose = request.security(syminfo.tickerid, "D", close)即可提取当前标的的日线收盘价 - 保存后重新运行脚本即可正常执行
新手适配建议
- 首次写策略可以先保留最基础的
strategy()参数,优先跑通开平仓逻辑,再逐步添加其他功能 - 所有
strategy.开头的交易类函数,都不能和全局resolution参数共存
内容的提问来源于stack exchange,提问作者Sharath Budugunte
相关产品推荐
相关产品推荐

