【发布时间】:2021-12-08 12:55:23
【问题描述】:
我正在尝试为计算值添加止损。止损值应该是“向上”计算值。如果我使用下面的代码,我的止损高于我的多头入场,我也不确定它是否是正确的值。
Periods = input(title="ATR Period", type=input.integer, defval=10)
src = input(hl2, title="Source")
Multiplier = input(title="ATR Multiplier", type=input.float, step=0.1, defval=3.0)
changeATR= input(title="Change ATR Calculation Method ?", type=input.bool, defval=true)
showsignals = input(title="Show Buy/Sell Signals ?", type=input.bool, defval=true)
highlighting = input(title="Highlighter On/Off ?", type=input.bool, defval=true)
//////
atr2 = sma(tr, Periods)
atr= changeATR ? atr(Periods) : atr2
up=src-(Multiplier*atr)
up1 = nz(up[1],up)
up := close[1] > up1 ? max(up,up1) : up
trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend
upPlot = plot(trend == 1 ? up : na, title="Up Trend", style=plot.style_linebr, linewidth=2, color=color.green)
buySignal = trend == 1 and trend[1] == -1
//// Stop loss calculation
Stoplosspercent = if buySignal
(strategy.position_avg_price - up)/strategy.position_avg_price
/// Exit long
strategy.exit("long exit", "long", profit = strategy.position_avg_price*5/100/syminfo.mintick, loss = strategy.position_avg_price*Stoplosspercent/100/syminfo.mintick)
【问题讨论】:
标签: pine-script