我尝试用布林带编写 TP。 背后的逻辑是 TP 将根据当前收盘价发生变化。如果收盘最近越过了较低的线,那么如果价格越过中间线(基础),则将触发 TP。如果不是,则 TP 将在价格穿越上线时出现。 我想让它找到布林带内的价格,因此让它决定最安全的 TP。就像一个 2 步 TP 区域。
但是我没有得到任何 TP。该策略立即退出每个条目。 我想出了一些代码,但我仍然是初学者,所以请给我更好的建议。 欢迎提出任何建议!
代码如下: TP1 长 TP2简称
basisCOND = ta.cross(close, lower)
basisCross = ta.cross(close, basisSL)
upperCross = ta.cross(close, upper)
lookbackcross = input(4, title = "Lookback")
crossLookback = ta.barssince(basisCOND) < lookbackcross
TP1 = upper
TP2 = lower
if crossLookback
TP1 := basisSL
else
TP1 := upper
if crossLookback
TP2 := basisSL
else
TP2 := lower
strategy.exit("LONG EXIT", from_entry = "BUY", stop = TP1 )
strategy.exit("SHORT EXIT", from_entry = "SELL", stop = TP2 )
stop
参数用于止损。您需要使用 limit
参数来获利。这将在收盘时在布林线放置一个退出订单。因此,它将根据某个价格(布林带的价值)退出。
如果您想根据条件退出(例如,每当价格交叉并收于波段上方时),您应该使用
strategy.close()
功能。