• Breaking News

    Friday, 9 January 2015

    Làm thế nào để chọn lọc cổ phiếu nhanh nhất ?

                Trên thị trường chứng khoán có hàng trăm mã giao dịch làm thế nào để chọn lọc mã cổ phiếu theo các chỉ báo kỹ thuật mà mình muốn một cách nhanh nhất, sau đây là hướng dẫn cách chọn lọc cổ phiếu cho các nhà đầu tư mới bắt đầu làm quen phân tích kỹ thuật và sử dụng phần mềm Amibroker.

    http://www.v2htrader.com/2015/01/cach-chon-loc-co-phieu-tu-ong_4.html


    Bước 1 : chúng ta chép code sau ( Để tiện theo dõi bài viết mình để code này trong khung cuối bài, code này được lấy trong thư viên Amibroker )
    Copy và dán vào Formular editor và lưu lại
    ( bạn có thể đặt một tên nào đó dễ nhớ để tiện việc sử dụng )
    Chương trình sẽ lưu theo mặc định : Program files\Amibroker\formulas\.file của bạn

     
    Bước 2 : Vào chương trình Ambibroker : chọn analisys --> chọn old automatic analisys : Kích dúp vào old automatic analisys màn hình sẽ hiện ra một tab nhỏ hơn
     
    Bước 3 : Trong tab này bạn bấm vào pick và tìm theo đường dẫn Program files\Amibroker\formulas\flie của bạn
     
    Chọn :
    • all symbol
    • n last day = ( …..) tùy các bạn chọn ( trong ví dụ mình chọn 2 )
    • from …. to : tùy chọn ( mình chọn 31/12/2014 đến 31/12/2014 )
    • Bấm vào explore chương trình chạy dữ liệu và cho  kết quả
     Dưới đây là code, Chúc các bạn thành công !
                                                                                                               www.v2htrader.com
    code--------------------------------------------------------------------------------------------------------------------
     
    function T3(price,periods)
    
    {
    
        s = 0.84;
    
        e1=EMA(price,periods);
    
        e2=EMA(e1,Periods);
    
        e3=EMA(e2,Periods);
    
        e4=EMA(e3,Periods);
    
        e5=EMA(e4,Periods);
    
        e6=EMA(e5,Periods);
    
        c1=-s*s*s;
    
        c2=3*s*s+3*s*s*s;
    
        c3=-6*s*s-3*s-3*s*s*s;
    
        c4=1+3*s+s*s*s+3*s*s;
    
        Ti3=c1*e6+c2*e5+c3*e4+c4*e3;
    
        return ti3;
    
    }
    
    
    
    //WAD
    
    TrueRangeHigh=Max( Ref(Close,-1), High );
    
    TrueRangeLow=Min( Ref(Close,-1), Low );
    
    WAD = Cum(IIf(C > Ref(C,-1),C-TrueRangeLow, IIf(C < Ref(C,-1),C-TrueRangeHigh,0)));
    
    wadup = WAD > EMA (WAD,20);
    
    waddn = WAD < EMA (WAd,20);
    
    wadbl = Cross(WAD, EMA(WAD,20));
    
    wadbr = Cross(EMA(WAD,20), WAD);
    
    wad_status= WriteIf(wadup, "Bullish Zone", WriteIf(waddn, "Bearish Zone", WriteIf(wadbl, "Bullish Cross", WriteIf(wadbr, "Bearish Cross", "Zilch"))));
    
    wad_Col=IIf(wadup OR wadbl, colorGreen, IIf(waddn OR wadbr, colorRed, colorLightGrey));
    
    
    
    
    
    //Trend Strength
    
    up = ADX(10) > 20;
    
    down = ADX(10) < 20;
    
    choppy = ADX(10) < PDI(10) AND ADX(10) < MDI(10);
    
    adx_status=    WriteIf(up, "Strong Trend", WriteIf(down, "Weak Trend", WriteIf( choppy, "Choppy", "Zilch")));
    
    adx_Col=IIf(up, colorGreen, IIf(down, colorRed, IIf(Choppy, colorPink, colorLightGrey)));
    
    
    
    // Coppock
    
    r1=ROC(C,14);
    
    r2=ROC(C,11);
    
    ck=EMA((r1+r2),10);
    
    upt=IIf(ck>0 AND ROC(ck,1)>0,ck,0);
    
    ups=IIf(ck>0 AND ROC(ck,1)<0,ck,0);
    
    downs=IIf(ck<0 AND ROC(ck,1)>0,ck,0);
    
    down=IIf(ck<0 AND ROC(ck,1)<0,ck,0);
    
    cop_status=    WriteIf(upt, "Uptrend", WriteIf(ups, "Uptrend Sidways", WriteIf(downs, "Downtrend Sideways", WriteIf(down, "Downtrend", "Zilch"))));
    
    cop_Col=IIf(upt, colorDarkGreen, IIf(ups, colorGreen, IIf(downs, colorOrange, IIf(down, colorRed, colorLightGrey))));
    
    
    
    //Initial Buy Signal
    
    Ibuy =  Cross(RSI(14), EMA(RSI(14),9));
    
    Isell = Cross(EMA(RSI(14),9), RSI(14));
    
    Ibuy = ExRem(Ibuy, ISell);
    
    Isell = ExRem(ISell, Ibuy);
    
    BlRSI = RSI(14) > EMA(RSI(14),9);
    
    BrRSI = RSI(14) < EMA(RSI(14),9);
    
    Ibuy_status=    WriteIf(Ibuy, "Buy Warning", WriteIf(Isell, "Sell Warning", WriteIf(BlRSI, "Bullish Zone", WriteIf(BrRSI, "Breaish Zone", "Zilch"))));
    
    I_Col=IIf(Ibuy OR BlRSI, colorGreen, IIf(Isell OR BrRSI, colorRed, colorLightGrey));
    
    
    
    //BB Breakout
    
    bbk2 = Cross(RSI(14),30) AND
    
    RSI(14) > Ref(RSI(14),-1);
    
    bbk_status=    WriteIf(bbk2, "Break RSI", "Zilch" );
    
    bbk_Col=IIf(bbk2, colorGreen, colorLightGrey);
    
    
    
    
    
    //Price Smoothing
    
    TBuy = Cross (T3(C,3), T3(C,5));
    
    TSell =  Cross (T3(C,5), T3(C,3));
    
    TBuy = ExRem(TBuy, TSell);
    
    TSell = ExRem(TSell, TBuy);
    
    Tbuy_status=    WriteIf(TBuy, "Buy", WriteIf(TSell, "Sell", "Zilch"));
    
    T_Col=IIf(TBuy, colorGreen, IIf(TSell, colorRed, colorLightGrey));
    
    
    
    //Guppy MMA
    
    P1 = EMA(C,3);
    
    P2 = EMA(C,5);
    
    P3 = EMA(C,8);
    
    P4 = EMA(C,10);
    
    P5 = EMA(C,12);
    
    P6 = EMA(C,15);
    
    P7 = EMA(C,30);
    
    P8 = EMA(C,35);
    
    P9 = EMA(C,40);
    
    P10 = EMA(C,45);
    
    P11 = EMA(C,50);
    
    P12 = EMA(C,55);
    
    P13 = EMA(C,60);
    
    GBuy = Cross (P1,P8);
    
    GSell = Cross(P8,P1);
    
    GBuy = ExRem(GBuy, GSell);
    
    GSell = ExRem(GSell, GBuy);
    
    Gbuy_status=    WriteIf(GBuy, "Buy", WriteIf(GSell, "Sell", "Zilch"));
    
    G_Col=IIf(GBuy, colorGreen, IIf(GSell, colorRed, colorLightGrey));
    
    
    
    //EMA-9
    
    MAbuy = Cross(C, EMA(C,9));
    
    MAsell= Cross(EMA(C,9),C);
    
    MAbuy = ExRem(MAbuy, MAsell);
    
    MAsell = ExRem(MAsell, MAbuy);
    
    MA1 = C > EMA(C,9);
    
    MA11 = C < EMA(C,9);
    
    MA_status=    WriteIf(MAbuy, "Buy", WriteIf(MAsell, "Sell", WriteIf(MA1, "Bullish", WriteIf(MA11, "Bearish","Zilch"))));
    
    MA_Col=IIf(MAbuy OR MA1, colorGreen, IIf(MAsell OR MA11, colorRed, colorLightGrey));
    
    
    
    //EMA-20
    
    MA2buy = Cross(C, EMA(C,20));
    
    MA2sell= Cross(EMA(C,20),C);
    
    MA2buy = ExRem(MA2buy, MA2sell);
    
    MA2sell = ExRem(MA2sell, MA2buy);
    
    MA2 = C > EMA(C,20);
    
    MA22 = C < EMA(C,20);
    
    MA2_status=    WriteIf(MA2buy, "Buy", WriteIf(MA2sell, "Sell", WriteIf(MA2, "Bullish", WriteIf(MA22, "Bearish","Zilch"))));
    
    MA2_Col=IIf(MA2buy OR MA2, colorGreen, IIf(MA2sell OR MA22, colorRed, colorLightGrey));
    
    
    
    //EMA-9 x 20
    
    MA3buy = Cross(EMA(C,9), EMA(C,20));
    
    MA3sell= Cross(EMA(C,20),EMA(C,9));
    
    MA3buy = ExRem(MA3buy, MA3sell);
    
    MA3sell = ExRem(MA3sell, MA3buy);
    
    MA3 = EMA(C,9) > EMA(C,20);
    
    MA33 = EMA(C,9) < EMA(C,20);
    
    MA3_status=    WriteIf(MA3buy, "Buy", WriteIf(MA3sell, "Sell", WriteIf(MA3, "Bullish", WriteIf(MA33, "Bearish","Zilch"))));
    
    MA3_Col=IIf(MA3buy OR MA3, colorGreen, IIf(MA3sell OR MA33, colorRed, colorLightGrey));
    
    
    
    //Midterm Bullish or Bearish
    
    mBull = C > EMA(C,50);
    
    mBear= C < EMA(C,50);
    
    mt_status=    WriteIf(mBull, "Bullish", WriteIf(mBear, "Bearish", "Zilch"));
    
    mt_Col=IIf(mBull, colorGreen, IIf(mbear, colorRed, colorLightGrey));
    
    
    
    //Longterm Bullish or Bearish
    
    Bull = C > EMA(C,200);
    
    Bear= C < EMA(C,200);
    
    lt_status=    WriteIf(Bull, "Bullish", WriteIf(Bear, "Bearish", "Zilch"));
    
    lt_Col=IIf(Bull, colorGreen, IIf(bear, colorRed, colorLightGrey));
    
    
    
    //Long-term Price Trend
    
    rc= C > EMA (C,50) AND C < EMA(C,200) AND EMA(C,50) < EMA(C,200);
    
    ac=  C > EMA (C,50) AND C > EMA(C,200) AND EMA(C,50) < EMA(C,200);
    
    bl= C > EMA (C,50) AND C > EMA(C,200) AND EMA(C,50) > EMA(C,200);
    
    wr= C < EMA (C,50) AND C > EMA(C,200) AND EMA(C,50) > EMA(C,200);
    
    ds= C < EMA (C,50) AND C < EMA(C,200) AND EMA(C,50) > EMA(C,200);
    
    br= C < EMA (C,50) AND C < EMA(C,200) AND EMA(C,50) < EMA(C,200);
    
    
    
    ltp=WriteIf(rc, "RECOVERY", WriteIf(ac, "ACCUMULATION", WriteIf(bl, "BULLISH", WriteIf(wr, "WARNING",WriteIf(ds, "DISTRIBUTION",WriteIf(br, "BEARISH", "Zilch"))))));
    
    ltp_col=IIf( rc, colorBlue, IIf( ac, colorGreen, IIf(bl, colorDarkGreen, IIf(wr, colorOrange, IIf(ds, colorRed, IIf(br, colorDarkRed, colorLightGrey ))))));
    
    
    
    G=((O-Ref(L,-1))/Ref(L,-1))*100;
    
    F=((C-Ref(C,-1))/Ref(C,-1))*100;
    
    
    
    //T-3 Delta
    
    T3Day = T3(Close, 3);
    
    T5Day = T3(Close, 5);
    
    Delta = T3Day - T5Day;
    
    
    
    
    
    // Filter=O<Ref(L,-1) AND C>Ref(C,-1)|C>Ref(O,-1)
    
    // AND L<Ref(L,-1) AND Ref(L,-1)<Ref(L,-2) AND Ref(L,-2)<Ref(L,-3)
    
    // AND V>Ref(V,-1) AND V>(MA(Ref(V,-1),5)+(MA(Ref(V,-1),5)*0.3)) AND MA(V,21)>50000;
    
    
    
    Filter=MA(V,21)>50000 AND Close < 15;
    
    
    
    Buy=Filter;
    
    
    
    AddColumn(V, "Volome", 1, IIf(V > Ref(V,-1), colorGreen, colorRed),-1);
    
    AddColumn(((V/EMA(Ref(V,-1),10)))*100, "VolSpike %", 1.2, IIf(V> EMA(Ref(V,-1),10), colorBlue, colorRed),-1);
    
    AddColumn(Delta, "Delta",1.2, IIf(delta < 0, colorRed, colorGreen),-1);
    
    AddColumn(C, "Close", 1.2, IIf(C > Ref(C,-1), colorGreen, colorRed),-1);
    
    AddColumn(G,"O Low%",1.2,-1);
    
    AddColumn(F,"C High%",1.2,-1);
    
    AddColumn(RSI(14),"RSI-14",1.2, IIf(RSI(14) > Ref(RSI(14),-1), colorGreen, colorRed),-1);
    
    AddColumn(ADX(10),"ADX-10",1.2,IIf(ADX(10) > Ref(ADX(10),-1), colorGreen, colorRed),-1);
    
    AddTextColumn(bbk_status, "Breaks", 1.6, colorWhite, bbk_Col,-1);
    
    AddTextColumn(Tbuy_status, "T3-Signal", 1.6, colorWhite, T_Col,-1);
    
    AddTextColumn(Gbuy_status, "Guppy", 1.6, colorWhite, G_Col,-1);
    
    AddTextColumn(MA_status, "EMA-9", 1.6, colorWhite, MA_Col,-1);
    
    AddTextColumn(MA2_status, "EMA-20", 1.6, colorWhite, MA2_Col,-1);
    
    AddTextColumn(MA3_status, "EMA-9x20", 1.6, colorWhite, MA3_Col,-1);
    
    AddTextColumn(Ibuy_status, "RSI signal", 1.6, colorWhite, I_Col,-1);
    
    AddTextColumn(adx_status, "Trend", 1.6, colorWhite, adx_Col,-1);
    
    AddTextColumn(cop_status, "Coppock", 1.6, colorWhite, cop_Col,-1);
    
    //AddTextColumn(wad_status, "WAD", 1.6, colorWhite, WAD_Col,-1);
    
    //AddTextColumn(mt_status, "EMA-50", 1.6, colorWhite, mt_Col,-1);
    
    //AddTextColumn(lt_status, "EMA-200", 1.6, colorWhite, lt_Col,-1);
    
    AddTextColumn(ltp, "Phase", 1.6, colorWhite, ltp_Col,-1);
    
    
    Post a Comment

    Tin chứng khoán

    Tìm hiểu Quỹ đầu tư