Estratégia de scalping de Bitcoin baseada em cruzamento de média móvel e padrões de velas


Data de criação: 2024-02-29 12:01:47 última modificação: 2024-02-29 12:01:47
cópia: 0 Cliques: 917
1
focar em
1617
Seguidores

Estratégia de scalping de Bitcoin baseada em cruzamento de média móvel e padrões de velas

Visão geral

A estratégia é uma estratégia de scalping de Bitcoin baseada em um período de 5 minutos. Utiliza o cruzamento de uma média móvel de 9 e 15 ciclos e a forma de uma linha K como sinal de negociação. Concretamente, um sinal de compra é gerado quando uma média móvel rápida atravessa a média móvel lenta para cima e a linha K forma um paralelo ou uma linha de sol puro; um sinal de venda é gerado quando a média móvel rápida atravessa a média móvel lenta para baixo.

Princípio da estratégia

A estratégia usa duas médias móveis de diferentes períodos para determinar a tendência. A média móvel de 9 períodos é mais sensível e pode capturar tendências de curto prazo; a média móvel de 15 períodos é mais estável e pode filtrar parte do ruído. Quando uma média móvel mais rápida atravessa uma média móvel mais lenta para cima, a tendência de curto prazo se transforma em alta; ao contrário, a tendência de curto prazo se transforma em baixa.

Além disso, a estratégia também é filtrada em combinação com a forma de linha K. O sinal de compra é gerado somente quando uma linha K forte, como a formação de um casco ou uma linha solar pura, é formada. Isso evita o geramento de sinais de negociação errados no processo de composição.

Os sinais e regras de negociação são os seguintes:

  1. A média móvel de 9 períodos atravessa a média móvel de 15 períodos e o ângulo da média móvel de 15 períodos é maior que 30 graus, indicando que a tendência de curto prazo se transformou em alta;

  2. Nesse momento, se a forma da linha K for um eixo ou um eixo puro, indicando um forte impulso ascendente, um sinal de compra é gerado;

  3. Quando a média móvel de 9 períodos é atravessada abaixo da média móvel de 15 períodos, a tendência de curto prazo se transforma em uma queda, gerando um sinal de venda, sem necessidade de julgar o formato da linha K;

  4. Depois de entrar, configure 0,5% de stop loss e 0,5% de stop loss.

Análise de vantagens

A estratégia tem as seguintes vantagens:

  1. Retirada pequena, ganhos estáveis. Como estratégia de escalpelamento, o setor de parada de perda menor, a perda individual limitada, mesmo em caso de contra-mercado não será retirada substancialmente.

  2. Os sinais são mais claros. O cruzamento da média móvel em combinação com a forma de linha K reconhece os pontos de viragem da tendência e evita a ruptura ineficaz.

  3. Fácil de implementar negociação automática. As regras de sinais de estratégia são claras, os parâmetros de ajuste são simples e adequados para negociação algorítmica.

  4. A estratégia é apropriada para situações de alta volatilidade do Bitcoin. Como moeda digital, o Bitcoin é muito volátil e os ajustes de curto prazo são frequentes. A estratégia pode ser usada para capturar oportunidades de negociação em linha curta.

Análise de Riscos

A estratégia também apresenta alguns riscos:

  1. A tendência é para que haja pequenas perdas repetidas. A tendência é para que haja uma forte duplicidade na situação do Bitcoin, com uma alta probabilidade de que o stop loss seja acionado e que o stop loss se torne um prejuízo.

  2. A configuração dos parâmetros precisa ser constantemente otimizada. A configuração dos parâmetros de média móvel e do stop loss precisa ser ajustada de acordo com o mercado, caso contrário, o efeito será descontado;

  3. O efeito depende da tendência. Em um balanço, a estratégia pode gerar negociações frequentes, mas pequenos lucros.

A solução é a seguinte:

  1. Aumentar o volume de encomendas individuais para garantir uma boa relação lucro/dívida;

  2. Ajustar os parâmetros para acompanhar as mudanças no mercado;

  3. Identificar a situação e evitar transações inválidas na liquidação.

Direção de otimização

A estratégia pode ser melhorada em várias direções:

  1. Aumentar o mecanismo de adaptação do Stop Loss Stop, por exemplo, acompanhar a média móvel e ajustar o Stop Loss Line em tempo real, alterar dinamicamente o objetivo de lucro, etc.

  2. Em combinação com outros indicadores de filtragem de sinais. Por exemplo, o indicador RSI julga o excesso de compra e venda, o aumento do volume de transações, etc.

  3. Teste de diferentes tipos de contratos. Utilize esta estratégia para o scalping de variedades como petróleo, índices de ações e futuros.

  4. Optimização de parâmetros e otimização de feedback para determinar os melhores parâmetros.

Resumir

Em geral, a estratégia é uma estratégia eficaz de escalpelamento de bitcoin. É simples e fácil de implementar, com alta configurabilidade. Com otimização e ajuste contínuos, espera-se obter ganhos estáveis de negociação de escalpelamento. Mas também é preciso estar atento ao risco, controlar de forma racional os stop-loss e as posições. Além disso, pode-se otimizar a estratégia de acordo com o mercado e as próprias circunstâncias para obter melhores resultados.

Código-fonte da estratégia
/*backtest
start: 2024-01-29 00:00:00
end: 2024-02-28 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Moving Average Crossover Strategy with Candlestick Patterns", overlay=true)

// Define input parameters
fast_length = input(9, "Fast MA Length")
slow_length = input(15, "Slow MA Length")
stop_loss_percent = input(0.5, "Stop Loss (%)")
target_percent = input(0.5, "Target (%)")
angle_threshold = input(30, "Angle Threshold (degrees)")

// Calculate moving averages
fast_ma = sma(close, fast_length)
slow_ma = sma(close, slow_length)

// Define candlestick patterns
is_pin_bar() =>
    pin_bar = abs(open - close) > 2 * abs(open[1] - close[1])
    high_tail = max(open, close) - high > abs(open - close) * 1.5
    low_tail = low - min(open, close) > abs(open - close) * 1.5
    pin_bar and high_tail and low_tail

is_marubozu() =>
    marubozu = abs(open - close) > abs(open[1] - close[1]) * 0.75
    no_upper_shadow = high == max(open, close)
    no_lower_shadow = low == min(open, close)
    marubozu and no_upper_shadow and no_lower_shadow

is_full_body() =>
    full_body = abs(open - close) > abs(open[1] - close[1]) * 0.95
    full_body

// Plot moving averages
plot(fast_ma, color=color.blue, title="Fast MA")
plot(slow_ma, color=color.red, title="Slow MA")

// Calculate angle of slow moving average
ma_angle = abs(180 * (atan(slow_ma[1] - slow_ma) / 3.14159))

// Generate buy/sell signals based on angle condition and candlestick patterns
buy_signal = crossover(fast_ma, slow_ma) and ma_angle >= angle_threshold and (is_pin_bar() or is_marubozu() or is_full_body())
sell_signal = crossunder(fast_ma, slow_ma)

// Calculate stop-loss and target levels
stop_loss_level = close * (1 - stop_loss_percent / 100)
target_level = close * (1 + target_percent / 100)

// Execute trades based on signals with stop-loss and target
strategy.entry("Buy", strategy.long, when=buy_signal)
strategy.exit("Exit", "Buy", stop=stop_loss_level, limit=target_level)

// Plot buy/sell signals on chart (optional)
plotshape(series=buy_signal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=sell_signal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Plot angle line
hline(angle_threshold, "Angle Threshold", color=color.black, linestyle=hline.style_dashed)