我的公式里有這么一段:
MA1:MA(CLOSE,N1);
MA2:MA(CLOSE,N2);
開多1: buy(CROSS(MA1,MA2),1,nextopen);
開多2: sellshort(CROSS(MA1,MA2),1,nextopen);
開空1: buyshort(CROSS(MA2,MA1),1,nextopen);
開空2: sell(CROSS(MA2,MA1),1,nextopen);
而我想要的結果是,當MA1上穿MA2時,開倉買多一手;然后等MA1下穿MA2時,反手一手。如果在測試期間里,MA1先下穿MA2,則開倉賣空一手;等MA1上穿MA2時,反手一手。
我有點講不太明白了。反正就是無論上穿還是下穿,我都想要它執行買賣指令。手頭有貨就反手,手頭沒貨就按上穿買下穿賣的規則執行。
一開倉就停不下來了,一直反手操作。
我這個公式能達到這種效果嗎?我有點懷疑。因為它有點重復,我不知道哪個優先。請高手指點一下,謝謝!
平空: sellshort(CROSS(MA1,MA2),1,nextopen);
開多: buy(CROSS(MA1,MA2),1,nextopen);
平多: sell(CROSS(MA2,MA1),1,nextopen);
開空: buyshort(CROSS(MA2,MA1),1,nextopen);
順序要改成這樣
非常感謝老師解答。雖然還是不明白這個順序有什么重要性,但現在在圖形上出現的已經是多空都有連線標識了。原來只有一種,要么全顯示多,要么全顯示空。
我這個公式在圖形里顯示總是在出現信號的當天進行操作。而我的本意是出現信號的次日開盤價操作。為什么會這樣呢?我是用的nextopen,難道不對嗎?
代碼里面只能體現出價位,而不會去判斷下單時間
如果你是在日線上操作然后希望次日下單的,用走完k線模式去下單