Chiến lược đột phá hàng ngày là một chiến lược đơn giản dựa trên biểu đồ nến hàng ngày. Nó tạo ra tín hiệu giao dịch bằng cách quan sát mối quan hệ giữa giá mở và đóng của ngày trước để xác định đà thị trường.
Logic cốt lõi của chiến lược này là:
Nếu thân cây nến của ngày trước màu xanh lá cây (giá đóng cao hơn giá mở cửa), nó cho thấy xu hướng tăng trong ngày đó. Chiến lược sẽ đi dài vào ngày mở cửa hôm sau. Nếu thân cây nến của ngày trước màu đỏ (giá đóng thấp hơn giá mở cửa), nó cho thấy xu hướng giảm. Chiến lược sẽ đi ngắn vào ngày mở cửa hôm sau.
Bằng cách đơn giản này, chiến lược có thể xác định động lực thị trường trong chu kỳ nến gần đây và thực hiện giao dịch phù hợp.
Cụ thể, chiến lược tạo ra các tín hiệu giao dịch như sau:
Thông qua logic này, chiến lược có thể tận dụng xu hướng giá ngắn hạn.
Những lợi thế chính của chiến lược này bao gồm:
Một số rủi ro và các lĩnh vực cải tiến:
Chiến lược đột phá hàng ngày xác định động lực thị trường thông qua việc so sánh đơn giản và hiệu quả các ngọn nến hàng ngày, cho phép nó giao dịch theo hướng xu hướng ngắn hạn. Mặc dù đơn giản và dễ thực hiện, nó có rủi ro. Tăng cường thêm các thông số và các chỉ số bổ sung có thể tăng độ tin cậy của chiến lược.
/*backtest start: 2022-12-26 00:00:00 end: 2023-08-30 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Daily Candle Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=0.0) // Input parameters initialCapital = 10000 riskFactor = 3500 // Calculate the opening and closing values for the last day's candle lastDayOpen = request.security(syminfo.tickerid, "D", open[1], lookahead=barmerge.lookahead_on) lastDayClose = request.security(syminfo.tickerid, "D", close[1], lookahead=barmerge.lookahead_on) // Determine the color of the last day's candle lastDayColor = lastDayOpen < lastDayClose ? color.green : color.red // Plot the last day's candle on the chart plotshape(series=na, color=lastDayColor, style=shape.triangledown, location=location.abovebar) // Calculate trade size based on available capital at last day's closing availableCapital = strategy.equity tradeSize = availableCapital / riskFactor // Trading conditions buyCondition = lastDayColor == color.green sellCondition = lastDayColor == color.red // Execute strategy orders with calculated trade size strategy.entry("Buy", strategy.long, qty=tradeSize, when=buyCondition) strategy.entry("Sell", strategy.short, qty=tradeSize, when=sellCondition) // Exit strategy stopLoss = 0.001 * lastDayOpen * tradeSize strategy.exit("StopLoss/Profit", from_entry="Buy", loss=stopLoss) strategy.exit("StopLoss/Profit", from_entry="Sell", loss=stopLoss) // Plot stop loss level on the chart plot(stopLoss, color=color.red, linewidth=2, title="Stop Loss")