您現在的位置:程序化交易>> 期貨公式>> 文華財經>> 文華財經知識>>正文內容

AUTOFILTER的使用 [贏順期貨]

  • 咨詢內容:

    請幫助看看,下面是同一個模型號,前面是不使用AUTOFILTER,但是自已對持倉是做了控制的。后面使作AUTOFILTER,兩者的收益差異是很大,檢查一下是第一個持倉控制寫法做有問題,還是其他原因導致的?謝謝

    /**************** 不使用自動過濾 ****************/
    NN:=BARSLAST(DATE<>REF(DATE,1))+1; //當天開盤后的K線數量
    HH:=REF(HHV(HIGH,NN),NN); //前一天最高價
    LL:=REF(LLV(LOW,NN),NN); //前一天最低價
    CC:=VALUEWHEN(DATE<>REF(DATE,1),REF(CLOSE,1)); //前一天收盤價
    OO:=VALUEWHEN(DATE<>REF(DATE,1),O); //今日開盤價
    HHJ:HHV(H,NN); //今日到當前K線的最高價
    LLJ:=LLV(L,NN); //今日到當前K線的最低價
    RANGEMIN:=0.2*(OO/100); //設定區(qū)間 0.2 * (今日開盤價 / 100)
    STARTNOW:=BARPOS;
    RFILTER:=(HH-LL)>RANGEMIN; //過濾條件
    SSETUP:HH+0.35*(CC-LL); //中軌上頂部區(qū)間:ssetup:=昨日最高+0.35*(昨天收盤-昨天最低);
    BSETUP:LL-0.35*(HH-CC); //中軌下頂部區(qū)間:bsetup:=昨最低-0.35*(昨最高-昨收盤);
    SENTER:(1+0.07)/2*(HH+CC)-0.07*LL; //中軌上區(qū)間:senter:=((1+0.07)/2)*(昨最高+昨收盤)-0.07*昨天最低;
    BENTER:(1+0.07)/2*(CC+LL)-0.07*HH; //中軌下區(qū)間:benter:=((1+0.07)/2*(昨最低+昨收盤)-0.07*昨天最高;
    ZGS:SENTER+(HHJ-SSETUP)/3; //senter + (今天最高價格-ssetup)/3
    ZGX:BENTER-(BSETUP-LLJ)/3; //BENTER-(BSETUP-今天最低價格)/3
    SG:=SSETUP+0.25*(SSETUP-BSETUP); //買開位:
    XG:BSETUP-0.25*(SSETUP-BSETUP); //賣開位
    TT:CROSS(ZGS,L);
    AA:=TIME>0900&&TIME<1435&&BARPOS>=271&&RFILTER=1; //STARTNOW>=2 表示從所選擇時間區(qū)域的第二根K線開始,如2010/4/16開始的話,從17日開始買賣
    BB:=HHJ>SSETUP; //今最高價》SSETUP

    DD:=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);

     

     

     

    /**************** 使用自動過濾 AUTOFILTER; ****************/
    NN:=BARSLAST(DATE<>REF(DATE,1))+1; //當天開盤后的K線數量
    HH:=REF(HHV(HIGH,NN),NN); //前一天最高價
    LL:=REF(LLV(LOW,NN),NN); //前一天最低價
    CC:=VALUEWHEN(DATE<>REF(DATE,1),REF(CLOSE,1)); //前一天收盤價
    OO:=VALUEWHEN(DATE<>REF(DATE,1),O); //今日開盤價
    HHJ:HHV(H,NN); //今日到當前K線的最高價
    LLJ:=LLV(L,NN); //今日到當前K線的最低價
    RANGEMIN:=0.2*(OO/100); //設定區(qū)間 0.2 * (今日開盤價 / 100)
    STARTNOW:=BARPOS;
    RFILTER:=(HH-LL)>RANGEMIN; //過濾條件
    SSETUP:HH+0.35*(CC-LL); //中軌上頂部區(qū)間:ssetup:=昨日最高+0.35*(昨天收盤-昨天最低);
    BSETUP:LL-0.35*(HH-CC); //中軌下頂部區(qū)間:bsetup:=昨最低-0.35*(昨最高-昨收盤);
    SENTER:(1+0.07)/2*(HH+CC)-0.07*LL; //中軌上區(qū)間:senter:=((1+0.07)/2)*(昨最高+昨收盤)-0.07*昨天最低;
    BENTER:(1+0.07)/2*(CC+LL)-0.07*HH; //中軌下區(qū)間:benter:=((1+0.07)/2*(昨最低+昨收盤)-0.07*昨天最高;
    ZGS:SENTER+(HHJ-SSETUP)/3; //senter + (今天最高價格-ssetup)/3
    ZGX:BENTER-(BSETUP-LLJ)/3; //BENTER-(BSETUP-今天最低價格)/3
    SG:=SSETUP+0.25*(SSETUP-BSETUP); //買開位:
    XG:BSETUP-0.25*(SSETUP-BSETUP); //賣開位
    TT:CROSS(ZGS,L);
    AA:=TIME>0900&&TIME<1435&&BARPOS>=271&&RFILTER=1; //STARTNOW>=2 表示從所選擇時間區(qū)域的第二根K線開始,如2010/4/16開始的話,從17日開始買賣
    BB:=HHJ>SSETUP; //今最高價》SSETUP
    DD:=LLJ=OO/100)||TIME>=1510,BP;
    (BKPRICE-L>=OO/100)||TIME>=1510,SP;
    AUTOFILTER;

     

  • 贏順技術人員:

    在您的過濾模型中,找不到您的開倉條件,請您補齊

     

  • 贏順客服:

    NN:=BARSLAST(DATE<>REF(DATE,1))+1;   //當天開盤后的K線數量

    HH:=REF(HHV(HIGH,NN),NN);            //前一天最高價
    LL:=REF(LLV(LOW,NN),NN);             //前一天最低價

    CC:=VALUEWHEN(DATE<>REF(DATE,1),REF(CLOSE,1));     //前一天收盤價
    OO:=VALUEWHEN(DATE<>REF(DATE,1),O);                //今日開盤價
    HHJ:HHV(H,NN);                                    //今日到當前K線的最高價
    LLJ:=LLV(L,NN);                                    //今日到當前K線的最低價
    RANGEMIN:=0.2*(OO/100);                            //設定區(qū)間   0.2 * (今日開盤價 / 100)

    //STARTNOW:=BARPOS-1;                              //這個寫法欠妥,暫改為STARTNOW:=BARPOS;
    STARTNOW:=BARPOS;


    RFILTER:=(HH-LL)>RANGEMIN;                        //過濾條件
    SSETUP:HH+0.35*(CC-LL);                           //中軌上頂部區(qū)間:ssetup:=昨日最高+0.35*(昨天收盤-昨天最低);
    BSETUP:LL-0.35*(HH-CC);                           //中軌下頂部區(qū)間:bsetup:=昨最低-0.35*(昨最高-昨收盤);
    SENTER:(1+0.07)/2*(HH+CC)-0.07*LL;                //中軌上區(qū)間:senter:=((1+0.07)/2)*(昨最高+昨收盤)-0.07*昨天最低;
    BENTER:(1+0.07)/2*(CC+LL)-0.07*HH;                //中軌下區(qū)間:benter:=((1+0.07)/2*(昨最低+昨收盤)-0.07*昨天最高;
    ZGS:SENTER+(HHJ-SSETUP)/3;                        //senter + (今天最高價格-ssetup)/3
    ZGX:BENTER-(BSETUP-LLJ)/3;                        //BENTER-(BSETUP-今天最低價格)/3

    SG:=SSETUP+0.25*(SSETUP-BSETUP);                   //買開位:
    XG:BSETUP-0.25*(SSETUP-BSETUP);                   //賣開位

    TT:CROSS(ZGS,L);

    AA:=TIME>0900&&TIME<1435&&BARPOS>=271&&RFILTER=1;  //STARTNOW>=2 表示從所選擇時間區(qū)域的第二根K線開始,如2010/4/16開始的話,從17日開始買賣
    BB:=HHJ>SSETUP;                                     //今最高價》SSETUP
    DD:=LLJ<BSETUP;                                     //今最低價《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;   //當天開盤后的K線數量

    HH:=REF(HHV(HIGH,NN),NN);            //前一天最高價
    LL:=REF(LLV(LOW,NN),NN);             //前一天最低價

    CC:=VALUEWHEN(DATE<>REF(DATE,1),REF(CLOSE,1));     //前一天收盤價
    OO:=VALUEWHEN(DATE<>REF(DATE,1),O);                //今日開盤價
    HHJ:HHV(H,NN);                                    //今日到當前K線的最高價
    LLJ:=LLV(L,NN);                                    //今日到當前K線的最低價
    RANGEMIN:=0.2*(OO/100);                            //設定區(qū)間   0.2 * (今日開盤價 / 100)

    //STARTNOW:=BARPOS-1;                              //這個寫法欠妥,暫改為STARTNOW:=BARPOS;
    STARTNOW:=BARPOS;


    RFILTER:=(HH-LL)>RANGEMIN;                        //過濾條件
    SSETUP:HH+0.35*(CC-LL);                           //中軌上頂部區(qū)間:ssetup:=昨日最高+0.35*(昨天收盤-昨天最低);
    BSETUP:LL-0.35*(HH-CC);                           //中軌下頂部區(qū)間:bsetup:=昨最低-0.35*(昨最高-昨收盤);
    SENTER:(1+0.07)/2*(HH+CC)-0.07*LL;                //中軌上區(qū)間:senter:=((1+0.07)/2)*(昨最高+昨收盤)-0.07*昨天最低;
    BENTER:(1+0.07)/2*(CC+LL)-0.07*HH;                //中軌下區(qū)間:benter:=((1+0.07)/2*(昨最低+昨收盤)-0.07*昨天最高;
    ZGS:SENTER+(HHJ-SSETUP)/3;                        //senter + (今天最高價格-ssetup)/3
    ZGX:BENTER-(BSETUP-LLJ)/3;                        //BENTER-(BSETUP-今天最低價格)/3

    SG:=SSETUP+0.25*(SSETUP-BSETUP);                   //買開位:
    XG:BSETUP-0.25*(SSETUP-BSETUP);                   //賣開位

    TT:CROSS(ZGS,L);

    AA:=TIME>0900&&TIME<1435&&BARPOS>=271&&RFILTER=1;  //STARTNOW>=2 表示從所選擇時間區(qū)域的第二根K線開始,如2010/4/16開始的話,從17日開始買賣
    BB:=HHJ>SSETUP;                                     //今最高價》SSETUP
    DD:=LLJ<BSETUP;                                     //今最低價《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);

     

  • 網友回復:

    請問根據你的原理,哪一種是您想要的結果?

     

    根據對您的模型的分析,這兩個模型之間的差異主要是由于SPK和BPK的信號開倉不同而導致的。

    在您的非過濾模型中,SPK和BPK模型由于不滿足BUYVOL>0和SELLVOL>0,因此無法開倉

    AA=1&&BB=1&&CROSS(ZGS,L)&&BUYVOL>0,SPK(BUYVOL);
    AA=1&&DD=1&&CROSS(H,ZGX)&&SELLVOL>0,BPK(SELLVOL);

     

 

如果以上指標公式不適用于您常用的行情軟件

或者您想改編成選股公式,以便快速選出某種形態(tài)個股的話,

可以聯系我們相關技術人員 QQ: 262069696  點擊在線交流進行 有償 改編!

 


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
主站蜘蛛池模板: 精品欧美同性videosbest| 99热精品在线播放| 最近中文字幕2019视频1| 亚洲精品中文字幕乱码三区| 精品国产呦系列在线看| 国产乱码在线观看| 亚洲精品二三区伊人久久| 在线私拍国产福利精品| yellow字幕网在线| 日本三区四区免费高清不卡| 久草手机在线播放| 欧美成人一区二区三区在线电影 | 日韩在线视频一区二区三区| 亚洲国产欧美日韩第一香蕉| 猛男猛女嘿咻视频网站| 午夜视频免费成人| 青娱乐国产在线| 国产成人综合久久精品免费| 3d动漫h在线观看| 在线播放亚洲第一字幕| а√在线地址最新版| 性高湖久久久久久久久aaaaa| 久久91精品综合国产首页| 日本高清免费不卡在线| 九九在线观看精品视频6| 欧美aaaaaaaa| 亚洲国产aⅴ成人精品无吗| 波多野结衣xxxxx在线播放| 免费一级黄色录像影片| 精品国产呦系列在线看| 啊灬啊灬啊灬快灬高潮少妇| 亚洲人成在线播放网站岛国| 国产精品网站在线观看免费传媒| 92国产精品午夜福利免费| 在线欧美精品国产综合五月| a级片视频在线观看| 天天干天天射天天操| caoporn97在线视频| 大胸年轻继拇3在线观看| chinese中国农村夫tube| 天天色天天操天天|