1.先找最近一次dif突破0軸為A日
2.昨日dif值 除以 從A日到昨日這段期間最大dif值 要小於0.3 而且從A日到昨日這段期間每天的dif都要大於0
3.今天dif大於昨日dif
請問小幫手,若我想使用下列MACD條件選股,應當如何寫呢?
- 204
- 最後發表 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 評論