Estratégia de scalping de um minuto da Gem Forest

Autora:ChaoZhang, Data: 2024-02-19 10:45:18
Tags:

img

Resumo

A estratégia de scalping de um minuto da Gem Forest é uma estratégia quantitativa de negociação para negociação a curto prazo.

Estratégia lógica

  1. O indicador ATR constrói bandas superiores e inferiores para determinar a faixa de oscilação de preços
  2. Crossovers rápidos e lentos da EMA geram sinais comerciais
  3. Indicadores RSI duplos confirmam sinais cruzados
  4. Os pontos de entrada e saída são determinados pela combinação de sinais de indicador e níveis de preços

Quando o preço está abaixo da faixa inferior, a EMA rápida e lenta cruza a cruz de ouro, o RSI rápido cruza acima do RSI lento, um sinal de compra é gerado; quando o preço está acima da faixa superior, a EMA rápida e lenta cruza a cruz morta, o RSI rápido cruza abaixo do RSI lento, um sinal de venda é gerado. Após a entrada, stop loss e take profit são usados para sair.

Análise das vantagens

  1. A combinação de múltiplos indicadores melhora a fiabilidade
  2. Frequência de operação elevada proporciona maior potencial de lucro
  3. Menos saques, melhor estabilidade
  4. Capacidade de scalping ultra curto no prazo de 1 minuto ou menos

Análise de riscos

  1. Requisitos mais elevados para a rede e o hardware devido à alta frequência
  2. Riscos de excesso de negociação e de dispersão de capitais
  3. Falsos sinais de má configuração do indicador
  4. Ativos de capital de risco

Esses riscos podem ser gerenciados através da otimização de parâmetros, ajuste de paradas, limitação de transações diárias máximas, escolha de produtos adequados, etc.

Orientações de otimização

  1. Impacto do ensaio de diferentes períodos ATR
  2. Tente diferentes tipos de EMA ou substitua uma EMA
  3. Ajustar períodos de RSI ou testar outros osciladores como KDJ, Stochastics etc.
  4. Melhorar a lógica de entrada com mais fatores como tendências
  5. Otimizar as paradas para uma melhor relação risco/recompensa

Conclusão

Esta estratégia considera plenamente as características da negociação quantitativa ultra curta. Configurações razoáveis de indicadores, confirmações múltiplas e combinações garantem alta confiabilidade. Com controle de risco rigoroso, tem um potencial de lucro considerável e é adequado para investidores com poder de computação e qualidade psicológica suficientes.


/*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)


Mais.