簡體   English   中英

如何在松樹策略腳本中的每個擺動低點/高點下編寫動態止損單?

[英]How to code dynamic stop loss orders under each swing low/high in a pine strategy script?

我正在嘗試編寫一個帶有止損單的策略,該止損單會自動放置在每個擺動低點或高點下方,因為我相信帶有百分比或刻度的靜態止損單更有可能在市場上失敗。

在網上搜索了很長時間后,我找不到任何適用於動態止損的腳本,但大多數腳本都適用於固定止損訂單。 然后,我遇到了

ta.lowest(low,14) / ta.highest(high,14) 函數

並認為它可以用來識別特定范圍內最低蠟燭的值,然后可以將其用作添加百分比的初始點,瞧,這將是基於擺動低點的動態止損/高的。 現在的問題是它沒有像我想象的那樣成功,我不知道為什么,這就是為什么我發布這個問題並希望有人能指出我的錯誤。

這里證明它不起作用:在達到最后 5 根蠟燭范圍內的最低蠟燭 (-0.1%) 的價格后,應停止交易

這是腳本中不起作用的部分:

// *************Entry orders*************
if longCondition
    strategy.entry("Long", strategy.long)
    
if shortCondition
    strategy.entry("Short", strategy.short)
    
//*************Stop Loss Orders*************

long_pos = strategy.position_size > 0
short_pos = strategy.position_size < 0
sl_perc = input.float(0.1, "Stop Loss Percentage under swing low/high")
sl_long =  ta.lowest(low, 5) - ta.lowest(low, 14)/100*sl_perc
sl_short = ta.highest(high,5) + ta.lowest(low, 14)/100*sl_perc

strategy.exit("LongExit", "SL Long", stop = sl_long )
strategy.exit("ShortExit", "SL Short",stop = sl_short )

感謝您的任何建議和幫助!

我想我自己找到了答案:我為出口選擇了錯誤的 ID。 真是愚蠢的錯誤:((希望這對任何想要嘗試做同樣事情的人有用)

//*************STOP LOSS*************

long_pos = strategy.position_size > 0
short_pos = strategy.position_size < 0

sl_perc = input.float(1, "Stop Loss Percentage under swing low/high")

sl_long =  ta.lowest(low, 5) - ta.lowest(low, 14)/100*sl_perc
sl_short = ta.highest(high, 5) + ta.lowest(low, 14)/100*sl_perc

strategy.exit("SL Long", "Long", stop=sl_long)
strategy.exit("SL Short", "Short", stop=sl_short)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM