Quán nhỏ của Ranluc: Relative Strength và nhiều hơn thế

Discussion in 'Real Time & Real Trading--NO TEARS' started by chim_non, Mar 30, 2018.

  1. chim_non

    chim_non Moderator

    Joined:
    Nov 1, 2011
    Messages:
    21,318
    Likes Received:
    106,174
    Trophy Points:
    113
    Bác @ranluc ơi, nhà của bác đây nhé.
    Mọi người luôn chờ đón những phân tích và nhận định sắc sảo của bác :113:
     
    vincent, bokhoktx, Thanglm and 5 others like this.
  2. ranluc

    ranluc Active Member

    Joined:
    Mar 27, 2018
    Messages:
    10
    Likes Received:
    101
    Trophy Points:
    28
    Cám ơn bác @chim_non mở quán và đặt tít dùm.​
    Relative Strength - một chỉ báo đơn giản mà hiệu quả
    Chỉ báo RS - Relative Strength (Comparative) so sánh độ mạnh cp với một cp khác, hay so sánh với chỉ số ngành, chỉ số thị trường chung.
    Phương pháp giao dịch dựa trên độ mạnh cũng thường được gọi bằng tên Momentum trong các tài liệu khác.
    Chỉ báo RS này khác với chỉ báo RSI.
    Chỉ báo RS dường như không thấy nhắc đến trong các lớp PTKT bậc 1, bậc 2. Nó là 1 trong 9 bước test của phương pháp Wyckoff. Trong phương pháp VSA, cuốn Master the Markets, nó chỉ được nhắc đến ở chương cuối, trang cuối cùng. Các quỹ lớn cũng thừa nhận RS đơn giản mà hiệu quả, hơn hẳn phương pháp screening (lọc theo vốn hóa và thanh khoản như ETF).

    Phần lớn cp bị ảnh hưởng bởi chỉ số chung, đây là vấn đề tâm lý dễ nhận thấy: khi VNI, VN30 tăng, người ta cùng mua, đẩy giá lên cao, khi VNI, VN30 giảm người ta lại ào ào bán ra, đạp giá xuống. Vấn đề ở đây là cp yếu, dù nó cũng được đẩy giá khi chỉ số chung tăng, cũng không thể tăng mạnh như cp mạnh. Vì vậy chọn cổ phiếu theo các chỉ báo kỹ thuật khác như MACD, RSI... cũng không đạt hiệu quả. Lúc đó người chơi sẽ hoang mang: tui cũng theo chart, đường đỏ cắt đường xanh, vậy mà banks CE còn cp tui chọn chỉ lèo tèo 1-2 nấc.
    Phần nhỏ cp không bị ảnh hưởng bởi thị trường hay thậm chí ngươc thị trường. Tuy nhiên nhiều cơ hội nằm ở phần lớn vậy thì tìm ở phần nhỏ làm chi?

    Trong một thị trường, có cổ phiếu mạnh, có cổ phiếu yếu. Khi thị trường tăng ta cần chọn mua (long) cp tăng mạnh hơn thị trường (tăng mạnh hơn VNIndex, VN30 index). Khi thị trường giảm ta cần chọn bán (short) cp yếu hơn thị trường hay đơn giản là nghỉ ngơi.

    Dưới đây minh họa một mã cp mạnh, với code Amibroker.
    cpmanh_ANV.PNG
    Cửa sổ trên, thêm lớp chỉ số VN30 để so sánh trực tiếp, đường màu vàng.
    Code:
    _SECTION_BEGIN("Index");
    base = ParamStr("Index", "^VN30"); //VNIndex or VN30
    Nth = Param("Nth", 1,1,5);
    baseC = Foreign(base, "C");
    refBar = PeakBars(baseC,2,Nth);
    baseCn = LastvisibleValue(Ref(C/baseC,-refBar))*baseC;
    Plot( baseCn , "", colorYellow, stylethick|styleNoLabel); //index
    Title += " " + base + "=" + baseC+" ("+WriteVal(ROC(baseC, 1),1.1)+"%)";
    _SECTION_END();


    Từ 30/1 đến 9/2 VN30 giảm từ 1100 về 996, ANV không giảm, chứng tỏ mạnh hơn thị trường, mặc dù trước đó đã có 1 đợt tăng nóng từ 10 lên 14. Khi VN30 tăng từ 996 lên 1150, tăng 15% thì ANV tăng từ 14. lên 22, đạt 50%. Tin tức không có gì thêm ngoại trừ cá tra bị Mỹ đánh thuế nặng, ngành thủy sản suy giảm mạnh.

    Cửa sổ dưới là chỉ báo RS có sẵn của Amibroker, code sửa lại để dễ so sánh.
    Code
    //modified by ranluc
    _SECTION_BEGIN("RS");
    base = ParamStr("Base", "^VN30"); //GetBaseIndex() );
    Nth = Param("Nth", 1,1,5);
    change = 2 ;
    baseC = Foreign( base, "C" );
    refBar = PeakBars(baseC, change, Nth);
    relStr = RelStrength(base) *LastVisibleValue(Ref(baseC/C,-refBar))/10 - 100;
    Plot( relStr, "RS("+base+")", colorOrange, styleLine|styleThick);
    Plot( EMA(relStr, 50), "", colorBlue, styleLine );
    _SECTION_END();


    Lấy ngày tham chiếu là 26/1 khi VN30 tạo đỉnh 1104, AVN close giá 14.15, giá trị RS = 0. Ngày 9/2 VN30 điều chỉnh sâu, RS=14.6, nghĩa là so với VN30 ANV vẫn tăng 14.6%. Nếu người chơi mua VN30=996 ngày 9/2 (hay mã đại diện cho VN30 là E1VFVN30=16.35) thì đến ngày 30/3, VN30=1153, E1VFVN30=18.88, ANV=22.9. Lợi nhuận của ANV so với VN30 là =55.0%-14.6%=40.4%

    Ví dụ khác, cổ phiếu yếu:
    cpyeu_FPT.PNG
    Về kỹ thuật FPT từ tháng 11/2017 đến tháng 1/2018 liên tiếp tạo đỉnh mới cao hơn đỉnh cũ, đáy mới cao hơn đáy cũ, giao dịch theo MACD vẫn có lãi, nhưng không bằng thị trường, nghĩa là ví dụ trung bình người ta có lãi 30% thì FPT chỉ lãi 20%, thực ra là lỗ.

    Các mã trên đây chọn ngẫu nhiên, không khuyến nghị gì cả.
     
    Last edited: Mar 31, 2018
    BlueDiamond, Tin, coca and 18 others like this.
  3. ranluc

    ranluc Active Member

    Joined:
    Mar 27, 2018
    Messages:
    10
    Likes Received:
    101
    Trophy Points:
    28
    (tiếp theo)
    RelPerf.PNG
    Hàm Relative Performance của Ami. Lấy mốc so sánh 1/2/2018, đến ngày 5/3 nhóm cổ phiếu mạnh tiếp tục mạnh và chiến thắng thị trường, đường Rel Performance nằm trên đường VN30 (xanh dương). Nhóm cp yếu tiếp tục yếu, nằm dưới đường VN30.
    Sơ lược như vậy để thấy chiến lược chọn cp dựa trên RS khá hiệu quả.
     
  4. ranluc

    ranluc Active Member

    Joined:
    Mar 27, 2018
    Messages:
    10
    Likes Received:
    101
    Trophy Points:
    28
    Tool khác, chart trong ngày của danh mục VN30. So sánh các chart với VN30 có thể nhận thấy độ mạnh yếu của từng mã trong ngày, nhất là lúc VN30 bị sụt áp. Ví dụ ngày 5/4 khoảng 10:15 BID, CTG, MBB bị đánh úp, kế đó khoảng 10:30 GAS bị đạp làm VN30 rơi theo.
    vn30intraday.PNG
     
    BlueDiamond, Tin, vincent and 6 others like this.
  5. TTN

    TTN Well-Known Member

    Joined:
    Jan 3, 2012
    Messages:
    14,931
    Likes Received:
    56,607
    Trophy Points:
    113
    Cụ @ranluc xem hộ KBC vượt bao nhiêu thì coi là vào UP trend?
    Lần trước mua ở đoạn này thảm quá.
     
  6. ranluc

    ranluc Active Member

    Joined:
    Mar 27, 2018
    Messages:
    10
    Likes Received:
    101
    Trophy Points:
    28
    Đáy mới cao hơn đáy cũ, đỉnh mới cao hơn thì coi như uptrend rồi. Tin tức đang ảnh hưởng đến chart trong 1-2 ngày, để xem được bao lâu.
     
  7. TuanMinh

    TuanMinh Well-Known Member

    Joined:
    Mar 11, 2014
    Messages:
    3,306
    Likes Received:
    13,781
    Trophy Points:
    113
    Vượt 15.5 thì tạm coi là up trend trong ngắn hạn . CÒn chart tuần với tháng thì vưỡn chưa xinh lắm :D.
     
    vincent, bokhoktx and TTN like this.
  8. bokhoktx

    bokhoktx Well-Known Member

    Joined:
    Nov 15, 2011
    Messages:
    9,542
    Likes Received:
    46,947
    Trophy Points:
    113
    KBC thì vẫn sizeway từ 2012 tới giờ, tính theo năm thì downtrend, đỉnh gần nhất san sát nhau, túm váy lại mua xanh KBC dễ leo đọt
     
    vincent, Casper12 and TuanMinh like this.
  9. CACO

    CACO Super Moderator

    Joined:
    Nov 3, 2011
    Messages:
    2,856
    Likes Received:
    12,655
    Trophy Points:
    113
    Giờ em chịu chết không học thêm code được nữa

    Quen dùng ms mất rồi mà mấy cái hàm bên ms giờ dùng cũng lúng túng
     
    bokhoktx, vincent and Casper12 like this.
  10. ranluc

    ranluc Active Member

    Joined:
    Mar 27, 2018
    Messages:
    10
    Likes Received:
    101
    Trophy Points:
    28
    Relative Strength RS + MACD = RSCD
    Giá trị RS() có thể thay thế giá (price) để đưa vào các chỉ báo khác ví dụ như MACD
    RSCD.PNG
    RSCD và MACD có điểm khác nhau. Ở MACD, giá trị dương (phần phía trên trục 0.0) có nghĩa cp đang ở uptrend dài hạn, giá trị âm có nghĩa cp đang ở downtrend dài hạn. Ở RSCD giá trị dương có nghĩa cp mạnh hơn thị trường (hay mạnh hơn so với ngành, so với cp khác), giá trị âm có nghĩa cp yếu hơn thị trường.
    Lấy tham số short time, long time giống nhau thì chart của RSCD và MACD khá giống nhau. Đường signal cắt đường MACD và signal cắt RSCD hầu như trùng 1 ngày. Tuy nhiên ở MACD với chiền lược mua thấp - bán cao, đường signal cắt MACD khuyến nghị điểm mua bán. Còn ở RSCD với chiến lược mua cao - bán cao hơn, điểm mua bán phụ thuộc nhiều vào thị trường.
    RSCD cũng giúp dự đoán đảo chiều qua các mô hình như S-H-S hay phân kỳ. Trong một số trường hợp phân kỳ của RSCD rõ ràng hơn MACD. Trên hình là cp AAA, ngày 17/1 giá tạo đỉnh mới, MACD cũng tạo đỉnh mới, tuy nhiên RSCD cho thấy phân kỳ, AAA bắt đầu yếu hơn thị trường, bước đầu trong hành trình downtrend.

    Code RSCD:
    //RSCD= RS + MACD by ranluc
    _SECTION_BEGIN("RSCD");
    r1 = Param( "Fast avg", 12, 2, 200, 1 );
    r2 = Param( "Slow avg", 26, 2, 200, 1 );
    r3 = Param( "Signal avg", 9, 2, 200, 1 );

    base = ParamStr("Base", "^VN30");
    relStr = RelStrength(base);

    Plot(ml= EMA(relStr, r1) - EMA(relStr, r2), StrFormat(_SECTION_NAME()+"(%g,%g)", r1, r2), colorgreen, styleThick );
    Plot( sl = EMA(ml,9), "Signal" + _PARAM_VALUES(), ParamColor("Signal color", colorBlue ), ParamStyle("Signal style") );
    Plot(1.5*( ml-sl), "MACD Histogram", ParamColor("Histogram color", colorDefault ), styleNoTitle | ParamStyle("Histogram style", styleHistogram | styleNoLabel, maskHistogram ) );

    _SECTION_END();

    *RSCD cũng được gọi bằng MoCD trong các tài liệu khác
     
  11. ranluc

    ranluc Active Member

    Joined:
    Mar 27, 2018
    Messages:
    10
    Likes Received:
    101
    Trophy Points:
    28
    RS+RSI
    Tương tự thế giá trị RS() vào hàm RSI, có thể giúp gì khác không?
    base = "^VN30";
    relStr = RelStrength(base);
    Plot( RSIa(relStr,14), "", colorgreen, ParamStyle("Style") );
     
  12. Đạo Thư

    Đạo Thư Active Member

    Joined:
    Jun 8, 2017
    Messages:
    60
    Likes Received:
    246
    Trophy Points:
    33
    Anh ranluc có thể hướng dẫn cách tạo Relative Strength như trong investor's Daily không? em muốn làm một cái Data sắp xếp tất cả các cp trên ttckvn theo kiểu đó?
     
    bokhoktx likes this.
  13. BlueDiamond

    BlueDiamond Well-Known Member

    Joined:
    Nov 1, 2011
    Messages:
    4,803
    Likes Received:
    17,485
    Trophy Points:
    113
    Em tạo thử lại thấy bị lỗi này! Bác nào chỉ em cách sửa với! Em cảm ơn trước ạ! RS.jpg
     
    Last edited: Apr 17, 2018
    Casper12 and bokhoktx like this.
  14. ranluc

    ranluc Active Member

    Joined:
    Mar 27, 2018
    Messages:
    10
    Likes Received:
    101
    Trophy Points:
    28
    IBD tính RS giống thế này:
    tr13 = 40 * ROC(C, 60);
    tr26 = 30 * ROC(C, 120);
    tr52 = 30 * ROC(C, 240);
    RS = tr13 + tr26 + tr52;
    Nghĩa là lấy 40% thay đổi so với phiên 3 tháng trước đó, cộng 30% thay đổi so với phiên 6 tháng trước đó, cộng 30% thay đổi so với phiên 12 tháng trước đó. Số 40%, 30%, 30% có nghĩa tính trọng số lớn hơn của thay đổi gần nhất. Đó là tinh thần của công thức. Bạn không cần phải theo sát công thức đó, có thể chọn trong số tùy ý, ví dụ như 50%, 30%, 20%, và chọn thời gian 2 tuần, 4 tuần, 8 tuần. Điểm nguy hiểm mà IBD bỏ qua trong công thức này là khi bạn chọn cp đang có giá trị RS cao nhất thì có thể là lúc nó chuẩn bị điều chỉnh hay quay đầu giảm luôn.
    Amibroker chỉ có thể tính RS và xếp hạng từng ngày, không có khả năng xếp hạng ngày này qua ngày kia. Bạn tính rồi chuyển qua excel mà xếp hạng.
     
    HatienVF, Casper12, bokhoktx and 2 others like this.
  15. Đạo Thư

    Đạo Thư Active Member

    Joined:
    Jun 8, 2017
    Messages:
    60
    Likes Received:
    246
    Trophy Points:
    33
    cám ơn anh.
     
    bokhoktx likes this.

Share This Page

XenForo Add-ons by Brivium ™ © 2012-2013 Brivium LLC.