<address id="xl399"></address>

          <address id="xl399"><address id="xl399"><listing id="xl399"></listing></address></address><address id="xl399"></address>

          <address id="xl399"><form id="xl399"><th id="xl399"></th></form></address>

          <noframes id="xl399"><form id="xl399"></form>
          <address id="xl399"></address>

               您現在的位置: 南方財富網 >> 股票知識 >> 炒股專題 >> 股票公式 >> 正文
            南方財富搜索

            backset()函數的高級用法

            2009-4-26 16:40:05   來源:不詳   佚名

                
               backset()函數的高級用法:
            一、問題:如何在最后一根K線的前第6天,作上標記?
            1、先建立一個名為backset-test的公式,代碼如下:
            islastbar{該周期是否最后一個周期。最后一個周期返回值為1,其余為0}

            觀察股票指標線的圖形,正如注釋所述,最后一天顯示為1,這個1我們可理解為信號(條件)成立。其余時間,股票指標的數值為0,可理解為信號(條件)不成立。

            2、巧用backset()函數:
            ①bacdset(x,n)注釋:向前賦值,若X非0則把當前周期及前N-1周期的數值設置為1;
            ②示例:把信號向前移。
            tj1:=islastbar;{最后一天的條件}
            tj2:backset(tj1,6);
            觀察tj2股票指標線圖,發現最后6天的tj2信號都是1,即一個高度為1的矩形。公式中,還無法判斷哪天是倒數第6天。

            3、顯然倒數第6天,是上面矩形的前沿,如何在公式中,表達這個矩形的前沿?
            容易想到的辦法:
            ①倒數第6天的當天,tj2為1,更早的1天tj2=0,因此可以編出如下代碼:
            tj1:=islastbar;{最后一天的條件}
            tj2:=backset(tj1,6);
            tj3:tj2 and ref(tj2,1)=0;

            ②倒數第6天的當天,tj2為1,更早的1天tj2=0,即當天tj2比早一天的tj2更大,因此可以編出如下代碼:
            tj1:=islastbar;{最后一天的條件}
            tj2:=backset(tj1,6);
            tj3:tj2>ref(tj2,1);

            ③倒數第6天的當天,tj2為1,更早的1天tj2=0,可以想象為tj2股票指標線上穿了一條高度為0.5的水平線,因此可以編出如下代碼:
            tj1:=islastbar;{最后一天的條件}
            tj2:=backset(tj1,6);
            tj3:cross(tj2,0.5);

            ④巧用filter()過濾函數,filter(x,N),若X非0,可以讓X保持當天的值不變,且過濾其后N個周期使之數值為0。
            tj1:=islastbar;{最后一天的條件}
            tj2:=backset(tj1,6);
            tj3:filter(tj2,5);{第1次的tj2保持為1不變,其后的5個周期過濾為0}

            這樣就初步找到了4種方法,可以標記倒數第6天,若想用圖標來標記的話,代碼例舉如下:
            tj1:=islastbar;{最后一天的條件}
            tj2:=backset(tj1,6);
            tj3:=tj2>ref(tj2,1);
            drawicon(tj3,L,1);

            二、精彩公式代碼欣賞:
            1、清揚兄的波浪公式{大量應用了backset()函數技巧,使用了Dll,需要的可以到巫山論壇,向清揚兄要文件}:
            HD:="jgb.HD"(N);LD:="jgb.LD"(N);
            DRAWLINE(LD,L,HD,H,0),COLORFF9900;DRAWLINE(HD,H,LD,L,0),COLORFF9900;
            J1:=BACKSET(ISLASTBAR,MIN(BARSLAST(HD),BARSLAST(LD))+1); J2:=J1>REF(J1,1);
            DRAWLINE(J2,IF(HD,H,L),ISLASTBAR,IF(BARSLAST(HD)>BARSLAST(LD),H,L),0),COLORFF9900;
            R1:=BACKSET(ISLASTBAR,BARSLAST(HD)+1); S1:=R1>REF(R1,1); {前一高}
            T1:=BACKSET(ISLASTBAR,BARSLAST(LD)+1); U1:=T1>REF(T1,1); {前一低}
            R2:=BACKSET(S1,REF(BARSLAST(HD),1)+2); S2:=R2>REF(R2,1); {前二高}
            T2:=BACKSET(U1,REF(BARSLAST(LD),1)+2); U2:=T2>REF(T2,1); {前二低}
            短高:REF(H,BARSLAST(S1)),LINETHICK1; 短低:REF(L,BARSLAST(U1)),LINETHICK1;
            短比:(C-短低)/(短高-短低),LINETHICK0;
            DRAWLINE(S2,H,S1,H,1); DRAWLINE(U2,L,U1,L,1);
            V1:=LINEVALUE(S2,H,S1,H,0,1); V2:=LINEVALUE(U2,L,U1,L,0,1);
            DRAWICON(CROSS(C,V1),V1,4); DRAWICON(CROSS(V2,C),V2,5); 
            DRAWICON(CROSS(C,短高),短高,4); DRAWICON(CROSS(短低,C),短低,5);

            A3:=H<REF(H,REF(BARSLAST(HD),1)+1);
            B3:=REF(H,REF(BARSLAST(HD),1)+1)>REF(H,REF(BARSLAST(HD),1)+2+REF(BARSLAST(HD),REF(BARSLAST(HD),1)+2));
            D3:=A3 AND B3 AND HD; E3:=BACKSET(D3,REF(BARSLAST(HD),1)+2); HZ:=E3>REF(E3,1);{找出全部長期高點}
            A4:=L>REF(L,REF(BARSLAST(LD),1)+1);
            B4:=REF(L,REF(BARSLAST(LD),1)+1)<REF(L,REF(BARSLAST(LD),1)+2+REF(BARSLAST(LD),REF(BARSLAST(LD),1)+2));
            D4:=A4 AND B4 AND LD; E4:=BACKSET(D4,REF(BARSLAST(LD),1)+2); LZ:=E4>REF(E4,1);{找出全部長期低點}
            R3:=BACKSET(ISLASTBAR,BARSLAST(HZ)+1); S3:=R3>REF(R3,1); {前一長高}
            T3:=BACKSET(ISLASTBAR,BARSLAST(LZ)+1); U3:=T3>REF(T3,1); {前一長低}
            長高:REF(H,BARSLAST(S3)),LINETHICK2; 長低:REF(L,BARSLAST(U3)),LINETHICK2;
            長比:(C-長低)/(長高-長低),LINETHICK0;
            PARTLINE(1,長低+(長高-長低)/2),COLORRED; PARTLINE(1,長低+(長高-長低)/3),POINTDOT,COLORDDDDDD;
            PARTLINE(1,長低+2*(長高-長低)/3),POINTDOT,COLORDDDDDD;

            {下面做大盤疊加,從可見的第一根K線開始。}
            A:=BARSCOUNT(C)=SYSPARAM(2); B:=BARSLAST(A); CC:=REF(INDEXC,B)/REF(C,B);
            DD1:=INDEXO/CC; DD2:=INDEXH/CC; DD3:=INDEXL/CC; DD4:=INDEXC/CC;
            STICKLINE(M AND DD4>=REF(DD4,1),DD3,DD1,0.1,0),COLORFF66FF;
            STICKLINE(M AND DD4>=REF(DD4,1),DD4,DD2,0.1,0),COLORFF66FF;
            STICKLINE(M AND DD4>=REF(DD4,1),DD1,DD4,7,1),COLORFF66FF;
            STICKLINE(M AND DD4<REF(DD4,1),DD3,DD2,0.1,0),COLOR99FF33;
            STICKLINE(M AND DD4<REF(DD4,1),DD4,DD1,7,0),COLOR99FF33;
            背離系數:100*(C-DD4)/DD4,LINETHICK0;

            三、本壇公式高手yyzzqq的精彩代碼(macd金叉與死叉之間的最大值)
            A1:=CROSS("MACD.MACD",0);
            A2:=BARSLAST(A1);
            A3:=HHVBARS("MACD.MACD" ,A2+1);
            A4:=BACKSET(REF(A3>=1,1) AND "MACD.MACD"<0,A3);
            A5:=BACKSET(REF(A4=0,1) AND A4=1,2);
            最大值:IF(FILTER(A5,2),"MACD.MACD",0);
            DRAWICON(最大值>0,最大值,1); 
            文章來源:http://www.www.mmokapan.cn文章來源:南方財富 http://www.www.mmokapan.cn)
            (責任編輯:張元緣)
                南方財富網聲明:股市資訊來源于合作媒體及機構,屬作者個人觀點,僅供投資者參考,并不構成投資建議。投資者據此操作,風險自擔。
            商務進行時
            每日必讀
            證券導讀
            熱圖推薦

            关于南方财富网版权声明诚聘英才广告服务网站地图友情链接
            特此声明:广告商的言论与行为均与南方财富网无关
            www.southmoney.com 站长统计
            南方财富网 © 版权所有 闽ICP备18014564号-1
            日韩免费高清视频网站