
A estratégia é baseada em uma estratégia de negociação de forcas de ouro e forcas de ouro baseada em dois indicadores de EMA. A estratégia é feita calculando a linha rápida EMA e a linha lenta EMA, fazendo mais quando atravessa a linha lenta na linha rápida e é neutralizada quando atravessa a linha lenta sob a linha rápida.
A estratégia é baseada principalmente em dois indicadores EMA. Primeiro, calcula-se a EMA de linha rápida e a EMA de linha lenta. O ciclo EMA de linha rápida é curto e reflete sensivelmente as mudanças de preço; o ciclo EMA de linha lenta é longo e reflete a tendência de longo prazo.
A estratégia inclui, em particular, as seguintes etapas:
Introduza os parâmetros dos EMAs de linha rápida e lenta, incluindo o comprimento do ciclo SMA, a fonte de dados, etc.
Calcule o EMA de linha rápida e a EMA de linha lenta
Definindo o horário do forquilho: a linha rápida atravessa a linha lenta de baixo para cima
Definir horário de morte: linha rápida atravessa linha lenta de cima para baixo
Compre mais quando estiver com um garfo
“Aposentar-se na hora da morte”
Opção de permitir ou não um curto prazo e usar uma estratégia de stop loss
Exportação de notificações de compra e venda
Com esta simples estratégia de cruzamento de duas EMAs, é possível capturar temporariamente tendências de preços de curto prazo e obter ganhos.
A estratégia tem as seguintes vantagens:
A estratégia é simples, clara e fácil de entender.
O que é necessário é apenas dois indicadores EMA, para facilitar a realização.
A arbitragem pode capturar tendências de preços de curto prazo, obtendo ganhos de volatilidade.
Capacidade de personalizar o ciclo EMA, com flexibilidade para adaptar-se a diferentes ciclos de mercado.
Pode optar por uma estratégia de controlo de risco flexível e permitir a realização de um curto prazo.
A opção de usar ou não uma estratégia de stop loss para controlar o risco de negociação.
Notificações de compra e venda podem ser exportadas para facilitar o monitoramento.
As estratégias são fáceis de otimizar, com a flexibilidade de ajustar os parâmetros do EMA para otimizar o espaço de lucro.
A estratégia também apresenta alguns riscos:
A estratégia de dupla EMA é propensa a produzir falsos sinais e pode levar a prejuízos desnecessários.
A configuração irracional do ponto de parada pode aumentar os prejuízos.
A frequência de transações pode ser excessiva, aumentando os custos de transação e o risco de deslizamento.
Os parâmetros de EMA fixos não podem ser adaptados às mudanças do mercado.
“Eu não tenho nada a ver com isso.
A tendência é de que os investidores não possam avaliar a inversão da tendência, e que possam optar por inverter a posição.
Correspondentes medidas de gestão de riscos:
Optimizar os parâmetros EMA para reduzir a probabilidade de falsos sinais.
Estabeleça um ponto de parada razoável para controlar as perdas individuais.
Otimizar o ciclo EMA e reduzir a frequência de negociação.
Os parâmetros do EMA podem ser ajustados dinamicamente em diferentes fases do mercado.
Aumentar os indicadores de tendência para evitar a queda.
A combinação de indicadores de tendências para determinar a direção das grandes tendências.
A estratégia pode ser otimizada em:
Otimização dinâmica dos parâmetros EMA, com diferentes combinações de ciclos EMA em diferentes fases do mercado, para otimizar o efeito de arbitragem dos parâmetros.
Aumentar os critérios de seleção de ações e, se as ações atenderem a certos critérios, realizar negociações estratégicas para aumentar a taxa de sucesso.
Combinado com os indicadores de volatilidade, reduz o risco de evasão de posições em fases de baixa volatilidade.
A combinação de indicadores de volume de transação, em alta quantidade pode confirmar a tendência para produzir um sinal.
A definição de condições de preço, como a quebra da linha de 20 dias e a negociação da estratégia EMA.
Optimizar a estratégia de stop loss e definir as condições de stop loss para bloquear os lucros.
Aumentar o discernimento de tendências em grande escala para evitar posições de desvantagem.
Estratégias de otimização contínua combinadas com algoritmos de aprendizagem profunda e vários algoritmos de aprendizagem de máquina.
Resumindo, a estratégia geral do EMA é simples, fácil de entender e implementar, pode capturar os fluxos de preços para obter lucro, mas também existe um certo risco de lucro. Podemos controlar o risco e obter retornos satisfatórios através de métodos como otimização de parâmetros, parada de perdas, filtragem de ações e julgamento de tendências em grande escala.
/*backtest
start: 2023-09-15 00:00:00
end: 2023-10-15 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("EMA Strategy", shorttitle="EMA Strategy", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// === Inputs ===
// short ma
maFastSource = input(defval=close, title="Fast MA Source")
maFastLength = input(defval=3, title="Fast MA Period", minval=1)
// long ma
maSlowSource = input(defval=close, title="Slow MA Source")
maSlowLength = input(defval=9, title="Slow MA Period", minval=1)
// invert trade direction
shorting = input(defval=false, title="Allow Shorting?")
// risk management
useStop = input(defval=false, title="Use Initial Stop Loss?")
slPoints = input(defval=25, title="Initial Stop Loss Points", minval=1)
useTS = input(defval=false, title="Use Trailing Stop?")
tslPoints = input(defval=120, title="Trail Points", minval=1)
useTSO = input(defval=false, title="Use Offset For Trailing Stop?")
tslOffset = input(defval=20, title="Trail Offset Points", minval=1)
// Messages for buy and sell
message_buy = input("Buy message", title="Buy Alert Message")
message_sell = input("Sell message", title="Sell Alert Message")
// Calculate start/end date and time condition
startDate = input(timestamp("2021-01-01T00:00:00"), type = input.time)
finishDate = input(timestamp("2021-12-31T00:00:00"), type = input.time)
time_cond = true
// === Vars and Series ===
fastMA = ema(maFastSource, maFastLength)
slowMA = ema(maSlowSource, maSlowLength)
plot(fastMA, color=color.blue)
plot(slowMA, color=color.purple)
goLong() =>
crossover(fastMA, slowMA)
killLong() =>
crossunder(fastMA, slowMA)
strategy.entry("Buy", strategy.long, when=goLong() and time_cond, alert_message = message_buy)
strategy.close("Buy", when=killLong() and time_cond, alert_message = message_sell)
// Shorting if using
if shorting
strategy.entry("Sell", strategy.short, when=killLong() and time_cond, alert_message = message_sell)
strategy.close("Sell", when=goLong() and time_cond, alert_message = message_buy)
if useStop
strategy.exit("XLS", from_entry="Buy", stop=strategy.position_avg_price / 1.08)
strategy.exit("XSS", from_entry="Sell", stop=strategy.position_avg_price * 1.08)