Chiến lược giao dịch dựa trên Hall Moving Average và K-line


Ngày tạo: 2023-09-21 10:31:58 sửa đổi lần cuối: 2023-09-21 10:31:58
sao chép: 0 Số nhấp chuột: 762
1
tập trung vào
1617
Người theo dõi

Tổng quan

Ý tưởng cốt lõi của chiến lược này là so sánh Hull Moving Average (HMA) với đường K để tạo ra tín hiệu mua và bán. Mua khi HMA cao hơn đường K và bán khi HMA thấp hơn đường K.

Nguyên tắc

Đầu tiên, chiến lược tính toán HMA của một chu kỳ nhất định thông qua hàm hma (). Sau đó, lấy giá mở của một dòng K trên để so sánh. Nếu HMA cao hơn giá mở của dòng K trên, nó sẽ tạo ra tín hiệu mua; Nếu HMA thấp hơn giá mở của dòng K trên, nó sẽ tạo ra tín hiệu bán.

Điều kiện nhập cảnh của chiến lược là chỉ tham gia khi giá phá vỡ HMA theo hướng ngược lại. Đó là, chỉ mua khi giá phá vỡ HMA từ bên dưới; chỉ bán khi giá phá vỡ HMA từ phía trên. Điều này có thể tránh các tín hiệu kích hoạt lặp lại của thị trường bị chấn động.

Điều kiện xuất phát của chiến lược là dừng lỗ khi giá quay trở lại phía bên kia của HMA. Ví dụ: mua sau khi giá giảm xuống HMA, dừng lỗ bán.

Nhìn chung, chiến lược này sử dụng tính chất mịn của HMA để tạo ra tín hiệu nhận diện hướng xu hướng chính. Đồng thời, yêu cầu giá phá vỡ để lọc các tín hiệu giả mạo, có thể tránh bị mắc kẹt nhiều lần bởi biến động thị trường.

Phân tích lợi thế

  1. Sử dụng HMA thay vì SMA, bạn có thể nhận ra xu hướng tốt hơn, lọc các biến động.

  2. Các cơ chế phá vỡ có thể làm giảm khả năng bị mắc kẹt và mở lại các vị trí.

  3. Sử dụng giá của đường K trước thay vì giá hiện tại để tránh vẽ đường cong ngược.

  4. Các quy tắc đơn giản và rõ ràng, phù hợp với tối ưu hóa tham số và giao dịch robot.

  5. Có thể áp dụng linh hoạt trong bất kỳ giống và chu kỳ, có tính phổ biến.

Rủi ro và cải tiến

  1. Thiết lập tham số HMA không chính xác có thể gây ra xu hướng sai hoặc quá nhạy. Các tham số khác nhau có thể được thử nghiệm để tìm ra giá trị tối ưu.

  2. Chỉ số đơn lẻ dễ bị phá vỡ trong vòng thử nghiệm lại, có thể xem xét kết hợp với các chỉ số khác để lọc tín hiệu.

  3. Điểm dừng gần HMA, dễ bị phá vỡ một lần nữa, có thể được kéo ra xa đến mức hỗ trợ kháng cự.

  4. Không thể đánh giá được chiều hướng và cường độ của xu hướng, hãy xem xét thêm các chỉ số phân loại xu hướng.

  5. Điểm dừng cố định dẫn đến biến động lợi nhuận rủi ro lớn, bạn có thể thử động tác dừng lỗ hoặc quản lý tiền.

Tóm tắt

Chiến lược này nói chung là đơn giản và thực tế, ý tưởng cốt lõi rõ ràng. Với HMA đánh giá hướng xu hướng chính, để phá vỡ tín hiệu sai lầm. Có thể tránh thị trường chấn động mở kho hàng lần.

Mã nguồn chiến lược
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © SeaSide420. Any timeFrame/pair , Hull Moving Average vs Candle
//@version=4
strategy("Hull Moving Average vs Candle",shorttitle="HMA-vs-Candle",overlay=true,default_qty_type=strategy.percent_of_equity,default_qty_value=100,commission_type=strategy.commission.cash_per_order,commission_value=1.00,slippage=1)
Period=input(title="Hull MA Period",type=input.integer,defval=50,minval=1)
Resolution=input(title="Candle Resolution", type=input.resolution,defval="D")
Price=input(title="Source of Price",type=input.source,defval=open)
HMA=hma(Price,Period)
Candle=security(syminfo.tickerid,Resolution,Price,barmerge.gaps_off,barmerge.lookahead_off)
change_color=HMA>Candle?color.green:color.red
plot1=plot(Candle,color=change_color,title="Candle Line",linewidth=2,transp=50)
plot2=plot(HMA[1],color=change_color,title="Hull MA Line",linewidth=2,transp=50)
fill(plot1,plot2,color=change_color,transp=50)
strategy.close("BUY",when=Price<HMA and HMA<Candle,comment="close buy entry")
strategy.close("SELL",when=Price>HMA and HMA>Candle,comment="close sell entry")
if (Price>HMA and HMA>Candle and Price>Price[1])
    strategy.entry("BUY",strategy.long)
if (Price<HMA and HMA<Candle and Price<Price[1])
    strategy.entry("SELL",strategy.short)



//                                                                   /L'-, 
//                               ,'-.           /MM . .             /  L '-, 
//     .                    _,--dMMMM\         /MMM  `..           /       '-, 
//     :             _,--,  )MMMMMMMMM),.      `QMM   ,<>         /_      '-,' 
//     ;     ___,--. \MM(    `-'   )M//MM\       `  ,',.;      .-'* ;     .' 
//     |     \MMMMMM) \MM\       ,dM//MMM/     ___ < ,; `.      )`--'    / 
//     |      \MM()M   MMM)__   /MM(/MP'  ___, \  \ `  `. `.   /__,    ,' 
//     |       MMMM/   MMMMMM( /MMMMP'__, \     | /      `. `-,_\     / 
//     |       MM     /MMM---' `--'_ \     |-'  |/         `./ .\----.___ 
//     |      /MM'   `--' __,-  \""   |-'  |_,               `.__) . .F. )-. 
//     |     `--'       \   \    |-'  |_,     _,-/            J . . . J-'-. `-., 
//     |         __  \`. |   |   |         \    / _           |. . . . \   `-.  F 
//     |   ___  /  \  | `|   '      __  \   |  /-'            F . . . . \     '` 
//     |   \  \ \  /  |        __  /  \  |  |,-'        __,- J . . . . . \ 
//     |    | /  |/     __,-  \  ) \  /  |_,-     __,--'     |. .__.----,' 
//     |    |/    ___     \    |'.  |/      __,--'           `.-;;;;;;;;;\ 
//     |     ___  \  \     |   |  `   __,--'                  /;;;;;;;;;;;;. 
//     |     \  \  |-'\    '    __,--'                       /;;;;;;;;;;;;;;\ 
// \   |      | /  |      __,--'                             `--;;/     \;-'\ 
//  \  |      |/    __,--'                                   /  /         \  \ 
//   \ |      __,--'                                        /  /           \  \ 
//    \|__,--'                                          _,-;M-K,           ,;-;\ 
//                                                     <;;;;;;;;           '-;;;; 
//                                                                                        ~ priceless artwork by SeaSide420