Chiến lược này kết hợp chỉ số Divergence Convergence Moving Average (MACD) và chỉ số Stochastic Relative Strength Index (Stoch RSI) để xác định hướng xu hướng thị trường, đi dài khi xu hướng tăng và đi ngắn khi xu hướng giảm.
Chiến lược này sử dụng các chỉ số MACD và Stoch RSI để xác định hướng xu hướng thị trường.
Chỉ số MACD bao gồm đường EMA nhanh, đường EMA chậm và sự khác biệt giữa chúng, phản ánh sự hội tụ và phân kỳ của các đường trung bình động ngắn hạn và dài hạn. Khi đường nhanh vượt qua trên đường chậm, đó là tín hiệu mua. Khi đường nhanh vượt qua dưới đường chậm, đó là tín hiệu bán.
Chỉ số Stoch RSI kết hợp điểm mạnh của cả chỉ số RSI và Stoch để hiển thị mức mua quá mức và bán quá mức trên thị trường. Khi Stoch RSI lớn hơn đường tín hiệu Stoch RSI, đó là tín hiệu mua. Khi thấp hơn đường tín hiệu, đó là tín hiệu bán.
Chiến lược này sử dụng MACD và Stoch RSI trên khung thời gian hàng ngày và 4 giờ để xác định xu hướng thị trường. Khi cả hai chỉ số tạo ra tín hiệu mua trên biểu đồ hàng ngày và 4 giờ, đi dài. Khi cả hai tạo ra tín hiệu bán, đi ngắn. Điều này có thể lọc hiệu quả các tín hiệu sai và cải thiện độ tin cậy.
Kết hợp hai yếu tố để đánh giá chuyển động thị trường có thể lọc các tín hiệu sai hiệu quả và cải thiện độ chính xác tín hiệu
Xác nhận tín hiệu trên khung thời gian cao và thấp (ngày và 4H) tránh bị chém
Tiếp theo xu hướng tránh thị trường hỗn loạn
Logic chiến lược đơn giản và rõ ràng, dễ hiểu và thực hiện
Điều chỉnh các thông số MACD và Stoch RSI để tối ưu hóa các điểm vào và ra
Thêm các chiến lược dừng lại để khóa lợi nhuận
Thêm kích thước vị trí vào kiểm soát theo rủi ro giao dịch
Thêm nhiều yếu tố để đánh giá để cải thiện độ chính xác tín hiệu
Sử dụng các phương pháp học máy để tối ưu hóa các tham số một cách năng động
Chiến lược này xác định hướng xu hướng thông qua mô hình hai yếu tố và xác nhận tín hiệu trên các khung thời gian. Đây là một chiến lược theo xu hướng tương đối ổn định và đáng tin cậy, với một số khả năng quản lý rủi ro và không gian cho lỗi. Hiệu suất của nó có thể được tăng thêm bằng cách thêm tối ưu hóa tham số, dừng lỗ, kích thước vị trí và các mô-đun khác.
/*backtest start: 2024-01-09 00:00:00 end: 2024-01-16 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title='[RS]Khizon (UGAZ) Strategy V0', shorttitle='K', overlay=false, pyramiding=0, initial_capital=100000, currency=currency.USD) // || Inputs: macd_src = input(title='MACD Source:', defval=close) macd_fast = input(title='MACD Fast Length:', defval=12) macd_slow = input(title='MACD Slow Length:', defval=26) macd_signal_smooth = input(title='MACD Signal Smoothing:', defval=9) srsi_src = input(title='SRSI Source:', defval=close) srsi_rsi_length = input(title='SRSI RSI Length:', defval=14) srsi_stoch_length = input(title='SRSI Stoch Length:', defval=14) srsi_smooth = input(title='SRSI Smoothing:', defval=3) srsi_signal_smooth = input(title='SRSI Signal Smoothing:', defval=3) // || Strategy Inputs: trade_size = input(title='Trade Size in USD:', type=float, defval=1) buy_trade = input(title='Perform buy trading?', type=bool, defval=true) sel_trade = input(title='Perform sell trading?', type=bool, defval=true) // || MACD(close, 12, 26, 9): ||---------------------------------------------|| f_macd_trigger(_src, _fast, _slow, _signal_smooth)=> _macd = ema(_src, _fast) - ema(_src, _slow) _signal = sma(_macd, _signal_smooth) _return_trigger = _macd >= _signal ? true : false // || Stoch RSI(close, 14, 14, 3, 3) ||-----------------------------------------|| f_srsi_trigger(_src, _rsi_length, _stoch_length, _smooth, _signal_smooth)=> _rsi = rsi(_src, _rsi_length) _stoch = sma(stoch(_rsi, _rsi, _rsi, _stoch_length), _smooth) _signal = sma(_stoch, _signal_smooth) _return_trigger = _stoch >= _signal ? true : false // ||-----------------------------------------------------------------------------|| // ||-----------------------------------------------------------------------------|| // || Check Directional Bias from daily timeframe: daily_trigger = security('NGAS', 'D', f_macd_trigger(macd_src, macd_fast, macd_slow, macd_signal_smooth) and f_srsi_trigger(srsi_src, srsi_rsi_length, srsi_stoch_length, srsi_smooth, srsi_signal_smooth)) h4_trigger = security('NGAS', '240', f_macd_trigger(macd_src, macd_fast, macd_slow, macd_signal_smooth) and f_srsi_trigger(srsi_src, srsi_rsi_length, srsi_stoch_length, srsi_smooth, srsi_signal_smooth)) plot(title='D1T', series=daily_trigger?0:na, style=circles, color=blue, linewidth=4, transp=65) plot(title='H4T', series=h4_trigger?0:na, style=circles, color=navy, linewidth=2, transp=0) sel_open = sel_trade and not daily_trigger and not h4_trigger buy_open = buy_trade and daily_trigger and h4_trigger sel_close = not buy_trade and daily_trigger and h4_trigger buy_close = not sel_trade and not daily_trigger and not h4_trigger strategy.entry('sel', long=false, qty=trade_size, comment='sel', when=sel_open) strategy.close('sel', when=sel_close) strategy.entry('buy', long=true, qty=trade_size, comment='buy', when=buy_open) strategy.close('buy', when=buy_close)