Chiến lược này sử dụng các chỉ số RSI và EMA để xác định bước vào và bước ra.
Chiến lược dựa trên các điều kiện nhập cảnh và xuất cảnh sau:
Điều kiện nhập cảnh:
Điều kiện xuất cảnh:
Điều này cho phép mua ở mức giảm và bán ở mức cao trong thời gian tăng, nắm bắt các cơ hội tăng trở lại.
Chiến lược có những lợi thế sau:
Chiến lược này cũng có những rủi ro sau:
Các thông số có thể được tối ưu hóa hoặc kết hợp các chỉ số khác để xác định cấu trúc thị trường.
Chiến lược có thể được cải thiện theo những cách sau:
Chiến lược bắt đáy có logic rõ ràng và hoạt động tốt trong thị trường gấu. Nhiều điều chỉnh tham số và tối ưu hóa có thể dẫn đến kết quả backtest tốt hơn. Nhưng rủi ro cần được theo dõi trong giao dịch trực tiếp, và thua lỗ không thể tránh hoàn toàn.
/*backtest start: 2023-11-14 00:00:00 end: 2023-11-21 00:00:00 period: 1m basePeriod: 1m 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/ // © Coinrule //@version=5 strategy("V3 - Catching the Bottom", overlay=true) showDate = input(defval=true, title='Show Date Range') timePeriod = time >= timestamp(syminfo.timezone, 2022, 4, 1, 0, 0) notInTrade = strategy.position_size <= 0 //==================================Buy Conditions============================================ //RSI length = input(14) vrsi = ta.rsi(close, length) buyCondition1 = vrsi < 40 //RSI decrease decrease = 3 buyCondition2 = (vrsi < vrsi[1] - decrease) //sellCondition1 = request.security(syminfo.tickerid, "15", buyCondition2) //EMAs fastEMA = ta.sma(close, 50) slowEMA = ta.sma(close, 100) buyCondition3 = ta.crossunder(fastEMA, slowEMA) //buyCondition2 = request.security(syminfo.tickerid, "15", buyCondition3) if(buyCondition1 and buyCondition2 and buyCondition3 and timePeriod) strategy.entry(id='Long', direction = strategy.long) //==================================Sell Conditions============================================ sellCondition1 = vrsi > 65 EMA9 = ta.sma(close, 9) EMA50 = ta.sma(close, 50) sellCondition2 = ta.crossover(EMA9, EMA50) if(sellCondition1 and sellCondition2 and timePeriod) strategy.close(id='Long') //Best on: ETH 5mins (7.59%), BNB 5mins (5.42%), MATIC 30mins (15.61%), XRP 45mins (10.14%) ---> EMA //Best on: MATIC 2h (16.09%), XRP 15m (5.25%), SOL 15m (4.28%), AVAX 5m (3.19%)