Pine script 当价格触及通道时,我如何触发交易?

Pine script 当价格触及通道时,我如何触发交易?,pine-script,Pine Script,我是pine的新手,我正试图在价格触及Donchian通道的上限时触发一个长期交易,反之亦然 目前,根据我目前的代码,我可以看到价格已经触及上限,但直到很久以后才触发长期交易(参见图) 我已经尝试过减少Donchian周期(默认值为20),但它仍然不会触发信号 以下是我使用的代码: length = input(20, minval=1) lower = lowest(length) upper = highest(length) basis = avg(upper, lower) //

我是pine的新手,我正试图在价格触及Donchian通道的上限时触发一个长期交易,反之亦然

目前,根据我目前的代码,我可以看到价格已经触及上限,但直到很久以后才触发长期交易(参见图)

我已经尝试过减少Donchian周期(默认值为20),但它仍然不会触发信号

以下是我使用的代码:


length = input(20, minval=1)
lower = lowest(length)
upper = highest(length)
basis = avg(upper, lower)

// 4. Long trading conditions
enterLong = upTrend and (close >= upper) or (high >= upper) 
exitLong = (low <= lower) or (close <= basis)

// 5. Short trading conditions
enterShort = downTrend and (close <= lower) or (low <= lower)
exitShort = (high >= upper) or (close >= basis)

// 6. Submit entry orders
if (enterLong)
    strategy.entry(id="OL", long=true, qty=posSize)

if (enterShort)
    strategy.entry(id="OS", long=false, qty=posSize)

// 7. Submit exit orders
strategy.close(id="OL", when=exitLong)
strategy.close(id="OS", when=exitShort)


长度=输入(20,最小值=1)
下部=最低(长度)
上限=最高(长度)
基准=平均值(上、下)
// 4. 长期交易条件
enterLong=上升趋势和(收盘>=上升)或(高位>=上升)

exitLong=(低您的逻辑有问题:

enterLong=upTrend和(close>=上限)或(high>=上限)
如果<代码>上升趋势并关闭<上限或上限>=上限

换成

enterLong=上升趋势和高>=上升趋势

enterShort=下降趋势和低您的逻辑有问题:

enterLong=upTrend和(close>=上限)或(high>=上限)
如果<代码>上升趋势并关闭<上限或上限>=上限

换成

enterLong=上升趋势和高>=上升趋势

enterShort=下跌趋势和下跌趋势如何获得上升趋势和下降趋势值?如何输入交易?如何获得上升趋势和下降趋势值?如何输入交易?我的意思是如何触发交易,对标题不清表示歉意。我已将问题从“输入交易”改为“触发交易”并在上面添加了我的进入和退出代码。您的意思是当条件满足时如何触发警报?请不要在策略版本中生成警报。只有在研究版本中才能生成警报。使用alertcondition()pine脚本内置函数。@Marxbab没有发出警报,而是进入交易。我一直试图以这样一种方式对其进行编码,即只要蜡烛触及上方通道,它就会进入长期交易。但根据我在顶部发布的图像,第一支触及通道的蜡烛是一个熊市旋转顶部(从左起第四根蜡烛)但交易只是在很久之后才被触发(看跌者在上升趋势中旋转顶部,蓝色箭头写着“OL”它代表开放长。@jaitomas所以你的
enterLong
逻辑一定有问题。你能更新这个问题以包括
upper
lower
变量的定义吗?如果你使用策略,你也能确保它实际接触并且没有在通道边界附近偏离1点吗只有在酒吧结束时,条件才会被执行。检查你是在使用研究()还是策略()。我的意思是如何触发交易,为标题不明确表示歉意。我已将问题从“进入交易”改为“触发交易”并在上面添加了我的进入和退出代码。您的意思是当条件满足时如何触发警报?请不要在策略版本中生成警报。只有在研究版本中才能生成警报。使用alertcondition()pine脚本内置函数。@Marxbab没有发出警报,而是进入交易。我一直试图以这样一种方式对其进行编码,即只要蜡烛触及上方通道,它就会进入长期交易。但根据我在顶部发布的图像,第一支触及通道的蜡烛是一个熊市旋转顶部(从左起第四根蜡烛)但交易只是在很久之后才被触发(看跌者在上升趋势中旋转顶部,蓝色箭头写着“OL”它代表开放长。@jaitomas所以你的
enterLong
逻辑一定有问题。你能更新这个问题以包括
upper
lower
变量的定义吗?如果你使用策略,你也能确保它实际接触并且没有在通道边界附近偏离1点吗只有在栏的结尾处才执行条件。检查您使用的是研究()还是策略()