如何让TradingView多/空仓位警报获取实时更新的plot指标值
TradingView警报获取开仓后即时指标值的解决方案
用自定义变量捕获开仓瞬间的指标值
在策略代码中定义两个持久化变量,专门存储开仓时的仓位大小和止盈百分比:var float entry_qty = na var float entry_tp_pct = na当开仓条件触发时,将当前K线的
plot_10和plot_9赋值给这两个变量:if (strategy.long or strategy.short) entry_qty := plot_10 entry_tp_pct := plot_9最后修改警报内容为:
{{strategy.market_position}} SOLUSDT q={{entry_qty}} tp={{entry_tp_pct}}% Hedge,这样引用的就是开仓即时捕获的指标值,而非前一根K线的数据。通过订单注释传递指标值
调用strategy.entry开仓时,把当前的plot_10和plot_9打包到订单注释里:strategy.entry("Entry", strategy.long, comment=str.tostring(plot_10) + "," + str.tostring(plot_9))警报中通过拆分注释内容获取指标值,设置内容为:
{{strategy.market_position}} SOLUSDT q={{str.split(strategy.order.comment, ",")[0]}} tp={{str.split(strategy.order.comment, ",")[1]}}% Hedge
这种方式直接把开仓瞬间的指标值绑定到订单上,彻底规避K线周期延迟问题。关闭“仅K线闭合时触发”选项
进入策略设置界面,找到警报触发相关选项,取消勾选“仅在K线闭合时触发警报”。若你的plot_10和plot_9支持实时计算(不依赖K线闭合数据),此设置会让策略在K线运行过程中触发开仓,此时引用的指标值就是当前K线的即时数据。
内容的提问来源于stack exchange,提问作者Cotchy
相关产品推荐
相关产品推荐

