O recurso está a ser carregado... Carregamento...

Estratégia de ruptura de média móvel dupla

Autora:ChaoZhang, Data: 2023-09-11 12:31:51
Tags:

Esta estratégia usa médias móveis de SMA e EMA para determinar a direção longa e curta com base em quebras de preços.

A vantagem desta estratégia de ruptura de média móvel dupla é que a combinação de dois sistemas de média móvel pode melhorar a precisão.

Em resumo, essa estratégia funciona melhor quando há fortes tendências, mas deve ser negociada com cautela.

Em geral, a estratégia de ruptura de média móvel dupla tem uma lógica de negociação simples, mas requer um controlo adequado do risco e ajuste dos parâmetros para ser aplicada com sucesso na negociação ao vivo.


/*backtest
start: 2023-08-11 00:00:00
end: 2023-09-10 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title = "Noro's Multima v1.0", shorttitle = "Multima 1.0", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

needlong = input(true, "long")
needshort = input(true, "short")

usema1 = input(true, "Use MA1 (SMA, blue)")
usema2 = input(true, "Use MA2 (EMA, red)")
lenma1 = input(40, defval = 40, minval = 2, maxval = 1000, title = "MA1 length")
lenma2 = input(40, defval = 40, minval = 2, maxval = 1000, title = "MA2 length")
//anti = input(true, defval = true, title = "Antipila")
usecf = input(true, defval = true, title = "Use color-filter")

//Strategy
ma1 = sma(close, lenma1)
ma2 = ema(close, lenma2)
signal1 = usema1 == false ? 0 : close > ma1 ? 1 : -1
signal2 = usema2 == false ? 0 : close > ma2 ? 1 : -1
lots = signal1 + signal2

//Lines
plot(ma1, color = blue, linewidth = 3, transp = 0)
plot(ma2, color = red, linewidth = 3, transp = 0)

//Trading
if lots > 0 and (close < open or usecf == false)
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

if lots < 0 and (close > open or usecf == false)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)
    
if lots == 0
    strategy.close_all()
    
    
    

Mais.