還原周線無法準確挑出我要的股票

  •   295 
  • 最後發表   Prokiss  2018 九月 04
Prokiss 發文於   2018/08/24

以下是我在策略雷達執行的腳本
還原日線本身的條件挑出來的股票都符合
但是還原周線常常會出現問題
我希望還原周線的MACD指標的DIF線是紅箭頭 也就是上漲的
OSC的柱狀體也是紅箭頭 也就是從綠收斂到紅上漲這一段

但是以今天8/25的盤中雷達 用這樣的腳本 會一直找到中鋼構 明明它的周線DIF是往下的 卻還是被挑出來
能不能幫忙確認 是哪邊有問題呢?

input: FastLengthW(12), SlowLengthW(26), MACDLengthW(9),

        Period1W(9) ,Period2W(50),FastLength(12), SlowLength(26), MACDLength(9),

        Period1(9),Period2(26),Period3(50),Period4(120),Period5(240),LengthDay(1),VolumeLimit(500); 

variable: priceW(0),EMA1W(0),SMA2W(0),DIF1W(0),MACD1W(0),Osc1W(0),price(0),EMA1(0),EMA2(0),EMA3(0),EMA4(0),EMA5(0),DIF1(0),MACD1(0),Osc1(0),LimitV(0);

//還原週

SetInputName(1, "DIF週短天數");

SetInputName(2, "DIF週長天數");

SetInputName(3, "MACD週天數");

SetInputName(4, "EMA1週");

SetInputName(5, "SMA2週");

//還原日

SetInputName(6, "DIF短天數");

SetInputName(7, "DIF長天數");

SetInputName(8, "MACD天數");

SetInputName(9, "EMA1");

SetInputName(10, "EMA2");

SetInputName(11, "EMA3");

SetInputName(12, "EMA4");

SetInputName(13, "EMA5");

SetInputName(14, "均量天期");

SetInputName(15, "最小均量");

 

//MACD 還原週

priceW = xf_weightedclose("AW");

DIF1W = XAverage(priceW, FastLengthW) - XAverage(priceW, SlowLengthW);

MACD1W = XAverage(DIF1W, MACDLengthW) ;

Osc1W = DIF1W - MACD1W ; 

 

//EMA And SMA 還原週

EMA1W=xf_EMA("AW", Close,Period1W);

SMA2W=xf_XAverage("AW",Close, Period2W);

 

 

//MACD 還原日

price = WeightedClose();

DIF1 = XAverage(price, FastLength) - XAverage(price, SlowLength);

MACD1 = XAverage(DIF1, MACDLength) ;

Osc1 = DIF1 - MACD1 ;   

 

 

//EMA 日

EMA1=EMA(Close, Period1);

EMA2=EMA(Close, Period2);

EMA3=EMA(Close, Period3);

EMA4=EMA(Close, Period4);

EMA5=EMA(Close, Period5);

 

//Limit 日

LimitV = Average(volume, LengthDay);

//function 還原週的條件

condition1= Osc1W > xf_GetValue("AW",Osc1W,1);

condition2= Dif1W > xf_GetValue("AW",Dif1W,1);

condition3= close >= EMA1W;

condition4= EMA1W >= SMA2W;

condition5= SMA2W >= xf_GetValue("AW",SMA2W,1);

//function 還原日的條件

condition11= Dif1 >= Dif1[1];

condition12= osc1 > osc1 [1];

condition13=Close>=EMA1 and Close>=EMA2 and Close>=EMA3 and Close>=EMA4 and Close>=EMA5 ;

condition14=  LimitV > VolumeLimit;

 

if (condition1 and condition2 and condition3 and condition4 and condition5) and  

   (condition11 and condition12 and condition13 and condition14) then 

ret = 1;

 

我想是不是在取今日盤中值的用法錯誤 造成計算的問題?

我用這個選法 盤中會選到一些周線DIF向下 或是周線OSC也往下 這種不符合條件的股票

請幫幫忙看一下 謝謝

 

排序方式: 標準 | 最新
XQ小幫手 發文於   2018/08/24

Hi Prokiss,

您好,請您提供策略雷達內容畫面,如下圖,以利小幫手查看問題的原因,謝謝。

Prokiss 發文於   2018/08/24
XQ小幫手 發文於   2018/08/27

Hi Prokiss,

您好,目前 XS 跨頻率取 還原日/還原週 有Bug,相關人員修繕中,

另外,若您要跨頻率取資,資料筆數要設足夠,運算的數值才會正確,

可以使用 Print 語法驗證運算數值是否正確,

最後跨頻率取 MACD,可以使用 xf_MACD 撰寫

以上說明,謝謝。

Prokiss 發文於   2018/08/27

Bug修復後 請留言告知 謝謝

  • 按讚來自於
  • b24524658
XQ小幫手 發文於   2018/09/04

Hi Prokiss,

您好,我們在最新的修復版(20180903)有修復此問題,請您安裝後試試看,

 

另外,小幫手覺得您撰寫的 MACD 跨還原週,可能不太對,

應該是用 xf_MACD 函數,進行撰寫,請您修改後再試試看,

小幫手用 xf_MACD 跑過出來的數值較正確,

 

以上說明,謝謝。

發表回覆
Close