O Expert Advisor (EA) oferece recursos avançados para gerenciar e fechar posições no MetaTrader, especificamente ao atingir um nível predeterminado…
Partial Close and Trailing. Fechamento parcial de posições em rollbacks
Close Minus by Plus, Fechando posições não lucrativas buscando e fechando posições lucrativas
Table of Contents (click to show)
List
- Descrição
- Iniciar Passo Parar
- Preparando para a Otimização do Assessor Especialista
- Parâmetros Personalizáveis para Otimização
- Bloco 1: Sinais de Negociação (Trade Signals) e Filtros (Filters)
- Bloco 2: Opções de Sinal
- Bloco 3: Opções de Filtro de Abertura
- Bloco 4: Opções de Fechamento
- Bloco 5: Opções de Ordens Pendentes
- Bloco 6: Opções de Negociação
- Bloco 7: Opções de Stops
- Bloco 8: Opções de Lotes
- Bloco 9: Opções de Averager
- Bloco 10: Abertura Adicional
- Bloco 11: Opções de BreakEven Sem Perda
- Bloco 12: Opções de Trailing Stop Padrão
- Bloco 13: Trailing Stop por SAR
- Bloco 14: Opções de Tempo de Negociação
- Bloco 15: Opções de CloseALL Quando Lucro ou Perda
- Opções para Chamar OnTester_Custom_max:
- Conclusões
- Perguntas?
Descrição
The X e The xCustomEA são dois destaques entre os Assessores Especialistas (Expert Advisors) na comunidade de Forex, ganhando ampla popularidade nos últimos cinco anos. Estas ferramentas são projetadas para atender traders que desejam personalizar suas estratégias de negociação (trading strategies) e se concentrar em testes (testing) e otimização (optimization) para melhorar o desempenho e se adaptar a diferentes condições de mercado (market conditions).
Principais Características:
- The X: Este EA é um construtor de estratégias (strategy builder) abrangente que permite aos usuários criar estratégias de negociação (trading strategies) usando indicadores (indicators) padrão do MetaTrader. Inclui mais de 20 opções de sinal (signal options) e uma variedade de filtros (filters), tornando-o uma ferramenta adaptável para qualquer estilo de negociação (trading style).
- The xCustomEA: Levando a personalização (customization) um passo adiante, este EA permite que traders desenvolvam estratégias (strategies) baseadas em indicadores iCustom (iCustom indicators) (iCustom), proporcionando ainda mais flexibilidade nas estratégias de negociação (trading strategies). Isso significa que você pode incorporar qualquer indicador personalizado (custom indicator) em sua negociação automatizada (automated trading).
Por Que Escolher The X e The xCustomEA?
- Versátil e Adaptável: Ambos os assessores (advisors) podem ser usados em múltiplos pares de moedas (currency pairs), timeframes e condições de mercado (market conditions), oferecendo aos traders possibilidades infinitas para o desenvolvimento de estratégias (strategy development).
- Sem Necessidade de Programação (No Coding Required): Embora as ferramentas sejam altamente personalizáveis (customizable), elas são projetadas para uso fácil, mesmo por aqueles sem experiência em programação (programming). Basta selecionar seus indicadores (indicators) e parâmetros (parameters), e deixar que os EAs façam o resto.
- Funções Avançadas: Ambos os Assessores Especialistas (Expert Advisors) vêm com recursos avançados como dimensionamento dinâmico de lotes (dynamic lot sizing), stops de acompanhamento (trailing stops), níveis de breakeven (break-even levels), e mais. Seja você um trader iniciante ou experiente, essas funções permitem uma gestão de risco (risk management) precisa e uma execução de negociações (trade execution).
Flexibilidade
Com The X, você pode criar uma estratégia (strategy) a partir dos indicadores (indicators) padrão do MetaTrader, enquanto The xCustomEA permite integrar seus indicadores personalizados (custom indicators), dando a você o poder de realmente personalizar sua estratégia de negociação (trading strategy).
Estes EAs oferecem o pacote completo para quem deseja automatizar (automate) suas estratégias de negociação (trading strategies), maximizar o potencial (maximize potential), e tomar decisões informadas baseadas em sofisticada Análise Técnica (technical analysis).
Não falaremos sobre como testar (test) ou otimizar (optimize) os Assessores Especialistas (Expert Advisors) nos terminais MT4 e MT5! Já discutimos isso em nosso artigo: Testando e Otimizando Assessores Especialistas.
Neste artigo, mostrarei algumas maneiras de otimizar (optimize) o Assessor Especialista (Expert Advisor) e as funções (functions) corretas para trabalhar com um Assessor Especialista (Expert Advisor).
Criamos vários conjuntos de configurações de otimização (optimization settings) para que você possa começar a otimizar (optimizing) no seu computador.
A partir da versão 18.008, atribuímos os mesmos nomes (names) a todas as variáveis (variables) nas versões MT4 e MT5. Isso é feito para que você possa transferir arquivos de configuração (configuration files) de um terminal (terminal) para outro!
Mostraremos exemplos de estratégias de negociação (trading strategies) baseadas no THE X.
Lembre-se: The X ou The xCustomEA é um designer para estratégias de negociação (trading strategies). Agrupando e aplicando diferentes combinações de funções (functions), você pode alcançar diferentes resultados (results).
Você deve entender que milagres não acontecem. Nossos Assessores Especialistas (Expert Advisors) são apenas instrumentos para negociação no Forex. Negociação em Forex (Forex trading) envolve 100% de risco!
EA The xCustomEA Universal Trading Expert Advisor (EA) em indicadores iCustom.
The X – Universal Expert Advisor (EA) para Forex em indicadores padrão.
As funcionalidades dos Assessores Especialistas (Expert Advisors) e a descrição das configurações já foram abordadas em nosso artigo The X – Assessor Universal para Forex MT4 MT5 Instrução Completa.
Neste artigo, discutiremos como otimizar (optimize) os parâmetros (parameters) do Assessor Especialista (Expert Advisor) e alcançar os resultados desejados.
Abordaremos métodos de teste (testing methods), a seleção de estratégias de otimização (optimization strategies), e a inclusão de várias funções (functions) para negociação Forex (Forex trading).
Iniciar Passo Parar
O conjunto de configurações (settings) depende do seu depósito (deposit) e do limite de drawdown (drawdown limit), par de moedas (currency pair) e especificações do contrato (contract specifications), e se você está envolvido em negociações de longo prazo (long-term trades) ou pipsing!
Aqui e abaixo, usarei estes valores:
0-10-100 = significa que os parâmetros (parameters) para otimização (optimization) são:
- Valor de início da otimização (optimization start) = 0
- Passo de otimização (optimization step) do parâmetro = 10
- Valor final do parâmetro para otimização (optimization stop) = 100
Todos os parâmetros que são medidos em Pontos (Pips) (Stop Loss, Take Profit, Distância, etc.) são baseados em cotações de 4 dígitos.
- Por exemplo, EURUSD = 1.2001 significa que o corretor possui cotações de 4 dígitos. E 1 = 1 ponto (point)!
- Se eu escrever 10, significa que estou considerando 10 Pontos (Pips).
- Se o seu corretor possui cotações de 5 dígitos, então você precisa multiplicar minhas recomendações por 10!
- Por exemplo, EURUSD = 1.20015 significa que o corretor possui cotações de 5 dígitos. E 1 = 1 ponto (point)!
- Se eu escrever 10, significa que estou considerando 10 Pontos (Pips). Mas você deve definir os valores para 100.
Lembre-se da resposta para a pergunta!
Quais são os valores nos parâmetros (parameters) em pontos ou pips (points or pips)?
Em pontos (points)! O valor é derivado da variável Point.
- Se você tem um corretor de 5 ou 3 dígitos, então 1 ponto (point) = 0.00001 ou 0.001
- Se você tem um corretor de 4 ou 2 dígitos, então 1 ponto (point) = 0.0001 ou 0.01
Preparando para a Otimização do Assessor Especialista
Nossos Assessores Especialistas (Expert Advisors) compartilham o mesmo sinal (signal) e algoritmos de função (function algorithms).
No entanto, devido às diferenças entre os terminais MT5 e MT4, pode haver discrepâncias de desempenho (performance discrepancies).
O testador de estratégia (strategy tester) no terminal MT5 é atualmente o mais tecnologicamente avançado e preciso.
A característica mais importante do terminal MetaTrader 5 e do Strategy Tester é a capacidade de testar em ticks reais. O spread e os níveis de stop (stop levels) no MetaTrader 5 são flutuantes, o que significa que o teste no testador de estratégia MT5 está o mais próximo possível da negociação ao vivo.
Não explicaremos testes (testing) e otimização (optimization) no terminal MetaTrader 4! Você já sabe como testá-lo. O processo de otimização (optimization process) é semelhante ao processo MT5 (Configurações e Inicialização).
Mas a principal característica do testador de estratégia (strategy tester) no MT5 é, claro, a capacidade de otimizar (optimize) na nuvem (cloud) Rede em Nuvem MQL5 (MQL5 Cloud Network).
A nuvem (cloud) permite otimizar (optimizing) o Assessor Especialista (Expert Advisor) usando milhares de outros computadores a um custo mínimo. É muito acessível e rápido. Portanto, recomendo fortemente o uso da MQL5 Cloud.
No arquivo com o Assessor Especialista (Expert Advisor), você encontrará vários arquivos com configurações de otimização (optimization settings). Estes são apenas exemplos, mas mostrarão como configurar a otimização (optimization).
Lembre-se: Cada par de moedas (currency pair) e corretor (broker) têm suas próprias condições de negociação (trading conditions) (Spread, swap, comissão (commission), método de liquidação (settlement method), execução (execution), tipo de conta (account type)), então os resultados de otimização (optimization results) podem variar!
Para tornar os resultados (results) mais consistentes, você precisa desativar o Atraso Aleatório (Random Delay). Não é necessário para a otimização (optimization)!
Configurando o Testador de Estratégia (Strategy Tester):
- Selecione um Assessor Especialista (Expert Advisor) da lista.
- Defina o par de moedas (currency pair) para o qual você realizará o teste.
- TF: É melhor escolher M1. (TimeFrame será definido pelo Assessor Especialista (Expert Advisor) a partir de suas configurações)
- Data de otimização (Optimization date): Você pode selecionar o ano atual! Lembre-se, resultados passados não garantem lucro no futuro! Otimizar a cada meio ano é a faixa mais prática!
- Forward pode ser definido para 1 mês, mas recomendamos obter resultados limpos primeiro. Em seguida, realizaremos o Teste Avançado (Forward Test).
- Depósito (Deposit): É melhor definir o depósito (deposit) com o qual você começará a negociar. Não defina um saldo muito pequeno, nem muito grande!
- Alavancagem (Leverage): Defina a alavancagem (leverage) com a qual você irá negociar.
- Otimize o algoritmo Slow Complete.
- E certifique-se: “Cada tick, baseado em ticks reais”!
Configurando as Configurações do Assessor Especialista (Expert Advisor):
- Clique na aba Inputs e carregue nosso arquivo Set.
- Marque ou desmarque as opções que você deseja otimizar (optimize). (Por padrão, configurei o arquivo para que você possa otimizar todos os parâmetros (parameters) importantes)
- Valor (Value)—Este é o valor fixo do parâmetro (parameter). O Assessor Especialista (Expert Advisor) usará este valor se este parâmetro (parameter) não for otimizado ou durante o teste!
- Início (Start) – O valor inicial do parâmetro (parameter) para otimização (optimization).
- Passo (Step) – O passo pelo qual o parâmetro (parameter) muda cada vez que o otimizador (optimizer) é executado.
- Parada (Stop) – O valor final do parâmetro (parameter) para otimização (optimization).
- Lembre-se! Quanto mais parâmetros (parameters) e passos (steps) para otimização (optimization), mais tempo será necessário para completar os testes (testing) e a otimização (optimization)!
Ativar Otimização na Nuvem (Cloud Optimization)
Recomendo fortemente ativar a otimização na nuvem (cloud optimization)!
Nesse caso, desabilito o uso do meu processador, para que meu computador não desacelere durante a otimização (optimization). Além disso, o custo de uma passagem na nuvem (cloud) é inferior a 0,01 centavos!
Pressione o botão INICIAR (START) e continue com suas tarefas!
Parâmetros Personalizáveis para Otimização
Você pode baixar nossos arquivos para otimização (optimization files) para The X.
Bloco 1: Sinais de Negociação (Trade Signals) e Filtros (Filters)
Nos nossos Assessores Especialistas (Expert Advisors), mais de 20 estratégias de negociação (trading strategies) são baseadas nos indicadores (indicators) padrão do terminal MetaTrader.
Por Que Usamos Indicadores Padrão?
Todos os indicadores (indicators) dos usuários replicam quase totalmente os indicadores (indicators) padrão que já estão no terminal.
Alterando os parâmetros (parameters) dentro do código (code), você cria um indicador personalizado (custom indicator). Logicamente, o indicador personalizado (custom indicator) é composto por 90% de indicadores (indicators) padrão!
Escrevemos mais de 5.000 Assessores Especialistas (Expert Advisors) usando indicadores personalizados (custom indicators), e podemos afirmar com confiança que isso não faz sentido.
Trabalhar com indicadores (indicators) padrão é previsível e, em 90% dos casos, mais lucrativo.
Portanto, usamos indicadores (indicators) padrão para negociar. Leia exemplos de abertura de posições baseados em indicadores (indicators) padrão, bem como uma descrição de sinais (signals), no artigo: Exemplos de Operação de Sinal!
Indicadores (indicators) e sinais (signals) são os principais elementos a considerar ao iniciar nossa otimização (optimization) e testes (testing)!
No momento deste artigo, temos 20 sinais (signals):
- NoSignal = 0, // Sem Sinal (No Signal)
- Ma = 1, // Média Móvel (Moving Average)
- MACD = 2, // Convergência e Divergência da Média Móvel (Moving Average Convergence Divergence)
- STOCH = 3, // Oscilador Estocástico (Stochastic Oscillator)
- RSI = 4, // Índice de Força Relativa (Relative Strength Index)
- CCI = 5, // Índice de Canal de Commodities (Commodity Channel Index)
- WPR = 6, // Faixa Percentual de Williams (Williams Percent Range)
- BB = 7, // Bandas de Bollinger (Bollinger Bands)
- Envelopes = 8, // Envelopes (Envelopes)
- Alligator = 9, // Alligator (Alligator)
- OsMA = 10, // Média Móvel do Oscilador (Moving Average of Oscillator)
- AO = 11, // Oscilador Awesome (Awesome Oscillator)
- ISH = 12, // Ichimoku (Ichimoku)
- AC = 13, // AC (AC)
- BAR = 14, // Barra Urso \ Touro (BAR BEAR \ BULL)
- ADX = 15, // Índice Direcional Médio (Average Directional Index)
- ADXWilder = 19, // ADX Wilder (ADX Wilder)
- ZigZag = 17, // ZigZag (ZigZag)
- MFI = 20, // Índice de Fluxo de Dinheiro (Money Flow Index)
- Fractals = 21, // Fractais (Fractals)
Cada sinal (signal) e estratégia (strategy) é a estratégia padrão para usar o indicador (indicator). Tais estratégias foram desenvolvidas pelos criadores desses indicadores (indicators). Não explicaremos todo o propósito de cada estratégia.
Estas são estratégias de negociação padrão (standard trading strategies)!
Você terá 100.000.000 de opções para usar o indicador padrão (standard indicator), mas também entende que não podemos adicioná-los ao Assessor Especialista (Expert Advisor)!
Se desejar escrever sua estratégia (strategy) ou Assessor Especialista (Expert Advisor) no seu indicador (indicator), então você precisa de código aberto (open-source code):
- Fonte Aberta The X para MetaTrader5 (Atualmente indisponível)
- Fonte Aberta The X para MetaTrader4 (Atualmente indisponível)
- Programando o Assessor Especialista: 10 Passos para o Sucesso!
No nosso Assessor Especialista (Expert Advisor), você pode combinar um sinal (signal) e até cinco filtros (filters).
Diferença entre Sinal e Filtro:
Sinal
- Sinal — ocorre quando todas as condições para o sinal são atendidas, por exemplo, a interseção das linhas de Média Móvel (MA) ou o aparecimento de um novo ponto ZigZag.
- Por exemplo, a interseção do nível 70 para o indicador RSI é um sinal. Se o RSI estiver acima do nível de 70, então isso já é um filtro.
- O sinal é o que aparece quando as cotações são recebidas, fixadas na barra. O Expert Advisor (EA) aceita o sinal.
- Por exemplo, a luz acendeu. Isto é um sinal porque a luz acabou de acender. Quando você acende a luz, a pessoa acorda. É um sinal.
- Abertura de posições ocorre após a confirmação do sinal. As linhas se cruzam e então a posição é aberta. Se as linhas foram cruzadas anteriormente, isso não é um sinal; o sinal já passou.
Filtro:
- Filtro – Esta é a posição atual do indicador, por exemplo, a posição atual das linhas de Média Móvel (MA) em relação umas às outras ou o último vértice atual do ZIGZAG.
- O filtro é o que o indicador mostra no momento. Isto não é um sinal. Esta é a posição atual do indicador.
- Por exemplo, a luz estava acesa. Isto é um filtro porque a luz já foi acesa e está atualmente acesa. Quando a luz está acesa, a pessoa não dorme mais. Isto é um filtro.
- Sinais são filtrados com base no valor atual do indicador. Se a Média Móvel Rápida (Fast MA) estiver acima da Média Móvel Lenta (Slow MA), então somente posições de COMPRA devem ser abertas com este filtro.
Dicas para Otimizar Parâmetros de Sinal:
string Signal1s = "========= OWN Signal options ========="; typesignals IndSigToTrade = 1; ENUM_TIMEFRAMES TF_IndSigToTrade1 = PERIOD_CURRENT; bool Signal_Reverse = false; bool ClosePositionifChangeOWNSignal = false; int OWNSIGNAL_shift = 1; string Signal2s = "========= Filter 1 options ========="; typesignals2 FILTER_IndSigToTrade1 = 0; ENUM_TIMEFRAMES FILTER_TF_IndSigToTrade1 = PERIOD_CURRENT; bool Filter1_Reverse = false; int FILTERSIGNAL1_shift = 1;
Aconselhamos você a não usar mais de dois filtros para o sinal, então escondemos os outros três filtros no final da tabela de configurações.
Isso ocorre porque cada filtro reduz o número de sinais. Se você usar mais de dois filtros, os sinais se tornarão muito raros.
Por que criamos cinco filtros?
Durante a fase de programação e criação do Expert Advisor (EA), nossos usuários iniciais nos forneceram uma “lista de desejos” de funcionalidades e solicitações. Atendemos a essas solicitações e criamos cinco filtros.
Variantes de Otimização do Bloco de Sinais
O parâmetro IndSigToTrade pode ser otimizado! Haverá 20 opções para este parâmetro. Não são muitas, mas você pode escolher o melhor resultado para esta ou aquela estratégia.
Otimização de valores: 1 – 20 ou Média Móvel (MA) – Fractais
O parâmetro TF_IndSigToTrade1 também pode ser otimizado. No entanto, aconselhamos a definir o TimeFrame para aquele no qual você geralmente negocia.
- Lembre-se: Quanto maior o TimeFrame, menos sinais aparecerão. Quanto maior o TimeFrame, mais longa será a estratégia.
O parâmetro Signal_Reverse é usado para inverter estratégias! Às vezes, uma negociação se torna mais lucrativa quando revertermos uma estratégia.
Não faz sentido otimizar.
- No entanto, para incluir este parâmetro, recomendo apenas negociações de longo prazo e o uso de grandes Stop Loss (SL) e Take Profit (TP).
- Se você usar lossless e trailing stops e sofrer uma perda dentro do spread, você não poderá negociar de forma lucrativa ao habilitar este parâmetro!
- Por exemplo, se sua estratégia inclui Stop Loss = 2000 Pontos (Pips) e Take Profit = 500 Pontos (Pips), você terá 100 perdas e 1 lucro.
- Quando você inverte a estratégia, você obtém 100 vitórias e 1 perda.
- Mas tudo é relativo. Toda teoria precisa ser testada! Milagres não acontecem!
O parâmetro ClosePositionifChangeOWNSignal permite o fechamento de posições abertas quando o sinal primário muda.
Não faz sentido otimizar.
- Esta opção pode ser usada para cortar imediatamente sinais falsos.
- Por exemplo, suponha que você não use média (exibindo uma série de negociações no lucro total) e aceite que alguns sinais serão falsos, resultando em uma perda instantânea ao fechar em um sinal. Nesse caso, você pode habilitar esta função.
O parâmetro OWNSIGNAL_shift é muito importante! Ele regula o recebimento de um sinal de uma barra fechada ou atual.
Não faz sentido otimizar.
- Recomendo deixar na configuração padrão.
- 1 – Recebendo sinais de uma barra já fechada e totalmente formada.
- 0 – Recebendo um sinal da barra atual, que ainda está sendo gerada.
- Um artigo detalhado sobre como usar o sinal SHIFT.
Parâmetros Filter N opções têm as mesmas explicações lógicas que os sinais. Portanto, não os repetiremos, mas declaramos o seguinte:
- Você pode usar filtros de outros indicadores que são diferentes dos sinais.
- Você pode usar o mesmo indicador que no sinal, mas definir o TimeFrame mais alto que o TimeFrame do sinal. Por exemplo, TF sinal = M15, e TF filtro = H1.
- O filtro reduz o número de sinais e posições abertas.
- Um filtro pode não funcionar com outro sinal. Tudo depende das estratégias que você configurar. Alguns filtros e sinais podem entrar em conflito entre si.
- Por exemplo, a Média Móvel mostra um sinal de COMPRA, enquanto o Filtro RSI mostra apenas VENDA naquele momento. Tais conflitos foram encontrados.
- Se você não abrir uma posição usando um filtro, desative o filtro e investigue esse problema. Talvez dois indicadores estejam em conflito.
Bloco 2: Opções de Sinal
Neste bloco, adicionamos parâmetros que podem ajudar no ajuste fino do bloco de sinais.
Esses parâmetros são auxiliares e não recomendo otimizá-los.
bool Show_alert_without_opening_positions = false; bool OpenBarControlOnly = false; bool ControlNewBarforSIGNAL = true; bool ReverseSignal = false;
O parâmetro Show_alert_without_opening_positions permite desativar a abertura real de posições. Em vez disso, o Expert Advisor (EA) exibe informações na tela quando um sinal chega.
Não faz sentido otimizar.
- O Expert Advisor (EA) não abre a posição.
- Informações sobre o sinal com parâmetros calculados são exibidas.
- Você pode ligar ou desligar a abertura de posições para este sinal.
O parâmetro OpenBarControlOnly é usado apenas para o modelo de teste na forma de Open Prices Only.
Não faz sentido otimizar.
- Isso permite que o Expert Advisor (EA) opere em barras abertas no gráfico real.
- Quando este parâmetro está habilitado, todo o algoritmo do Expert Advisor é executado apenas uma vez quando uma nova barra é aberta.
- Os resultados ao habilitar esta opção são semelhantes aos resultados dos testes no modo Open Prices Only.
O parâmetro ControlNewBarforSIGNAL – Parâmetro que inclui o processamento do sinal apenas uma vez em uma nova barra.
Não faz sentido otimizar.
- Permite reduzir significativamente a carga no seu computador durante a otimização do Expert Advisor (EA).
- Aumenta a velocidade de teste no testador de estratégias.
- Usado apenas para SHIFT > 0.
O parâmetro ReverseSignal – inverte o sinal geral para a abertura de posições.
Otimização de valores: True – False
- Ao contrário do Signal_Reverse, você pode inverter o sinal principal para abertura, incluindo sinais e filtros.
Bloco 3: Opções de Filtro de Abertura
Este bloco contém parâmetros que permitem filtrar a abertura de posições com base em limitações técnicas.
string oo_121 = "========= Opening Filter options ========="; TypeTrade TypeTradeBUYSELL = 0; int MinuteToOpenNextPosition = 0; bool OpenOppositePositionAfterStoploss = false; bool OnlyOnePosbySignal = true; bool OnePosPerDirection = true; bool OnlyOnePositionPerMagic = false; bool OnlyAlternateSignals = false; int MAX_BUY_POSITION = 0; int MAX_SELL_POSITION = 0; int MaxSpreadToNotTrade = 0; int MinSpreadToNotTrade = 0;
O parâmetro TypeTradeBUYSELL – inclui a capacidade de negociar apenas em uma direção.
Não faz sentido otimizar.
- É útil quando você gerencia o Expert Advisor (EA) manualmente, por exemplo, ao analisar as notícias.
- Ou quando você usa meios adicionais para determinar os sinais, por exemplo, linhas de tendência.
- Recomendo este recurso apenas quando você tem certeza de que a tendência tem direção.
O parâmetro MinuteToOpenNextPosition – proíbe a abertura de uma posição adicional no sinal.
Não faz sentido otimizar.
- Permite que você ajuste finamente as configurações de negociação nos sinais quando o trader está confiante na força do sinal.
- Usado com OnlyOnePosbySignal = false.
- Limita a abertura de posições no mesmo sinal.
O parâmetro OpenOppositePositionAfterStoploss – abre a posição oposta se a posição anterior foi fechada por stop loss (em perda).
Não faz sentido otimizar.
- Esta é uma opção experimental e só pode ser usada por um trader que entende a essência de seu trabalho.
O parâmetro OnlyOnePosbySignal – permite que o Expert Advisor (EA) abra apenas uma posição para o par de moedas selecionado e número mágico.
Você pode definir este parâmetro para True ou False ao usar OnePosPerDirection = true.
- Desligar esta função permite “dialar” posições no mesmo sinal na mesma direção.
- Não recomendo alterar este parâmetro.
O parâmetro OnePosPerDirection – permite que o Expert Advisor (EA) abra posições em apenas uma direção ou inclui a possibilidade de negociar em duas direções ao mesmo tempo.
Não faz sentido otimizar.
- Funciona apenas quando OnlyOnePosbySignal = false.
- Não recomendo alterar este parâmetro.
O parâmetro OnlyOnePositionPerMagic permite controlar as posições abertas de todos os Expert Advisors (EA) que têm o mesmo MAGIC.
Não faz sentido otimizar.
- Funciona apenas quando OnlyOnePosbySignal = false.
- Não recomendo alterar este parâmetro.
O parâmetro OnlyAlternateSignals – permite abrir posições apenas na direção oposta da última posição fechada.
Não faz sentido otimizar.
- Reduz significativamente o número de sinais.
- Não recomendo alterar este parâmetro.
Os parâmetros MAX_BUY_POSITION e MAX_SELL_POSITION – permitem limitar o número de negociações abertas simultaneamente (posições).
Não faz sentido otimizar.
- Funciona apenas quando OnlyOnePosbySignal = false.
- Não recomendo alterar este parâmetro.
- Este parâmetro é criado para negociar em diferentes direções sem limitar o número de sinais.
- Permite limitar a abertura de posições em um único sinal ou encontrar posições abertas no mercado.
Os parâmetros MaxSpreadToNotTrade e MinSpreadToNotTrade permitem limitar a abertura de posições em um sinal quando o corretor altera frequentemente o spread.
Não faz sentido otimizar.
- Não recomendo alterar este parâmetro.
- Esses parâmetros devem ser definidos apenas em um gráfico real.
- Eles permitem limitar os sinais durante divulgações de notícias importantes e saltos bruscos no spread, onde o Expert Advisor (EA) pode definir grandes stops.
Bloco 4: Opções de Fechamento
Este bloco contém parâmetros que permitem fechar posições em certas situações.
input string oo_123 = "========= Close options ========="; input bool ClosePosIfChange = true; input bool CloseChangeOnlyInProfit = true; input int ClosePosition_After_X_Minutes = 0;
O parâmetro ClosePosIfChange – fecha a posição oposta ao mudar o sinal para abrir.
Otimização de valores: True – False
- É útil quando você deseja mudar o sinal atual se ele se revelar falso ou quando um novo sinal aparece.
- Permite fixar um lucro ou perda ao mudar o sinal do indicador.
O parâmetro CloseChangeOnlyInProfit – permite fechar apenas posições lucrativas.
Se um sinal for recebido para abrir a posição oposta, ele será fechado apenas quando a posição atual estiver em lucro.
Otimização de valores: True – False
- Permite garantir lucros ao mudar o sinal do indicador.
- Funciona apenas com ClosePosIfChange = true.
O parâmetro ClosePosition_After_X_Minutes – fecha a posição após um determinado tempo.
Opções de otimização: Recomenda-se definir os números que são múltiplos do seu TimeFrame (TF).
Por exemplo, ao usar o Expert Advisor (EA) no TimeFrame M15, defina os valores: início 0, passo 15, parada 75.
- Para fixar rigorosamente o tempo em que o Expert Advisor (EA) pode negociar.
- Permite fechar posições que foram abertas pelo sinal. Por exemplo, 15 minutos após a abertura.
- Depende e funciona com o parâmetro CloseChangeOnlyInProfit:
- Se CloseChangeOnlyInProfit = true, então as posições são fechadas se tiverem lucro.
Bloco 5: Opções de Ordens Pendentes
Neste bloco, os parâmetros para gerenciar ordens pendentes são descritos.
input StopOrderType StopOrderUSE = 0; input int StopOrderDeltaIfUSE = 0; input int StopOrderDayToExpiration = 0; input int StopOrderBarToExpiration = 0; input bool ReInstallStopOrdersNewSignalAppears = true;
O parâmetro StopOrderUSE – permite abrir ordens pendentes ou ordens limitadas em vez de posições.
Otimização de valores: False – Use Stop Orders.
- Permite filtrar os sinais pela distância operacional adicionalmente.
- Usar Ordens Stop: Se o Expert Advisor (EA) receber um sinal e abrirmos uma ordem pendente a uma distância de 100 pontos (pips), se o preço ultrapassar 100 pontos (pips) na nossa direção e acionar a ordem pendente, então o sinal é considerado confirmado.
- Usar Ordens Limitadas: Se o Expert Advisor (EA) receber um sinal e abrirmos uma ordem limitada a uma distância de 100 pontos (pips), se o preço ultrapassar 100 pontos (pips) na direção oposta e acionar uma ordem limitada, então o sinal é considerado um rebote. É melhor garantir que haverá um rebote.
- Não recomendo otimizar para Usar Ordens Limitadas.
- O valor de Usar Ordens Stop faz sentido apenas para negociações de longo prazo.
O parâmetro StopOrderDeltaIfUSE é a distância para a ordem pendente stop ou limitada.
Otimização de valores: Recomenda-se definir os parâmetros individualmente para cada par.
- Por exemplo, se este for o par de moedas EURUSD e você negociar no timeframe M30. O movimento médio do preço no período, por exemplo, 50 barras = 7500 pontos (pips), então defina este parâmetro para otimização como início 0, passo 100 e parada 1000.
- Por exemplo: Se este for o par de moedas XAUUSD e você negociar no timeframe M1 e o movimento médio do preço no período, por exemplo, 50 barras = 100 pontos (pips), então defina este parâmetro para otimização como: início 0, passo 10 e parada 100.
- Por exemplo, você precisa de confirmação do sinal de abertura e do movimento médio do preço no período. Por exemplo, 100 barras = 1000 pontos (pips), então comece 0, passo 50 e pare 500.
O parâmetro StopOrderDayToExpiration – exclui a ordem pendente se ela não for executada dentro do número de dias definido.
Não faz sentido otimizar.
O parâmetro StopOrderBarToExpiration exclui a ordem pendente se ela não for executada dentro do número de barras definido (depende do seu timeframe).
Opções de otimização: início 0, passo 1, parada 10
- Permite excluir uma ordem pendente se o preço não ultrapassar o nível definido da Ordem Pendente (StopOrder).
O parâmetro ReInstallStopOrdersNewSignalAppears – reinicia a ordem pendente quando o sinal é atualizado.
Não faz sentido otimizar.
- Permite definir uma ordem pendente toda vez que um novo sinal aparece.
- Não recomendo alterar esta configuração.
Bloco 6: Opções de Negociação
Neste bloco, os parâmetros que são definidos no momento da execução das posições são coletados.
Não faz sentido otimizar.
Bloco 7: Opções de Stops
Bloco para trabalhar com stop loss e take profit.
input string oo5 = "========= Stops options ========="; input bool VirtualStops = false; input bool ForcedModifySLTP = false; input minlevel SetMinStops = 0; input int StopLoss = 2000; input int TakeProfit = 0; input bool Include_Commission_Swap = true;
Os parâmetros ForcedModifySLTP, SetMinStops, Include_Commission_Swap – Não recomendo alterar. Não faz sentido otimizar.
O parâmetro VirtualStops – inclui a capacidade de instalar stop loss e take profit virtuais sem modificação real das posições (stop loss e take profit na posição serão = 0).
Otimização de valores: True – False
- Todos os níveis de StopLoss e TakeProfit são armazenados em variáveis globais e no gráfico.
- Há uma execução virtual de StopLoss e TakeProfit.
- Faz sentido aplicar apenas quando você precisa instalar níveis de stop muito pequenos (menos que o nível mínimo possível no servidor).
- Permite esconder seus níveis de stop do corretor, dificultando a compreensão da lógica da sua estratégia.
O parâmetro StopLoss – stop loss para a posição.
Otimização de valores: Recomenda-se definir os parâmetros individualmente para cada par.
- Por exemplo, se este for o par de moedas EURUSD e você negociar no timeframe M30. O movimento médio do preço no período, por exemplo, 50 barras = 7500 pontos (pips), então defina este parâmetro para otimização como início 0, passo 100 e parada 1000.
- Por exemplo: Se este for o par de moedas XAUUSD e você negociar no timeframe M1 e o movimento médio do preço no período, por exemplo, 50 barras = 100 pontos (pips), então defina este parâmetro para otimização como: início 0, passo 10 e parada 100.
- Depende dos seus limites para cada posição.
- Quanto maior o StopLoss, mais tempo de manutenção da posição, e mais oportunidade há para esperar que o preço retorne à posição aberta.
- Quanto menor o StopLoss, mais rapidamente os sinais falsos serão fechados.
- Não faz sentido usar um StopLoss pequeno, que é menor que a DistanceAdditionalOpening.
O parâmetro TakeProfit – take profit para a posição.
Otimização de valores: Recomenda-se definir os parâmetros individualmente para cada par.
- Por exemplo: Se este for o par de moedas EURUSD e você negociar no timeframe M30 e o movimento médio do preço no período, por exemplo, 50 barras = 7500 pontos (pips), então defina este parâmetro para otimização como: início 0, passo 25 e parada 500.
- Por exemplo: Se este for o par de moedas XAUUSD e você negociar no timeframe M1 e o movimento médio do preço no período, por exemplo, 50 barras = 100 pontos (pips), então defina este parâmetro para otimização como: início 0, passo 5 e parada 100.
- Você pode definir um take profit no cálculo de StopLoss / 2 ou StopLoss / 3.
- Quanto maior o TakeProfit, mais tempo de manutenção da posição. Você pode perder a posição lucrativa se não atingir a meta do TakeProfit.
- Quanto menor o TakeProfit, mais cedo os sinais lucrativos serão fechados.
- Não faz sentido usar um TakeProfit pequeno, que é menor que a DistanceAdditionalOpening.
Bloco 8: Opções de Lotes
Bloco para trabalhar com lote fixo e lote automático.
input string oo4 = "========= Opções de Lotes ========="; input double Lots = 0.01; input bool DynamicLot = false; input double LotBalancePercent = 0.01; input double RiskRate = 0; input double MaxLot = 999; input double Martingale = 1;
Eu não recomendo alterar os parâmetros MaxLot e RiskRate. Não faz sentido otimizar.
Lotes (Lots) parâmetro – ajusta o volume da posição.
Otimização dos valores: Depende do seu depósito. Por exemplo: Para um lote de passo de 0,01 e um depósito de $1000: início 0,01, passo 0,01, parada 0,1
- Este parâmetro é melhor otimizado após a otimização dos demais parâmetros da estratégia.
- Ao aumentar o lote, você aumenta o lucro obtido de uma posição.
- Com o aumento do lote, você pode drenar o depósito.
- Não faz sentido otimizar com DynamicLot = true.
- Calcule o lote de forma que, ao abrir uma posição com esse lote, você utilize apenas 1-2% do Balance. Por exemplo:
- Para abrir uma posição com um lote de 0,01, você precisa de $10 de margem livre.
- Se você usar 100 pontos de stop (pips) (onde o preço é 1 ponto = $0,1), você terá uma perda de $10. Isso é 1% de $1000.
Parâmetros DynamicLot e LotBalancePercent – ajustam o cálculo automático do lote da posição.
Otimização de valores: DynamicLot = true e LotBalancePercent com parâmetros: início 0,1, passo 0,1, parada 1
- Este parâmetro é melhor otimizado após a otimização dos demais parâmetros da estratégia.
- Permite aumentar o lote ao obter lucro em uma progressão geométrica.
- Pode afetar o lucro final.
- Não recomendo usar valores superiores a 1%.
Martingale (Martingale) parâmetro – inclui Martingale ao fechar no stop loss.
Otimização de valores: início 0,1, passo 0,2, parada 2
- Faz sentido usar apenas o valor StopLoss > 0.
- Se Martingale for menor que 1, então cada posição seguinte e seu lote serão menores que a anterior.
- Se o valor for menor que 1, faz sentido usá-lo apenas quando os lotes das posições forem maiores que o lote mínimo no servidor.
- Se Martingale for maior que 1, então cada posição seguinte e seu lote serão maiores que a anterior.
- Quanto maior o valor de Martingale, mais perigoso é o comércio do Expert Advisor (EA).
- Martingale é uma estratégia muito simples e perigosa.
- Recomendo verificar e ler sobre nossa estratégia de negociação Martingale: Two Sides.
Bloco 9: Opções de Averager
Bloco para trabalhar com abertura contra a tendência. Averaging de posições.
input string oo2 = "========= Opções de Averager ========="; input bool AverageUSE = true; input bool OnlyModify = false; input int TakeProfitALL = 200; input int Distance = 500; input double DistanceMartingale = 1; input double LotsMartingale = 1; input int MaxOrdersOpen = 5;
Parâmetro OnlyModify – Não recomendo alterar. Não faz sentido otimizar.
Parâmetro AverageUSE habilita as funções de averaging. Apenas com AverageUSE definido como true, outros parâmetros podem ser otimizados!
Otimização de valores: True – False
- Averaging de posições pode carregar sua conta com posições adicionais.
- A estratégia de averaging requer um saldo que seja pelo menos três vezes maior que o depósito padrão (sem averaging).
- Averaging de posições são tentativas de manter uma posição perdedora no lucro.
- Se você usar o depósito recomendado, pode aumentar o número de negociações lucrativas para 70-90%.
- Ao usar averaging, o Expert Advisor (EA) tentará trazer um sinal falso para o lucro. Outros sinais serão ignorados até que a série de averaging feche.
Parâmetro TakeProfitALL modifica o take profit de todas as posições por um nível.
Otimização de valores: 10-50-1000 (início = 10, passo = 50, parada = 1000)
- Serve como proteção adicional para posições caso você tenha desativado o averaging.
- É útil se você não usa o parâmetro AdditionalOpening definido como false.
O parâmetro Distance especifica a distância na qual posições adicionais são abertas contra a tendência.
Otimização de valores: Recomenda-se definir os parâmetros individualmente para cada par de moedas.
- Por exemplo, se este for o par de moedas EURUSD e você negocia no timeframe M30 com um movimento médio de preço de 50 barras = 7500 pontos (pips), defina este parâmetro para otimização da seguinte forma: início = 0, passo = 25, parada = 500.
- Por exemplo, se este for o par de moedas XAUUSD e você negocia no timeframe M1 com um movimento médio de preço de 50 barras = 100 pontos (pips), defina este parâmetro para otimização da seguinte forma: início = 0, passo = 5, parada = 100.
- Outra forma de otimizar este parâmetro é usar o spread médio para o par de moedas selecionado. Usamos este método em nosso TickSniper Expert Advisor (EA).
- Por exemplo, se o spread médio para um par de moedas for 3 pontos (pips), então a distância de averaging = 50 * 3 = 150 pontos (pips). Neste caso, a otimização pode ser definida da seguinte forma: 100-25-250.
- Leia mais sobre as recomendações referentes à distância de averaging: Averager para MT4 e MT5
- Quanto maiores os valores de distância, mais tempo o Expert Advisor (EA) leva para trazer a série de posições para o lucro total.
- Quanto menor o valor da distância de averaging, maior a carga no saldo da sua conta. Mais posições abertas significam que você pode alcançar lucro mais rápido, mas sua conta de negociação será fortemente carregada!
Parâmetro DistanceMartingale aumenta a distância em cada posição adicional.
Otimização de valores: Apenas em casos extremos, 1-0,1-2
- Este parâmetro deve ser otimizado se você precisar aumentar a Distance para cada nova posição na série.
- Se a Distance for muito pequena, então DistanceMartingale permite aumentar o passo da grade de averaging.
- Se DistanceMartingale for menor que 1, o passo da grade de averaging e a Distance diminuirão a cada posição adicional de averaging aberta!
- Se DistanceMartingale for maior que 1, o passo da grade de averaging e a Distance aumentarão a cada posição adicional de averaging aberta!
Parâmetro LotsMartingale aumenta o tamanho do lote para cada posição adicional!
Otimização de valores: Apenas em casos extremos, 1-0,1-2
- Permite reduzir o tempo para uma série de posições se moverem para o lucro.
- Pode aumentar a carga na sua conta de negociação e saldo.
- Recomenda-se usar apenas com um saldo suficiente!
- Se LotsMartingale for menor que 1, o tamanho do lote da próxima posição adicional diminuirá a cada posição adicional de averaging aberta.
- Se LotsMartingale for maior que 1, o tamanho do lote da próxima posição adicional aumentará a cada posição adicional de averaging aberta.
Parâmetro MaxOrdersOpen limita o número de posições adicionais de averaging contra a tendência!
Otimização de valores: Apenas em casos extremos, 0 – 1 – 10
- Permite limitar a carga na conta restringindo o número de novas posições adicionais.
- Uso o valor de 5. No entanto, você pode otimizar este valor para melhores resultados.
Bloco 10: Abertura Adicional
Este bloco lida com a abertura de posições na direção da tendência. Análise adicional.
input string oo10 = "========= Abertura Adicional ================================== ======= "; input bool AdditionalOpening = false; input bool OnlyModifyAdditionalOpening = false; input int StopLossALL = 0; input int DistanceAdditionalOpening = 100; input double LotsMartinAdditionalOpening = 1; input int MaxOrdersOpenAdditionalOpening = 0;
O parâmetro OnlyModifyAdditionalOpening não é recomendado para alteração! Não faz sentido otimizar.
O parâmetro AdditionalOpening habilita a função de abertura adicional com base na tendência. Apenas quando AdditionalOpening está definido como true, outros parâmetros podem ser otimizados!
Otimização de valores: True – False
- Aberturas adicionais de posições permitem alcançar mais lucro se o sinal for altamente lucrativo.
- Uma posição adicional pode incorrer em uma perda e reduzir os lucros da série original.
- Permite construir uma grade de posições na direção do lucro.
- Faz sentido usá-lo junto com o Absolute Stop ou Trailing Stop.
O parâmetro StopLossALL modifica o StopLoss de todas as posições por um nível.
Valores de otimização: 10-50-1000 (início = 10, passo = 50, parada = 1000)
- Serve como uma abertura adicional de posições se você a desativou.
- Faz sentido se você não usa Averaging: AverageUSE = false.
O parâmetro DistanceAdditionalOpening especifica a distância na qual posições adicionais são abertas na tendência.
Valores de otimização: Recomenda-se definir os parâmetros individualmente para cada par de moedas.
- Por exemplo, se este for o par de moedas EURUSD e você negocia no timeframe M30 com um movimento médio de preço de 50 barras = 7500 pontos (pips), defina este parâmetro para otimização da seguinte forma: início = 0, passo = 25, parada = 500.
- Por exemplo, se este for o par de moedas XAUUSD e você negocia no timeframe M1 com um movimento médio de preço de 50 barras = 100 pontos (pips), defina este parâmetro para otimização da seguinte forma: início = 0, passo = 5, parada = 100.
- Outra forma de otimizar este parâmetro é usar o spread médio para o par de moedas selecionado.
- Por exemplo, se o spread médio para um par de moedas for 3 pontos (pips), então a distância de averaging = 50 * 3 = 150 pontos (pips). Neste caso, a otimização pode ser definida da seguinte forma: 100-25-250.
- Leia mais sobre as recomendações referentes à distância de averaging: Averager para MT4 e MT5
- Quanto maiores os valores de distância, mais tempo o Expert Advisor (EA) leva para trazer a série de posições para o lucro total.
- Quanto menor o valor da distância de averaging, maior a carga no saldo da sua conta. Mais posições abertas significam que você pode alcançar lucro mais rápido, mas sua conta de negociação será fortemente carregada!
O parâmetro LotsMartinAdditionalOpening aumenta o tamanho do lote para cada posição adicional.
Valores de otimização: Apenas em casos extremos, 1-0,1-2
- Pode afetar sua conta de negociação e saldo.
- Recomenda-se usar apenas com um saldo suficiente.
- Se LotsMartinAdditionalOpening for menor que 1, o tamanho do lote da próxima posição adicional diminuirá a cada posição adicional aberta.
- Se LotsMartinAdditionalOpening for maior que 1, o tamanho do lote da próxima posição adicional aumentará a cada posição adicional aberta.
O parâmetro MaxOrdersOpenAdditionalOpening restringe o número de posições adicionais na tendência.
Valores de otimização: Apenas em casos extremos, 0 – 1 – 10
Bloco 11: Opções de BreakEven Sem Perda
Bloco de BreakEven.
input string MovingInWLUSE_ = "========= Opções de BreakEven Sem PERDA ========="; input bool MovingInWLUSE = false; input int LevelWLoss = 0; input int LevelProfit = 0;
O parâmetro MovingInWLUSE habilita a instalação de um Stop-Loss no ponto de break-even. Apenas quando MovingInWLUSE está definido como true, outros parâmetros podem ser otimizados!
Valores de otimização: True – False
O parâmetro LevelWLoss define o nível para ajustar o stop loss para o lucro. O parâmetro LevelProfit define o valor de lucro em pontos (pips) quando o break-even começa a funcionar.
Valores de otimização: 0-5-50
- O parâmetro LevelProfit deve sempre ser maior que LevelWLoss.
- Você pode definir a otimização de LevelProfit para 25-5-100 e LevelWLoss para 0-5-50.
- Quanto maior o valor de LevelProfit, mais a posição precisa se mover para o lucro para que o Expert Advisor (EA) defina um ponto de break-even. Isso protege contra pequenas perdas, mas você pode perder lucros.
- Quanto maior a diferença entre LevelProfit e LevelWLoss, menos sensível se torna o limiar de break-even.
Bloco 12: Opções de Trailing Stop Padrão
A unidade para trailing stops padrão.
input string Trailing_ = "========= Opções de Trailing Stop Padrão ========="; input bool TrailingStopUSE = true; input bool IfProfTrail = true; input int TrailingStop = 100; input int TrailingStep = 1; input bool SaveTPafterTrailingStop = false;
IfProfTrail, TrailingStep, e SaveTPafterTrailingStop parâmetros não são recomendados para alteração! Não faz sentido otimizar.
O parâmetro TrailingStopUSE habilita o suporte e a modificação do Stop-Loss para o lucro. Apenas quando TrailingStopUSE está definido como true, outros parâmetros podem ser otimizados!
Valores de otimização: True – False
- A diferença entre TrailingStop e BreakEven é que o trailing stop define o ponto de BreakEven e então ajusta o stop loss para o lucro se as condições do mercado permitirem.
- Você pode usar valores de parâmetros diferentes para TrailingStop e BreakEven. Não faz sentido usar os mesmos parâmetros para ambos.
O parâmetro TrailingStop define a distância do stop loss em relação ao preço atual. Neste caso, a posição deve acumular TrailingStop pips de lucro.
Valores de otimização: 0-10-100 (Com um movimento médio de par de moedas de 200-300 pontos (pips) por dia)
- Quanto maior o valor de TrailingStop, mais a posição precisa se mover para o lucro para que o Expert Advisor (EA) estabeleça um ponto de break-even e continue a trailing a posição. Isso protege contra pequenas perdas, mas você pode perder lucros maiores.
Bloco 13: Trailing Stop por SAR
Unidade de trailing stop baseada no indicador SAR.
input period periods6 = "========= TrailingStop por SAR ================================= ==== "; input bool TrailingStopSAR = false; input ENUM_TIMEFRAMES TrailingStopSAR_TimeFrame = PERIOD_CURRENT; input double step = 0.02; input double maximum = 0.2;
Os parâmetros TrailingStopSAR_TimeFrame, step, e maximum não são recomendados para alteração! Não faz sentido otimizar.
O parâmetro TrailingStopSAR habilita o suporte e a modificação do Stop-Loss para o lucro com base nos pontos (pips) do indicador Parabolic SAR. Apenas quando TrailingStopSAR está definido como true, outros parâmetros podem ser otimizados!
Valores de otimização: True – False
- Permite definir Stop-Loss com base nos extremos do indicador.
- Sempre mantém a distância do preço atual até o extremo calculando a distância automaticamente.
- Não faz sentido usá-lo com TrailingStopUSE definido como true.
Bloco 14: Opções de Tempo de Negociação
A unidade de gerenciamento de tempo do Expert Advisor (EA).
input string oo6 = "========= Opções de Time Trade ================================= ======= "; input bool TradeStartStopbyTime = false; input string SeveralTimeWork = ""; input string of_times41 = "=== Hora de Início/Parada de Time Trade ============================"; input int OpenHour = 0; input int OpenMinute = 0; input int ClosePeriod_Minute = 0; input int CloseHour = 23; input int CloseMinute = 59; input typeofclosebyouttime CloseAllTradesByOutOfTime = NotUse; input string period43 = "=== Dias de Time Trade ============================"; input bool TradeByDays = false; input string Days = "1,2,3,4,5,6,0"; input int DayForOptimization = 0; input string period42 = "=== Time Trade Segunda-feira ============================"; input bool TradeStartbyTimeMonday = false; input int OpenHourMonday = 0; input int OpenMinuteMonday = 0; input string of_periods44 = "=== Time Trade Sexta-feira ============================"; input bool TradeStartStopbyTimeFriday = false; input int OpenHourFriday = 0; input int OpenMinuteFriday = 0; input int CloseHourFriday = 23; input int CloseMinuteFriday = 59; input bool CloseFriday = false;
Este bloco contém inúmeros parâmetros, tornando a otimização de todos eles demorada.
Você pode otimizar as configurações de tempo após otimizar todos os outros blocos para melhorar os resultados do teste.
Apenas quando TradeStartStopbyTime está definido como true, faz sentido otimizar os parâmetros restantes!
Recomendo otimizar apenas estes parâmetros:
- OpenHour = 0-1-23
- CloseHour = 0-1-23
- TradeByDays = True-False
- DayForOptimization = 0-1-6
Bloco 15: Opções de CloseALL Quando Lucro ou Perda
Bloco para fechamento com base no lucro total.
input string CloseProfitLoss = "========= Opções de CloseALL quando Lucro ou PERDA ========="; input typeprofloss TypeofClose = 1; input bool CloseProfit = false; input double prifitessss = 10; input bool CloseLoss = false; input double lossss = -10; input double TrailOptions = 0; input double TrailOptionsStep = 0; input double BalanceStart = 0; input bool ForcedClose = true; input bool MailSend; input bool Orderdelete = true; input bool OFFAfterClosePROF = false; input bool OFFAfterCloseLOSS = false; input bool CloseTerminalAfterClosePROF = false; input bool CloseTerminalAfterCloseLOSS = false;
Bloco individual. Você pode otimizar parâmetros apenas quando for necessário para sua estratégia.
Por exemplo, quando você abre múltiplas posições ou se envolve em aberturas de posições caóticas.
Faz sentido otimizar os seguintes parâmetros quando TypeofClose está definido como PercentBalance:
- CloseProfit = True-False;
- prifitessss = 0,1-0,1-1
- CloseLoss = True-False;
- lossss = (-0,1) – (-0,1) – (-1)
Opções para Chamar OnTester_Custom_max:
O primeiro parâmetro é a fórmula geral para obter o resultado da execução do otimizador!
Por padrão: (Lucro * Número de Negociações) / Percentual de Drawdown de Fundos Disponíveis
OnTester_Custom_max | Seu próprio critério para otimização genética. Mais informações sobre os resultados do teste: Estatísticas Registrado na forma de uma fórmula. Por exemplo: OnTester_Custom_max = “STAT_PROFIT * STAT_TRADES / STAT_EQUITY_DD” Certifique-se de especificar os nomes das variáveis conforme na referência! |
Opções para Chamar OnTester_****:
OnTester_Min_Trades | Min Negociações para Otimização | Saldo mínimo (na moeda do depósito) ao final do teste para um resultado de otimização bem-sucedido. Por exemplo, 1000 (Igual ao depósito inicial) = Se o Saldo nesta execução do otimizador for menor que o depósito inicial, então este resultado será igual a 0. |
OnTester_Min_Profit | Min Lucro para Otimização | Fundos livres mínimos (na moeda do depósito) ao final do teste para um resultado de otimização bem-sucedido. Por exemplo, 500 = Se o Equity nesta execução do otimizador for menor que 500 (na moeda do depósito), então este resultado será igual a 0. |
OnTester_Min_ProfitFactor | Min ProfitFactor para Otimização | Profit Factor mínimo necessário para um resultado de otimização bem-sucedido. Por exemplo, 1,5 = Se o Profit Factor nesta execução do otimizador for menor que 1,5, então este resultado será igual a 0. |
OnTester_Min_Balance | Min Saldo para Otimização | Saldo mínimo (na moeda do depósito) ao final do teste para um resultado de otimização bem-sucedido. Por exemplo, 1000 (Igual ao depósito inicial) = Se o Saldo nesta execução do otimizador for menor que o depósito inicial, então este resultado será igual a 0. |
OnTester_Min_Equity | Min Equity para Otimização | O número mínimo de negociações abertas pelo Expert Advisor (EA) para um resultado de otimização bem-sucedido. Por exemplo, 50 = Se o número de negociações nesta execução do otimizador for menor que 50, então este resultado será 0. |
OnTester_Max_Balance_DD | Max Drawdown de Saldo % para Otimização | Drawdown máximo permitido no Saldo (na moeda do depósito) para um resultado de otimização bem-sucedido. Por exemplo, 20% = Se o Drawdown de Saldo nesta execução do otimizador exceder 20%, então este resultado será igual a 0. |
OnTester_Max_Equity_DD | Max Drawdown de Equity % para Otimização | Drawdown máximo permitido no Equity (na moeda do depósito) para um resultado de otimização bem-sucedido. Por exemplo, 15% = Se o Drawdown de Equity nesta execução do otimizador exceder 15%, então este resultado será igual a 0. |
Conclusões
A otimização e o teste de Expert Advisors (EA) são um esforço contínuo.
Você pode pensar que otimização é complicada e cara. Mas você está planejando ganhar milhões de dólares?
Você deve entender que Forex não é fácil. Cada EA é apenas um algoritmo incorporado no código.
Estamos trabalhando há mais de 10 anos e entendemos o que os especialistas em negociação exigem.
Com confiança, podemos dizer que otimizar e configurar um EA é muito mais fácil do que buscar e otimizar milhares de outros robôs.
- Teste e encontre as opções de negociação que melhor se adequam a você!
- Otimize a cada seis meses!
- Monitore o Expert Advisor (EA), estude os logs e mantenha-se atento ao EA!
- Ajuste os parâmetros dos Expert Advisors (EA) com base nas notícias.
Aprenda os materiais sobre negociação Forex.
Perguntas?
Se você tiver alguma dúvida, por favor, pergunte. Não vendemos o porquinho no saco.
Cada um de nossos produtos pode ser verificado antes da compra.
Agradecemos seu feedback e desejos para nossos produtos e nos esforçamos para manter padrões de alta qualidade.
Obrigado por estar conosco!
Você tem uma pergunta?
Publicações relacionadas
Assistant – o melhor painel de negociação gratuito para suportar
Configuração automática de stop loss, take profit, trailing stop, níveis de breakeven, habilitando stops virtuais. Exp Assistant ajudará você a organizar…
Close Minus by Plus, Fechando posições não lucrativas buscando e
Fechando posições não lucrativas identificando e fechando as lucrativas. O Expert Advisor (EA) foi projetado para fechar posições não lucrativas identificando…
Market Time Pad. Indicador com sessões de negociação
O Indicador de Tempo exibe a hora atual dos principais mercados mundiais e destaca a sessão de negociação ativa. …
The xCustomEA Advisor no PipFinite Trend PRO.
Descrição Um exemplo de programação de uma estratégia para o PipFinite Trend PRO indicador e negociação usando nosso sistema de negociação…
AI Sniper. Expert Advisor Inteligente e Automático para MetaTrader.
AI Sniper é um robô de negociação inteligente e auto-otimizável projetado para os terminais MT4 e MT5. Ele utiliza um…
Copylot – Copiador de transações forex para MetaTrader. Copiador entre
Copiador de transações para MetaTrader. Ele copia transações forex, posições e ordens de qualquer conta. É um dos melhores copiadores de transações…
Extra Report Pad – Diário do Trader. Analisa profissionalmente sua
Extra Report Pad – solução profissional para analisar sua conta de negociação Hoje, é essencial negociar simultaneamente em vários pares de…
The X – Assessor Especial Universal (EA) para Forex Usando
Assessor Especial Universal (EA) para MetaTrader com Funcionalidade Extensa O Assessor Especial The X é uma ferramenta de negociação…
Templates MQL Open Source. Modelo para Criar um Expert Advisor
Resumo Criar Expert Advisors (EAs) para testar sua estratégia usando qualquer indicador pode realmente ser simplificado usando templates e recursos de…
Relatório de negociação do TickSniper e os melhores EA
Descrição Nós compilamos o resumo e os resultados detalhados de negociação dos nossos especialistas TickSniper, Good Santa, Tick Hamster, The X, em nossas contas de…
EA The xCustomEA: Consultor de Negociação Universal para Indicadores Personalizados.
Consultor de negociação universal em indicadores personalizados para MetaTrader. Exp – The xCustomEA Consultor de negociação universal em indicadores personalizados. The…
Tick Hamster Robô de negociação automática. Nada extra!
Tick Hamster – Expert Advisor com Otimização Automática para Qualquer Símbolo de Negociação no MetaTrader Tick Hamster é um Expert Advisor…
Painel de negociação VirtualTradePad (VTP). Trade Pad para negociação com
Trade Pad para negociação com um clique a partir do gráfico e do teclado. VirtualTradePad ou VTP – painel de controle…
Forex Tester Pad é um simulador de trading para o
Trading com um clique no gráfico do Strategy Tester. A ferramenta permite que você teste manualmente suas estratégias no Strategy…
Publicações relacionadas
The X – Assessor Especial Universal (EA) para Forex Usando
Assessor Especial Universal (EA) para MetaTrader com Funcionalidade Extensa O Assessor Especial The X é uma ferramenta de negociação…
Forex Tester Pad é um simulador de trading para o
Trading com um clique no gráfico do Strategy Tester. A ferramenta permite que você teste manualmente suas estratégias no Strategy…
Assistant – o melhor painel de negociação gratuito para suportar
Configuração automática de stop loss, take profit, trailing stop, níveis de breakeven, habilitando stops virtuais. Exp Assistant ajudará você a organizar…
InfoPad, Painel de Informação Online para MetaTrader
InfoPad é um painel de informação altamente útil projetado para fornecer informações cruciais sobre o par de moedas específico selecionado…
Close Minus by Plus, Fechando posições não lucrativas buscando e
Fechando posições não lucrativas identificando e fechando as lucrativas. O Expert Advisor (EA) foi projetado para fechar posições não lucrativas identificando…
Market Time Pad. Indicador com sessões de negociação
O Indicador de Tempo exibe a hora atual dos principais mercados mundiais e destaca a sessão de negociação ativa. …
Tick Hamster Robô de negociação automática. Nada extra!
Tick Hamster – Expert Advisor com Otimização Automática para Qualquer Símbolo de Negociação no MetaTrader Tick Hamster é um Expert Advisor…
Duplicator – Duplicação de operações/posições nos terminais MetaTrader
O Exp-Duplicator é um Expert Advisor automático projetado para duplicar operações e posições um número predefinido de vezes na sua…
Averager. Média de posições de negociação. Abrindo operações contra a
Média de posições. Abertura de posições adicionais na tendência e contra a tendência com a função de trailing stop geral…
Partial Close and Trailing. Fechamento parcial de posições em rollbacks
Partial Close and Trailing é um assistente EA que fecha uma parte de uma posição (ou seja, parte do lote)…
EA The xCustomEA: Consultor de Negociação Universal para Indicadores Personalizados.
Consultor de negociação universal em indicadores personalizados para MetaTrader. Exp – The xCustomEA Consultor de negociação universal em indicadores personalizados. The…
TickSniper Expert Advisor Automático para MetaTrader. Tick scalper
Exp-TickSniper é um scalper Tick rápido que seleciona automaticamente os parâmetros para cada par de moedas separadamente. O EA foi desenvolvido…
Painel de negociação VirtualTradePad (VTP). Trade Pad para negociação com
Trade Pad para negociação com um clique a partir do gráfico e do teclado. VirtualTradePad ou VTP – painel de controle…
SafetyLOCK PRO Proteja suas posições usando ordens pendentes opostas. Hedge
SAFETYLOCK: Proteja suas negociações contra reversões bruscas de mercado Negociar nos mercados financeiros envolve altos riscos, especialmente durante reversões bruscas de…
Estratégia Swing (Pêndulo). Abertura automática de 2 ordens pendentes opostas,
A estratégia Pêndulo ou Swing envolve a abertura sequencial de ordens pendentes com um tamanho de lote aumentado. O princípio…
This post is also available in: English Українська Portuguese Español Deutsch Chinese Русский Français Italiano Türkçe 日本語 한국어
Leave a Reply