La stratégie de scalping à une minute de Gem Forest est une stratégie de trading quantitative pour le trading à court terme. Elle combine plusieurs indicateurs pour identifier les caractéristiques des oscillations du marché dans un délai de 1 minute et basculer entre les positions longues et courtes pour le scalping ultra-courte.
Lorsque le prix est en dessous de la bande inférieure, une EMA rapide et lente se produit, un RSI rapide se déplace au-dessus du RSI lent, un signal d'achat est généré; lorsque le prix est au-dessus de la bande supérieure, une EMA rapide et lente se produit, un RSI rapide se déplace au-dessous du RSI lent, un signal de vente est généré.
Ces risques peuvent être gérés en optimisant les paramètres, en ajustant les arrêts, en limitant les transactions quotidiennes maximales, en choisissant les produits appropriés, etc.
Cette stratégie prend pleinement en compte les caractéristiques du trading quantitatif ultra court. Des paramètres d'indicateur raisonnables, des confirmations multiples et des combinaisons assurent une fiabilité élevée. Avec un contrôle strict des risques, elle présente un potentiel de profit considérable et convient aux investisseurs dotés d'une puissance de calcul et d'une qualité psychologique suffisantes.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Gem Forest 1 Dakika Scalp", overlay=true) source = close atrlen = input.int(14, "ATR Period") mult = input.float(1, "ATR Multi", step=0.1) smoothing = input.string(title="ATR Smoothing", defval="WMA", options=["RMA", "SMA", "EMA", "WMA"]) ma_function(source, atrlen) => if smoothing == "RMA" ta.rma(source, atrlen) else if smoothing == "SMA" ta.sma(source, atrlen) else if smoothing == "EMA" ta.ema(source, atrlen) else ta.wma(source, atrlen) atr_slen = ma_function(ta.tr(true), atrlen) upper_band = atr_slen * mult + close lower_band = close - atr_slen * mult ShortEMAlen = input.int(21, "Fast EMA") LongEMAlen = input.int(65, "Slow EMA") shortSMA = ta.ema(close, ShortEMAlen) longSMA = ta.ema(close, LongEMAlen) RSILen1 = input.int(25, "Fast RSI Length") RSILen2 = input.int(100, "Slow RSI Length") rsi1 = ta.rsi(close, RSILen1) rsi2 = ta.rsi(close, RSILen2) atr = ta.atr(atrlen) RSILong = rsi1 > rsi2 RSIShort = rsi1 < rsi2 longCondition = open < lower_band shortCondition = open > upper_band GoldenLong = ta.crossover(shortSMA,longSMA) Goldenshort = ta.crossover(longSMA,shortSMA) plotshape(shortCondition, title="Sell Label", text="Sell", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.red, textcolor=color.white, transp=0) plotshape(longCondition, title="Buy Label", text="Buy", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.green, textcolor=color.white, transp=0) plotshape(Goldenshort, title="Golden Sell Label", text="Golden Crossover Short", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.blue, textcolor=color.white, transp=0) plotshape(GoldenLong, title="Golden Buy Label", text="Golden Crossover Long", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.yellow, textcolor=color.white, transp=0) if (longCondition) stopLoss = low - atr * 2 takeProfit = high + atr * 5 strategy.entry("long", strategy.long, when = RSILong) if (shortCondition) stopLoss = high + atr * 2 takeProfit = low - atr * 5 strategy.entry("short", strategy.short, when = RSIShort) plot(upper_band) plot(lower_band) plot(shortSMA, color = color.red) plot(longSMA, color = color.yellow)