Trong bài viết này, chúng tôi sẽ giới thiệu một chiến lược định lượng để thực hiện giao dịch đột phá dựa trên các điểm cao và thấp của giá. Chiến lược này tạo ra tín hiệu giao dịch bằng cách đánh giá sự đột phá của khu vực giá quan trọng.
A. Nguyên tắc chiến lược
Chiến lược này chủ yếu tuân theo các logic giao dịch sau:
Xác định giá cao nhất và giá thấp nhất của gần 3 đường K, đại diện cho biến động ngắn hạn hiện tại;
Tính giá cao nhất và giá thấp nhất của gần 50 đường K, đại diện cho phạm vi chấn động gần đây;
Một tín hiệu mua được tạo ra khi giá vượt qua mức thấp ngắn hạn và vượt quá mức thấp gần đây;
Một tín hiệu bán ra được hình thành khi giá vượt qua các mức cao ngắn hạn và thấp hơn các mức cao gần đây.
Thiết lập điểm dừng lỗ để kiểm soát rủi ro.
Bằng cách đánh giá các đợt đột phá ở các khu vực giá quan trọng, các cơ hội giao dịch có thể được xác định một cách hiệu quả để bắt đầu một làn sóng mới.
2 - Lợi thế chiến lược
Lợi thế lớn nhất của chiến lược này là các quy tắc đánh giá đột phá đơn giản, rõ ràng và dễ thực hiện.
Một lợi thế khác là thiết lập Stop Loss Stop Stop trực tiếp, có thể kiểm soát rủi ro của mỗi giao dịch.
Cuối cùng, bạn có thể đặt khoảng thời gian phản hồi để dễ dàng kiểm tra các giai đoạn thị trường khác nhau.
Ba, rủi ro tiềm ẩn
Tuy nhiên, chiến lược này cũng có một số vấn đề tiềm ẩn:
Đầu tiên, không thể đánh giá chính xác xu hướng chỉ bằng một đột phá, và có thể có tín hiệu sai.
Thứ hai, không có tối ưu hóa tham số và có sự ổn định chiến lược hạn chế.
Cuối cùng, các thiết lập dừng lỗ cần được tối ưu hóa để tính đến tỷ lệ lợi nhuận.
Bốn nội dung, tóm tắt
Bài viết này mô tả chi tiết một chiến lược giao dịch định lượng dựa trên sự đột phá của giá. Nó phát hiện cơ hội giao dịch bằng cách đánh giá sự đột phá của khu vực giá quan trọng.
/*backtest
start: 2023-08-15 00:00:00
end: 2023-09-14 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("JetzGiantz Strategy", overlay=true)
// Getting inputs
StopTgt = input(10, minval=1, title="Stop Loss $")
ProfTgt = input(100, minval=1, title="Profit Target $")
//Filter backtest month and year
startMonth = input(1, minval=1, maxval=12, title="Month")
startYear = input(2021, minval=2000, maxval=2100, title="Year")
//Filter funtion inputs
//Calculations
Low3 = lowest(low,3)
Low50 = lowest(low,50)
High3 = highest(high,3)
High50 = highest(high,50)
if (month>=startMonth and year>=startYear)
if(close[1] < open[1] and close > open and close > open[1] and (Low3 < Low50[1] or Low3 < Low50[2] or Low3 < Low50[3]))
strategy.order("BuyEntry", strategy.long, when=strategy.position_size == 0, comment="BuyEntry")
if (month>=startMonth and year>=startYear)
if(close[1] > open[1] and close < open and close > open[1] and (High3 > High50[1] or High3 > High50[2] or High3 > High50[3]))
strategy.order("SellEntry", strategy.short, when=strategy.position_size == 0, comment="SellEntry")
strategy.exit("bracket", loss=StopTgt, profit=ProfTgt, when=strategy.position_size > 0)
strategy.exit("bracket", loss=StopTgt, profit=ProfTgt, when=strategy.position_size < 0)