各位高手好,我想自訂一個簡單策略做回測,但對xs語法陌生,想從簡單開始練習
策略如下:個股成交價越過MA20的88%時進場,大於或等於MA20的115%時出場
,進場附加條件為K值需低於(x)值時,請問語法如何撰寫?
謝謝。
各位高手好,我想自訂一個簡單策略做回測,但對xs語法陌生,想從簡單開始練習
策略如下:個股成交價越過MA20的88%時進場,大於或等於MA20的115%時出場
,進場附加條件為K值需低於(x)值時,請問語法如何撰寫?
謝謝。
Hi GammaCEO早上好:
感謝您對XS的支持,若有任何XS問題,歡迎您隨時發問唷!
小幫手大概看了您的需求,您有提到回測出場策略,
不好意思,目前回測功能,尚未能設置出場策略,
僅在交易設定提供停利、停損、最大持有時間,三個出場設置,
您可以參考 策略雷達回測功能:「回測參數」說明 該網頁有各個回測參數的相關說明。
而您的進場條件,與 XS語法入門_動手做做看五-股價突破均線時的通知 相似,
您可以參考該網頁的影片範例,並修改其中的語法,應該就能達到您的進場條件需求囉!
最後,您的進場附加條件,K值需低於(x)值,
小幫手猜想您的K值應該是指KD指標的K值吧?
若是小幫手猜對的話,您可以使用Stochasticm語法,就能計算出K值囉!
以上如果有任何函數語法不清楚的地方,可以透過 http://xshelp.xq.com.tw/,
來查詢XS語法函數,裡面有詳細的說明,提供給您參考,
以上,謝謝您的詢問。
小幫手您好~
謝謝您的指示,在下將策略簡化後,先求日最低價介於均線(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;
Hi GammaCEO:
小幫手查看您的程式碼後,應該是正確的,
會在【最低價介於均線(20)的70%~80%之間】進場。
您說【均線(20)80%~50%都出現進場訊號】
是否可以提供一下此截圖畫面,方便小幫手查找錯誤原因,謝謝您。
今天又小測了一下還是怪怪的
像2506 太設的MA20為12.04,最低價為11.7,11.7/12.04=0.97
0.97應該不在觸發範圍才對,篩選出的35檔個股也很多檔不在MA20的0.7~0.8內卻也觸發了


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

小幫手查看後發現,此問題的原因為,資料讀取範圍不夠,導致執行選股腳本後的選股清單不正確,
在選股腳本中,預設的資料讀取範圍為 10 ,如下圖,
其中代表的意義,您可以查看 資料讀取範圍與腳本執行的關係 ,有相關說明。

因此,現在小幫手要協助您解決 資料讀取範圍不夠長 的問題,
請您添加此段程式碼,在您的選股腳本中,
SettotalBar(x);
在 SettotalBar 的教學語法網頁中,有相關說明,供您參考
設置此段程式碼的目的是,
設定資料讀取範圍為,您的天期參數,
以這個方法設定讀取範圍,在執行這個選股腳本後,選出來的選股清單就不會跑掉囉!
另外,若是選出來的股票商品,還是與指標不同,
那有可能是,目前的時間尚未到達轉檔資料更新時間,
因此選出來的商品與不符合指標跑出來的樣貌,
關於轉檔資料更新的時間 (文章標題:資料更新時間),您可以參考連結網址,有相關說明。
以上報告,希望能解決您的問題,謝謝您的詢問。
5 評論