Negociação Sistemática

Identificando Tops e Bottoms em Tendências: Expert Advisor para MetaTrader 4
MetaTrader4
Identificando Tops e Bottoms em Tendências: Expert Advisor para MetaTrader 4

Hoje, vamos falar sobre um Expert Advisor (EA) que pode ser um grande aliado na sua jornada de trading. Este robô de trading é projetado para comprar quando um novo mínimo é atingido em uma tendência de baixa, especialmente quando o índice de força relativa (RSI) indica que o ativo está sobrevendido. Entre as configurações que você pode ajustar, estão a faixa de tendência e a qualidade da operação, incluindo o período de retrocesso para analisar quantas barras estão envolvidas. Esse EA também vende em um novo máximo, seguindo a mesma lógica das compras. Contagem de candles passados, considerando o período de retrocesso para as condições da tendência. Quantidade mínima de pips e a faixa de retrocesso em pips. Qualidade da tendência de 1 a 10, onde 1 representa uma tendência frouxa e 10 uma tendência de alta qualidade. Os stops são colocados em pips, e os alvos são uma porcentagem desses stops. Por exemplo, 100 representa uma relação de risco-retorno de 1:1, enquanto 200 significa 1:2. O volume é configurado em 0,01, mas pode ser variável conforme sua estratégia. O período do RSI é ajustado para 14, sendo variável, e os níveis de sobrecompra e sobrevenda são definidos em 40/60, também variáveis. Os parâmetros padrão podem não garantir lucros, então é importante otimizar várias entradas. Ignore a entrada 17, onde o 'take profit em pips' está definido como 5 pips.  

2021.08.30
Aumente Seus Lucros Após o Break Even: Expert para MetaTrader 4
MetaTrader4
Aumente Seus Lucros Após o Break Even: Expert para MetaTrader 4

Hoje vamos falar sobre uma funcionalidade incrível deste pequeno EA (Expert Advisor) que pode ajudar a otimizar suas operações: a função de contagem de ordens. int OrdersCounter()   {    int counter=0; //---    for(int i=OrdersTotal()-1; i>=0; i--)       if(OrderSelect(i,SELECT_BY_POS))          if(OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()) // se a ordem foi aberta por este EA            { //--- se o break even já aconteceu    /* Para compras, somente quando o StopLoss é igual ou maior que o preço de abertura. Nota: Esta implementação não é boa se você tiver ordens pendentes. É adequada apenas para compras e vendas.*/             double XBreakeven = OrderType()==OP_BUY ? OrderStopLoss() >= OrderOpenPrice() : OrderStopLoss() <= OrderOpenPrice();             if(!XBreakeven) // Se somente o Break Even e o trailing stop não aconteceram               {                counter++; // conta a posição               }            }    return counter;   } Com essa contagem, estamos considerando apenas as ordens que não possuem StopLoss acima ou igual ao preço de abertura para compras, e abaixo para vendas. Em suma, contamos todas as ordens que ainda não alcançaram o break even ou em que o trailing stop não protegeu o preço de abertura. double XBreakeven = OrderType()==OP_BUY ? OrderStopLoss() >= OrderOpenPrice() : OrderStopLoss() <= OrderOpenPrice();             if(!XBreakeven) // Se somente o Break Even e o trailing stop não aconteceram Com isso, criamos um contador que retorna o valor que vamos usar para limitar nossa posição máxima, que neste caso está definida para 1 ordem por vez.    if(OrdersCounter()<MaximumOrders) Portanto, sempre que o break even ocorrer, essa função não irá contar, e como neste exemplo temos apenas uma posição, ela retornará zero, permitindo que abramos outra venda e o processo continua. Isso só seria possível porque criamos uma função de break even. void BreakEvenFunction()   { //---    for(int i=OrdersTotal()-1; i>=0; i--)       if(OrderSelect(i,SELECT_BY_POS))          if(OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol())            { // para compra se o Bid estiver acima do Preço de Abertura + pips de break even. Vice-versa para vendas             double xHybrid = OrderType()==OP_BUY ? (Bid>OrderOpenPrice()+BreakevenPips*_Point && OrderStopLoss()<OrderOpenPrice()) : (Ask<OrderOpenPrice()-BreakevenPips*_Point && OrderStopLoss()>OrderOpenPrice());             /* Para compras, somente quando o StopLoss é igual ou maior que o Preço de Abertura. Vice-versa para vendas */             if(xHybrid)               {                bool modfy = OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0,clrNONE);               }            }   } Então, o que você está esperando? Experimente e veja a diferença nas suas operações!

2021.07.13
Como Usar Médias Móveis para Quebras no MetaTrader 4
MetaTrader4
Como Usar Médias Móveis para Quebras no MetaTrader 4

Se você está no mundo do trading, já deve saber que as médias móveis são ferramentas poderosas para identificar tendências. Neste post, vamos falar sobre como utilizar as quebras de médias móveis no MetaTrader 4 para melhorar suas operações. Entendendo os Inputs Vamos detalhar os inputs que você precisa configurar. Vou explicar do ponto de vista de uma operação de compra, mas você pode inverter para vendas. inp1: A média móvel exponencial de 20 períodos (EMA 20) deve ser maior que a de 30 períodos (EMA 30). inp2: A EMA 30 deve ser maior que a EMA de 50 períodos (EMA 50). inp3: O preço de abertura da barra de quebra deve estar acima da EMA 30. inp4: Configurações da quebra - aqui, devemos considerar: Contagem de barras quietas: O número de barras que devem estar acima da média antes da quebra. Faixa de barras quietas: Em pips, a faixa mínima das barras quietas. Força da quebra: Definida em 1.1, significando que a quebra deve ser pelo menos 10% acima das altas da faixa das barras quietas. Passo de otimização: Comece com 1 e vá até 5, ajustando em incrementos de 0.1. inp5: Comprimento da sombra em % do tamanho total da barra. Otimize de 0 a 100. inp6: O preço mínimo da barra de quebra deve ser igual ou inferior à EMA 20. Volume: Lotes e stop loss em pips. Visualização dos Resultados Veja abaixo algumas imagens que ilustram como essas configurações podem ser aplicadas no MetaTrader 4:   

2021.07.03
Framework Validate Me: O Robô Definitivo para MetaTrader 4
MetaTrader4
Framework Validate Me: O Robô Definitivo para MetaTrader 4

Framework Validate Me Olá, traders! Hoje, quero compartilhar com vocês como eu interpreto a codificação de um robô que utiliza ordens de compra e venda no mercado para garantir a validação das operações. Esse framework aborda alguns cheques que um robô de trading deve passar antes de ser lançado no mercado. Este conteúdo é para fins educacionais. Exemplo de código para COMPRA ask=MarketInfo(_Symbol,MODE_ASK);          bid=MarketInfo(_Symbol,MODE_BID);          sl=(OrderStopPips==0)?0.0:bid-ExtOrderStop;          if(sl!=0.0 && ExtOrderStop<StopLevel)             sl=bid-StopLevel;          tp=(OrderTakePips==0)?0.0:ask+ExtOrderTake;          if(tp!=0.0 && ExtOrderTake<StopLevel)             tp=ask+StopLevel;          GetLot=CheckVolumeValue(Lots);          if(!CheckStopLoss_Takeprofit(OP_BUY,ExtOrderStop,ExtOrderTake))             return;          if(CheckMoneyForTrade(GetLot,OP_BUY))             order=OrderSend(_Symbol,OP_BUY,GetLot,ask,10,sl,tp,"FrameWork",678,0,Blue); Entradas do Framework

2021.06.22
Como Usar Stop Loss Duplo: HIDDEN e REGULAR no MetaTrader 4
MetaTrader4
Como Usar Stop Loss Duplo: HIDDEN e REGULAR no MetaTrader 4

Quando um trader decide abrir uma nova posição, a primeira coisa que deve estar na sua mente é a gestão de risco. Uma das maneiras mais comuns que temos para controlar esse risco e gerenciar nosso capital é através da definição de um limite de perda para nossas operações. É comum que muitos traders acreditem que, ao definir um Stop Loss (ou até mesmo um Take Profit) e inserir esse valor na janela de modificação da posição, o servidor da corretora tem a obrigação de fechar a posição assim que o preço atinge esse limite. Mas, na verdade, isso não é bem assim. A situação pode variar dependendo do tipo de conta que você possui na corretora. É importante saber que, em contas ECN, quando você informa um preço ao broker como Stop Loss ou Take Profit, a corretora irá fechar sua posição no primeiro preço disponível assim que o mercado atingir esse limite. Se isso não for do seu agrado, é hora de olhar mais de perto seu histórico de operações. Você vai perceber que algumas das suas ordens foram fechadas a um preço diferente do que você havia definido, resultando em perdas maiores ou lucros menores do que o esperado. Isso acontece devido ao que chamamos de SLIPPAGE. Além disso, alguns traders acreditam que o limite de perda não deve ser exposto de forma precisa para a corretora. É daí que surge o HIDDEN Stop Loss, que foi desenvolvido justamente para atender a essa necessidade. Agora você pode usar tanto o HIDDEN quanto o REGULAR Stop Loss juntos. A configuração do REGULAR Stop Loss continua a mesma de sempre, seja você um trader manual ou esteja utilizando robôs. Basta rodar esse robô em um novo gráfico separado (qualquer um) para gerenciar todas as suas posições. O valor de entrada determina a distância entre o HIDDEN e o REGULAR Stop Loss. Lembre-se de que esse valor é definido em pontos, não em pips.

2021.04.23
Scalper Assistant v1.0: Ferramenta Ideal para Scalpers no MetaTrader 4
MetaTrader4
Scalper Assistant v1.0: Ferramenta Ideal para Scalpers no MetaTrader 4

O scalping é uma das estratégias mais populares entre os traders, e a maioria já experimentou pelo menos uma vez. Como um scalper costuma realizar mais de 10 operações por dia, configurar Stop Loss e Take Profit para cada uma pode se tornar um verdadeiro desafio. Se a sua estratégia envolve negociar em diversos instrumentos financeiros e ainda garantir um Break Even, a gestão de todas essas ordens pode ser maçante e, muitas vezes, sujeita a erros. Além disso, ao operar em Time-Frames menores e em múltiplos pares de moedas, uma movimentação rápida de preço pode acontecer justo quando você se afasta da tela para tomar um café, e você pode perder a oportunidade de garantir seu Break Even. A preocupação de ver um trade lucrativo se transformar em prejuízo está sempre presente. Com a ajuda deste assistente, você pode facilmente definir os valores de Stop Loss e Take Profit. Assim que você abre uma operação, a ferramenta automaticamente configura os valores iniciais e, se o preço se mover na direção desejada, a operação pode se tornar sem risco ou Break Even. Todos os valores de entrada são em PONTOS (não em PIPs). extern double WhenToMoveToBE // Aqui você determina quantos pontos o preço deve estar afastado do ponto de entrada da ordem para que o EA mova para Break Even. extern double BEAmount // Você define a distância do Stop Loss em relação ao ponto de entrada.

2021.04.23
Agendador Automático: Otimize seu Trading com MetaTrader 4 e 5
MetaTrader4
Agendador Automático: Otimize seu Trading com MetaTrader 4 e 5

Você já se pegou pensando em como gerenciar melhor suas operações no MetaTrader? O Agendador Automático é uma ferramenta incrível que pode te ajudar a ter mais controle sobre suas negociações. Desenvolvido pela EarnForex.com, o Agendador Automático permite que você defina períodos específicos em que o AutoTrading está habilitado ou desabilitado. Isso é especialmente útil para quem quer evitar operar em horários de alta volatilidade ou quando não está disponível para monitorar o mercado. Você pode programar esses períodos para cada dia da semana, e o sistema se encarregará de desativar o AutoTrading fora desses horários. Assim, você pode ter a tranquilidade de que suas operações só acontecerão quando você achar mais seguro. Além disso, o Agendador também tem a funcionalidade de tentar fechar todas as suas operações (tanto as posições abertas quanto as ordens pendentes) antes de desativar o AutoTrading. Isso ajuda a evitar surpresas desagradáveis e garante que você não deixe posições abertas quando não pode monitorar o mercado. Vantagens do Agendador Automático Controle Total: Defina exatamente quando suas operações devem acontecer. Segurança: Minimize riscos ao evitar operar em horários indesejados. Fechamento Automático: Garanta que suas posições sejam fechadas antes de desabilitar o AutoTrading. Aproveite essa ferramenta poderosa e eleve seu trading a um novo nível com o Agendador Automático no MetaTrader 4 e 5!

2021.04.01
Como Fechar Ordens por Alvo ou Limite de Perda no MetaTrader 4
MetaTrader4
Como Fechar Ordens por Alvo ou Limite de Perda no MetaTrader 4

Fala, galera! Hoje vamos falar sobre uma ferramenta que pode facilitar muito a sua vida como trader no MetaTrader 4: um robô que fecha ordens com base no alvo de lucro ou no limite de perda. Esse Expert Advisor (EA) é super útil e tem apenas três entradas que você precisa configurar: Alvo de Lucro Limite de Perda Número Mágico extern     double          inTargetProfitMoney      = 10;       // Alvo de Lucro ($)extern     double          inCutLossMoney           = 0.0      // Limite de Perda ($)extern     int             inMagicNumber            = 0        // Número Mágico Quando você executar esse EA, ele chamará a função OnInit(). Nela, vamos verificar se as entradas e variáveis estão devidamente inicializadas. int OnInit()  {    //---    if(inTargetProfitMoney <= 0)       {        Alert("Entrada inválida");        return(INIT_PARAMETERS_INCORRECT);     }     inCutLossMoney = MathAbs(inCutLossMoney) * -1;    //---    return(INIT_SUCCEEDED);  } Agora, toda vez que houver uma movimentação de preço (tick), a função OnTick() será chamada. void OnTick()  {    //---    double   tFloating = 0.0;    int tOrder   = OrdersTotal();    for(int i=tOrder-1; i>=0; i--)       {        if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))          {            if(OrderMagicNumber() == inMagicNumber)               {                tFloating    += OrderProfit()+OrderCommission() + OrderSwap();           }        }     }    if(tFloating >= inTargetProfitMoney || (tFloating <= inCutLossMoney && inCutLossMoney < 0))     {      fCloseAllOrders();     }  } Na função OnTick, vamos continuar calculando o lucro ou a perda total e, se necessário, fechar todas as ordens que atingirem o alvo ou o limite de perda. void fCloseAllOrders()  {    double   priceClose = 0.0;    int tOrders = OrdersTotal();    for(int i=tOrders-1; i>=0; i--)       {        if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))          {            if(OrderMagicNumber() == inMagicNumber && (OrderType() == OP_BUY || OrderType() == OP_SELL))               {                priceClose = (OrderType()==OP_BUY)?MarketInfo(OrderSymbol(), MODE_BID):MarketInfo(OrderSymbol(), MODE_ASK);                if(!OrderClose(OrderTicket(), OrderLots(), priceClose, slippage, clrGold))              {                   Print("AVISO: Falha ao Fechar");              }           }        }     }  } Para mais informações e troca de conhecimentos sobre códigos MQL4, junte-se ao nosso grupo no Telegram: t.me/codeMQL

2021.03.31
Primeiro Anterior 1 2 3 4 5 6 7 8 9 10 11 Próximo Último