Introdução
O MediaPro é um Expert Advisor desenvolvido exclusivamente para XAUUSD (Ouro) e ativos com características similares de volatilidade. Este artigo documenta todos os inputs do EA e fornece quatro configurações completas, validadas em backtest, para os timeframes M1, M5, M30 e H1.
O objetivo é permitir que qualquer usuário replique exatamente os cenários testados e ajuste os parâmetros conforme o seu broker e o seu perfil de risco.
Detalhamento dos inputs
Estratégia
-
BollingerPeriod — Período das Bandas de Bollinger. Padrão: 20.
-
BollingerDeviation — Múltiplo do desvio padrão. Padrão: 2.0.
-
BollingerATRFactor — Fator do ATR usado como tolerância para toque nas bandas. Padrão: 0.2.
-
Stoch_K — Período %K do Estocástico. Padrão: 10.
-
Stoch_D — Período %D do Estocástico. Padrão: 3.
-
Stoch_Slowing — Suavização do Estocástico. Padrão: 3.
Gestão de Risco
-
Contratos — Lote fixo usado quando UsarLoteDinamico = false .
-
UsarLoteDinamico — Ativa o cálculo de lote baseado em risco percentual.
-
RiscoPorTradePercent — Percentual do saldo arriscado por trade no modo dinâmico.
-
LoteFixoFallback — Lote de reserva caso o cálculo dinâmico falhe.
-
Loss — Distância do Stop Loss em preço (não em pontos).
-
Gain — Distância do Take Profit em preço.
-
LossGainEmPontos — Se true , interpreta Loss e Gain como pontos.
Meta e Proteção
-
UsarMeta_Lucro — Ativa a meta de lucro diária.
-
UsarMeta_Perca — Ativa o limite de perda diária.
-
UsarProtecaoMeta — Ativa a proteção de lucro após atingir um percentual da meta.
-
PercentualProtecaoMeta — Percentual da meta que dispara a proteção.
-
Meta_Lucro — Valor da meta de lucro diária.
-
Meta_Perca — Valor do limite de perda diária.
Proteção Parcial
-
UsarProtecaoParcial — Ativa o fechamento parcial ao atingir um percentual de lucro.
-
PartialProtectTriggerPercent — Percentual da meta que dispara o fechamento parcial.
-
PartialProtectPercent — Percentual da posição a ser fechado.
Trailing Stop
-
UsarTrailingStop — Ativa o trailing stop.
-
LucroMinimoPontos — Lucro mínimo em pontos para iniciar o trailing.
-
TrailingStopPontos — Distância do trailing em pontos.
-
TrailingStepPontos — Passo mínimo de ajuste do trailing.
Break-Even
-
UsarBreakEven — Ativa a movimentação para break-even.
-
BreakEvenPontos — Pontos de lucro necessários para acionar o BE.
-
BreakEvenLock — Pontos de lucro travados após o BE.
Stop de Tempo
-
UsarStopTempo — Ativa o fechamento por tempo.
-
HorasLimite — Número de horas máximo em posição.
-
LucroMinimoStop — Lucro mínimo para não ser fechado pelo stop de tempo.
Kill Switch
-
UsarKillSwitch — Ativa a pausa após perdas consecutivas.
-
MaxPerdasConsecutivas — Número de perdas que ativa a pausa.
-
HorasPausaAposKill — Duração da pausa em horas.
Controle de Overtrading
-
MaxTradesPorDia — Número máximo de trades por dia.
-
MinutosEntreTrades — Intervalo mínimo entre trades.
Filtro de Volume
-
UsarFiltroVolume — Ativa o filtro por volume.
-
VolumeMediaPeriodo — Período da média de volume.
-
VolumeMultiplicador — Multiplicador mínimo sobre a média.
-
ExigirVolumeCrescente — Exige volume crescente nos últimos candles.
-
VolumeCrescenteCandles — Número de candles para verificar volume crescente.
Filtro ADX
-
UsarFiltroADX — Ativa o filtro de força de tendência.
-
ADX_Period — Período do ADX.
-
ADX_Minimo — Valor mínimo do ADX para permitir entrada.
Horários
-
Inicio — Horário de início da operação (formato HH:MM).
-
Termino — Horário de término da operação.
-
Fechamento — Horário de fechamento forçado de posições.
-
UseDoubleSchedule — Ativa o segundo período de negociação.
-
Inicio2 / Termino2 — Segundo período de negociação.
Filtros
-
MaxSpread — Spread máximo permitido em pontos.
-
EnableSMA200Filter — Ativa o filtro de direção pela SMA200.
-
SMA200Period — Período da SMA.
Filtro ATR
-
UsarFiltroATR — Ativa o filtro de volatilidade.
-
ATR_Minimo / ATR_Maximo — Faixa de ATR permitida para entrada.
Log e Painel
-
EnableFileLogging — Ativa o log em arquivo CSV.
-
EnableChartPanel — Exibe o painel no gráfico.
-
LogDetalhado — Ativa o log detalhado no terminal.
Observações importantes
Os backtests documentados neste artigo foram executados na corretora RoboForex Ltd. Recomenda-se utilizar uma corretora com as mesmas diretrizes operacionais, especialmente no que se refere a spread, execução e condições de negociação em XAUUSD. Corretoras com spreads significativamente diferentes podem produzir resultados distintos dos apresentados.
A banca mínima ideal para operar com as configurações sugeridas é de 5.000 (cinco mil) na moeda da conta. Valores inferiores podem comprometer a gestão de risco e a capacidade de suportar drawdowns dentro dos parâmetros testados.
Configurações completas por timeframe
M5 — Configuração sugerida
//+------------------------------------------------------------------+
// INPUTS — ESTRATÉGIA
//+------------------------------------------------------------------+
BollingerPeriod=20
BollingerDeviation=2.0
BollingerATRFactor=0.2
Stoch_K=10
Stoch_D=3
Stoch_Slowing=3
//+------------------------------------------------------------------+
// INPUTS — GESTÃO DE RISCO
//+------------------------------------------------------------------+
Contratos=1.0 UsarLoteDinamico=false
RiscoPorTradePercent=1.0
LoteFixoFallback=0.01
Loss=1.5
Gain=3.0
LossGainEmPontos=false
//+------------------------------------------------------------------+
// INPUTS — META / PROTEÇÃO
//+------------------------------------------------------------------+
UsarMeta_Lucro=true
UsarMeta_Perca=false
UsarProtecaoMeta=false
PercentualProtecaoMeta=80.0
Meta_Lucro=200
Meta_Perca=0.0
//+------------------------------------------------------------------+
// INPUTS — PROTEÇÃO PARCIAL
//+------------------------------------------------------------------+
UsarProtecaoParcial=true
PartialProtectTriggerPercent=95
PartialProtectPercent=95
//+------------------------------------------------------------------+
// INPUTS — TRAILING DINÂMICO
//+------------------------------------------------------------------+
UsarTrailingStop=true
LucroMinimoPontos=50
TrailingStopPontos=50
TrailingStepPontos=10
//+------------------------------------------------------------------+
// INPUTS — BREAK-EVEN
//+------------------------------------------------------------------+
UsarBreakEven=true
BreakEvenPontos=3.0
BreakEvenLock=0.3
//+------------------------------------------------------------------+
// INPUTS — STOP DE TEMPO
//+------------------------------------------------------------------+
UsarStopTempo=true
HorasLimite=2.0
LucroMinimoStop=0.0
//+------------------------------------------------------------------+
// INPUTS — KILL SWITCH
//+------------------------------------------------------------------+
UsarKillSwitch=true
MaxPerdasConsecutivas=4
HorasPausaAposKill=24
//+------------------------------------------------------------------+
// INPUTS — OVERTRADING
//+------------------------------------------------------------------+
MaxTradesPorDia=15
MinutosEntreTrades=3
//+------------------------------------------------------------------+
// INPUTS — VOLUME
//+------------------------------------------------------------------+
UsarFiltroVolume=true
VolumeMediaPeriodo=20
VolumeMultiplicador=1.2
ExigirVolumeCrescente=false
VolumeCrescenteCandles=3
//+------------------------------------------------------------------+
// INPUTS — ADX
//+------------------------------------------------------------------+
UsarFiltroADX=true
ADX_Period=14
ADX_Minimo=30.0
//+------------------------------------------------------------------+
// INPUTS — HORÁRIOS
//+------------------------------------------------------------------+
Inicio="09:30"
Termino="17:00"
Fechamento="17:45"
//+------------------------------------------------------------------+
// INPUTS — FILTROS
//+------------------------------------------------------------------+
MaxSpread=70
UseDoubleSchedule=true
Inicio2="11:00"
Termino2="13:00"
EnableSMA200Filter=true
SMA200Period=200
//+------------------------------------------------------------------+
// INPUTS — FILTRO ATR
//+------------------------------------------------------------------+
UsarFiltroATR=true
ATR_Minimo=0.2
ATR_Maximo=2.0
//+------------------------------------------------------------------+
// INPUTS — LOG / PAINEL
//+------------------------------------------------------------------+
EnableFileLogging=true
EnableChartPanel=true
LogDetalhado=true
M1 — Configuração sugerida
//+------------------------------------------------------------------+
// INPUTS — ESTRATÉGIA
//+------------------------------------------------------------------+
BollingerPeriod=20
BollingerDeviation=2.0
BollingerATRFactor=0.2
Stoch_K=10
Stoch_D=3
Stoch_Slowing=3
//+------------------------------------------------------------------+
// INPUTS — GESTÃO DE RISCO
//+------------------------------------------------------------------+
Contratos=1.0
UsarLoteDinamico=false
RiscoPorTradePercent=1.0
LoteFixoFallback=0.01 Loss=1.1
Gain=1.0
LossGainEmPontos=false
//+------------------------------------------------------------------+
// INPUTS — META / PROTEÇÃO
//+------------------------------------------------------------------+
UsarMeta_Lucro=true
UsarMeta_Perca=false
UsarProtecaoMeta=false
PercentualProtecaoMeta=80.0
Meta_Lucro=50
Meta_Perca=0.0
//+------------------------------------------------------------------+
// INPUTS — PROTEÇÃO PARCIAL
//+------------------------------------------------------------------+
UsarProtecaoParcial=true
PartialProtectTriggerPercent=95
PartialProtectPercent=95
//+------------------------------------------------------------------+
// INPUTS — TRAILING DINÂMICO
//+------------------------------------------------------------------+
UsarTrailingStop=true
LucroMinimoPontos=15
TrailingStopPontos=15
TrailingStepPontos=3
//+------------------------------------------------------------------+
// INPUTS — BREAK-EVEN
//+------------------------------------------------------------------+
UsarBreakEven=true
BreakEvenPontos=1.0
BreakEvenLock=0.1
//+------------------------------------------------------------------+
// INPUTS — STOP DE TEMPO
//+------------------------------------------------------------------+
UsarStopTempo=true
HorasLimite=0.5
LucroMinimoStop=0.0
//+------------------------------------------------------------------+
// INPUTS — KILL SWITCH
//+------------------------------------------------------------------+
UsarKillSwitch=true
MaxPerdasConsecutivas=4
HorasPausaAposKill=24
//+------------------------------------------------------------------+
// INPUTS — OVERTRADING
//+------------------------------------------------------------------+
MaxTradesPorDia=25
MinutosEntreTrades=1
//+------------------------------------------------------------------+
// INPUTS — VOLUME
//+------------------------------------------------------------------+
UsarFiltroVolume=true
VolumeMediaPeriodo=20
VolumeMultiplicador=1.2
ExigirVolumeCrescente=false
VolumeCrescenteCandles=3
//+------------------------------------------------------------------+
// INPUTS — ADX
//+------------------------------------------------------------------+
UsarFiltroADX=true
ADX_Period=14
ADX_Minimo=30.0
//+------------------------------------------------------------------+
// INPUTS — HORÁRIOS
//+------------------------------------------------------------------+
Inicio="09:30"
Termino="17:00"
Fechamento="17:45"
//+------------------------------------------------------------------+
// INPUTS — FILTROS
//+------------------------------------------------------------------+
MaxSpread=70
UseDoubleSchedule=true
Inicio2="11:00"
Termino2="13:00"
EnableSMA200Filter=true
SMA200Period=200
//+------------------------------------------------------------------+
// INPUTS — FILTRO ATR
//+------------------------------------------------------------------+
UsarFiltroATR=true
ATR_Minimo=0.05
ATR_Maximo=0.5
//+------------------------------------------------------------------+
// INPUTS — LOG / PAINEL
//+------------------------------------------------------------------+
EnableFileLogging=true
EnableChartPanel=true
LogDetalhado=true
M30 — Configuração sugerida
//+------------------------------------------------------------------+
// INPUTS — ESTRATÉGIA
//+------------------------------------------------------------------+
BollingerPeriod=20
BollingerDeviation=2.0
BollingerATRFactor=0.2
Stoch_K=10
Stoch_D=3
Stoch_Slowing=3
//+------------------------------------------------------------------+
// INPUTS — GESTÃO DE RISCO
//+------------------------------------------------------------------+
Contratos=1.0
UsarLoteDinamico=false
RiscoPorTradePercent=1.0
LoteFixoFallback=0.01
Loss=0.9
Gain=6
LossGainEmPontos=false
//+------------------------------------------------------------------+
// INPUTS — META / PROTEÇÃO
//+------------------------------------------------------------------+
UsarMeta_Lucro=true
UsarMeta_Perca=false
UsarProtecaoMeta=false
PercentualProtecaoMeta=80.0
Meã Lucro=800
Meã Perca=0.0
//+------------------------------------------------------------------+
// INPUTS — PROTEÇÃO PARCIAL
//+------------------------------------------------------------------+
UsarProtecaoParcial=true
PartialProtectTriggerPercent=95
PartialProtectPercent=95
//+------------------------------------------------------------------+
// INPUTS — TRAILING DINÂMICO
//+------------------------------------------------------------------+
UsarTrailingStop=true
LucroMinimoPontos=25
TrailingStepPontos=25
TrailingStepPontos=5
//+------------------------------------------------------------------+
// INPUTS — BREAK-EVEN
//+------------------------------------------------------------------+
UsarBreakEven=true
BreakEvenPontos=1.5
BreakEvenLock=0.15
//+------------------------------------------------------------------+
// INPUTS — STOP DE TEMPO
//+------------------------------------------------------------------+
UsarStopTempo=true
Horas Limite=1.0
LucroMinimoStop=0.0
//+------------------------------------------------------------------+
// INPUTS — KILL SWITCH
//+------------------------------------------------------------------+
UsarKillSwitch=true
MaxPerdasConsecutivas=4
HorasPausaAposKill=24
//+------------------------------------------------------------------+
// INPUTS — OVERTRADING
//+------------------------------------------------------------------+
MaxTradesPorDia=20
MinutosEntreTrades=2
//+------------------------------------------------------------------+
// INPUTS — VOLUME
//+------------------------------------------------------------------+
UsarFiltroVolume=true
VolumeMediaPeriodo=20
Volume Multiplicador=1.2
ExigirVolumeCrescente=false
VolumeCrescenteCandles=3
//+------------------------------------------------------------------+
// INPUTS — ADX
//+------------------------------------------------------------------+
UsarFiltroADX=true
ADX_Period=14
ADX_Minimo=30.0
//+------------------------------------------------------------------+
// INPUTS — HORÁRIOS
//+------------------------------------------------------------------+
Inicio="09:30"
Termino="17:00"
Fechamento="17:45"
//+------------------------------------------------------------------+
// INPUTS — FILTROS
//+------------------------------------------------------------------+
MaxSpread=70
UseDoubleSchedule=true
Inicio2="11:00"
Termino2="13:00"
EnableSMA200Filter=true
SMA200Period=200
//+------------------------------------------------------------------+
// INPUTS — FILTRO ATR
//+------------------------------------------------------------------+
UsarFiltroATR=true
AR Mínimo=0.1
AR Máximo=1.0
//+------------------------------------------------------------------+
// INPUTS — LOG / PAINEL
//+------------------------------------------------------------------+
EnableFileLogging=true
EnableChartPanel=true
LogDetalhado=true
H1 — Configuração sugerida
//+------------------------------------------------------------------+ // INPUTS — ESTRATÉGIA //+------------------------------------------------------------------+ BollingerPeriod=20 BollingerDeviation=2.0 BollingerATRFactor=0.2 Stoch_K=10 Stoch_D=3 Stoch_Slowing=3 //+------------------------------------------------------------------+ // INPUTS — GESTÃO DE RISCO //+------------------------------------------------------------------+ Contratos=1.0 UsarLoteDinamico=false RiscoPorTradePercent=1.0 LoteFixoFallback=0.01 Loss=7.0 Gain=20 LossGainEmPontos=false //+------------------------------------------------------------------+ // INPUTS — META / PROTEÇÃO //+------------------------------------------------------------------+ UsarMeta_Lucro=true UsarMeta_Perca=false UsarProtecaoMeta=false PercentualProtecaoMeta=80.0 Meta_Lucro=1200 Meta_Perca=0.0 //+------------------------------------------------------------------+ // INPUTS — PROTEÇÃO PARCIAL //+------------------------------------------------------------------+ UsarProtecaoParcial=true PartialProtectTriggerPercent=95 PartialProtectPercent=95 //+------------------------------------------------------------------+ // INPUTS — TRAILING DINÂMICO //+------------------------------------------------------------------+ UsarTrailingStop=true LucroMinimoPontos=600 TrailingStopPontos=600 TrailingStepPontos=150 //+------------------------------------------------------------------+ // INPUTS — BREAK-EVEN //+------------------------------------------------------------------+ UsarBreakEven=true BreakEvenPontos=600 BreakEvenLock=50 //+------------------------------------------------------------------+ // INPUTS — STOP DE TEMPO //+------------------------------------------------------------------+ UsarStopTempo=true HorasLimite=4.0 LucroMinimoStop=0.0 //+------------------------------------------------------------------+ // INPUTS — KILL SWITCH //+------------------------------------------------------------------+ UsarKillSwitch=true MaxPerdasConsecutivas=4 HorasPausaAposKill=24 //+------------------------------------------------------------------+ // INPUTS — OVERTRADING //+------------------------------------------------------------------+ MaxTradesPorDia=3 MinutosEntreTrades=60 //+------------------------------------------------------------------+ // INPUTS — VOLUME //+------------------------------------------------------------------+ UsarFiltroVolume=true VolumeMediaPeriodo=20 VolumeMultiplicador=1.2 ExigirVolumeCrescente=false VolumeCrescenteCandles=3 //+------------------------------------------------------------------+ // INPUTS — ADX //+------------------------------------------------------------------+ UsarFiltroADX=true ADX_Period=14 ADX_Minimo=30.0 //+------------------------------------------------------------------+ // INPUTS — HORÁRIOS //+------------------------------------------------------------------+ Inicio="09:30" Termino="17:00" Fechamento="17:45" //+------------------------------------------------------------------+ // INPUTS — FILTROS //+------------------------------------------------------------------+ MaxSpread=70 UseDoubleSchedule=true Inicio2="11:00" Termino2="13:00" EnableSMA200Filter=true SMA200Period=200 //+------------------------------------------------------------------+ // INPUTS — FILTRO ATR //+------------------------------------------------------------------+ UsarFiltroATR=true ATR_Minimo=1.5 ATR_Maximo=8.0 //+------------------------------------------------------------------+ // INPUTS — LOG / PAINEL //+------------------------------------------------------------------+ EnableFileLogging=true EnableChartPanel=true LogDetalhado=true
Como usar
-
Abra o MetaTrader 5 e pressione Ctrl+R para abrir o Strategy Tester.
-
Selecione o Expert Advisor MediaPro.
-
Escolha o símbolo XAUUSD e o timeframe desejado.
-
Importe o arquivo .set correspondente ou configure manualmente com os valores acima.
-
Recomenda-se testar primeiro no modo "Every tick based on real ticks" antes de operar em conta real.
Aviso
Resultados de backtest não garantem desempenho futuro. O mercado financeiro envolve risco. Spreads e condições de execução variam entre corretoras, especialmente em XAUUSD. Opere apenas com capital que você pode perder.
Estimativa: este texto tem aproximadamente 12.000 a 14.000 caracteres (sem espaços), bem abaixo do limite de 64.000 do blog. As linhas em branco duplicadas foram removidas, e os blocos de código estão compactos. Se ainda der erro, me avisa que eu removo a seção de "Detalhamento dos inputs" para reduzir mais.


