O Expert Advisor opera diretamente no gráfico do símbolo ao qual está vinculado (sem símbolos pré-definidos). Ele executa no máximo uma operação por semana, e todas as decisões da estratégia são calculadas exclusivamente com base nos dados das velas fechadas diárias (D1), de acordo com a hora do servidor.
Ambos os filtros são opções que podem apenas restringir ainda mais as entradas (eles nunca criarão entradas por conta própria nem flexibilizarão a Regra 1):
| Entrada | Valor padrão | Unidade | Significado e efeito |
|---|---|---|---|
| InpLots | 0,10 | lots | Tamanho fixo da posição solicitado para cada entrada. É arredondado para o passo de volume do símbolo; um tamanho inferior a SYMBOL_VOLUME_MIN cancela a entrada (nunca é arredondado para cima), um tamanho superior a SYMBOL_VOLUME_MAX é limitado ao máximo. |
| InpStopLossPercent | 10,0 | por cento do preço de entrada | Distância do stop loss abaixo do preço de entrada. Se o parâmetro SYMBOL_TRADE_STOPS_LEVEL da corretora exigir uma distância maior, o stop é ampliado. Valores menores ou iguais a 0 são rejeitados na inicialização: o EA não é executado sem um stop. |
| InpMagic | 20260922 | identificador | Número mágico que identifica as posições do próprio EA. Apenas as posições no símbolo do gráfico que possuam esse número mágico são contabilizadas e gerenciadas. |
| InpMaxSlippagePoints | 30 | pontos | Desvio máximo solicitado (tolerância ao slippage) para a entrada e a saída do mercado. Trata-se de uma solicitação de tolerância, não de um limite garantido: o preço efetivamente executado também depende do modo e da política de execução da corretora. |
| InpTradeComment | "MonDip long" | texto | Comentário anexado à ordem de entrada, visível no histórico de negociações do terminal. |
| InpUseIBS | verdadeiro | ativado / desativado | Ativa o filtro de entrada IBS opcional (veja abaixo). O filtro só pode tornar a entrada mais restritiva. |
| InpIBSMax | 0,25 | razão em (0, 1] | IBS máximo permitido para a barra de segunda-feira. Valores fora do intervalo (0, 1] são rejeitados na inicialização. |
| InpUseMA | verdadeiro | ativado / desativado | Ativa o filtro opcional de entrada por média móvel de longo prazo (veja abaixo). |
| InpMAPeriod | 180 | barras diárias | Período da média móvel simples dos preços de fechamento diários, calculada com base nas barras D1 fechadas que terminam com a barra de segunda-feira. Valores inferiores a 2 são rejeitados na inicialização. |
| InpVerboseLog | true | ativado / desativado | Imprime detalhes adicionais do diário. A linha de decisão semanal é sempre impressa, independentemente dessa opção. |
Os trechos a seguir foram extraídos literalmente do código-fonte enviado. São trechos selecionados da lógica de decisão, não programas completos e executáveis. Sinal (regra 1):
//--- REGRA 1 ------------------------------------------------------ // DECISÃO D8: “abaixo” é uma comparação estrita; um fechamento em igualdade significa que não houve negociações naquela semana. if(!(bar.close < refBar.close)) return(StringFormat("SKIP - rule 1: the Monday close %s is not below the previous trading day's close %s (equal or above).", DoubleToString(bar.close, _Digits), DoubleToString(refBar.close, _Digits)));
Filtros (IBS e MA de longo prazo):
//--- FILTRO 1: SII ---------------------------------------------- if(InpUseIBS) { if(!haveIBS) { // DECISÃO D7 return("SKIP - IBS filter: High == Low on the Monday bar, the ratio is undefined - no-trade day."); } if(!(ibs <= InpIBSMax)) // DECISÃO D8: “<=” conforme especificado return(StringFormat("SKIP - IBS filter: IBS %.4f is above InpIBSMax %.4f.", ibs, InpIBSMax)); } //--- FILTRO 2: média móvel de longo prazo ------------------------------------- if(InpUseMA) { if(!haveMA) return(StringFormat("SKIP - MA filter: not enough daily history to compute the MA(%d).", InpMAPeriod)); if(!(bar.close < ma)) // DECISÃO D8: uso estrito do símbolo “<” return(StringFormat("SKIP - MA filter: the Monday close %s is not below the MA(%d) %s.", DoubleToString(bar.close, _Digits), InpMAPeriod, DoubleToString(ma, _Digits))); }
Saída (fechamento de quarta-feira e posteriormente):
MqlDateTime dtBar; TimeToStruct(tBar, dtBar); // DECISÃO D18 if(!BarIsAtOrAfterWednesday(dtBar.day_of_week)) return; // DECISÃO D2: a saída é acionada pelo fechamento da barra de quarta-feira e // executado no primeiro tick seguinte, com novas tentativas até que a posição esteja neutra. // DECISÃO D24: “a barra fechou” é a definição do MT5 — o momento em que a próxima // A sessão diária é aberta de acordo com o relógio do servidor — e não com o sinal de fechamento do mercado à vista. CloseOurPosition(StringFormat("rule 2 - the daily bar %s closed and it is a %s (Wednesday close reached)", TimeToString(tBar, TIME_DATE), WeekdayName(dtBar.day_of_week)));

Traduzido do inglês pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/en/code/78343
Monitor ATR — Intervalo diário, semanal e mensal
Exibe o ATR diário, semanal e mensal, a amplitude atual entre a máxima e a mínima, a amplitude expressa como porcentagem do ATR e a variação do preço em relação à cotação de abertura de cada período.
London Breakout EA: simples e transparente/Consultor London Breakout: simples e transparente
EA gratuito de breakout: faixa asiática, breakout de Londres, uma operação por dia, stop loss sempre definido, lote com base na porcentagem de risco. Sem grid, sem martingale. / EA gratuito: rompimento da faixa asiática na sessão de Londres, uma operação por dia, stop loss sempre definido, lote com base na porcentagem de risco. Sem grid e sem martingale.
Marginal Drawdown Contribution Analyzer
Um script para contas que executam vários Expert Advisors ou configurações. Ele agrega o resultado líquido de cada configuração (número mágico ou número mágico e símbolo) por dia do calendário e mede o quanto cada uma contribui para a queda do portfólio: queda adicionada pelo método “leave-one-out”, participação na pior queda e participação na variância de Euler. Ele exibe conclusões, recomendações e uma pontuação heurística de A+ a F. Funciona imediatamente em uma carteira de demonstração integrada e foi escrito em MQL5 puro.
GDS Renko Trade Manager — MetaTrader 5
Um gerenciador de negociações manuais para o MetaTrader 5: blocos Renko completos, ponto de equilíbrio e Stop Loss móvel configuráveis, além de um painel Renko diretamente no gráfico. Sem entradas automáticas.