Chiến lược này thuộc loại chiến lược scalping ngắn hạn, mục tiêu của nó là mở các vị trí hẹp thường xuyên, để đạt được lợi nhuận ổn định bằng cách thu được lợi nhuận nhỏ và kiểm soát rủi ro giảm. Chiến lược này mua nhiều hơn bằng cách đánh giá các chỉ số đường trung bình để xác định điểm đảo ngược có thể và đặt mục tiêu dừng nhanh để khóa lợi nhuận nhỏ.
Chiến lược này sử dụng 4 đường trung bình di chuyển, 9 chu kỳ, 50 chu kỳ, 100 chu kỳ và 200 chu kỳ.
Các quy tắc giao dịch cụ thể là:
Sự kết hợp này có thể giúp tìm ra thời điểm giá có thể giảm trong ngắn hạn nhưng có thể đảo ngược.
Quy tắc giao dịch bằng phẳng là giao dịch bằng phẳng trên đường trung bình 9 chu kỳ trên đường trung bình 200 chu kỳ. Ở đây, đặt mục tiêu dừng gần hơn, nhằm đạt được lợi nhuận ổn định thông qua lợi nhuận nhỏ thường xuyên.
Bạn có thể làm giảm nguy cơ bằng cách:
Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:
Kiểm tra nhiều tham số chu kỳ trung bình hơn để tìm các kết hợp xác định chính xác hơn về sự đảo ngược.
Một cách thích hợp để giảm bớt khoảng cách dừng, theo đuổi nhiều lợi nhuận xu hướng hơn.
Ví dụ như KDJ, MACD, xác nhận, giảm giao dịch không có hiệu lực.
Thiết lập kích thước vị trí tùy thuộc vào điểm dừng và điểm dừng lỗ.
Sau khi dừng chơi, nếu xu hướng tiếp tục, bạn có thể xem xét nhập cảnh trở lại với điều kiện.
Chiến lược này thuộc loại chiến lược scalping đường ngắn, tạo ra tín hiệu giao dịch bằng cách đánh giá các kết hợp đường thẳng trong thời gian ngắn và thiết lập các điểm dừng gần hơn để thu lợi nhuận thường xuyên. Điều này có thể kiểm soát hiệu quả tổn thất và rủi ro đơn lẻ, phù hợp với sự tăng trưởng của số tiền nhỏ.
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//strategy(shorttitle='Moving Average Scalper (by Coinrule)',title='Moving Average Scalper', overlay=true, initial_capital = 1000, default_qty_type = strategy.percent_of_equity, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1)
//Backtest dates
fromMonth = input(defval = 1, title = "From Month", type = input.integer, minval = 1, maxval = 12)
fromDay = input(defval = 10, title = "From Day", type = input.integer, minval = 1, maxval = 31)
fromYear = input(defval = 2019, title = "From Year", type = input.integer, minval = 1970)
thruMonth = input(defval = 1, title = "Thru Month", type = input.integer, minval = 1, maxval = 12)
thruDay = input(defval = 1, title = "Thru Day", type = input.integer, minval = 1, maxval = 31)
thruYear = input(defval = 2112, title = "Thru Year", type = input.integer, minval = 1970)
showDate = input(defval = true, title = "Show Date Range", type = input.bool)
start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window
finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window
window() => true // create function "within window of time"
//MA inputs and calculations
movingaverage_signal = sma(close, input(9))
movingaverage_fast = sma(close, input(50))
movingaverage_slow = sma(close, input(200))
movingaverage_mid= sma(close, input(100))
//Entry
bullish = crossover(movingaverage_signal, movingaverage_fast)
strategy.entry(id="long", long = true, when = bullish and movingaverage_fast < movingaverage_mid and movingaverage_mid < movingaverage_slow and window())
//Exit
bearish = crossover(movingaverage_signal, movingaverage_slow)
Stop_loss= ((input (2))/100)
Take_profit= ((input (8))/100)
longStopPrice = strategy.position_avg_price * (1 - Stop_loss)
longTakeProfit = strategy.position_avg_price * (1 + Take_profit)
strategy.close("long", when = bearish)
// close < longStopPrice or close > longTakeProfit and window())
//PLOT
plot(movingaverage_signal, color=color.black, linewidth=2 )
plot(movingaverage_fast, color=color.orange, linewidth=2)
plot(movingaverage_slow, color=color.purple, linewidth=2)
plot(movingaverage_mid, color=color.blue, linewidth=2)