首页 > 解决方案 > 在 pine 脚本中同时添加止损和获利

问题描述

我正在尝试在我的策略中使用追踪止盈和追踪止损。我在 strategy.exit 函数中使用 trail_offset 和 trail_points。使用此功能两次,一次长期,一次短期。然而,这为我的策略添加了追踪止盈功能,我现在如何添加追踪止损?附有一个示例代码,我愿意添加 5% 的追踪止损。

//@version=4
strategy("My Strategy", overlay=true)

longCondition = crossover(sma(close, 14), sma(close, 28))
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = crossunder(sma(close, 14), sma(close, 28))
if (shortCondition)
    strategy.entry("Short", strategy.short)
//Take profit and Stop Loss
strategy.exit("long exit","Long",trail_points=0.1*close/syminfo.mintick,trail_offset=0.05*close/syminfo.mintick)
strategy.exit("short exit","Short",trail_points=0.1*close/syminfo.mintick,trail_offset=0.05*close/syminfo.mintick)
    

标签: pine-script

解决方案


loss这个参数:

strategy.exit("short exit","Short",trail_points=0.1*close/syminfo.mintick,trail_offset=0.05*close/syminfo.mintick, loss = ...)

您的完整脚本将是:

//@version=4
strategy("My Strategy", overlay=true)

longCondition = crossover(sma(close, 14), sma(close, 28))
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = crossunder(sma(close, 14), sma(close, 28))
if (shortCondition)
    strategy.entry("Short", strategy.short)
//Take profit and Stop Loss
strategy.exit("long exit","Long",trail_points=0.1*close/syminfo.mintick,trail_offset=0.05*close/syminfo.mintick,loss=0.05*close/syminfo.mintick)
strategy.exit("short exit","Short",trail_points=0.1*close/syminfo.mintick,trail_offset=0.05*close/syminfo.mintick,loss=0.05*close/syminfo.mintick)

推荐阅读