不同软件函数机制不同,效果可能略有差异,参考:
VARIABLE:STOPLINE:=0;
IF BARPOS<=30 THEN BEGIN
UP:=COUNT(CLOSE>REF(CLOSE,1),20);
DOWN:=COUNT(CLOSE<REF(CLOSE,1),20);
ENTRYLONGCOND:=UP/DOWN>=2/3;
ENTRYSHORTCOND:=DOWN/UP>=2/3;
UPPERBAND:=REF(HHV(HIGH,20),1);
LOWERBAND:=REF(LLV(LOW,20),1);
HH:=REF(HIGH,1);
LL:=REF(LOW,1);
END
IF BKVOL=0&&SKVOL=0 THEN BEGIN
IF REF(ENTRYLONGCOND,1) THEN BEGIN
//BUY(1,1,LIMITR,OPEN);
1,BK;
STOPLINE:=LOWERBAND;
END
END
IF REF(ENTRYSHORTCOND,1) THEN BEGIN
//BUYSHORT(1,1,LIMITR,OPEN);
1,SK;
STOPLINE:=UPPERBAND;
END
IF BKVOL>0 AND BARSBK>=1 THEN BEGIN
//IF LOWERBAND>STOPLINE THEN
STOPLINE:=LOWERBAND;
IF LOW<=STOPLINE THEN BEGIN
1,SP;
END
END
IF SKVOL>0 AND BARSSK>=1 THEN BEGIN
//IF UPPERBAND STOPLINE:=UPPERBAND;
IF HIGH>=STOPLINE THEN BEGIN
1,BP;
END
END
SS:STOPLINE,LINETHICK1;
DRAWICON(BKVOL>0||SKVOL>0,STOPLINE,11);
盈亏:MONEYTOT-500000,NODRAW,COLORYELLOW,LINETHICK2;
AUTOFILTER;
这样改下,
VARIABLE:STOPLINE:=0;
IF BARPOS>30 THEN BEGIN
UP:=COUNT(CLOSE>REF(CLOSE,1),20);
DOWN:=COUNT(CLOSE<REF(CLOSE,1),20);
ENTRYLONGCOND:UP/DOWN>=2/3;
ENTRYSHORTCOND:DOWN/UP>=2/3;
UPPERBAND:=REF(HHV(HIGH,20),1);
LOWERBAND:=REF(LLV(LOW,20),1);
HH:=REF(HIGH,1);
LL:=REF(LOW,1);
END
IF BKVOL=0&&SKVOL=0 THEN BEGIN
IF REF(ENTRYLONGCOND,1) THEN BEGIN
1,BK;
STOPLINE:=LOWERBAND;
END
END
IF REF(ENTRYSHORTCOND,1) THEN BEGIN
1,SK;
STOPLINE:=UPPERBAND;
END
IF BKVOL>0 AND BARSBK>=1 THEN BEGIN
STOPLINE:=LOWERBAND;
IF LOW<=STOPLINE THEN BEGIN
1,SP;
END
END
IF SKVOL>0 AND BARSSK>=1 THEN BEGIN
IF HIGH>=STOPLINE THEN BEGIN
1,BP;
END
END
SS:STOPLINE,LINETHICK1;
DRAWICON(BKVOL>0||SKVOL>0,STOPLINE,11);
盈亏:MONEYTOT-500000,NODRAW,COLORYELLOW,LINETHICK2;
AUTOFILTER;