AUTOFILTER的使用 [贏(yíng)順期貨](méi)
- 咨詢(xún)內(nèi)容:
請(qǐng)幫助看看,下面是同一個(gè)模型號(hào),前面是不使用AUTOFILTER,但是自已對(duì)持倉(cāng)是做了控制的。后面使作AUTOFILTER,兩者的收益差異是很大,檢查一下是第一個(gè)持倉(cāng)控制寫(xiě)法做有問(wèn)題,還是其他原因?qū)е碌模恐x謝
/**************** 不使用自動(dòng)過(guò)濾 ****************/
NN:=BARSLAST(DATE<>REF(DATE,1))+1; //當(dāng)天開(kāi)盤(pán)后的K線(xiàn)數(shù)量
HH:=REF(HHV(HIGH,NN),NN); //前一天最高價(jià)
LL:=REF(LLV(LOW,NN),NN); //前一天最低價(jià)
CC:=VALUEWHEN(DATE<>REF(DATE,1),REF(CLOSE,1)); //前一天收盤(pán)價(jià)
OO:=VALUEWHEN(DATE<>REF(DATE,1),O); //今日開(kāi)盤(pán)價(jià)
HHJ:HHV(H,NN); //今日到當(dāng)前K線(xiàn)的最高價(jià)
LLJ:=LLV(L,NN); //今日到當(dāng)前K線(xiàn)的最低價(jià)
RANGEMIN:=0.2*(OO/100); //設(shè)定區(qū)間 0.2 * (今日開(kāi)盤(pán)價(jià) / 100)
STARTNOW:=BARPOS;
RFILTER:=(HH-LL)>RANGEMIN; //過(guò)濾條件
SSETUP:HH+0.35*(CC-LL); //中軌上頂部區(qū)間:ssetup:=昨日最高+0.35*(昨天收盤(pán)-昨天最低);
BSETUP:LL-0.35*(HH-CC); //中軌下頂部區(qū)間:bsetup:=昨最低-0.35*(昨最高-昨收盤(pán));
SENTER:(1+0.07)/2*(HH+CC)-0.07*LL; //中軌上區(qū)間:senter:=((1+0.07)/2)*(昨最高+昨收盤(pán))-0.07*昨天最低;
BENTER:(1+0.07)/2*(CC+LL)-0.07*HH; //中軌下區(qū)間:benter:=((1+0.07)/2*(昨最低+昨收盤(pán))-0.07*昨天最高;
ZGS:SENTER+(HHJ-SSETUP)/3; //senter + (今天最高價(jià)格-ssetup)/3
ZGX:BENTER-(BSETUP-LLJ)/3; //BENTER-(BSETUP-今天最低價(jià)格)/3
SG:=SSETUP+0.25*(SSETUP-BSETUP); //買(mǎi)開(kāi)位:
XG:BSETUP-0.25*(SSETUP-BSETUP); //賣(mài)開(kāi)位
TT:CROSS(ZGS,L);
AA:=TIME>0900&&TIME<1435&&BARPOS>=271&&RFILTER=1; //STARTNOW>=2 表示從所選擇時(shí)間區(qū)域的第二根K線(xiàn)開(kāi)始,如2010/4/16開(kāi)始的話(huà),從17日開(kāi)始買(mǎi)賣(mài)
BB:=HHJ>SSETUP; //今最高價(jià)》SSETUPDD:=LLJ0,SPK(BUYVOL);
AA=1&&DD=1&&CROSS(H,ZGX)&&SELLVOL>0,BPK(SELLVOL);
AA=1&&CROSS(H,SG)&&BUYVOL<1&&SELLVOL<1,BK(1);
AA=1&&CROSS(XG,L)&&BUYVOL<1&&SELLVOL<1,SK(1);
((H-SKPRICE>=OO/100)||TIME>=1510)&&SELLVOL>0,BP(SELLVOL);
((BKPRICE-L>=OO/100)||TIME>=1510)&&BUYVOL>0,SP(BUYVOL);/**************** 使用自動(dòng)過(guò)濾 AUTOFILTER; ****************/
NN:=BARSLAST(DATE<>REF(DATE,1))+1; //當(dāng)天開(kāi)盤(pán)后的K線(xiàn)數(shù)量
HH:=REF(HHV(HIGH,NN),NN); //前一天最高價(jià)
LL:=REF(LLV(LOW,NN),NN); //前一天最低價(jià)
CC:=VALUEWHEN(DATE<>REF(DATE,1),REF(CLOSE,1)); //前一天收盤(pán)價(jià)
OO:=VALUEWHEN(DATE<>REF(DATE,1),O); //今日開(kāi)盤(pán)價(jià)
HHJ:HHV(H,NN); //今日到當(dāng)前K線(xiàn)的最高價(jià)
LLJ:=LLV(L,NN); //今日到當(dāng)前K線(xiàn)的最低價(jià)
RANGEMIN:=0.2*(OO/100); //設(shè)定區(qū)間 0.2 * (今日開(kāi)盤(pán)價(jià) / 100)
STARTNOW:=BARPOS;
RFILTER:=(HH-LL)>RANGEMIN; //過(guò)濾條件
SSETUP:HH+0.35*(CC-LL); //中軌上頂部區(qū)間:ssetup:=昨日最高+0.35*(昨天收盤(pán)-昨天最低);
BSETUP:LL-0.35*(HH-CC); //中軌下頂部區(qū)間:bsetup:=昨最低-0.35*(昨最高-昨收盤(pán));
SENTER:(1+0.07)/2*(HH+CC)-0.07*LL; //中軌上區(qū)間:senter:=((1+0.07)/2)*(昨最高+昨收盤(pán))-0.07*昨天最低;
BENTER:(1+0.07)/2*(CC+LL)-0.07*HH; //中軌下區(qū)間:benter:=((1+0.07)/2*(昨最低+昨收盤(pán))-0.07*昨天最高;
ZGS:SENTER+(HHJ-SSETUP)/3; //senter + (今天最高價(jià)格-ssetup)/3
ZGX:BENTER-(BSETUP-LLJ)/3; //BENTER-(BSETUP-今天最低價(jià)格)/3
SG:=SSETUP+0.25*(SSETUP-BSETUP); //買(mǎi)開(kāi)位:
XG:BSETUP-0.25*(SSETUP-BSETUP); //賣(mài)開(kāi)位
TT:CROSS(ZGS,L);
AA:=TIME>0900&&TIME<1435&&BARPOS>=271&&RFILTER=1; //STARTNOW>=2 表示從所選擇時(shí)間區(qū)域的第二根K線(xiàn)開(kāi)始,如2010/4/16開(kāi)始的話(huà),從17日開(kāi)始買(mǎi)賣(mài)
BB:=HHJ>SSETUP; //今最高價(jià)》SSETUP
DD:=LLJ=OO/100)||TIME>=1510,BP;
(BKPRICE-L>=OO/100)||TIME>=1510,SP;
AUTOFILTER; - 贏(yíng)順技術(shù)人員:
在您的過(guò)濾模型中,找不到您的開(kāi)倉(cāng)條件,請(qǐng)您補(bǔ)齊
- 贏(yíng)順客服:
NN:=BARSLAST(DATE<>REF(DATE,1))+1; //當(dāng)天開(kāi)盤(pán)后的K線(xiàn)數(shù)量
HH:=REF(HHV(HIGH,NN),NN); //前一天最高價(jià)
LL:=REF(LLV(LOW,NN),NN); //前一天最低價(jià)CC:=VALUEWHEN(DATE<>REF(DATE,1),REF(CLOSE,1)); //前一天收盤(pán)價(jià)
OO:=VALUEWHEN(DATE<>REF(DATE,1),O); //今日開(kāi)盤(pán)價(jià)
HHJ:HHV(H,NN); //今日到當(dāng)前K線(xiàn)的最高價(jià)
LLJ:=LLV(L,NN); //今日到當(dāng)前K線(xiàn)的最低價(jià)
RANGEMIN:=0.2*(OO/100); //設(shè)定區(qū)間 0.2 * (今日開(kāi)盤(pán)價(jià) / 100)//STARTNOW:=BARPOS-1; //這個(gè)寫(xiě)法欠妥,暫改為STARTNOW:=BARPOS;
STARTNOW:=BARPOS;
RFILTER:=(HH-LL)>RANGEMIN; //過(guò)濾條件
SSETUP:HH+0.35*(CC-LL); //中軌上頂部區(qū)間:ssetup:=昨日最高+0.35*(昨天收盤(pán)-昨天最低);
BSETUP:LL-0.35*(HH-CC); //中軌下頂部區(qū)間:bsetup:=昨最低-0.35*(昨最高-昨收盤(pán));
SENTER:(1+0.07)/2*(HH+CC)-0.07*LL; //中軌上區(qū)間:senter:=((1+0.07)/2)*(昨最高+昨收盤(pán))-0.07*昨天最低;
BENTER:(1+0.07)/2*(CC+LL)-0.07*HH; //中軌下區(qū)間:benter:=((1+0.07)/2*(昨最低+昨收盤(pán))-0.07*昨天最高;
ZGS:SENTER+(HHJ-SSETUP)/3; //senter + (今天最高價(jià)格-ssetup)/3
ZGX:BENTER-(BSETUP-LLJ)/3; //BENTER-(BSETUP-今天最低價(jià)格)/3SG:=SSETUP+0.25*(SSETUP-BSETUP); //買(mǎi)開(kāi)位:
XG:BSETUP-0.25*(SSETUP-BSETUP); //賣(mài)開(kāi)位TT:CROSS(ZGS,L);
AA:=TIME>0900&&TIME<1435&&BARPOS>=271&&RFILTER=1; //STARTNOW>=2 表示從所選擇時(shí)間區(qū)域的第二根K線(xiàn)開(kāi)始,如2010/4/16開(kāi)始的話(huà),從17日開(kāi)始買(mǎi)賣(mài)
BB:=HHJ>SSETUP; //今最高價(jià)》SSETUP
DD:=LLJ<BSETUP; //今最低價(jià)《BSETUP
AA=1&&BB=1&&CROSS(ZGS,L),SPK;
AA=1&&DD=1&&CROSS(H,ZGX),BPK;AA=1&&CROSS(H,SG),BK;
AA=1&&CROSS(XG,L),SK;(H-SKPRICE>=OO/100)||TIME>=1510,BP;
(BKPRICE-L>=OO/100)||TIME>=1510,SP;
AUTOFILTER;///////////////////////////////////////////
NN:=BARSLAST(DATE<>REF(DATE,1))+1; //當(dāng)天開(kāi)盤(pán)后的K線(xiàn)數(shù)量
HH:=REF(HHV(HIGH,NN),NN); //前一天最高價(jià)
LL:=REF(LLV(LOW,NN),NN); //前一天最低價(jià)CC:=VALUEWHEN(DATE<>REF(DATE,1),REF(CLOSE,1)); //前一天收盤(pán)價(jià)
OO:=VALUEWHEN(DATE<>REF(DATE,1),O); //今日開(kāi)盤(pán)價(jià)
HHJ:HHV(H,NN); //今日到當(dāng)前K線(xiàn)的最高價(jià)
LLJ:=LLV(L,NN); //今日到當(dāng)前K線(xiàn)的最低價(jià)
RANGEMIN:=0.2*(OO/100); //設(shè)定區(qū)間 0.2 * (今日開(kāi)盤(pán)價(jià) / 100)//STARTNOW:=BARPOS-1; //這個(gè)寫(xiě)法欠妥,暫改為STARTNOW:=BARPOS;
STARTNOW:=BARPOS;
RFILTER:=(HH-LL)>RANGEMIN; //過(guò)濾條件
SSETUP:HH+0.35*(CC-LL); //中軌上頂部區(qū)間:ssetup:=昨日最高+0.35*(昨天收盤(pán)-昨天最低);
BSETUP:LL-0.35*(HH-CC); //中軌下頂部區(qū)間:bsetup:=昨最低-0.35*(昨最高-昨收盤(pán));
SENTER:(1+0.07)/2*(HH+CC)-0.07*LL; //中軌上區(qū)間:senter:=((1+0.07)/2)*(昨最高+昨收盤(pán))-0.07*昨天最低;
BENTER:(1+0.07)/2*(CC+LL)-0.07*HH; //中軌下區(qū)間:benter:=((1+0.07)/2*(昨最低+昨收盤(pán))-0.07*昨天最高;
ZGS:SENTER+(HHJ-SSETUP)/3; //senter + (今天最高價(jià)格-ssetup)/3
ZGX:BENTER-(BSETUP-LLJ)/3; //BENTER-(BSETUP-今天最低價(jià)格)/3SG:=SSETUP+0.25*(SSETUP-BSETUP); //買(mǎi)開(kāi)位:
XG:BSETUP-0.25*(SSETUP-BSETUP); //賣(mài)開(kāi)位TT:CROSS(ZGS,L);
AA:=TIME>0900&&TIME<1435&&BARPOS>=271&&RFILTER=1; //STARTNOW>=2 表示從所選擇時(shí)間區(qū)域的第二根K線(xiàn)開(kāi)始,如2010/4/16開(kāi)始的話(huà),從17日開(kāi)始買(mǎi)賣(mài)
BB:=HHJ>SSETUP; //今最高價(jià)》SSETUP
DD:=LLJ<BSETUP; //今最低價(jià)《BSETUP
AA=1&&BB=1&&CROSS(ZGS,L)&&BUYVOL>0,SPK(BUYVOL);
AA=1&&DD=1&&CROSS(H,ZGX)&&SELLVOL>0,BPK(SELLVOL);AA=1&&CROSS(H,SG)&&BUYVOL<1&&SELLVOL<1,BK(1);
AA=1&&CROSS(XG,L)&&BUYVOL<1&&SELLVOL<1,SK(1);((H-SKPRICE>=OO/100)||TIME>=1510)&&SELLVOL>0,BP(SELLVOL);
((BKPRICE-L>=OO/100)||TIME>=1510)&&BUYVOL>0,SP(BUYVOL); - 網(wǎng)友回復(fù):
請(qǐng)問(wèn)根據(jù)你的原理,哪一種是您想要的結(jié)果?
根據(jù)對(duì)您的模型的分析,這兩個(gè)模型之間的差異主要是由于SPK和BPK的信號(hào)開(kāi)倉(cāng)不同而導(dǎo)致的。
在您的非過(guò)濾模型中,SPK和BPK模型由于不滿(mǎn)足BUYVOL>0和SELLVOL>0,因此無(wú)法開(kāi)倉(cāng)
AA=1&&BB=1&&CROSS(ZGS,L)&&BUYVOL>0,SPK(BUYVOL);
AA=1&&DD=1&&CROSS(H,ZGX)&&SELLVOL>0,BPK(SELLVOL);
如果以上指標(biāo)公式不適用于您常用的行情軟件
或者您想改編成選股公式,以便快速選出某種形態(tài)個(gè)股的話(huà),
相關(guān)文章
-
沒(méi)有相關(guān)內(nèi)容