警示策略 寫法問題

  •   100 
  • 最後發表   kevin0428  2021 一月 25
kevin0428 發文於   2021/01/22

小編您好  我寫了一個警示策略 但在回測時發現有些進場點跟我設想的位置不大一樣 

我不確定是哪寫錯!

我的想法是在突破20日內的高點進場

但以這支金麗科舉例

第一 回測時出現7/22 7/23 7/24 7/27四天的進場點  但回圖上檢視 卻發現並沒有突破區間內的高點(高點在80的價位) 

第二 20日區間的整理幅度有不是我設定的22%  照圖上去計算應該有60%

不曉得是哪裡有問題

附上我的警示策略語法

附加文件

排序方式: 標準 | 最新
XQ小幫手 發文於   2021/01/25

kevin0428 您好

小幫手覺得問題出在這段

if (h1-l1)/l1<=ratio/100 then 
    begin
  condition3 =volume> average(volume,5);
  condition4 =high crosses over h1;
  condition5 =difValue > 0;
  condition6 =value1 > 0;
  condition7=close > h1;
 end;

我用程式的判斷邏輯解釋給您聽

假設1/22  (h1-l1)/l1<=ratio/100 這條件有符合

所以近來 condition3 4 5 6 7 判斷  而其中5 6 7 為true

而如果1/25  (h1-l1)/l1<=ratio/100 不符合 

那condition5 6 7 的紀錄依然會是true 

因為 (h1-l1)/l1<=ratio/100 這個沒成立 所以程式讀不到其中的條件 使 condition做判斷 

您可以使用print功能去觀看 會比較了解其中意涵

-----

您的解決辦法有兩種 

1. 把(h1-l1)/l1<=ratio/100 分別寫進condition裡

ex condition3 =volume> average(volume,5) and (h1-l1)/l1<=ratio/100;

2. 把if (h1-l1)/l1<=ratio/100 then  後面寫一段 else  

condition3=false  condition4=false ......

 

kevin0428 發文於   2021/01/25

謝謝您  我找時間試試看

  • 按讚來自於
  • b24524658
kevin0428 發文於   2021/01/25

 感謝 可以了!!

 

發表回覆
Close