
Esta estratégia permite a negociação de seguimento de tendências através da determinação da direção da tendência do mercado, através da computação do cruzamento entre a média EMA rápida e a média EMA lenta. Quando a EMA rápida atravessa a EMA lenta, faz mais; Quando o preço cai abaixo da EMA rápida, faz uma posição mais baixa.
A estratégia calcula o EMA rápido e o EMA lento, respectivamente, inserindo o período médio do EMA rápido i_shortTerm e o período médio do EMA lento i_longTerm. Quando o EMA de curto prazo usa o EMA de longo prazo (condição goLongCondition1) e o preço é maior do que o EMA de curto prazo (condição goLongCondition2), faz-se uma entrada maior. Quando o preço cai abaixo do EMA de curto prazo (condição exitCondition2), a posição de equilíbrio é retirada.
A estratégia baseia-se no princípio do cruzamento dourado da média EMA, julgando a tendência principal do mercado e seguindo a tendência através do cruzamento de EMAs rápidas e lentas. Quando o curto prazo EMA atravessa o longo prazo EMA, indica a tendência de entrada no mercado. Quando o preço é superior ao curto prazo EMA, indica que o mercado está atualmente em fase de tendência ascendente.
A estratégia tem as seguintes vantagens:
Captured Usar a EMA para determinar a direção das principais tendências do mercado, evitando a interferência de flutuações de curto prazo no mercado e bloqueando as principais tendências.
A configuração do parâmetro de EMA rápida e lenta permite ajustar a sensibilidade ao julgamento de tendências e a flexibilidade de adaptação a diferentes situações.
A lógica da estratégia é simples, clara e fácil de entender, adequada para iniciantes em negociação quantitativa.
Pode-se personalizar os parâmetros do ciclo EMA, adaptar os parâmetros para diferentes variedades e mercados, otimizar o efeito da estratégia.
O uso de preços quebrando a EMA para sair do stop loss pode efetivamente controlar o risco e proteger o capital.
A estratégia também apresenta alguns riscos:
Quando a tendência se inverte, o sinal de cruzamento EMA é mais lento do que o preço, o que pode levar a maiores perdas.
A entrada em uma EMA de curto prazo pode ser prejudicada por falhas de brecha.
A configuração incorreta dos paramedic parameters também pode afetar a eficácia da estratégia.
Os efeitos são fortemente ligados à evolução do mercado e não são adequados para todas as variedades e fases.
As medidas de gestão de risco correspondentes incluem:
Optimizar os parâmetros da EMA para aumentar a sensibilidade à reversão de tendência.
Adicionar filtros de outros indicadores para determinar a hora de entrada.
Os parâmetros de debug são constantemente otimizados, adaptados à variedade e ao mercado.
Conheça bem as situações em que a estratégia se aplica e evite o uso cego.
A estratégia pode ser melhorada em vários aspectos:
O MACD, KD e outros indicadores são usados para filtrar os sinais e otimizar o tempo de entrada.
Adição de stop loss móvel, rastreamento de lucros e controle de risco adicional.
Combinando o indicador de volatilidade ATR para otimizar a posição de parada.
Testar métodos mais científicos de definição de parâmetros do EMA e otimizar os parâmetros.
Verificação de sinais em múltiplos intervalos de tempo para melhorar a precisão do sinal.
A partir de agora, você pode tentar melhorar a estratégia BREAKOUT para capturar a tendência maior durante a aceleração.
Esta estratégia julga a direção da principal tendência do mercado através do cruzamento da média da EMA, permitindo o rastreamento de tendências simples e eficazes. A lógica da estratégia é clara e fácil de implementar, o risco é controlável e é adequado para a prática de iniciantes em negociação quantitativa.
/*backtest
start: 2023-02-15 00:00:00
end: 2024-02-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © pradhan_abhishek
//@version=5
strategy('EMA cross-over strategy by AP', overlay=true, shorttitle='EMACS-AP', initial_capital=100000, default_qty_value=100, default_qty_type=strategy.percent_of_equity, commission_value=0.025)
// inputs
i_shortTerm = input(title='Fast EMA', defval=21)
i_longTerm = input(title='Slow EMA', defval=55)
// select backtest range: if this is not given, then tradingview goes back since inception / whereever it finds data
i_from = input(defval = timestamp("01 Jan 2023 00:00"), title = "From")
i_to = input(defval = timestamp("31 Dec 2033 23:59"), title = "To")
i_showBg = input(defval = true, title = "Show In-trade / Out-trade background")
// create date function "within window of time"
date() => true
// exponential moving average (EMA) variables, derived from input parameters
shortTermEMA = ta.ema(close, i_shortTerm)
longTermEMA = ta.ema(close, i_longTerm)
atr = ta.atr(14)
// ### Trade strategy: begins ###
inTrade = strategy.position_size > 0
notInTrade = strategy.position_size <= 0
goLongCondition1 = shortTermEMA > longTermEMA
goLongCondition2 = close > shortTermEMA
// exitCondition1 = shortTermEMA < midTermEMA
exitCondition2 = close < shortTermEMA
// enter if not in trade and long conditions are met
if date() and goLongCondition1 and goLongCondition2 and notInTrade
strategy.entry('long', strategy.long)
// exit on stop-Loss hit
stopLoss = close - atr * 3
strategy.exit('exit', 'long', stop=stopLoss)
// exit if already in trade and take profit conditions are met
if date() and exitCondition2 and inTrade
strategy.close(id='long')
// ###Trade strategy: ends ###
// plot emas & background color for trade status
plot(shortTermEMA, color=color.new(color.blue, 0))
plot(longTermEMA, color=color.new(color.green, 0))
trade_bgcolor = notInTrade ? color.new(color.red, 75) : color.new(color.green, 75)
bgcolor(i_showBg ? trade_bgcolor : color.new(color.white, 75))