EA BMF

MQL5 Asesores Expertos

Trabajo finalizado

Plazo de ejecución 2 días

Tarea técnica

Estou, no momento, estudando programação MQL5.

Entretanto, não estou conseguindo criar um EA usando o Buy_Stop que funcione para Dólar BMF.

Dessa forma, preciso de um EA com código aberto para que eu possa aprender.

Nesse EA, eu irei colocar a entrada manualmente, assim como o StopLoss e o TakeProfit.

Segue, a minha programação com erro na execução.

 

 

//+------------------------------------------------------------------+

//|                                                OrdemPendente.mq5 |

//|                                                        AdoniasJr |

//|                               https://www.facebook.com/adoniasjr |

//+------------------------------------------------------------------+

#property copyright "AdoniasJr"

#property link      "https://www.facebook.com/adoniasjr"

#property version   "1.00"

//--- input parameters


input double quantidade=1.0;

input int high=3810; //Maior valor do candle anterior

input int low=3808;  //Menor valor do candle anterior

//+------------------------------------------------------------------+

//| Expert initialization function                                   |

//+------------------------------------------------------------------+

int OnInit()

  {

//--- create timer

   EventSetTimer(5);

   

      if(!TerminalInfoInteger(TERMINAL_TRADE_ALLOWED))

      {

         Alert("Verifique se a Negociação Automatizada está ligada!");

         ExpertRemove();

      }

      else if(!MQLInfoInteger(MQL_TRADE_ALLOWED))

      {

         Alert("Verifique se a Negociação Automatizada está proibida nas opções do Expert Advisor: ",__FILE__);

         ExpertRemove();

      }   

//---

   return(INIT_SUCCEEDED);

  }

//+------------------------------------------------------------------+

//| Expert deinitialization function                                 |

//+------------------------------------------------------------------+

void OnDeinit(const int reason)

  {

//--- destroy timer

   EventKillTimer();

      

  }

//+------------------------------------------------------------------+

//| Timer function                                                   |

//+------------------------------------------------------------------+

bool comprado = false;

void OnTimer()

  {

//---


      if(comprado == false)

        {

            comprado = true;

        

   

            //ordem pendente

            MqlTradeRequest requisicao;

            ZeroMemory(requisicao);

            requisicao.action = TRADE_ACTION_PENDING;

            requisicao.symbol = Symbol();

            requisicao.price = high; //Entrada no maior valor do candle anterior

            requisicao.volume = quantidade;

            requisicao.sl = low; //Saida com prejuizo no menor valor do candle anterior

            requisicao.tp = high+(high-low); //Saida com lucro

            requisicao.type = ORDER_TYPE_BUY_STOP;

            requisicao.type_time = ORDER_TIME_DAY;

            MqlTradeResult resultado;

            ZeroMemory(resultado);

   

            if(!OrderSend(requisicao,resultado))

            {

               Alert("Erro ao enviar Ordem na função: " + __FUNCTION__+". Último Erro: "+ GetLastError()+" Erro da variável resultado: "+ resultado.retcode);

            }

            Sleep(12*60*60*1000); // linha colocada para impedir a abertura de nova operação no prazo de 12 horas       

         }

   

  }

//+------------------------------------------------------------------+

 

 

 

Han respondido

1
Desarrollador 1
Evaluación
Proyectos
1
0%
Arbitraje
0
Caducado
0
Libre
2
Desarrollador 2
Evaluación
(4)
Proyectos
5
40%
Arbitraje
0
Caducado
3
60%
Libre
3
Desarrollador 3
Evaluación
(2647)
Proyectos
3364
68%
Arbitraje
77
48% / 14%
Caducado
342
10%
Libre
Ha publicado: 1 ejemplo
4
Desarrollador 4
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre

Información sobre el proyecto

Presupuesto
10 - 30 USD
Plazo límite de ejecución
de 1 a 5 día(s)