INPUT
:N(
10
,
1
,
100
,
1
);
INPUT
:M(
2
,
1
,
100
,
1
);
XH:
STKINDIEX
(
''
,
'A.A'
,
0
,
6
,-
1
,
1000
);
Z_HK:=
ROUNDS
(
C
,
2
)>
ROUNDS
(
O
,
2
)
OR
(
ROUNDS
(
C
,
2
)=
ROUNDS
(
O
,
2
)
AND
ROUNDS
(
C
,
2
)>
ROUNDS
(
REF
(
C
,
1
),
2
));
Z_LK:=
ROUNDS
(
C
,
2
)<
ROUNDS
(
O
,
2
)
OR
(
ROUNDS
(
C
,
2
)=
ROUNDS
(
O
,
2
)
AND
ROUNDS
(
C
,
2
)<=
ROUNDS
(
REF
(
C
,
1
),
2
));
HH:
REF
(
HHV
(
H
,
20
),
1
);
LL:
REF
(
LLV
(
L
,
20
),
1
);
X:
REF
(
COUNT
(Z_LK,
TODAYBAR
)>=N,
1
)
AND
Z_HK
AND
TODAYBAR
>=
10
;
LL_BAR:
BARSSINCE2
(
REF
(
COUNT
(Z_LK,
TODAYBAR
)>=N,
1
)
AND
Z_HK
AND
TODAYBAR
>=
10
,
TODAYBAR
);
CON3:LL_BAR>
20
;
CON4:
H
>HH;
CON5:
L
<LL;
IF
XH
AND
CON3
AND
CON4
THEN
BUY
(
HOLDING
=
0
,
1
,
MARKET
);
BUY_DAY:=
ref
(
DATE
,
ENTERBARS
);
IF
TRADINGDATEDIFF( BUY_DAY,
DATE
)>=M
AND
TODAYBAR
=
1
AND
O
<
REF
(
C
,
1
)
THEN
SELL
(
HOLDING
>
0
,
HOLDING
,
LIMIT
,
OPEN
);
IF
TRADINGDATEDIFF( BUY_DAY,
DATE
)>M
AND
REF
(
O
,
TODAYBAR
-
1
)>
REF
(
C
,
TODAYBAR
)
AND
TODAYBAR
>
20
AND
CON5
THEN
SELL
(
HOLDING
>
0
,
HOLDING
,
MARKET
);