
Esta estratégia utiliza a dupla linha de movimentação para formar sinais de negociação, gerando um sinal de compra quando a linha de movimentação de curto prazo atravessa a linha de movimentação de longo prazo; gerando um sinal de venda quando a linha de movimentação de curto prazo atravessa a linha de movimentação de longo prazo. A estratégia, combinada com a função de acompanhamento de tendências da linha de movimentação, pode efetivamente capturar a tendência de preços e realizar negociações de tendências.
Esta estratégia usa duas médias móveis de índices de diferentes períodos: ((EMA)) EMA1 é a média móvel de curto prazo, com um período de 9 anos; EMA2 é a média móvel de longo prazo, com um período de 21 anos. Quando a média móvel de curto prazo atravessa a média móvel de longo prazo EMA2 em EMA1, gera um sinal de compra; Quando a média móvel de curto prazo atravessa EMA1 em EMA2, gera um sinal de venda.
Assim, você pode usar a função de acompanhamento de tendências da média móvel para capturar sinais em tempo hábil quando o preço começa uma nova direção de tendência e acompanhar a tendência. Por exemplo, quando o preço passa de baixa para alta, a média móvel de curto prazo sobe antes da média móvel de longo prazo. A média móvel de curto prazo atravessa a média móvel de longo prazo.
A principal vantagem desta estratégia é a capacidade de identificar com eficácia as tendências de preços, especialmente em mercados com uma forte tendência. A linha média móvel tem uma boa função de acompanhamento de tendências e a estratégia de linha média móvel dupla aumenta ainda mais essa vantagem. Além disso, em comparação com a estratégia de linha média móvel única, a estratégia de linha média móvel dupla pode filtrar ainda mais os falsos sinais e a fiabilidade do sinal é maior.
O maior risco desta estratégia é que quando os preços são fortemente flutuantes, a linha de média móvel fica atrasada, podendo ocorrer situações em que se perde o melhor momento de entrada ou saída. Além disso, a estratégia produz mais sinais de invalidez e diminui a estabilidade da estratégia quando o mercado está em uma zona de choque.
Para reduzir o risco, pode-se ajustar adequadamente os parâmetros periódicos da média móvel, ou adicionar outros indicadores para filtragem de ondas. Por exemplo, em combinação com o indicador de volatilidade do mercado, definir o limiar para evitar que o mercado permaneça em negociação quando houver grandes oscilações no mercado.
A estratégia tem espaço para melhorias nas seguintes áreas:
Esta estratégia utiliza o método de formação de sinais de negociação de linha média móvel de dois índices. A maior vantagem é a capacidade de acompanhamento de tendências de preços, que pode identificar efetivamente a reversão de tendências de preços. Mas também há problemas como atraso na linha média móvel.
/*backtest
start: 2024-01-18 00:00:00
end: 2024-02-17 00:00:00
period: 1h
basePeriod: 15m
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/
// © technicalTruff99446
//@version=4
strategy("AhmetMSA", overlay=true, initial_capital = 10000, commission_value = 0.002, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, calc_on_order_fills = true)
//2. DEĞERDEN SONRA GEÇMİŞ HESAPLAMA DEĞERİ, KOMİSYON ORANI, PARANIN TAMAMI, DEĞERLERİ EKLEMDİ
emaShPD = input (title="EMA KISA PERİYOT", defval=9, minval=1)
emaLngPD = input (title="EMA UZUN PERİYOT", defval=21, minval=1)
//input DEĞİŞKEN DEĞER ATAMA
ema1 = ema (close,emaShPD)
ema2 = ema (close,emaLngPD)
//EMALAR ARASINI BOYAMA upTrend downTrend
upTrend = plot (ema1, color=#4DFF00, linewidth=2, title= "EMA KISA", transp=0)
downTrend = plot (ema2, color=#FF0C00, linewidth=3, title= "EMA UZUN", transp=0)
//linewidth ÇİZGİ KALINLIĞI
//title İSİM VERME
//BACKTESTİN BAŞLANGIÇ TARİHİNİ BELİRLEME
yearin = input(2024, title = "Backtest Başlangıç Tarihi")
//longCondition = crossover(ema1, ema2)
//shortCondition = crossover(ema2, ema1)
buy = crossover(ema1, ema2) and yearin >= year
sell = crossover(ema2, ema1) and yearin >= year
//ta.crossunder KESİŞİM KODU
//Barları BOYAMA
barbuy = ema1 >= ema2
barsell = ema2 < ema1
//AL SAT AŞK KUTUCUKLU EKRANA YAZMA
plotshape(buy, title = "AL AŞK", text = 'AL AŞK', style = shape.labelup, location = location.belowbar, color= color.green, textcolor = color.white, transp = 0, size = size.tiny)
plotshape(sell, title = "SAT AŞK", text = 'SAT AŞK', style = shape.labeldown, location = location.abovebar, color= color.red, textcolor = color.white, transp = 0, size = size.tiny)
//Barları BOYAMA KOŞULU
barcolor(barbuy? #4DFF00: barsell? #FF0C00: #FF0C00)
fill(upTrend, downTrend, color = ema1 >= ema2?#4DFF00 : #FF0C00, transp = 80, title = "bgcolor")
//longCondition = ta.crossover(ta.sma(close, 14), ta.sma(close, 28))
//shortCondition = ta.crossunder(ta.sma(close, 14), ta.sma(close, 28))
//14 GÜNLÜĞÜN KAPANIŞDEĞERİNİN 28 GÜNLÜK KAPANIŞ DEĞERİNİ KESMESİ KOŞULU
if (buy)
strategy.entry("AL AŞK", strategy.long)
if (sell)
strategy.entry("SAT AŞK", strategy.short)