1.先找最近一次dif突破0軸為A日
2.昨日dif值 除以 從A日到昨日這段期間最大dif值 要小於0.3 而且從A日到昨日這段期間每天的dif都要大於0
3.今天dif大於昨日dif
        
        請問小幫手,若我想使用下列MACD條件選股,應當如何寫呢?
- 195
 - 最後發表 Tomboy 2023 十二月 29
 
                    Tomboy
                    發文於
                    
                     
                    2023/12/17
                   
                
            
                    XQ小幫手
                    發文於
                    
                     
                    2023/12/29
                   
                
            Hello, Tomboy.
根據您的描述,小幫手寫了以下腳本,謝謝。
input: FastLength(12), SlowLength(26), MACDLength(9);
variable: difValue(0), macdValue(0), oscValue(0);
SetTotalBar((maxlist(FastLength,SlowLength,6) + MACDLength) * 4);
SetInputName(1, "DIF短期期數");
SetInputName(2, "DIF長期期數");
SetInputName(3, "MACD期數");
MACD(weightedclose(), FastLength, SlowLength, MACDLength, difValue, macdValue, oscValue);
value1 = BarsLast(difValue Cross over 0);   // 1. 先找最近一次dif突破0軸為A日
value2 = simpleHighest(difValue[1], value1);    // 2. A日到昨日這段期間最大dif值 
if 
    difValue[1] / value2 < 0.3       // 2. 昨日dif值 除以 從A日到昨日這段期間最大dif值 要小於0.3
    and difValue > difValue[1]       // 3. 今天dif大於昨日dif
    and TrueAll(difValue > 0, value1)    // 2. A日到昨日這段期間每天的dif都要大於0
then
    ret = 1;
outputField1(value1, 0, "最近一次Diff突破0天數");
outputField2(value2, 2, "期間Diff最大值");
outputField3(difValue[1], 2, "昨日Diff值");
outputField4(difValue, 2, "今日Diff值");


 
            
        
            
1 評論