Đây là một chiến lược giao dịch định lượng dựa trên áp lực thị trường và mô hình chồng chéo nến. Chiến lược xác định các điểm đảo ngược thị trường tiềm năng bằng cách phân tích khối lượng giao dịch, mô hình nến và mối quan hệ chồng chéo giá, kết hợp với các điều kiện lợi nhuận cho giao dịch tự động. Chiến lược sử dụng kích thước vị trí cố định và đặt mục tiêu lợi nhuận 20%.
Khái niệm cơ bản của chiến lược bao gồm hai chiều chính: áp lực thị trường và chồng chéo nến. Đối với áp lực thị trường, chiến lược xác định áp lực mua và bán bằng cách so sánh khối lượng giao dịch hiện tại với mức trung bình động khối lượng 20 giai đoạn. Khi khối lượng của nến màu xanh lá cây (bullish) vượt quá mức trung bình động, nó chỉ ra áp lực mua; khi khối lượng của nến màu đỏ (bearish) vượt quá mức trung bình động, nó chỉ ra áp lực bán. Đối với chồng chéo nến, chiến lược tập trung vào mối quan hệ chồng chéo giữa các nến lân cận. Khi nến màu xanh lá cây chồng chéo với nến màu đỏ trước, nó được coi là một tín hiệu dài tiềm năng; khi nến màu đỏ chồng chéo với nến màu xanh lá cây trước đó, nó được coi là một tín hiệu ngắn tiềm năng.
Chiến lược này nắm bắt các cơ hội đảo ngược thị trường bằng cách kết hợp áp lực thị trường và các mô hình chồng chéo nến, chứng minh nền tảng lý thuyết vững chắc và khả thi thực tế.
/*backtest start: 2024-12-06 00:00:00 end: 2025-01-04 08:00:00 period: 3h basePeriod: 3h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Pressure Reversal & Candle Overlap", overlay=true, default_qty_type=strategy.fixed, default_qty_value=0.1) // Parameters take_profit_percent = 20 // Take Profit Percentage qty = 0.1 // Quantity to trade (BTC) // Candle Definitions green_candle = close > open red_candle = close < open current_body = math.abs(close - open) // Previous Candle Data prev_close = ta.valuewhen(green_candle or red_candle, close, 1) prev_open = ta.valuewhen(green_candle or red_candle, open, 1) // Check Candle Overlaps green_overlaps_red = green_candle and close >= prev_open and open <= prev_close red_overlaps_green = red_candle and close <= prev_open and open >= prev_close // Define Buying and Selling Pressure buying_pressure = green_candle and volume > ta.sma(volume, 20) selling_pressure = red_candle and volume > ta.sma(volume, 20) // Entry Conditions long_entry_pressure = selling_pressure long_entry_overlap = green_overlaps_red short_entry_pressure = buying_pressure short_entry_overlap = red_overlaps_green // Calculate Take Profit Levels take_profit_level_long = close * (1 + 20 / 100) take_profit_level_short = close * (1 - 20 / 100) // Strategy Logic if (long_entry_pressure or long_entry_overlap) strategy.entry("Buy Long", strategy.long, qty=qty) strategy.exit("TP Long", "Buy Long", limit=take_profit_level_long) if (short_entry_pressure or short_entry_overlap) strategy.entry("Sell Short", strategy.short, qty=qty) strategy.exit("TP Short", "Sell Short", limit=take_profit_level_short)