Đây là một chiến lược giao dịch tần số cao dựa trên hướng đóng nến 1 phút. Chiến lược xác định xu hướng thị trường bằng cách phân tích mối quan hệ giữa giá đóng và giá mở, nắm giữ các vị trí dài sau nến tăng và các vị trí ngắn sau nến giảm. Nó sử dụng thời gian giữ cố định, đóng các vị trí tại thời điểm đóng nến tiếp theo và giới hạn tần suất giao dịch hàng ngày để kiểm soát rủi ro.
Logic cốt lõi dựa trên hướng đóng nến để đánh giá xu hướng thị trường ngắn hạn:
Chiến lược này là một hệ thống giao dịch tần số cao dựa trên hướng gần nến, nắm bắt các cơ hội thị trường ngắn hạn thông qua phân tích hành động giá đơn giản. Sức mạnh của nó nằm trong logic đơn giản, thời gian giữ ngắn và rủi ro có thể kiểm soát được, trong khi phải đối mặt với những thách thức như chi phí giao dịch cao và phá vỡ sai. Thông qua việc giới thiệu các chỉ số kỹ thuật bổ sung và các biện pháp tối ưu hóa, tính ổn định và lợi nhuận của chiến lược có thể được tăng thêm. Đối với các nhà đầu tư tìm kiếm các cơ hội giao dịch ngắn hạn, đây là một chiến lược giao dịch đáng thử nghiệm và cải thiện.
/*backtest start: 2024-01-01 00:00:00 end: 2024-12-10 08:00:00 period: 2d basePeriod: 2d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Candle Close Strategy", overlay=true) // Define conditions for bullish and bearish candlesticks isBullish = close > open isBearish = close < open // Track the number of bars since the trade was opened and the number of trades per day var int barsSinceTrade = na var int tradesToday = 0 // Define a fixed position size for testing fixedPositionSize = 1 // Entry condition: buy after the close of a bullish candlestick if (isBullish and tradesToday < 200) // Limit to 200 trades per day strategy.entry("Buy", strategy.long, qty=fixedPositionSize) barsSinceTrade := 0 tradesToday := tradesToday + 1 // Entry condition: sell after the close of a bearish candlestick if (isBearish and tradesToday < 200) // Limit to 200 trades per day strategy.entry("Sell", strategy.short, qty=fixedPositionSize) barsSinceTrade := 0 tradesToday := tradesToday + 1 // Update barsSinceTrade if a trade is open if (strategy.opentrades > 0) barsSinceTrade := nz(barsSinceTrade) + 1 // Reset tradesToday at the start of a new day if (dayofmonth != dayofmonth[1]) tradesToday := 0 // Exit condition: close the trade after the next candlestick closes if (barsSinceTrade == 2) strategy.close("Buy") strategy.close("Sell") // Plot bullish and bearish conditions plotshape(series=isBullish, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(series=isBearish, location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Plot the candlesticks plotcandle(open, high, low, close, title="Candlesticks")