簡體   English   中英

如何在tradingview pinescript中保持兩個多頭和空頭對立頭寸?

[英]How to Keep two long and short opposed positions open in tradingview pinescript?

這是一個簡單的代碼,向您展示我的意思,多頭和空頭頭寸都有止損,但問題是我希望能夠在不關閉已經打開的多頭 position 的情況下開設空頭頭寸。 正如您可能已經猜到的那樣,我想在市場緊張並且您可以獲利時測試此策略,無論哪種方式,它只需要兩個帳戶。

strategy("bothways", overlay=true)

leverage=input(5,"leverage",step=.25)
partoftrade=input(1,"partoftrade",step=.01)
StoplosssS=input(0.025,"StopLOSS SHORT",step=0.001)
StoplosssL=input(0.025,"StopLOSS LONG",step=0.001)
pertpS = input(0.02,"TP Short",step=0.01)
pertpL = input(0.02,"TP Long",step=0.01)
narrow=bbw(open,20,2)<0.005
red=open>close
green=open<close
longCondition = narrow and green
if (longCondition and strategy.opentrades<2)
    strategy.entry("L", strategy.long,qty=(strategy.equity/1)*partoftrade*leverage/open,oca_name="ocg",oca_type=strategy.oca.cancel)
strategy.exit("LE",from_entry="L",profit=close*pertpL/syminfo.mintick,loss=open*StoplosssL/syminfo.mintick,oca_name="ocg")

shortCondition = narrow and red
if (shortCondition and strategy.opentrades<2)
    strategy.entry("S", strategy.short,qty=(strategy.equity/1)*partoftrade*leverage/open,oca_name="ocg",oca_type=strategy.oca.reduce)
strategy.exit("SE",from_entry="S",profit=close*pertpS/syminfo.mintick,loss=open*StoplosssS/syminfo.mintick,oca_name="ocg")    

感謝幫助

當然,您可以將它們分成兩個不同的命令文件。 我知道這個答案不會讓你滿意,我盡力去打敗它.. 但想想一件事......盈利能力。

[雖然,恕我直言...我建議檢查每個職位的策略摘要中的“持有的合約”行,然后選擇最有利可圖的一個。 想象一下,您將這些訂單輸入到您的交易所。 您的 2 多頭將買入該合約。 當你想做空它時,它會先用你口袋里的東西 go ,並讓你選擇借用該合約或 go 保證金出售,僅當你的投資組合中沒有它時。 因此,如果它們不是相應的而是交織在一起的,它們就會相互抵消(當你在每一個收盤之前在同一個地方有藍色多頭和紅色短褲時)]

您是否嘗試過 strategy.order 命令? 並且您可以為 strategy.order 命令運行提供條件,直到為多個多頭實現特定的 position 大小。

if BuyCallSignal and strategy.position_size == 1
    strategy.order("ABCall",  strategy.long ,  when = long, qty = 1)

暫無
暫無

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

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