LC := REF(CLOSE, 1);
RSI5 := SMA(MAX(CLOSE – LC, 0), 5, 1) / SMA(ABS(CLOSE – LC), 5, 1) * 100;
TR := MAX1(HIGH – LOW, ABS(REF(CLOSE, 1) – HIGH), ABS(REF(CLOSE, 1) – LOW));
ATR7 := MA(TR, 7);
MA5 := MA(CLOSE, 5);
MA10 := MA(CLOSE, 10);
MA20 := MA(CLOSE, 20);
MA3 := MA(CLOSE, 3);
MA8 := MA(CLOSE, 8);
VOL_RATIO := VOL / MA(VOL, 10);
BOLL_MID := MA(CLOSE, 20);
BOLL_TOP := BOLL_MID + 2 * STD(CLOSE, 20);
BOLL_BOTTOM := BOLL_MID – 2 * STD(CLOSE, 20);
BOLL_WIDTH := (BOLL_TOP – BOLL_BOTTOM) / BOLL_MID;
BOLL_NARROW := BOLL_WIDTH < REF(BOLL_WIDTH, 5) * 0.9;
SHORT_UP := MA3 > MA8;
SHORT_DOWN := MA3 < MA8;
LONG := CROSS(MA5, MA10) AND MA5 > MA20 AND SHORT_UP
AND RSI5 > 20 AND RSI5 < 80
AND VOL_RATIO > 1.3 AND BOLL_NARROW ;
SHORT := CROSS(MA10, MA5) AND MA5 < MA20 AND SHORT_DOWN
AND RSI5 < 80 AND RSI5 > 20
AND VOL_RATIO > 1.3 AND BOLL_NARROW;
LONG_STOP := BKPRICE – ATR7 * 1.5;
LONG_PROFIT := BKPRICE + ATR7 * 2.5;
SHORT_STOP := SKPRICE + ATR7 * 1.5;
SHORT_PROFIT := SKPRICE – ATR7 * 2.5;
LONG_EXIT := CLOSE<LONG_STOP OR CLOSE>LONG_PROFIT;
SHORT_EXIT := CLOSE>SHORT_STOP OR CLOSE<SHORT_PROFIT;
LONG, BK;
SHORT, SK;
LONG_EXIT, SP;
SHORT_EXIT, BP;
AUTOFILTER;
