想請教關於策略雷達內均線價差的觸發語法

  •   448 
  • 最後發表   GammaCEO  2016 七月 20
GammaCEO 發文於   2016/07/14

各位高手好,我想自訂一個簡單策略做回測,但對xs語法陌生,想從簡單開始練習

策略如下:個股成交價越過MA20的88%時進場,大於或等於MA20的115%時出場

,進場附加條件為K值需低於(x)值時,請問語法如何撰寫?

謝謝。

 

排序方式: 標準 | 最新
XQ小幫手 發文於   2016/07/15

Hi GammaCEO早上好:

感謝您對XS的支持,若有任何XS問題,歡迎您隨時發問唷!

 

小幫手大概看了您的需求,您有提到回測出場策略,

不好意思,目前回測功能,尚未能設置出場策略,

僅在交易設定提供停利、停損、最大持有時間,三個出場設置,

您可以參考 策略雷達回測功能:「回測參數」說明 該網頁有各個回測參數的相關說明。

 

而您的進場條件,與 XS語法入門_動手做做看五-股價突破均線時的通知 相似,

您可以參考該網頁的影片範例,並修改其中的語法,應該就能達到您的進場條件需求囉!

 

最後,您的進場附加條件,K值需低於(x)值,

小幫手猜想您的K值應該是指KD指標的K值吧?

若是小幫手猜對的話,您可以使用Stochasticm語法,就能計算出K值囉!

 

以上如果有任何函數語法不清楚的地方,可以透過 http://xshelp.xq.com.tw/

來查詢XS語法函數,裡面有詳細的說明,提供給您參考,

 

以上,謝謝您的詢問。

GammaCEO 發文於   2016/07/18

小幫手您好~

謝謝您的指示,在下將策略簡化後,先求日最低價介於均線(20)的70%~80%之間做回測

其他先不管等之後有學到新函數再加入

但在回測過程中卻發現策略雷達可以鎖定小於均線(20)80%

卻無法鎖定大於均線(20)70%的值,導致回測結果從均線(20)80%~50%都出現進場訊號

可否幫在下看看XS語法那兒出了差錯,謝謝~

1 input:x(20,"天期");
2 value1=(average(close,x));
3 value2= LowD(0);
4 condition1=value2>(value1*0.7);
5 condition2=value2<(value1*0.8);
6 if condition1=true and condition2=true then ret=1;

XQ小幫手 發文於   2016/07/19

Hi GammaCEO:

小幫手查看您的程式碼後,應該是正確的,

會在【最低價介於均線(20)的70%~80%之間】進場。

 

您說【均線(20)80%~50%都出現進場訊號】

是否可以提供一下此截圖畫面,方便小幫手查找錯誤原因,謝謝您。

GammaCEO 發文於   2016/07/19

今天又小測了一下還是怪怪的

像2506 太設的MA20為12.04,最低價為11.7,11.7/12.04=0.97

0.97應該不在觸發範圍才對,篩選出的35檔個股也很多檔不在MA20的0.7~0.8內卻也觸發了

 麻煩小編了~謝謝~

XQ小幫手 發文於   2016/07/20

Hi GammaCEO:

您說想使用20MA的資料,但是小幫手看了一下您的天期設為 200 ,請您先將天期調整為 20 唷!謝謝您,如圖紅色底線

 

小幫手查看後發現,此問題的原因為,資料讀取範圍不夠,導致執行選股腳本後的選股清單不正確,

在選股腳本中,預設的資料讀取範圍為 10 ,如下圖,

其中代表的意義,您可以查看 資料讀取範圍與腳本執行的關係 ,有相關說明。

 

因此,現在小幫手要協助您解決 資料讀取範圍不夠長 的問題,

 

請您添加此段程式碼,在您的選股腳本中,

SettotalBar(x);

SettotalBar 的教學語法網頁中,有相關說明,供您參考

 

設置此段程式碼的目的是,

設定資料讀取範圍為,您的天期參數,

以這個方法設定讀取範圍,在執行這個選股腳本後,選出來的選股清單就不會跑掉囉!

 

另外,若是選出來的股票商品,還是與指標不同,

那有可能是,目前的時間尚未到達轉檔資料更新時間,

因此選出來的商品與不符合指標跑出來的樣貌,

關於轉檔資料更新的時間 (文章標題:資料更新時間),您可以參考連結網址,有相關說明。

 

以上報告,希望能解決您的問題,謝謝您的詢問。

 

 

發表回覆
Close