Estratégias de negociação de curto prazo baseadas em acompanhamento de tendências


Data de criação: 2023-09-27 16:56:34 última modificação: 2023-09-27 16:56:34
cópia: 0 Cliques: 666
1
focar em
1617
Seguidores

Visão geral

Esta estratégia permite a negociação de curto prazo com controle de perdas, identificando tendências fortes e oportunidades positivas. A estratégia segue os preços que quebram os sinais de tendência da média móvel simples, interrompe o stop loss no momento em que o RSI se desvia da zona de superaquecimento e capta a queda de preços de curto prazo.

Princípio da estratégia

  1. Calcule a média móvel simples de múltiplos períodos

    • SMAs com linhas de 9, 50 e 100 dias

    • A linha de curto período atravessa a linha de longo período para determinar a direção da tendência

  2. Indicador RSI de sobrecompra e sobrevenda

    • Configurar o RSI para 14 ciclos

    • O RSI acima de 70 é uma zona de sobrecompra e abaixo de 30 é uma zona de sobrevenda

  3. Entrar quando o preço ultrapassar a linha do dia 9

    • Os preços subiram e ultrapassaram a linha de nove dias.

    • Preços abaixo da linha de 9 dias

  4. O RSI se desvia do ponto de parada de perda quando o THENJournal se forma

    • Paralisação do RSI em relação ao preço

    • RSI parou quando atingiu o parâmetro definido

Análise de vantagens

  • Acompanhar tendências de curto prazo, adequado para negociação de alta frequência

  • Portfólio de médias móveis para determinar a direção da tendência e evitar erros de negociação

  • O RSI é um indicador para avaliar o tempo e controlar o risco

  • Flexível Stop Loss Stop Loss, Bloqueio de Linha de Lucro

  • Combinação de sinais de indicadores para melhorar a estabilidade da estratégia

Análise de Riscos

  • A análise de tendências de curto prazo pode ser errada, seguindo os altos e baixos

  • RSI produz falsos sinais e amplia perdas

  • Parâmetros de parada de perda mal definidos, reduzindo ganhos ou ampliando perdas

  • Frequência excessiva de transações, aumento de custos e deslizamentos

  • Parâmetros de falha e efeitos de estratégia de mercado de influência anormal

  • Parâmetros de otimização definidos, paralisação rigorosa, controle de custos em consideração

Direção de otimização

  • Testar diferentes combinações de médias móveis para otimizar o julgamento

  • Considere outros indicadores como o STOCH para validar o sinal RSI

  • Adicionar aprendizado de máquina para julgar a eficácia de uma descoberta

  • Parâmetros de ajuste para diferentes variedades e períodos de negociação

  • Otimização da lógica de stop loss e realização de rastreamento dinâmico

  • Considerar a integração de mecanismos de deslocação automática

Resumir

A estratégia integra a vantagem do indicador de linha média e do indicador RSI, permitindo uma estratégia de negociação conservadora de linha curta. A estratégia pode ser aperfeiçoada por meio de otimização de parâmetros, verificação de sinais e controle de risco, etc. A estratégia pode ser adaptada às mudanças no mercado para obter um efeito contínuo.

Código-fonte da estratégia
/*backtest
start: 2023-08-27 00:00:00
end: 2023-09-26 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule

//@version=4
strategy(shorttitle='Maximized Scalping On Trend',title='Maximized Scalping On Trend (by Coinrule)', overlay=true, initial_capital = 1000, process_orders_on_close=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1)

//Backtest dates
fromMonth = input(defval = 1,    title = "From Month",      type = input.integer, minval = 1, maxval = 12)
fromDay   = input(defval = 10,    title = "From Day",        type = input.integer, minval = 1, maxval = 31)
fromYear  = input(defval = 2019, title = "From Year",       type = input.integer, minval = 1970)
thruMonth = input(defval = 1,    title = "Thru Month",      type = input.integer, minval = 1, maxval = 12)
thruDay   = input(defval = 1,    title = "Thru Day",        type = input.integer, minval = 1, maxval = 31)
thruYear  = input(defval = 2112, title = "Thru Year",       type = input.integer, minval = 1970)

showDate  = input(defval = true, title = "Show Date Range", type = input.bool)

start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)        // backtest start window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)        // backtest finish window
window()  => true      // create function "within window of time"

//MA inputs and calculations
movingaverage_fast = sma(close, input(9))
movingaverage_mid= sma(close, input(50))
movingaverage_slow = sma(close, input (100))


//Trend situation
Bullish= cross(close, movingaverage_fast)

Momentum = movingaverage_mid > movingaverage_slow

// RSI inputs and calculations
lengthRSI = 14
RSI = rsi(close, lengthRSI)

//Entry
strategy.entry(id="long", long = true, when = Bullish and Momentum and RSI > 50)

//Exit

TP = input(70)
SL =input(30)
longTakeProfit  = RSI > TP
longStopPrice = RSI < SL

strategy.close("long", when = longStopPrice or longTakeProfit and window())

plot(movingaverage_fast, color=color.black, linewidth=2 )
plot(movingaverage_mid, color=color.orange, linewidth=2)
plot(movingaverage_slow, color=color.purple, linewidth=2)