要找20天內,收盤價曾經小於「當時」季線的股票,

  •   143 
  • 最後發表   philinck   2024 六月 06
philinck 發文於   2024/05/12

先貼程式碼:

input: period(20); setinputname(1,"計算幾天");  //

settotalbar(period+60);  //要多會抓到N+60根K棒,

 

//

var:i(1),j(0); //還是都先宣告比較好.

condition1=false; 

var:jj(0),jjj(0);

 

repeat              //開始計算 

begin

 

//以下這段是計算[浮動季線],

//

 jj=0;  //每一次都要把計算值歸零,

 jjj=0; 

 

for j=i to 60+i         //舉例,close[15],其浮動季線就是close[16]-close[66]的平均值,

   begin

jj=jj+close[j];     //jj 是計算前60天的收盤價總和,

end;        

      jjj=jj/60;          // jjj 是 60天的平均值,

//

if close[i]<jjj then  

begin

condition1=true;

i=period;  //當小於季線,表示找到了,把「i」灌滿,準備跳出迴圈,

end;

i=i+1;  

end;       

until i>period;

      

if condition1 then ret=1;

...........................以上為語法,

當輸入天數為50天,找到的股票,比輸入天數80天的還要多,按理說,天數多,應該找出的股票比較多,可是卻相反,而且有些股票也沒找出來,如「藍天2362」,close[13]-close[17]都小於當時的季線,卻沒有找出來,

請教各位前輩,能否幫小弟看看,語法或邏輯上的錯誤,謝謝!

排序方式: 標準 | 最新
philinck 發文於   2024/06/06

謝謝小編

XS小編 發文於   2024/05/16

Hello philinck,

 

小編補充,網站上有教學區教學影片,裡面有XS語法的基礎和應用可以閱覽。

目前市面上有 三週學會程式交易:打造你的第一筆自動化交易 這本書是以XQ作教學,也可以參考看是否有幫助。

 

感謝 虎科大許教授 的熱心回覆。

philinck 發文於   2024/05/13

了解,謝謝!

 

虎科大許教授 發文於   2024/05/13

我預計在台北、台中及高雄同步開課。等LINE社群及FB粉絲專頁設計好之後就可取得課程相關資訊。

  • 按讚來自於
  • b24524658
philinck 發文於   2024/05/13

謝謝教授的回覆,因為住地為台北,距離虎尾較遠,一時間難以通勤,但仍謝謝老師推薦!

關於老師大作,不知能否私下購買,或是等老師公開發行後再行購買?

多有打擾,真是不好意思

虎科大許教授 發文於   2024/05/13

拙作「程式交易-XS策略開發與應用」並沒有對外發行,單純作為教學課程用書。預計八月份開始會開設基礎班課程(後續會有進階班課程),屆時來上課即可購買。

philinck 發文於   2024/05/13

剛剛試過了,應該是沒問題,真的要謝謝許教授的多次指導,非常感謝!

小弟看了教授的程式碼,如此簡潔有效,效能強大,真是深具魔力啊!

想多冒昧打擾教授,小弟如果想要學習,請問教授,在哪裡可以找到類似這樣的腳本參考?

還是教授有出書?如果有,也煩請教授不吝賜教,謝謝!感恩!

 

虎科大許教授 發文於   2024/05/13

在XS的腳本裡面,很多時候不需要使用迴圈。你的問題可以更有效率地處理。

input: period(20,"計算幾天");

settotalbar(period+60);

if IsLastBar then 

   begin

      condition1=TrueAny(c<average(c,60),period);

      if condition1 then ret=1;

   end;

發表回覆
Close