Cách lọc ra những cổ phiếu theo điều kiện

Discussion in 'Thị trường chứng khoán' started by thanh_bkhn1984, Nov 16, 2016.

1481 người đang online, trong đó có 592 thành viên. 21:43 (UTC+07:00) Bangkok, Hanoi, Jakarta
  1. 1 người đang xem box này(Thành viên: 0, Khách: 1)
thread_has_x_view_and_y_reply
  1. thanh_bkhn1984

    thanh_bkhn1984 Thành viên gắn bó với f319.com

    Joined:
    Nov 17, 2013
    Likes Received:
    257
    Cám ơn bác nhiều ah. :)
  2. mautimtinhyeu

    mautimtinhyeu Thành viên gắn bó với f319.com

    Joined:
    Jan 29, 2015
    Likes Received:
    2,008
    Cái này chuẩn nè, sử dụng các phần mềm để lọc cổ phiếu có thể cho kết quả bị nhiễu. Trúng mấy con đội lái quay tay dụ gà thì xong.
  3. cp2011

    cp2011 Thành viên gắn bó với f319.com

    Joined:
    Apr 12, 2010
    Likes Received:
    1,822
    Các Bạn cho mình hỏi muốn chèn thêm cột giá cao nhất trừ đi giá thấp nhất trong phiên (H-L) thì làm thế nào ạ?
  4. sonysaigon

    sonysaigon Thành viên gắn bó với f319.com

    Joined:
    Oct 8, 2006
    Likes Received:
    2,352
    cho xin hỏi cách tính tổng volume trên số ngày giao dịch sao ạ
  5. xfarmer

    xfarmer Thành viên rất tích cực

    Joined:
    Dec 28, 2009
    Likes Received:
    40
    AddColumn(H-L,"Spread");

    n=20; // So ngay g.dich =20
    sum(V,n);
    cp2011 likes this.
  6. vanngoan

    vanngoan Thành viên quen thuộc

    Joined:
    Jun 17, 2015
    Likes Received:
    20
    Muốn filter mã nào có khối lượng tăng đột biến vd gấp 2 hoặc 3 lần trung bình 10 ngày trước đó thì làm thế nào bạn
  7. xfarmer

    xfarmer Thành viên rất tích cực

    Joined:
    Dec 28, 2009
    Likes Received:
    40
    Các bạn cũng biết liên quan đến PTKT nói chung cũng chỉ có liên quan đến giá và khối lượng. Thông qua diễn biến của giá và khối lượng để phán đoán cung cầu; xu hướng, rồi CP đó so với TT thì mạnh hay yếu.


    Lấy ví dụ:

    + Cổ phiếu tăng điểm; đóng cửa ở mức giá cao nhất trong ngày => Bullish; và cầu áp đảo cung (trong phiên)….

    + Cổ phiếu tăng điểm; đóng cửa giữa cây nến => Bullish; nhưng cầu chưa áp đảo toàn phần

    + Cổ phiếu tăng điểm, với khối lượng tăng: => Nếu không phải KL đột biến đặc biệt cần phải quan sát thêm thì cơ bản là nói diên biến tốt…



    Tương tự như vậy: Trạng thái đóng cửa cũng giúp NĐT đưa ra được phán đoán cho giá cp.

    Các diễn biến giá có thể tóm lược như sau:

    + Tăng, giảm

    + Đóng cửa: Cao nhất, thấp nhất, giữa, vùng cao nhất thấp nhất của cây nến trong ngày.

    + Biến động trong phiên (High – Low): Thấp; Trung bình; cao; rất thấp & rất cao…. Ví dụ: biến động đỏ -trần; khác với biến động đỏ nhẹ & xanh nhẹ cho toàn phiên.

    + Khối lượng: Trung bình; Cao; Thấp; rất cao; rất thấp; đột biến; …..


    Để lượng hóa, cụ thể hóa các ý tưởng trên chúng ta có đoạn mã sau:



    ScanPrice=ParamList("Scan stocks that close on ","Very High|High|Mid|Low|Very Low|All|NOT Very High|NOT Very Low",1);

    // Dùng để xác định xem sẽ scan những cô phiếu đóng cửa ở mức nào trong phiên-Close on: Rất cao; thấp nhất trong phiên….


    ScanBar=ParamList("The price is (Up or down)","Down|Up|Level|All",3);

    // Dùng để xác định xem chúng ta định scan phiên hôm nay tăng hay giảm so với phiên hôm trước.


    scbar=1*(ScanBar=="Down")+2*(ScanBar=="Up")+4*(ScanBar=="Level") +8*(ScanBar=="All");

    BarFilter0=(scbar==1)*(CRef(C,-1))+(scbar==4)*(C==Ref(C,-1))+(scbar==8);


    ScanSpread=ParamList("Scan stocks have spread ","All|Ultra Wide|Wide|Normal|Above Average|Below Average|Narrow|NOT Ultra Wide|NOT Wide|NOT Narrow",0);

    // Dùng để xác định xem chúng ta định scan những cổ phiếu có biên độ biến động trong phiên như nào: rộng, hẹp,cao thấp….


    ScanVolume=ParamList("Scan stocks have volume ","All|Very High|High|Normal|Above Average|Below Average|Low|Very Low|Volume Increase|Volume Decrease|Volume Bullish|Volume Bearish|NOT Very High|NOT High|NOT Low|NOT Very Low",0);


    // Dùng để xác định xem chúng ta định scan những cổ phiếu có KL như nào trong phiên: đột biến, rất cao, trung bình,….hay bỏ qua qua tiêu chí này….


    // Nếu muốn bỏ qua chúng ta chọn All.

    // Dat tham so………..

    sfn=Param("Spread Factor Narrow",0.7,0.2,1,0.1);

    // sfn la tham so xac dinh muc nao thi bien dong trong phien duoc coi la thap (bien do hep). Mac dinh 70% so voi trung binh.

    sfw=Param("Spread Factor Wide",1.5,1.2,5,0.1);

    // sfw la tham so xac dinh muc nao thi duoc coi la bien do rong; mac dinh 1.5 lan so voi trung binh

    Vfl=Param("Volume Factor Low",0.7,0.2,1,0.1);

    Vfh=Param("Volume Factor High",1.3,0.2,5,0.1);

    // vfl; vfh cung tuong tu

    // Trend Indicators Params

    periodS=Param("Period of Short-term",15,3,300);

    // So ngay dung de phan tich xu huong ngan han – Ky phan tich ngan han (15 ngày)


    periodM=Param("Period of Mid-term",50,3,200);

    periodL=Param("Period of Long-term",100,3,200);


    // Xac dinh tinh chat cua khoi luong.

    Vrg=MA(V,periodS); // Khoi luong trung binh

    Volume_High=V>Vfh*Vrg; // KL cao: gap vfh lan so voi vrg (k.l trung bình)

    Volume_Low=VVrg; // KL lon hon trung binh

    Volume_Below=VRef(V,-1); // KL tang

    Volume_Increase=Volume_Up;// KL tang

    Volume_Down=VVfh*Vrg*1.5; // KL rat cao

    Volume_Very_Low=V3*Vrg; // KL bien dong dac biet cao





    Spread=H-L;

    // Xac dinh tinh chat cua bien dong gia trong phien..

    Spread_MA=Wilders(Spread,periods); // Bi?n ??ng giá trung bình trong phiên -

    /* Ham Wilders & MA co su chenh nhau ve gia tri.

    */

    arg=Spread_MA;

    spread_Average=(spread>sfn*spread_MA)*(spread=sfw*spread_MA; // Bien do rong – Bien dong rat manh.

    spread_narrow=spreadSpread_MA; // Bien do > T.Binh

    spread_Below=spreadRef(Spread,-1);// Bien dong manh hon hom truoc

    spread_narrower=spread1.5*sfw*Spread_MA; // Qua manh



    // Price Action – Gia dong cua o vi tri nao cua cay nen.

    down_bar=CRef(C,-1);

    Level_bar=C==Ref(C,-1);

    // Close Action

    Cloc=C-L;

    y=Cloc/Spread;


    y1=IIf(Spread>0,y,IIf(C0.6);

    Close_High=Close_Up;

    Close_down=(y10.4);

    Close_Very_Low=(y1=0.75);

    Close_on_High=(y1==1);

    Close_on_Low=(y1==0);

    Close_Above_Mid=y1>0.5;

    Close_Below_Mid=y1<0.5;


    // Tto hop tin hieu Spread.

    scSpr=1*(ScanSpread=="Ultra Wide")+2*(ScanSpread=="Wide")+4*(ScanSpread=="Normal") +8*(ScanSpread=="Above Average")+

    16*(ScanSpread=="Below Average")+ 32*(ScanSpread=="Narrow")+64*(ScanSpread=="All")+128*(ScanSpread=="NOT Ultra Wide")+256*(ScanSpread=="NOT Wide")+512*(ScanSpread=="NOT Narrow");


    SpreadFilter0=(scSpr==1)*Spread_Ultra_Wide+(scSpr==2)*Spread_Wide+(scSpr==4)*Spread_Normal+(scSpr==8)*Spread_Above+

    (scSpr==16)*Spread_Below+(scSpr==32)*Spread_Narrow+(scSpr==64)+(scSpr==128)*(NOT Spread_Ultra_Wide)+(scSpr==256)*(NOT spread_Wide)+(scSpr==512)*(NOT spread_narrow);


    Volume_Bullish=(Close_Up AND Volume_Increase AND (spread_Wider OR spread_above))

    OR

    (Close_down AND Volume_decrease AND (spread_narrower OR spread_below) AND NOT Close_low);


    Volume_Bearish=(Close_down AND Volume_Increase AND (spread_Wider OR spread_above) AND Close_Low)

    OR

    (Close_up AND Volume_decrease AND (spread_narrower OR spread_below) AND NOT Close_high);


    // To hop tin hieu Khoi luong


    scV=1*(ScanVolume=="Very High")+2*(ScanVolume=="High")+4*(ScanVolume=="Normal") +8*(ScanVolume=="Above Average")+

    16*(ScanVolume=="Below Average")+ 32*(ScanVolume=="Low")+64*(ScanVolume=="Very Low")+128*(ScanVolume=="All")

    +256*(ScanVolume=="Volume Increase")+512*(ScanVolume=="Volume Decrease")+1024*(ScanVolume=="Volume Bullish") + 2048*(ScanVolume=="Volume Bearish")

    + (ScanVolume=="NOT Very High")*4096+(ScanVolume=="NOT High")*8192+(ScanVolume=="NOT Low")*16384+(ScanVolume=="NOT Very Low")*32768;


    VolumeFilter0=(scV==1)*Volume_Very_High+(scV==2)*Volume_High+(scV==4)*Volume_Normal+(scV==8)*Volume_Above+

    (scV==16)*Volume_Below+(scV==32)*Volume_Low+(scV==64)*Volume_Very_Low+(scV==128)+(scv==256)*Volume_Increase+(scV==512)*Volume_Decrease

    +(scv==1024)*Volume_Bullish+(scv==2048)*Volume_Bearish+(scv==4096)*(NOT Volume_Very_High)+(scv==8192)*(NOT Volume_High)+(scv==16384)*(NOT Volume_Low)+(scv==32768)*(NOT Volume_Very_Low);


    Filter=SpreadFilter0 AND VolumeFilter0 AND BarFilter0;

    // Xac dinh text de hien thi.

    szCloseOn=WriteIf(Close_Very_High," Very High",

    WriteIf(Close_High," High",

    WriteIf(Close_Mid, " Mid",

    WriteIf(Close_Very_Low,"Very Low",

    WriteIf(Close_Low," Low","")))));


    // Volume Text

    szVolumeText= "("+WriteVal(V/Vrg,2.1)+"x ): "

    +WriteIf(Volume_Very_high,"Very High",WriteIf(Volume_High," High",

    WriteIf(Volume_Above," Above Average",WriteIf(NOT Volume_Low AND NOT Volume_Very_Low, "Below Average",

    WriteIf(NOT Volume_Very_Low,"Low","Very Low")))))

    + WriteIf(Volume_Increase, "(+)","(-)");




    AddColumn(C,"Close");

    AddTextColumn(szCloseOn,"Close On");

    AddTextColumn(szVolumeText,"Volume Action");




    z68 and vanngoan like this.
  8. vanngoan

    vanngoan Thành viên quen thuộc

    Joined:
    Jun 17, 2015
    Likes Received:
    20
    Cảm ơn bác chia sẻ rất hữu ích. Bác có những code nào filter cổ phiếu để tìm ra nó đang up trend không?
  9. vanngoan

    vanngoan Thành viên quen thuộc

    Joined:
    Jun 17, 2015
    Likes Received:
    20
    Em muốn tìm những cổ phiếu tích lũy từ 2 đến 3 tháng thì lọc sao trong amibroker chủ thớt
  10. smw

    smw Thành viên gắn bó với f319.com

    Joined:
    Sep 9, 2015
    Likes Received:
    878
    Tích lũy có nghĩa là giá cổ phiếu ko quá biến động. Dùng điều kiện này:
    HHV(Close,50) 25 DI+ > DI- xu hướng ADX hướng lên; DI+ hướng lên DI- hướng xuống.
    z68 likes this.

Share This Page