Bàn về robot chứng khoán phái sinh

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

3030 người đang online, trong đó có 35 thành viên. 03:42 (UTC+07:00) Bangkok, Hanoi, Jakarta
  1. 3 người đang xem box này (Thành viên: 0, Khách: 3)
Chủ đề này đã có 298221 lượt đọc và 2249 bài trả lời
  1. vhvietnam

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

    Tham gia ngày:
    29/12/2009
    Đã được thích:
    131
    Không phải bác ơi, tham khảo các cao thủ thôi. Nhưng cũng sợ rủi cái VP rút phích nên vẫn phải có indi của mình.


    Code mình không dựa vào giá hay các indi PTKT mà vào khối lượng do mình tự tổng hợp rồi cho vào qua Aux nên chắc bác không dùng đc. Mình theo dõi khối lượng đại loại kiểu chênh lêch cung cầu như cơ sở. Nói chung PS hay cơ sở đều cần tích lũy đủ khối lượng mới thay đổi, chẳng ai lại bỏ cả chục ngàn HĐ kéo lên hay đạp xuống mà không có tý vị thế nào cả đúng không ah!
    Song_dai_Song_ngan thích bài này.
  2. bdragonAct

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

    Tham gia ngày:
    05/02/2018
    Đã được thích:
    631
    luonguctvhvietnam thích bài này.
  3. vhvietnam

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

    Tham gia ngày:
    29/12/2009
    Đã được thích:
    131
    Được đấy bác ơi, thành 8 con cho nó phát chứ.

    Bot mới có margin không mà khủng vậy bác, con mình backtest có margin mới đc vài ngàn % CAGR.

    Nhân tiện hỏi bác mấy cái thông số report backtest con bot của mình như hình, bác xem thông số nào không tốt?

    [​IMG]
    [​IMG]
    bdragonAct thích bài này.
  4. bdragonAct

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

    Tham gia ngày:
    05/02/2018
    Đã được thích:
    631
    - xem kết quả backtest thì còn tuỳ vào con bot nữa bác ah
    - thông thường thì tớ hay dùng
    + Return - CAGR : để xem khả năng sinh lời của bot
    + Max drowdown : khả năng thua lỗ lớn nhất của bot khi vào vùng giá không thuận lợi
    + sharpe ratio : cái này là risk -adjusted return , cái này cho phép xem xét lợi nhuận và rủi ro cùng một lúc
    - Hai chỉ tiêu quan trọng ra quyết định là có cho chạy monitoring hay không là max drawdown và sharpe ratio
    - Đối với tớ win ratio không có ý nghĩa nhiều lắm, ví dụ đánh trend khi gặp đúng trend thì bot sẽ giữ rất dài, khi thị trường sideway bot lỗ và đảo trend liên tục, thông thường mấy con đánh trend win ratio của nó là khoảng 30 - 40 %. Ngược lại mấy con dùng technical indicator thì win ratio có ý nghĩa hơn.

    - Theo đó thì kết quả backtest của bác
    + net profit có 92% mà annualized return (tương đương với CAGR) là 4557%, chứng tỏ bạn dùng data cho backtest là hơi ít, tớ đoán chắc 1 tuần. nếu data backtest khá ít thì thông tin rút ra từ backtest không có độ tin cậy cao lắm
    + Max drawdown là -34%, cái này tuỳ vào khả năng chịu rủi ro của bạn. Mà không biết là backtest bạn chạy full đòn bẩy hay là không, nếu ko dùng đòn bẩy mà max draw down là -34% thì hơi cao
    + sharp ratio là 3.4 là khá cao, và khá tích cực
    vhvietnam thích bài này.
  5. vhvietnam

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

    Tham gia ngày:
    29/12/2009
    Đã được thích:
    131
    Đúng đó bác, đây là kết quả 1 tháng, do mình chưa nối data các tháng lại mà backtest riêng. Kết quả các tháng không tệ.

    Bot này dùng full đòn bẩy tức 1 HĐ có 3mil thôi. Chỉ giao dịch tối đa 8HĐ. Có lần mình chạy thử kiểu lãi suất kép cháy tài khoản , tuy rằng tỷ lệ win khá tốt nhưng thua đúng lệnh sau khi tài khoản to lên đáng kể. Thế mới thấy tác dụng - tác hại của việc gấp thếp.
    bdragonAct thích bài này.
  6. bdragonAct

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

    Tham gia ngày:
    05/02/2018
    Đã được thích:
    631
    - việc dùng data cho backtest ít sẽ không cho kết luận tin cậy về bot, bạn thử tưởng tượng nếu con bot cho chạy thực tế thì nó sẽ chạy trong tuơng lai ít nhất là hai năm. Dùng kết quả backtest trên vùng dữ liệu 1 tháng cho con bot chạy khoảng 2 năm thì không hợp lí tí nào. Thông thường người ta sẽ dùng data 5 năm để backtest cho bot, xa hơn nữa thì không chính xác vì có nhiều cái thay đổi so với quá khứ. Đối với việt nam thì dữ liệu khoảng 2 năm, nên bác càng dùng nhiều dữ liệu càng tốt

    - position size là một câu chuyện dài, hôm nào bàn tiếp vậy :D
    vhvietnam thích bài này.
  7. ntvinh1602

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

    Tham gia ngày:
    05/02/2017
    Đã được thích:
    3.580
    Bác đã set thông số chuẩn chưa đấy ạ? Vì em hay backtest bằng ami, nếu initial capital là 35,000 như thế kia thì tương đương với nav thực tế là 3 tỷ rưỡi đấy ạ, đánh 3tr/hđ như bác (nếu f1m là 900 thì tương đương 3.33% margin deposit, default của sở giờ là 16.875%) thì max position size là hơn 1000 hđ cơ, nếu chỉ đi 8hđ/lệnh thì chắc chắn ko ra đc 92% return trong 1 tháng.
    luonguct thích bài này.
  8. vhvietnam

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

    Tham gia ngày:
    29/12/2009
    Đã được thích:
    131
    Mình set vốn 35k tương đương 35 mil thôi bác ah, Margin deposit 3000, Point value 100. Hai cái này set trong symbol information mà bác. Phí thuế 21/HD set trong Backtest option.
    --- Gộp bài viết, 18/09/2019, Bài cũ: 18/09/2019 ---
    May quá hỏi bác luôn, mình tính optimize cả điểm SL và TP, trailing , nhưng nếu đặt point hay % trong Backtest option thì không opt được, nên cho vào trong code dạng điều kiện Sell hoặc Cover. Nhưng dở cái là kết quả nó không cho ra bao nhiêu cái max losst, trail,... trong result list để thống kê. Có cách nào thống kê đc không bác?
    luonguct thích bài này.
  9. ntvinh1602

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

    Tham gia ngày:
    05/02/2017
    Đã được thích:
    3.580
    À vậy là bác set point value nhiều hơn mình 2 số 0 nên số to hơn :D Nếu vậy thì đúng rồi. Mà mình ko chơi đòn bẩy nên mình set margin deposit theo %.

    Còn muốn optimize stoploss thì bác code stoploss vào trong code, sử dụng hàm ApplyStop. Hàm này sẽ override các setting trong backtester.
    luonguctvhvietnam thích bài này.
  10. vhvietnam

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

    Tham gia ngày:
    29/12/2009
    Đã được thích:
    131
    Thì 1 point quy ra thóc giờ đc 100k mà bác, nên mình set 100. VP đang cho chơi 3tr 1 hđ nên set 3000.

    Applystop có cái dở là sau khi stop nếu điều kiện tín hiệu Buy / Short vẫn còn sẽ bị xóa mất mà không vào lệnh lại đc (trường hợp trailing)

Chia sẻ trang này