- MEU EA NÃO ESTA COLOCANDO STOP LOSS NEM TAKE PROFIT
- Teoria do mercado
- Negociação de pares e arbitragem em várias moedas. O confronto.
Bom dia, meu EA como podem ver na imagem, comprou e vendeu em preços que nem houve negociação.
Olá,
Pode ser o seguinte: DEMO aceita e executa ordens no período de leilão! Solução, rejeite os ticks com volume igual a zero, isso também vai corrigir erro de o EA processar ofertas.
Olá,
Pode ser o seguinte: DEMO aceita e executa ordens no período de leilão! Solução, rejeite os ticks com volume igual a zero, isso também vai corrigir erro de o EA processar ofertas.
Olá, implementei a sugestão, e também mudei para entrar a mercado, mas o problema persiste, e parece ser no período do leilão.
if (SymbolInfoInteger(_Symbol,SYMBOL_VOLUME)>0) { compra=true; }
Olá, implementei a sugestão, e também mudei para entrar a mercado, mas o problema persiste, e parece ser no período do leilão.
. . .
Mais uma verificação que pode ser feita antes de enviar uma ordem é o horário de negociação do símbolo (ativo). Acho que a função abaixo pode lhe ajudar com isso:
//+--------------------------------------------------------------------------------------------------------------------+ //| This function checks if the symbol is trading at the current time | //+--------------------------------------------------------------------------------------------------------------------+ bool CheckTradingTime(string symbol) { //--- Local variables datetime times = TimeCurrent(), trade_time_start = 0, trade_time_end = 0, _start = 0, _end = 0; MqlDateTime last_time; //--- Check symbol trade end date datetime expiration = (datetime)SymbolInfoInteger(symbol, SYMBOL_EXPIRATION_TIME); if(expiration != 0 && times >= expiration) { return(false); } TimeToStruct(times, last_time); //--- Session index: 0 if(SymbolInfoSessionTrade(symbol, (ENUM_DAY_OF_WEEK)last_time.day_of_week, 0, trade_time_start, trade_time_end)) { _start = iTime(symbol, PERIOD_D1, 0) + trade_time_start; _end = iTime(symbol, PERIOD_D1, 0) + trade_time_end; if(_start == _end) { return(true); } if(times >= _start && times < _end) { return(true); } } //--- Session index: 1 if(SymbolInfoSessionTrade(symbol, (ENUM_DAY_OF_WEEK)last_time.day_of_week, 1, trade_time_start, trade_time_end)) { _start = iTime(symbol, PERIOD_D1, 0) + trade_time_start; _end = iTime(symbol, PERIOD_D1, 0) + trade_time_end; if(_start == _end) { return(true); } if(times >= _start && times < _end) { return(true); } } //--- Check completed return(false); }
Olá, implementei a sugestão, e também mudei para entrar a mercado, mas o problema persiste, e parece ser no período do leilão.
Uma dúvida, o EA está despachando as ordens no OnTick() certo?
Na segunda antes das 9:00 coloque em DEMO e em REAL e compare os resultados.
#property copyright "Rogério Giannetti Torres" #property link "mailto:giannetti.rogerio@gmail.com" #property version "1.00" //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ bool flagOpen = false; MqlTick mqlTick; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int OnInit() { Print("\nAtivo: ", _Symbol); return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void OnTick() { if(!SymbolInfoTick(_Symbol, mqlTick)) return; if(!flagOpen) Print("Time: ", mqlTick.time, " Mask = ", mqlTick.flags, " Vol = ", mqlTick.volume, " Bid = ", mqlTick.bid, " Ask = ", mqlTick.ask, " Last = ", mqlTick.last); if(mqlTick.volume == 0) return; if(mqlTick.last == 0) return; if(! flagOpen ) { Alert("Mercado abriu "); Print("Time: ", mqlTick.time, " Mask = ", mqlTick.flags, " Vol = ", mqlTick.volume, " Bid = ", mqlTick.bid, " Ask = ", mqlTick.ask, " Last = ", mqlTick.last); flagOpen = true; ExpertRemove(); } } //+------------------------------------------------------------------+
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso