next bar at market 語法問題
本帖最後由 JimmyHK 於 19-12-21 14:29 編輯如果用 %R 或 RSI 超賣加上回破某平均線止蝕或出場
var0 = PercentR( Length6 ) ;
var1 = RSI( Close, Length7 ) ;
var3 = AverageFC( Close, Length8 ) ;
if var0 < 20 or var1 < 30 then begin
if close > var3 then
Buy To Cover next bar at market ;
End ;
開市第一根K棒是陰燭,但仍然超過 var3 ,但 next bar open 已經回破 var3 之下,這樣是否不能觸發出場訊號?我實試結果的確是這樣,不知道是有其他bug或這種情況下未能觸發出場訊號是正常?
本帖最後由 jason680 於 19-12-22 14:08 編輯
if close > var3 then
Buy To Cover next bar at market ;
改成中文
如果條件 成立 然後
下一根(開始點) Buy To Cover
註: 前提是外層if條件要先成立才行
下一根(開始點) = 這根K棒結束後,接下來...
這樣應該容易多了...
then begin 語法條件可否一直維持到最後一個then直至觸發訊號為止?還是只維持到下一層 if 條件觸發?
例如:
if condition1 andcondition2 then begin
if condition3 or condition4 then begin
if condition5 andcondition6 then
Buy To Cover next bar at market ;
如 condition5 andcondition6 成立時 condition1 andcondition2 已改變,是否仍然會觸發訊號? JimmyHK 發表於 19-12-23 16:35
then begin 語法條件可否一直維持到最後一個then直至觸發訊號為止?還是只維持到下一層 if 條件觸發?
例如 ...
你的e n d在哪裡? 有t h e n就要end不是嗎?
當程式 被執行的時候 就表示外部的環境和所有的輸入值都已經固定不會變動, 所以在每一根b a r 之後的程式執行中,
所有的condition不可能有任何變動修正, 除非它跳到下一根的bar, 但是要跳到下一根bar也是要 你這一趟的程式先執行完再說.
academic 發表於 19-12-24 03:03
你的e n d在哪裡? 有t h e n就要end不是嗎?
當程式 被執行的時候 就表示外部的環境和所有的輸入值都已經 ...
所有條件不可能在同一根bar同時滿足,必定要某些條件一直維持到其他條件都滿足訊號才成立,這樣就會出現我上邊所講的情況.
如 condition5 andcondition6 成立時 condition1 andcondition2 已改變,是否仍然會觸發訊號?
------------------
你的意思是不是指condition1 andcondition2 已改變 就是不成立?
當這兩個不成立的時候condition5 andcondition6 就不會再被測試 真或假 ,
訊號就不會被觸發, 你後來的回覆我看不懂是什麼意思 這裡不知道有沒有其他高人看得懂他在說什麼? academic 發表於 19-12-27 21:07
如 condition5 andcondition6 成立時 condition1 andcondition2 已改變,是否仍然會觸發訊號?
--------- ...
具體情況是 condition2 = Marketposition < 0
而
if condition5 andcondition6 then
Buy To Cover next bar at market ;
之後和
Alert ;
一起執行,問題是平倉之後 Alert 仍然不斷出現,但執行 Buy To Cover next bar at market 指令之後 Marketposition = 0,不應該再有 Alert的嗎?
如果Buy To Cover next bar at market ; 和 alert的執行條件是相同的話 那麼 前者不執行 alert當然也不會執行 理論上必須要是這樣, 但是實務上是否會這樣發生 我不確定. 建立用debug 並設定假設條件去測試 看看情形如何
頁:
[1]