
Chiến lược này là một chiến lược giao dịch chấn động 5 phút nhằm nắm bắt biến động giá ngắn hạn của thị trường Bitcoin và vàng để kiếm lợi nhuận. Nó kết hợp sử dụng đường trung bình EMA, chỉ số Brin và phương pháp dừng lỗ để thực hiện nhập cảnh và xuất cảnh.
Chiến lược này sử dụng chỉ số EMA nhanh và chỉ số EMA chậm để xây dựng hệ thống đánh giá xu hướng. Khi EMA nhanh vượt qua EMA chậm, nó tạo ra tín hiệu mua; Khi EMA nhanh vượt qua EMA chậm, nó tạo ra tín hiệu bán, để nắm bắt sự biến đổi của xu hướng ngắn hạn.
Trong khi đó, chiến lược này kết hợp với chỉ số Bollinger Bands để xác định phạm vi dao động của giá. Chỉ khi giá gần với đường ray hoặc trung tâm của Bollinger Bands, tín hiệu giao dịch sẽ được tạo ra. Điều này có thể lọc ra hầu hết các tín hiệu giả.
Sau khi vào thị trường, chiến lược này sử dụng chỉ số ATR để tính toán điểm dừng lỗ. Và thiết lập điểm dừng là điểm thấp nhất của tháp nhập và trừ ATR n lần, để kiểm soát rủi ro cho mỗi giao dịch.
Lợi thế lớn nhất của chiến lược này là nắm bắt các biến động ngắn hạn và biến động giá, lấy lợi nhuận nhỏ nhưng ổn định. Bằng cách kết hợp EMA nhanh và EMA chậm, bạn có thể nhanh chóng xác định xu hướng ngắn hạn.
Ngoài ra, hoạt động chu kỳ 5 phút làm cho chiến lược này giao dịch thường xuyên hơn, điều này cũng làm tăng lợi nhuận của nó. Ngoài ra, nó cũng thuận tiện để theo dõi hoặc tối ưu hóa bằng tay.
Rủi ro chính của chiến lược này nằm ở những lỗ nhỏ liên tục gây ra bởi sự đảo ngược văn bản. Các tín hiệu giao chéo EMA có thể xuất hiện thường xuyên khi giá dao động trong một phạm vi, gây ra giao dịch không cần thiết và lỗ nhỏ liên tục.
Ngoài ra, là một chiến lược xung đột ngắn hạn, nó cũng phải đối mặt với rủi ro chi phí giao dịch do tần số giao dịch cao. Nếu chi phí giao dịch quá cao, có thể làm xói mòn không gian lợi nhuận.
Chiến lược này có thể được tối ưu hóa bằng cách:
Thêm các dao động khác để hỗ trợ các chỉ số phán đoán, chẳng hạn như RSI, Stochastics, v.v., để tránh bị mắc kẹt trong thị trường biến động.
Thêm mô hình học máy để đánh giá xu hướng và tăng độ chính xác của nhập học.
Sử dụng các thuật toán di truyền, rừng ngẫu nhiên và các phương pháp khác để tự động tối ưu hóa các tham số để phù hợp hơn với tình hình thị trường hiện tại.
Kết hợp với học tập sâu để xác định vị trí hỗ trợ quan trọng và áp lực quan trọng, thiết lập vị trí dừng lỗ tốt hơn.
Thử nghiệm các loại giao dịch khác nhau như chỉ số cổ phiếu, ngoại hối, tiền điện tử, v.v., chọn loại giao dịch hiệu quả nhất làm tiêu chuẩn giao dịch chính.
Nhìn chung, chiến lược này là một chiến lược giao dịch thường xuyên trong ngắn hạn, có khả năng nắm bắt hiệu quả các biến động ngắn hạn của giá và sự đảo ngược xu hướng, kiểm soát rủi ro thông qua phán đoán EMA nhanh, lọc Brin và dừng ATR để có thể thu được lợi nhuận ổn định. Nếu được tối ưu hóa và cải thiện hơn nữa, duy trì khả năng sinh lợi trong khi giảm tần suất giao dịch, sẽ là một chiến lược định lượng có tiềm năng rất lớn.
/*backtest
start: 2023-12-19 00:00:00
end: 2024-01-10 00:00:00
period: 1h
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/
// © singhak8757
//@version=5
strategy("Bitcoin and Gold 5min Scalping Strategy2.0", overlay=true)
// Input parameters
fastLength = input(5, title="Fast EMA Length")
slowLength = input(13, title="Slow EMA Length")
bollingerLength = input(20, title="Bollinger Band Length")
bollingerMultiplier = input(2, title="Bollinger Band Multiplier")
stopLossMultiplier = input(1, title="Stop Loss Multiplier")
// Calculate EMAs
fastEMA = ta.ema(close, fastLength)
slowEMA = ta.ema(close, slowLength)
// Calculate Bollinger Bands
basis = ta.sma(close, bollingerLength)
upperBand = basis + bollingerMultiplier * ta.stdev(close, bollingerLength)
lowerBand = basis - bollingerMultiplier * ta.stdev(close, bollingerLength)
// Buy condition
buyCondition = ta.crossover(fastEMA, slowEMA) and (close <= upperBand or close <= basis)
// Sell condition
sellCondition = ta.crossunder(fastEMA, slowEMA) and (close >= lowerBand or close >= basis)
// Calculate stop loss level
stopLossLevel = ta.lowest(low, 2)[1] - stopLossMultiplier * ta.atr(14)
// Plot EMAs
plot(fastEMA, color=color.rgb(0, 156, 21), title="Fast EMA")
plot(slowEMA, color=color.rgb(255, 0, 0), title="Slow EMA")
// Plot Bollinger Bands
plot(upperBand, color=color.new(#000000, 0), title="Upper Bollinger Band")
plot(lowerBand, color=color.new(#1b007e, 0), title="Lower Bollinger Band")
// Plot Buy and Sell signals
plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)
// Plot Stop Loss level
plot(stopLossLevel, color=color.orange, title="Stop Loss Level")
// Strategy logic
strategy.entry("Buy", strategy.long, when = buyCondition)
strategy.exit("Stop Loss/Close", from_entry="Buy", loss=stopLossLevel)
strategy.close("Sell", when = sellCondition)