Pine script 如何定义两个位置之间的输赢

Pine script 如何定义两个位置之间的输赢,pine-script,Pine Script,在这段代码中,我如何才能注册一个停在“X”的位置,标记为盈利或亏损? 我需要定义它,以便能够将其用作过滤器,在上一个位置丢失后仅显示Golong或Goshort标签。 X是Golong或Goshort信号后的一个特定位置,用于停止该位置。X发生在价格与前一周高点或低点的交叉点(Golong信号为低点,Goshort信号为高点)。我的问题是如何定义一个X的特定位置相对于进行中的Golong或Goshort位置的赢或输 //此源代码受Mozilla公共许可证2.0的条款约束,位于https://m

在这段代码中,我如何才能注册一个停在“X”的位置,标记为盈利或亏损? 我需要定义它,以便能够将其用作过滤器,在上一个位置丢失后仅显示Golong或Goshort标签。
X是Golong或Goshort信号后的一个特定位置,用于停止该位置。X发生在价格与前一周高点或低点的交叉点(Golong信号为低点,Goshort信号为高点)。我的问题是如何定义一个X的特定位置相对于进行中的Golong或Goshort位置的赢或输

//此源代码受Mozilla公共许可证2.0的条款约束,位于https://mozilla.org/MPL/2.0/
//@版本=4
//陪审团
研究(title=“通用每周突破+通用过滤器”,shorttitle=“每周突破+过滤器”,叠加=真,精度=8)
prevwkH=输入(true,title=“显示上周高点?”)
prevwkL=输入(true,title=“显示上周低点?”)
//前一周的高点和低点
prevWeekHigh=security(syminfo.tickerid,'W',high[1],lookahead=true)
prevWeekLow=security(syminfo.tickerid,'W',low[1],lookahead=true)
//前一周的高点和低点
绘图(prevwkH和prevWeekHigh?prevWeekHigh:na,title=“Prev Week High”,style=plot.style\u stepline,线宽=1,颜色=color.fuchsia,透明度=20)
绘图(prevwkL和prevWeekLow?prevWeekLow:na,title=“Prev Week Low”,style=plot.style\u stepline,线宽=1,颜色=color.fuchsia,透明度=20)
//------------------------------------------------------------------------------------------
//短线和多头仓位的止损位置(在前一周低点或高点的交叉点)
Stopshort=交叉线(高,前一周高)
Stoplong=交叉(低,前一周低)
Longposmemo=false
Longposmemo:=停止?真的:停多久?错误:Longposmemo[1]
Longcond=Stopshort而非Longposmemo[1]
color_1=color.new(color.green,70)
Shortposmemo=false
Shortposmemo:=停止长?真的吗?false:Shortposmemo[1]
Shortcond=Stoplong而非Shortposmemo[1]
color_2=color.new(color.red,70)
//bgcolor(Sellnow?color_2:na)
//------------------------------------------------------------------------------------------
//长短信号
Golong=假
Golong:=高>前一周高和长秒[1]
Goshort=false
Goshort:=低<上周末和短时段[1]
//------------------------------------------------------------------------------------------
//绘图:停止位置的X
plotchar(Longcond,char='X',location=location.overbar,color=color.yellow)
plotchar(Shortcond,char='X',location=location.belowbar,color=color.yellow)
plotshape(Golong?high:na,style=shape.labelup,location=location.belowbar,color=color.lime,size=size.tiny,text=Golong,textcolor=color.black)
plotshape(Goshort?low:na,style=shape.labeldown,location=location.overbar,color=color.fuchsia,size=size.tiny,text='Goshort',textcolor=color.black)
//警报
alertcondition(Golong,title=“弱突破做多”,message=“WBO做多”)
alertcondition(Goshort,title=“弱突破做空”,message=“WBO做空”)
//------------------------------------------------------------------------------------------
//过滤器,仅显示之前丢失位置(长或短)之后的信号
// This source code is subject to the terms of the Mozilla Public License 2.0 at    https://mozilla.org/MPL/2.0/
//@version=4
//By Juros

study(title="Universal weekly breakout + universal filter", shorttitle="weekly breakout+  filter", overlay=true, precision=8)
prevwkH = input(true, title="Show previous week high?")
prevwkL = input(true, title="show previous week low?")

//previous week high and low
prevWeekHigh = security(syminfo.tickerid, 'W', high[1], lookahead=true)
prevWeekLow = security(syminfo.tickerid, 'W', low[1], lookahead=true)

//previous Week high and low Plots
plot(prevwkH and prevWeekHigh ? prevWeekHigh : na, title="Prev Week High", style=plot.style_stepline, linewidth=1, color=color.fuchsia, transp=20)
plot(prevwkL and prevWeekLow ? prevWeekLow : na, title="Prev Week Low", style=plot.style_stepline, linewidth=1, color=color.fuchsia, transp=20)

//------------------------------------------------------------------------------------------

// stop location for short and long position (at crossover of previous week low or high)
Stopshort = crossover (high, prevWeekHigh)
Stoplong = crossunder (low, prevWeekLow)

Longposmemo = false
Longposmemo := Stopshort ? true : Stoplong ? false : Longposmemo[1]

Longcond = Stopshort and not Longposmemo[1]
color_1 = color.new(color.green, 70)


Shortposmemo = false
Shortposmemo := Stoplong ? true : Stopshort ? false : Shortposmemo[1]

Shortcond = Stoplong and not Shortposmemo[1]
color_2 = color.new(color.red, 70)
//bgcolor(Sellnow ? color_2 : na)

//------------------------------------------------------------------------------------------

// Signal for long and short
Golong = false 
Golong := high > prevWeekHigh and Longcond[1]

Goshort = false
Goshort := low < prevWeekLow and Shortcond[1]


//------------------------------------------------------------------------------------------

// plots : X where the position is stopped
plotchar (Longcond, char='X', location=location.abovebar, color=color.yellow)
plotchar (Shortcond, char='X', location=location.belowbar, color=color.yellow)


plotshape (Golong ? high : na, style = shape.labelup, location = location.belowbar,   color=color.lime, size=size.tiny, text = 'GOLONG', textcolor=color.black)
plotshape (Goshort ? low : na, style = shape.labeldown, location = location.abovebar, color=color.fuchsia, size=size.tiny, text ='GOSHORT', textcolor=color.black)

// alerts
alertcondition(Golong, title="Weakly breakout go long", message="WBO go long")
alertcondition(Goshort, title="weakly breakout go short", message="WBO go short")

//------------------------------------------------------------------------------------------

// Filter to show only those signals that follow on the previous position (long or short) that was a loss