
A estratégia usa a forma de cruzamento de linhas rápidas e lentas da EMA para acompanhar a tendência dos preços. Quando a linha rápida atravessa a linha lenta de baixo, faça mais; Quando a linha rápida atravessa a linha lenta de cima para baixo, leve. A estratégia se aplica principalmente a variedades com tendências mais evidentes, que conseguem acompanhar a tendência de forma eficaz e obter ganhos extras.
O indicador central da estratégia é o EMA mediano. A fórmula para calcular o EMA mediano é:
EMA(t)=C(t)×2/(n+1)+EMA(t-1)×(n-1)/(n+1)
Em que, t é o momento atual, C ((t) é o preço de fechamento atual e n é o valor do parâmetro N. tal que EMA é um indicador técnico de média móvel com um fator de ponderação. O EMA atribui maior peso ao preço mais recente, para que possa reagir mais rapidamente à mudança de preço mais recente.
A estratégia constrói uma média de EMA rápida e uma média de EMA lenta, cruzando a linha lenta na linha rápida como um sinal de compra, e cruzando a linha lenta abaixo da linha rápida como um sinal de venda. Quando a linha rápida é cruzada, o preço começa uma nova rodada de alta; quando a linha rápida é cruzada, o preço termina a tendência de alta e começa a regressão para baixo.
A estratégia tem as seguintes vantagens:
Os principais riscos desta estratégia são:
Para reduzir os riscos acima mencionados, podem ser tomadas as seguintes medidas de otimização:
A estratégia pode ser melhorada em vários aspectos:
A estratégia em geral é uma estratégia de acompanhamento de tendências mais simples e prática. Ela usa a linha média da EMA para determinar a tendência dos preços, a lógica de operação é clara e fácil de implementar. A vantagem é que o ajuste de parâmetros é simples e pode acompanhar a tendência de forma eficaz; A desvantagem é que é fácil emitir falsos sinais, o desempenho real pode ser mais fraco do que a retomada. O próximo passo pode ser otimizado a partir da introdução de condições de filtro, modelos de parametrização dinâmica e construção, etc., tornando a estratégia mais estável e confiável.
/*backtest
start: 2022-12-20 00:00:00
end: 2023-12-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("EMA交叉策略by GPT",
format = format.inherit,
overlay = true,
default_qty_type= strategy.percent_of_equity,
default_qty_value = 100,
currency = currency.USD,
initial_capital = 1000000)
// 定義回測交易開始和結束時間的變數
start_time = input(title="開始時間", type=input.time, defval=timestamp("01 Jan 2020 00:00 +0000"))
end_time = input(title="結束時間", type=input.time, defval=timestamp("31 Dec 2050 23:59 +0000"))
// 判斷是否在回測交易時間範圍內
in_range = true
// Define input variables
fast_length = input(title="Fast EMA Length", type=input.integer, defval=5)
slow_length = input(title="Slow EMA Length", type=input.integer, defval=20)
// Define EMAs
fast_ema = ema(close, fast_length)
slow_ema = ema(close, slow_length)
// Define buy and sell signals
buy_signal = crossover(fast_ema, slow_ema)
sell_signal = crossunder(fast_ema, slow_ema)
// Buy signal
if in_range and buy_signal
strategy.entry("Buy", strategy.long, when=in_range)
// Sell signal
if in_range and sell_signal
strategy.close("Buy", when=sell_signal)