2

我在 pinescript 中创建了一个非常基本的脚本。

study(title='Renko Strat w/ Alerts', shorttitle='S_EURUSD_5_[MakisMooz]', overlay=true)

rc = close

buy_entry = rc[0] > rc[2]
sell_entry = rc[0] < rc[2]

alertcondition(buy_entry, title='BUY')
alertcondition(sell_entry, title='SELL')
plot(buy_entry/10)

问题是我收到很多重复的警报。我想编辑此脚本,以便仅在上一个警报是“卖出”警报时才收到“买入”警报,反之亦然。这似乎是一个简单的问题,但我很难找到学习 pinescript 的好资源。因此,任何帮助将不胜感激。:)

4

2 回答 2

3

解决蜡烛内重复变化的一种方法是使用“每根柱关闭一次”警报。但是对于替代警报(买入 - 卖出),您必须使用不同的逻辑对其进行编码。

我建议使用版本 3(研究行上方显示的版本)而不是版本 1 和 2,您可以使用以下逻辑完成结果:

buy_entry  = 0.0
sell_entry = 0.0

buy_entry  := rc[0] > rc[2] and sell_entry[1] == 0? 2.0 : sell_entry[1] > 0 ? 0.0 : buy_entry[1]
sell_entry := rc[0] < rc[2] and buy_entry[1] == 0 ? 2.0 : buy_entry[1] > 0  ? 0.0 : sell_entry[1]

alertcondition(crossover(buy_entry ,1) , title='BUY' )
alertcondition(crossover(sell_entry ,1), title='SELL')
于 2018-08-30T08:42:35.240 回答
0

你必须这样做

if("Your buy condition here")
    strategy.entry("Buy Alert",true,1)

if("Your sell condition here")
    strategy.entry("Sell Alert",false,1)

这是它的一种非常基本的形式,但它有效。您收到重复的警报,因为条件更频繁地满足。但是使用 strategy.entry(),这不会发生

触发卖出时,按照纸面交易,卖出的数量将翻倍(一个减少多头头寸,一个创建空头头寸)

PS:您将不得不添加代码来创建警报并输入这个study()不是strategy()

于 2021-03-04T05:40:30.553 回答