Cette stratégie combine l'indicateur de convergence moyenne mobile (MACD) et l'indicateur de force relative stochastique (Stoch RSI) pour déterminer la direction de la tendance du marché, en allant long lorsque la tendance est à la hausse et en allant court lorsque la tendance est à la baisse.
Cette stratégie utilise les indicateurs MACD et Stoch RSI pour déterminer la direction de la tendance du marché.
L'indicateur MACD se compose de la ligne EMA rapide, de la ligne EMA lente et de la différence entre elles, reflétant la convergence et la divergence des moyennes mobiles à court et à long terme.
L'indicateur Stoch RSI combine les forces de l'indicateur RSI et de l'indicateur Stoch pour montrer les niveaux de surachat et de survente sur le marché.
Cette stratégie utilise le MACD et le Stoch RSI sur les délais quotidiens et de 4 heures pour déterminer la tendance du marché. Lorsque les deux indicateurs génèrent des signaux d'achat sur les graphiques quotidiens et de 4 heures, allez long. Lorsque les deux génèrent des signaux de vente, allez court. Cela peut filtrer efficacement les faux signaux et améliorer la fiabilité.
La combinaison de deux facteurs pour juger des mouvements du marché peut filtrer efficacement les faux signaux et améliorer la précision du signal
La validation des signaux à travers les délais élevés et bas (quotidiennement et 4H) évite d'être fouetté
Suivre les tendances évite les marchés agités
Logique de stratégie simple et claire, facile à comprendre et à exécuter
Ajustez les paramètres MACD et Stoch RSI pour optimiser les points d'entrée et de sortie
Ajoutez des stratégies d'arrêt de traînée pour verrouiller les bénéfices
Ajouter la dimension de position au contrôle par risque de transaction
Ajouter plus de facteurs à juger pour améliorer la précision du signal
Utiliser des méthodes d'apprentissage automatique pour optimiser dynamiquement les paramètres
Cette stratégie détermine la direction de la tendance via un modèle à double facteur et valide les signaux à travers les délais. C'est une tendance relativement stable et fiable suivant la stratégie, avec certaines capacités de gestion des risques et une marge d'erreur.
/*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)