Cafe cuối tuần!

Chủ đề trong 'Thị trường chứng khoán' bởi smw, 27/11/2016.

1541 người đang online, trong đó có 616 thành viên. 17:59 (UTC+07:00) Bangkok, Hanoi, Jakarta
  1. 1 người đang xem box này (Thành viên: 0, Khách: 1)
Chủ đề này đã có 27634 lượt đọc và 186 bài trả lời
  1. smw

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

    Tham gia ngày:
    09/09/2015
    Đã được thích:
    878
    Theo Tôi code này là 1 phần trong đoạn code xác định tự động các Pattern khá hay


    http://www.wisestocktrader.com/indicatorpasties/1605-bhaskar.txt

    Đoạn liên quan đến code của Bác là mô hình AB=CD:

    _SECTION_BEGIN("AB=CD");
    abcd_Cmin = Param("Swing C Min.",0.3, 0.3 , 1, 0.01);
    abcd_Cmax = Param("Swing C Max.",0.8, 0.8 , 1, 0.01);
    abcd_Dmin = Param("Swing D Min.",1.2, 1, 2.7, 0.01);
    abcd_Dmax = Param("Swing D Max.",3.7, 1, 4, 0.01);
    _SECTION_END();

    Cái đoạn dùng các tham số này ở đây:

    //==================================================
    // BULLISH ABCD
    // Bullish pattern found. D retracement level is not evaluated
    //==================================================
    dHigh = HighestSince(BullABCD4,H); // Tinh' gia' tri min, max cua duong Ad. Duong Ad la duong con cua AD
    dLow = LowestSince(BullABCD4,L);

    myC = ValueWhen(BullABCD4,P1H1);
    myB = ValueWhen(BullABCD4,V1L1);
    myA = ValueWhen(BullABCD4,P1H2);
    myX = ValueWhen(BullABCD4,V1L2);
    myCB = myC - myB;

    my_d_min = myCB * abcd_DMin ; // Tinh' gia' tri cua duong Ad con. Khi gia' giam? tu` tre^n xuong' thi` max -> min
    my_d_max = myCB * abcd_DMax ;
    my_Cd_min = myC - my_d_min; // Khoang dich chuyen cua duong Ad con.
    my_Cd_max = myC - my_d_max;

    BullABCD = IIf( ( dLow my_Cd_max )
    AND ( dHigh <= myC ) AND ( dLow == L),
    True, False
    );

    BullABCD = BullABCD AND (dLow < myB);





    thatha_chamchi thích bài này.
  2. cp2011

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

    Tham gia ngày:
    12/04/2010
    Đã được thích:
    1.822
    Rất cảm ơn bác nhé.
    Tôi đã phần nào hiểu được ý nghĩa các tham số trong đó
  3. smw

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

    Tham gia ngày:
    09/09/2015
    Đã được thích:
    878
    Ko có gì Bác. Trao đổi cho vui thôi. Một thời cũng miệt mài nghiên cứu mà :)):)):))
  4. smw

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

    Tham gia ngày:
    09/09/2015
    Đã được thích:
    878
    Kết qủa có đoạn code này nó tự động vẽ ra cái này cho VNM:

    Đừng hỏi Tôi nó có nghĩa là gì. Chỉ biết là nó vẽ được 1 Pattern mà các thánh TA hay chém thôi.

    [​IMG]



    --- Gộp bài viết, 10/12/2016, Bài cũ: 10/12/2016 ---
    Amibroker là 1 công cụ rất hay, hay đối cả với người ko chuyên. Chức năng hay nhất của nó là Back Test. Nhưng Explorer cũng rất hữu ích. Có thể hiểu đơn giản là:

    - Explorer: Tìm ra các cổ phiếu thỏa mãn điều kiện nào đó
    - Định nghĩa các Rule xác định điểm mua, điểm bán thể hiện trực quan trên đồ thị đồng thời back test lại với rule đó nếu chiến trên thị trường thì xác suất chiến thắng là bao nhiêu.
  5. cp2011

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

    Tham gia ngày:
    12/04/2010
    Đã được thích:
    1.822
    Đúng vậy đó bác, nó là 1 phần của .afl dùng để tìm các pattern
    OK bác, những thứ này chỉ là tham khảo.
    Tuy nhiên khi nó đã tạo được mô hình thì xác suất đến 80% là đúng (Với những mô hình chuẩn-Méo mó không tính)
    Tôi theo dõi là vậy. Đặc biệt là báo mua, nếu mua đúng điểm sẽ ít khi Cắt lỗ sau T+3
    Gần đây nhất là Vnindex, Vnm... đã báo Bullish Butterfly!
    Tiện bác cho hỏi trong các pattern sau: Bat, Butterfly, Crab, Gartley thì mô hình nào chuẩn nhất?
    --- Gộp bài viết, 10/12/2016, Bài cũ: 10/12/2016 ---
    VLC có về vùng 25-27 trong t12 này được không bác nhỉ? Thấy tuyệt vời quá!
    :drm2:drm2:drm2
  6. smw

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

    Tham gia ngày:
    09/09/2015
    Đã được thích:
    878
    Ví dụ về 1 Explorer. Mọi con sóng đều bắt đầu từ một điểm đột biến thanh khoản. Đó là điều kiện cần của 1 chân sóng. Vậy thì hàng ngày sẽ có nhu cầu tìm ra các mã có thanh khoản đột biến. Chỉ cần 1 dòng Explorer có thể giảii quyết vấn đề này. Vấn đề là quan điểm của Bạn thế nào được gọi là đột biến và ở giai đoạn nào của chu kỳ đột biến.

    Đột biến thì dễ rồi V phải ít nhất gấp đôi V hôm qua. Nhưng đột biến thực sự thì V phải lớn nhất trong thời gian đủ dài ví dụ 20 phiên. Nếu cho rằng như vậy thì ta có điều kiện: Filter = V > 2 * Ref(V, -1) AND V >= HHV(V,20);

    Rất đơn giản đúng ko, đương nhiên nên bổ sung thêm điều kiện thanh khoản. Cuối cùng scan số liệu hết hôm qua sẽ có: LAS, KMT, BHS, GSP, CTD, VCS, PPG, S99, ... Vấn đề là mã nào thỏa mãn điều kiện đủ ~X(~X(~X(
    toduythang thích bài này.
  7. smw

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

    Tham gia ngày:
    09/09/2015
    Đã được thích:
    878
    Bác hỏi khó thế. Mô hình nào cũng chuẩn Bác ạ. Vì chuẩn thì mới được nhiều người dùng. Nhưng nếu cái nào cũng đúng thì chơi chứng khoán dễ quá. Chỉ cần vài dòng lệnh là tìm được ngay rồi.

    VLC thì Tôi mua theo đột biến thanh khoản, nhưng thấy cơ bản của nó tốt quá nó cứ cầm thôi. Cũng yên tâm vì thấy moị người than khóc đang lỗ nhiều mà tài khoản mình vẫn ổn. Thế là vui rồi.
    cp2011 thích bài này.
  8. smw

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

    Tham gia ngày:
    09/09/2015
    Đã được thích:
    878
    Đột biến thanh khoản là một kiểu chơi theo dòng tiền. Nhưng đẩy lên để làm gì? Chắc là phải XẢ rồi. Hàng ngon thì bắt đầu một chu kỳ mới, hàng lởm thì tủy vào lái. Thế nên có những người muốn tìm những mã đã tích lũy đủ dài thấy ổn thì vào chờ đột biến. Đó cũng là một cách. Và cũng chỉ vài dòng lệnh đơn giản là có kết quả rồi:

    Ví dụ muốn tìm các cổ tích lũy 20 phiên:
    Filter = HHV(Close,20) MA(V,5) * 2
    --- Gộp bài viết, 10/12/2016 ---
    Nhiều người lại cho rằng những cổ phiếu lên bền là lên từ từ, giá tăng kèm với sự gia tăng khối lượng. Một góc nhìn hay. Cho 1 dòng là có kết qủa:

    Cond1 = C > Ref(C,-1) AND Ref(C,-1) > Ref(C,-2);;
    Cond2 = V > Ref(V,-1) AND Ref(V,-1) > Ref(V,-2);
    Filter = Cond1 AND Cond2
    --- Gộp bài viết, 10/12/2016 ---
    Thế này thì dễ quá nhỉ. Kiếm tiền trên thị trường dễ thế này thì ai chẳng làm được. Chắc phải tìm ra cái gì đó cao siêu hơn một chút.
    --- Gộp bài viết, 10/12/2016 ---
    Có một lý thuyết vùng mua TAZ. Tưởng là cao siêu nhưng lọc cũng dễ thôi:

    UpTrend = MA(Close,10) > EMA(Close,30) AND (Close > MA(Close,100) OR Close > MA(Close,200));
    GAP = MA(Close,10) - EMA(Close,30) > 0.01 * MA(Close,10);
    TAZ = Close EMA(Close,30) AND (Close - EMA(Close,30)) < Close * 0.005;
    Filter = UpTrend AND TAZ AND GAP;
    z68 thích bài này.
  9. smw

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

    Tham gia ngày:
    09/09/2015
    Đã được thích:
    878
    Xem từng cổ phiếu đơn lẻ cũng chán, tự nhiên muốn xem thằng nào đang chiến thắng Index. Mình chỉ quan tâm các thằng luôn tăng cao hơn Index. Thế nó mới hoành. Làm quả scan này là có kết quả ngay:

    OUT_PER = True;
    i = 0;
    while (OUT_PER AND i > -5)
    {
    // INDEX
    C1 = Ref(Foreign("VNINDEX","C"),i);
    C2 = Ref(Foreign("VNINDEX","C"),i-1);
    // Symbol
    C3 = Ref(C,i);
    C4 = Ref(C, i-1);

    if (((C3[BarCount-1] - C4[BarCount-1]) / C3[BarCount-1] > (C1[BarCount-1] - C2[BarCount-1]) / C2[BarCount-1]))
    OUT_PER = True;
    else
    OUT_PER= False;
    i--;
    }

    Filter = OUT_PER;
    --- Gộp bài viết, 10/12/2016, Bài cũ: 10/12/2016 ---
    Chủ đề này đau đầu quá. Thư giãn thôi các Bác. Cafe quán mà:

    z68cp2011 thích bài này.
  10. suplo66

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

    Tham gia ngày:
    08/05/2010
    Đã được thích:
    224

Chia sẻ trang này