我預期變數upCnt、downCnt最大不超過4,但結果卻會超過,想請教我語法哪邊寫錯?
腳本目的,統計當天突破/跌破均線數量
Input: direction(0, "類型(0不限 1多方 2空方)"); var:upCnt(0); var:downCnt(0); // 統計長紅突破均線數 if close > Average(close, 5) and open < Average(close, 5) then upCnt = upCnt + 1; // 突破5MA if close > Average(close,10) and open < Average(close,10) then upCnt = upCnt + 1; // 突破10MA if close > Average(close,20) and open < Average(close,20) then upCnt = upCnt + 1; // 突破20MA if close > Average(close,60) and open < Average(close,60) then upCnt = upCnt + 1; // 突破60MA // 統計長黑跌破均線數 if close < Average(close, 5) and open > Average(close, 5) then downCnt = downCnt + 1; // 跌破5MA if close < Average(close,10) and open > Average(close, 10) then downCnt = downCnt + 1; // 跌破10MA if close < Average(close,20) and open > Average(close, 20) then downCnt = downCnt + 1; // 跌破20MA if close < Average(close,60) and open > Average(close, 60) then downCnt = downCnt + 1; // 跌破60MA outputfield1(upCnt,"突破均線數"); outputfield2(downCnt,"跌破均線數"); Ret = (upCnt>=3 and direction <> 2) or (downCnt>=3 and direction <> 1);


以3701大眾控為例,突破均線數應為0,跌破均線數2但outputfield結果卻是突破均線數12 跌破4 ,數量感覺很異常,想請教一下我哪邊語法有誤??
感恩

6 評論