Erro número 6 - página 27

 
 
Você quer dizer<br / translate="no">"IsConnected - coleta de estatísticas de conexão do terminal ao servidor ;)".
Ou existe uma versão mais recente?

estamos falando do EA apresentado neste tópico. para não correr com você por ele apresentarei minha própria cópia com a qual tenho trabalhado.
//+------------------------------------------------------------------+
//|                                                    TestQuark.mq4 |
//|                      Copyright © 2005, MetaQuotes Software Corp. |
//|                                        https://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2005, MetaQuotes Software Corp."
#property link      "https://www.metaquotes.net"

double dStopLoss;
int nHoursToHold;

datetime timePrev = 0;
int nBars;
int nDelaySeconds = 3;

int nSlip = 50;

double dLotSize = 0.1;

int nMagic = 0;
int nDigits;

string strTradeSemaphore = "TradeSemaphore";

//////////////////
int init()
{
	nBars = Bars;

	if(!IsTesting() && !GlobalVariableCheck(strTradeSemaphore)) 
		GlobalVariableSet(strTradeSemaphore, 0.0);
	
	dStopLoss = 110 * Point;
	nHoursToHold = 1;

	nDigits = MarketInfo( Symbol(), MODE_DIGITS );
	
	if(Symbol() == "EURUSD")
		nMagic = 1;
	else if(Symbol() == "EURJPY")
		nMagic = 2;
	else if(Symbol() == "USDCHF")
		nMagic = 3;
	else if(Symbol() == "GBPUSD")
		nMagic = 4;
	else if(Symbol() == "GBPJPY")
		nMagic = 5;
	else if(Symbol() == "GBPCHF")
		nMagic = 6;
	else if(Symbol() == "USDJPY")
		nMagic = 7;
	else if(Symbol() == "AUDUSD")
		nMagic = 8;
	else if(Symbol() == "EURGBP")
		nMagic = 9;
	else if(Symbol() == "USDCAD")
		nMagic = 10;
	else if(Symbol() == "EURCHF")
		nMagic = 11;
	else if(Symbol() == "EURAUD")
		nMagic = 12;
		
	return(0);	
}

// ------

int deinit()
{
	return(0);
}

// ------

int start()
{
	if(Bars < 5)
		return(0);
	
/*	// The previous bar just closed
	bool bIsBarEnd = false;
	if(timePrev != Time[0] + nMagic) 
		bIsBarEnd = true;
	timePrev = Time[0] + nMagic;
*/

	bool bIsBarEnd = false;
	if(nBars != Bars)
	{
		if(IsTesting() || (!IsTesting() && CurTime() > Time[0] + nMagic * nDelaySeconds))
		{
			bIsBarEnd = true;
			nBars = Bars;
		}
	}
	
	if(!bIsBarEnd)
		return(0);

	// ------
	
	if(!IsTesting())
	{
		while(!IsStopped())
		{
			if(GlobalVariableSetOnCondition(strTradeSemaphore,1.0,0.0))
				break;
		
			Sleep(1000);
		}
	}
	
	RefreshRates();
	
	for(int nCnt = OrdersTotal() - 1; nCnt >= 0; nCnt--)
	{
		OrderSelect(nCnt, SELECT_BY_POS, MODE_TRADES);

		if(OrderMagicNumber() == nMagic)
		{
			if(CurTime() - OrderOpenTime() > (nHoursToHold - 1) * 60 * 60)
			{
			   int type=OrderType();
			   int ticket=OrderTicket();
			   double lots=OrderLots();
			   for(int i=0; i<3; i++)
			     {
				     if(type == OP_BUY)
					     OrderClose(ticket, lots, Bid, nSlip, Aqua);
				     else if(type == OP_SELL)
					     OrderClose(ticket, lots, Ask, nSlip, OrangeRed);
					  int nError=GetLastError();
					  if(nError==0) break;
					  Sleep(1000);
                 RefreshRates();
				  }
			}
		}
	}

	int nSignal = GetSignal();
	
	if(nSignal == OP_BUY) 
		Buy();
	else if(nSignal == OP_SELL) 
		Sell();

	if(!IsTesting())
		GlobalVariableSet(strTradeSemaphore, 0.0);	
	
	return(0);
}
// ------

void Sell()
{
	if(AccountFreeMargin() < 500)
		return;

	dLotSize = GetLotSize();
   for(int i=0; i<3; i++)
     {
//	   double dNormalizer = MathPow(10, nDigits);
	     double dBid = Bid;//MathFloor(Bid * dNormalizer) / dNormalizer; //NormalizeDouble(Bid, nDigits);
	     double dStop = Bid + dStopLoss;//MathFloor((Bid + dStopLoss) * dNormalizer) / dNormalizer; //NormalizeDouble(Bid + dStopLoss, nDigits);

	     int nResult = OrderSend(Symbol(), OP_SELL, dLotSize, dBid, 
		                          nSlip, dStop, 0, "Friday", nMagic, 0, OrangeRed);

	     if(nResult == -1)
	     {
		    int nError = GetLastError();
		    Alert(Symbol() + ", sell: " + dBid + ", Stop: " + dStop + ", error: " + nError);
			 Sleep(1000);
      	 RefreshRates();
	     }
	     else break;
	  }
}

// ------

void Buy()
{
	if(AccountFreeMargin() < 500)
		return;

	dLotSize = GetLotSize();

   for(int i=0; i<3; i++)
     {
//	     double dNormalizer = MathPow(10, nDigits);
	     double dAsk = Ask;//MathFloor(Ask * dNormalizer) / dNormalizer; //NormalizeDouble(Bid, nDigits);
	     double dStop = Ask - dStopLoss;//MathFloor((Ask - dStopLoss) * dNormalizer) / dNormalizer; //NormalizeDouble(Bid + dStopLoss, nDigits);

	     int nResult = OrderSend(Symbol(), OP_BUY, dLotSize, dAsk, 
		                          nSlip, dStop, 0, "Friday", nMagic, 0, Aqua);

	     if(nResult == -1)
	     {
		    int nError = GetLastError();
		    Alert(Symbol() + ", buy: " + dAsk + 
			      ", Stop: " + dStop + ", error: " + nError);
			 Sleep(1000);
      	 RefreshRates();
	     }
	     else break;
	 }
}
// ------

double GetLotSize()
{
	double dLot = 0.1;
	
	return(dLot);
}

// ------

int GetSignal()
{
	int nSignal;
	if(MathMod(Hour(), 2) == 0)
		nSignal = OP_BUY;
	else
		nSignal = OP_SELL;
		
	return(nSignal);
}


//+------------------------------------------------------------------+
 
Outro registro. Dois logs para ser exato. Um é do registro, o segundo (abaixo do primeiro) é do meu sistema de relatório de erros, eu dei este sistema nos posts deste tópico.

Log 1.
2005.10.11 20:19:48 Old tick GBPUSD60 1.7478/1.7482
2005.10.11 20:09:47 Old tick GBPJPY60 199.7100/199.7900
2005.10.11 20:05:51 '142605': ordem #2155774 comprar 0.10 USDJPY a 114.3900 foi modificado -> sl: 113.6600 tp: 115.3900
2005.10.11 20:05:51 '142605': pedido em processo
2005.10.11 20:05:51 '142605': o pedido foi aceito pelo servidor
2005.10.11 20:05:51 '142605': modificar pedido #2155774 comprar 0.10 USDJPY a 114.3900 sl: 113.4900 tp: 115.3900 -> sl: 113.6600 tp: 115.3900
2005.10.11 20:05:50 '142605': pedido pendente nº 2155773 foi eliminado
2005.10.11 20:05:50 '142605': pedido em processo
2005.10.11 20:05:50 '142605': o pedido foi aceito pelo servidor
2005.10.11 20:04:59 '142605': eliminar ordem pendente #2155773 vender paragem 0.10 USDJPY a 113.6900 sl: 114.5900 tp: 112.6900
2005.10.11 20:04:56 '142605': pedido está aberto : #2165270 buy stop 0.10 EURJPY a 137.6500 sl: 135.6500 tp: 138.6500
2005.10.11 20:04:55 '142605': pedido em processo
2005.10.11 20:04:55 '142605': o pedido foi aceito pelo servidor
2005.10.11 20:04:55 '142605': parada de compra pendente 0.10 EURJPY a 137.6500 sl: 135.6500 tp: 138.6500
2005.10.11 20:04:55 '142605': login (4.00, #281BB516)
2005.10.11 20:04:54 TradeContext: ping error
2005.10.11 20:04:14:14 '142605': parada de venda pendente 0.10 EURJPY a 136.8800 sl: 138.8800 tp: 135.8800
2005.10.11 20:04:14 '142605': login (4.00, #281BB516)
2005.10.11 19:17:55 TradeContext: o ping falhou
2005.10.11 19:16:49 TradeContext: '142605' não pode fazer login em: MetaQuotes-demo
2005.10.11 19:16:16 TradeContext: erro no envio da transação
2005.10.11 19:16:16 '142605': eliminar ordem pendente #2155773 vender paragem 0.10 USDJPY a 113.6900 sl: 114.5900 tp: 112.6900
2005.10.11 19:15:55 '142605': ordem #2130092 comprar 0.10 EURUSD a 1.2140 sl: 1.1973 tp: 0.0000 fechado ao preço 1.2011
2005.10.11 19:15:55 '142605': pedido em processo
2005.10.11 19:15:55 '142605': o pedido foi aceito pelo servidor
2005.10.11 19:15:15 '142605': fechar pedido #2130092 comprar 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 ao preço 1.2011
2005.10.11 19:15:15 '142605': login (4.00, #281BB516)
2005.10.11 19:15:05 TradeContext: o ping falhou
2005.10.11 19:15:05 TradeContext: ping error
2005.10.11 19:14:25 '142605': fechar pedido #2130092 comprar 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 ao preço 1.2008
2005.10.11 19:14:25 '142605': login (4.00, #281BB516)
2005.10.11 19:14:14 Contexto comercial: o ping falhou
2005.10.11 19:14:14:14 Contexto comercial: erro de ping
2005.10.11 19:13:34 '142605': fechar pedido #2130092 comprar 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 ao preço 1.2005
2005.10.11 19:13:34 '142605': login (4.00, #281BB516)
2005.10.11 19:13:23 TradeContext: ping falhou
2005.10.11 19:13:23 TradeContext: ping error
2005.10.11 19:12:23 '142605': fechar pedido #2130092 comprar 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 ao preço 1.2005
2005.10.11 19:12:23 '142605': login (4.00, #281BB516)
2005.10.11 19:12:13 Contexto comercial: o ping falhou
2005.10.11 19:12:12 TradeContext: ping error
2005.10.11 19:11:32 '142605': fechar pedido #2130092 comprar 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 ao preço 1.2004
2005.10.11 19:11:32 '142605': login (4.00, #281BB516)
2005.10.11 19:11:22 Contexto comercial: o ping falhou
2005.10.11 19:11:22 TradeContext: ping error
2005.10.11 19:10:21 '142605': fechar pedido #2130092 comprar 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 ao preço 1.2004
2005.10.11 19:10:21 '142605': login (4.00, #281BB516)
2005.10.11 19:10:10 Contexto comercial: o ping falhou
2005.10.11 19:10:10 TradeContext: ping error
2005.10.11 19:09:30 '142605': fechar pedido #2130092 comprar 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 ao preço 1.2006
2005.10.11 19:09:30 '142605': login (4.00, #281BB516)
2005.10.11 19:09:19 Contexto comercial: o ping falhou
2005.10.11 19:09:19 TradeContext: ping error
2005.10.11 19:08:19 '142605': fechar pedido #2130092 comprar 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 ao preço 1.2003
2005.10.11 19:08:19 '142605': login (4.00, #281BB516)
2005.10.11 19:08:06 TradeContext: o ping falhou
2005.10.11 19:08:05:05 TradeContext: '142605' não pode fazer login em: MetaQuotes-demo
2005.10.11 19:07:23 TradeContext: o ping falhou
2005.10.11 19:07:23 TradeContext: ping error
2005.10.11 19:06:22 '142605': fechar pedido #2130092 comprar 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 ao preço 1.1999
2005.10.11 19:06:22 '142605': login (4.00, #281BB516)
2005.10.11 19:06:19 Contexto comercial: o ping falhou
2005.10.11 19:06:19 TradeContext: ping error
2005.10.11 19:05:19 '142605': parada de compra pendente 0.10 EURJPY a 137.7600 sl: 135.7600 tp: 138.7600
2005.10.11 19:05:19 '142605': login (4.00, #281BB516)
2005.10.11 19:05:18 TradeContext: ping error
2005.10.11 19:04:18 '142605': parada de venda pendente 0,10 EURJPY a 136,8800 sl: 138,8800 tp: 135,8800
2005.10.11 19:04:17 '142605': login (4.00, #281BB516)
2005.10.11 18:13:59 '142605': pedido #2144293 comprar 0.10 USDJPY a 113.7400 foi modificado -> sl: 113.3800 tp: 0.0000
2005.10.11 18:13:59 '142605': pedido em processo
2005.10.11 18:13:59 '142605': o pedido foi aceito pelo servidor
2005.10.11 18:13:23 '142605': modificar pedido #2144293 comprar 0.10 USDJPY a 113.7400 sl: 113.2900 tp: 0.0000 -> sl: 113.3800 tp: 0.0000
2005.10.11 18:10:00 '142605': pedido #2135657 comprar 0.10 USDJPY a 113.3500 foi modificado -> sl: 113.5000 tp: 0.0000
2005.10.11 18:10:00 '142605': pedido em processo
2005.10.11 18:10:00 '142605': o pedido foi aceito pelo servidor
2005.10.11 18:09:12 '142605': modificar pedido #2135657 comprar 0.10 USDJPY a 113.3500 sl: 113.4000 tp: 0.0000 -> sl: 113.5000 tp: 0.0000
2005.10.11 18:04:18 '142605': ordem #2139090 venda 0.10 EURUSD a 1.2099 foi modificada -> sl: 1.2100 tp: 1.1799
2005.10.11 18:04:18 '142605': pedido em processo
2005.10.11 18:04:18 '142605': o pedido foi aceito pelo servidor
2005.10.11 18:04:18 '142605': modificar pedido #2139090 vender 0.10 EURUSD a 1.2099 sl: 1.2116 tp: 1.1799 -> sl: 1.2100 tp: 1.1799
2005.10.11 18:01:57 '142605': ordem #2137049 vender 0.10 EURUSD a 1.2167 foi modificado -> sl: 1.2229 tp: 0.0000
2005.10.11 18:01:57 '142605': pedido em processo
2005.10.11 18:01:57 '142605': o pedido foi aceito pelo servidor
2005.10.11 18:01:57 '142605': modificar pedido #2137049 vender 0,10 EURUSD a 1,2167 sl: 1,2249 tp: 0,0000 -> sl: 1,2229 tp: 0,0000
2005.10.11 18:01:57 '142605': login (4.00, #281BB516)
2005.10.11 17:04:18 '142605': ordem #2139090 venda 0.10 EURUSD a 1.2099 foi modificada -> sl: 1.2116 tp: 1.1799
2005.10.11 17:04:18 '142605': pedido em processo
2005.10.11 17:04:18 '142605': o pedido foi aceito pelo servidor
2005.10.11 17:04:17 '142605': modificar pedido #2139090 vender 0.10 EURUSD a 1.2099 sl: 1.2125 tp: 1.1799 -> sl: 1.2116 tp: 1.1799
2005.10.11 17:01:50 '142605': ordem #2137049 vender 0.10 EURUSD a 1.2167 foi modificado -> sl: 1.2249 tp: 0.0000
2005.10.11 17:01:50 '142605': pedido em processo
2005.10.11 17:01:50 '142605': o pedido foi aceito pelo servidor
2005.10.11 17:01:50 '142605': modificar pedido #2137049 vender 0,10 EURUSD a 1,2167 sl: 1,2255 tp: 0,0000 -> sl: 1,2249 tp: 0,0000
2005.10.11 17:01:08 '142605': ordem #1986223 vender 0.10 AUDUSD a 0.7629 foi modificado -> sl: 0.7628 tp: 0.7512
2005.10.11 17:01:08 '142605': pedido em processo
2005.10.11 17:01:08 '142605': o pedido foi aceito pelo servidor
2005.10.11 17:01:08 '142605': modificar ordem #1986223 vender 0.10 AUDUSD a 0.7629 sl: 0.7729 tp: 0.7512 -> sl: 0.7628 tp: 0.7512
2005.10.11 17:01:08 '142605': login (4.00, #281BB516)
2005.10.11 16:06:22 '142605': pedido #2140245 comprar 0.10 AUDUSD a 0.7589 sl: 0.7509 tp: 0.0000 fechado ao preço 0.7552
2005.10.11 16:06:22 '142605': pedido em processo
2005.10.11 16:06:22 '142605': o pedido foi aceito pelo servidor
2005.10.11 16:06:22 '142605': fechar pedido #2140245 comprar 0.10 AUDUSD a 0.7589 sl: 0.0000 tp: 0.0000 ao preço 0.7552
2005.10.11 16:06:21 '142605': login (4.00, #281BB516)
2005.10.11 14:33:41 '142605': login (4.00, #281BB516)
2005.10.11 14:29:12 '142605': a conexão falhou [6]
2005.10.11 14:00:20 '142605': ordem #2158310 comprar 0,10 EURUSD a 1,2037 sl: 1,1957 tp: 0,0000 fechado ao preço 1,2033
2005.10.11 14:00:20 '142605': pedido em processo
2005.10.11 14:00:20 '142605': o pedido foi aceito pelo servidor
2005.10.11 14:00:20 '142605': fechar pedido #2158310 comprar 0,10 EURUSD a 1,2037 sl: 0,0000 tp: 0,0000 ao preço 1,2033
2005.10.11 14:00:20 '142605': login (4.00, #281BB516)
2005.10.11 13:10:39 '142605': pedido está aberto : #2161539 venda 0.10 EURAUD a 1.5888 sl: 1.5963 tp: 1.5813
2005.10.11 13:10:39 '142605': pedido em processo
2005.10.11 13:10:39 '142605': o pedido foi aceito pelo servidor
2005.10.11 13:10:39 '142605': venda imediata 0,10 EURAUD a 1,5888 sl: 1,5963 tp: 1,5813
2005.10.11 13:10:39 '142605': login (4.00, #281BB516)
2005.10.11 13:04:29 '142605': ordem pendente nº 2160764 foi eliminada
2005.10.11 13:04:29 '142605': pedido em processo
2005.10.11 13:04:29 '142605': o pedido foi aceito pelo servidor
2005.10.11 13:04:29 '142605': eliminar ordem pendente #2160764 comprar stop 0.10 GBPJPY a 200.6800 sl: 199.1800 tp: 201.6800
2005.10.11 13:04:29 '142605': login (4.00, #281BB516)
2005.10.11 12:11:21 '142605': ordem #2156460 vender 0.10 USDJPY a 114.0700 foi modificada -> sl: 115.9700 tp: 0.0000
2005.10.11 12:11:21 '142605': pedido em processo
2005.10.11 12:11:21 '142605': o pedido foi aceito pelo servidor
2005.10.11 12:11:20 '142605': modificar ordem #2156460 vender 0.10 USDJPY a 114.0700 sl: 116.0700 tp: 0.0000 -> sl: 115.9700 tp: 0.0000
2005.10.11 12:08:06 '142605': ordem #2145173 vender 0.10 GBPJPY a 200.4800 foi modificado -> sl: 200.4300 tp: 0.0000
2005.10.11 12:08:06 '142605': pedido em processo
2005.10.11 12:08:06 '142605': o pedido foi aceito pelo servidor
2005.10.11 12:08:06 '142605': modificar pedido #2145173 vender 0.10 GBPJPY a 200.4800 sl: 200.5400 tp: 0.0000 -> sl: 200.4300 tp: 0.0000
2005.10.11 12:07:35 '142605': ordem #2149217 vender 0.10 EURJPY a 137.8900 foi modificado -> sl: 137.7400 tp: 0.0000
2005.10.11 12:07:35 '142605': pedido em processo
2005.10.11 12:07:35 '142605': o pedido foi aceito pelo servidor
2005.10.11 12:07:35 '142605': modificar ordem #2149217 vender 0.10 EURJPY a 137.8900 sl: 137.8400 tp: 0.0000 -> sl: 137.7400 tp: 0.0000
2005.10.11 12:04:28 '142605': pedido está aberto : #2160764 buy stop 0.10 GBPJPY a 200.6800 sl: 199.1800 tp: 201.6800
2005.10.11 12:04:28 '142605': pedido em processo
2005.10.11 12:04:28 '142605': o pedido foi aceito pelo servidor
2005.10.11 12:04:27 '142605': parada de compra pendente 0,10 GBPJPY a 200,6800 sl: 199,1800 tp: 201,6800
2005.10.11 12:04:27 '142605': pedido está aberto : #2160763 stop de venda 0.10 GBPJPY a 199.1500 sl: 200.6500 tp: 198.1500
2005.10.11 12:04:27 '142605': pedido em processo
2005.10.11 12:04:27 '142605': o pedido foi aceito pelo servidor
2005.10.11 12:04:27 '142605': parada de venda pendente 0.10 GBPJPY a 199.1500 sl: 200.6500 tp: 198.1500
2005.10.11 12:04:27 '142605': login (4.00, #281BB516)
2005.10.11 11:10:09 '142605': pedido está aberto : #2160333 vender 0.10 USDJPY a 114.1400 sl: 114.7300 tp: 112.8700
2005.10.11 11:10:09 '142605': pedido em processo
2005.10.11 11:10:09 '142605': o pedido foi aceito pelo servidor
2005.10.11 11:10:09 '142605': venda imediata 0.10 USDJPY a 114.1400 sl: 114.7290 tp: 112.8690
2005.10.11 11:08:08 '142605': ordem #2145173 vender 0.10 GBPJPY a 200.4800 foi modificado -> sl: 200.5400 tp: 0.0000
2005.10.11 11:08:08 '142605': pedido em processo
2005.10.11 11:08:08 '142605': o pedido foi aceito pelo servidor
2005.10.11 11:08:08 '142605': modificar ordem #2145173 vender 0.10 GBPJPY a 200.4800 sl: 200.6500 tp: 0.0000 -> sl: 200.5400 tp: 0.0000
2005.10.11 11:04:27 '142605': ordem #2139100 vender 0.10 GBPJPY a 200.3700 foi modificada -> sl: 201.5200 tp: 199.3700
2005.10.11 11:04:27 '142605': pedido em processo
2005.10.11 11:04:27 '142605': o pedido foi aceito pelo servidor
2005.10.11 11:04:27 '142605': modificar ordem #2139100 vender 0.10 GBPJPY a 200.3700 sl: 201.6600 tp: 199.3700 -> sl: 201.5200 tp: 199.3700
2005.10.11 11:04:27 '142605': login (4.00, #281BB516)
2005.10.11 10:08:13 '142605': ordem #2145173 vender 0.10 GBPJPY a 200.4800 foi modificado -> sl: 200.6500 tp: 0.0000
2005.10.11 10:08:12 '142605': pedido em processo
2005.10.11 10:08:12 '142605': o pedido foi aceito pelo servidor
2005.10.11 10:08:12 '142605': modificar ordem #2145173 vender 0.10 GBPJPY a 200.4800 sl: 200.8500 tp: 0.0000 -> sl: 200.6500 tp: 0.0000
2005.10.11 10:07:35 '142605': ordem #2149217 vender 0.10 EURJPY a 137.8900 foi modificado -> sl: 137.8400 tp: 0.0000
2005.10.11 10:07:35 '142605': pedido em processo
2005.10.11 10:07:35 '142605': o pedido foi aceito pelo servidor
2005.10.11 10:07:35 '142605': modificar ordem #2149217 vender 0.10 EURJPY a 137.8900 sl: 137.9000 tp: 0.0000 -> sl: 137.8400 tp: 0.0000
2005.10.11 10:05:23 '142605': ordem #2144692 vender 0.10 EURAUD a 1.5968 foi modificado -> sl: 1.6070 tp: 1.5568
2005.10.11 10:05:23 '142605': pedido em processo
2005.10.11 10:05:23 '142605': o pedido foi aceito pelo servidor
2005.10.11 10:05:23 '142605': modificar ordem #2144692 vender 0.10 EURAUD a 1.5968 sl: 1.6084 tp: 1.5568 -> sl: 1.6070 tp: 1.5568
2005.10.11 10:04:27 '142605': ordem #2139100 vender 0.10 GBPJPY a 200.3700 foi modificada -> sl: 201.6600 tp: 199.3700
2005.10.11 10:04:27 '142605': pedido em processo
2005.10.11 10:04:27 '142605': o pedido foi aceito pelo servidor
2005.10.11 10:04:27 '142605': modificar ordem #2139100 vender 0.10 GBPJPY a 200.3700 sl: 201.8700 tp: 199.3700 -> sl: 201.6600 tp: 199.3700
2005.10.11 10:04:27 '142605': login (4.00, #281BB516)
2005.10.11 09:08:05 '142605': pedido #2145173 vender 0.10 GBPJPY a 200.4800 foi modificado -> sl: 200.8500 tp: 0.0000
2005.10.11 09:08:05 '142605': pedido em processo
2005.10.11 09:08:05 '142605': o pedido foi aceito pelo servidor
2005.10.11 09:08:05 '142605': modificar pedido #2145173 vender 0.10 GBPJPY a 200.4800 sl: 200.9300 tp: 0.0000 -> sl: 200.8500 tp: 0.0000
2005.10.11 09:08:05 '142605': login (4.00, #281BB516)
2005.10.11 06:06:03 '142605': pedido #1893465 vender 0.10 GBPJPY a 199.9900 foi modificado -> sl: 202.1100 tp: 197.7300
2005.10.11 06:06:03 '142605': pedido em processo
2005.10.11 06:06:03 '142605': o pedido foi aceito pelo servidor
2005.10.11 06:06:02 '142605': modificar ordem #1893465 vender 0,10 GBPJPY a 199,9900 sl: 202,2500 tp: 197,7300 -> sl: 202,1100 tp: 197,7300
2005.10.11 06:05:48 '142605': ordem #2130122 vender 0.10 USDCAD a 1.1758 foi modificado -> sl: 1.1941 tp: 1.1658
2005.10.11 06:05:48 '142605': pedido em processo
2005.10.11 06:05:48 '142605': o pedido foi aceito pelo servidor
2005.10.11 06:05:48 '142605': modificar ordem #2130122 vender 0.10 USDCAD a 1.1758 sl: 1.1948 tp: 1.1658 -> sl: 1.1941 tp: 1.1658
2005.10.11 06:03:56 '142605': ordem #2137062 vender 0.10 EURAUD a 1.5985 foi modificado -> sl: 1.6116 tp: 0.0000
2005.10.11 06:03:56 '142605': pedido em processo
2005.10.11 06:03:56 '142605': o pedido foi aceito pelo servidor
2005.10.11 06:03:56 '142605': modificar pedido #2137062 vender 0.10 EURAUD a 1.5985 sl: 1.6125 tp: 0.0000 -> sl: 1.6116 tp: 0.0000
2005.10.11 06:00:03 '142605': pedido está aberto : #2158310 comprar 0.10 EURUSD a 1.2037 sl: 1.1957 tp: 0.0000
2005.10.11 06:00:03 '142605': pedido em processo
2005.10.11 06:00:03 '142605': o pedido foi aceito pelo servidor
2005.10.11 06:00:02 '142605': compra imediata 0.10 EURUSD a 1.2037 sl: 1.1957 tp: 0.0000
2005.10.11 06:00:02 '142605': login (4.00, #281BB516)
2005.10.11 05:07:48 '142605': ordem #2149217 vender 0.10 EURJPY a 137.8900 foi modificado -> sl: 137.9000 tp: 0.0000
2005.10.11 05:07:48 '142605': pedido em processo
2005.10.11 05:07:48 '142605': o pedido foi aceito pelo servidor
2005.10.11 05:07:48 '142605': modificar ordem #2149217 vender 0.10 EURJPY a 137.8900 sl: 138.1700 tp: 0.0000 -> sl: 137.9000 tp: 0.0000
2005.10.11 05:05:22 '142605': ordem #2144692 vender 0.10 EURAUD a 1.5968 foi modificado -> sl: 1.6084 tp: 1.5568
2005.10.11 05:05:22 '142605': pedido em processo
2005.10.11 05:05:22 '142605': o pedido foi aceito pelo servidor
2005.10.11 05:05:22 '142605': modificar ordem #2144692 vender 0.10 EURAUD a 1.5968 sl: 1.6097 tp: 1.5568 -> sl: 1.6084 tp: 1.5568
2005.10.11 05:03:52 '142605': ordem #2139090 venda 0.10 EURUSD a 1.2099 foi modificada -> sl: 1.2125 tp: 1.1799
2005.10.11 05:03:52 '142605': pedido em processo
2005.10.11 05:03:52 '142605': o pedido foi aceito pelo servidor
2005.10.11 05:03:52 '142605': modificar pedido #2139090 vender 0.10 EURUSD a 1.2099 sl: 1.2151 tp: 1.1799 -> sl: 1.2125 tp: 1.1799
2005.10.11 05:01:55 '142605': ordem #2137049 vender 0.10 EURUSD a 1.2167 foi modificado -> sl: 1.2255 tp: 0.0000
2005.10.11 05:01:55 '142605': pedido em processo
2005.10.11 05:01:55 '142605': o pedido foi aceito pelo servidor
2005.10.11 05:01:54 '142605': modificar pedido #2137049 vender 0.10 EURUSD a 1.2167 sl: 1.2286 tp: 0.0000 -> sl: 1.2255 tp: 0.0000
2005.10.11 05:01:54 '142605': login (4.00, #281BB516)
2005.10.11 05:00:21 TradeContext: ping falhou
2005.10.11 05:00:21 '142605': ordem #2156417 vender 0.10 EURUSD a 1.2064 sl: 1.2114 tp: 0.0000 fechado ao preço 1.2032
2005.10.11 05:00:21 '142605': pedido em processo
2005.10.11 05:00:21 '142605': o pedido foi aceito pelo servidor
2005.10.11 05:00:07 '142605': fechar pedido #2156417 vender 0.10 EURUSD a 1.2064 sl: 0.0000 tp: 0.0000 ao preço 1.2032
2005.10.11 05:00:07 '142605': login (4.00, #281BB516)
2005.10.11 04:07:47 '142605': ordem #2149217 vender 0.10 EURJPY a 137.8900 foi modificada -> sl: 138.1700 tp: 0.0000
2005.10.11 04:07:47 '142605': pedido em processo
2005.10.11 04:07:47 '142605': o pedido foi aceito pelo servidor
2005.10.11 04:07:47 '142605': modificar ordem #2149217 vender 0.10 EURJPY a 137.8900 sl: 138.2800 tp: 0.0000 -> sl: 138.1700 tp: 0.0000
2005.10.11 04:07:47 '142605': login (4.00, #281BB516)
2005.10.11 01:11:25 '142605': pedido está aberto : #2156460 vender 0.10 USDJPY a 114.0700 sl: 116.0700 tp: 0.0000
2005.10.11 01:11:25 '142605': pedido em processo
2005.10.11 01:11:25 '142605': o pedido foi aceito pelo servidor
2005.10.11 01:11:25 '142605': venda imediata 0.10 USDJPY a 114.0700 sl: 116.0700 tp: 0.0000
2005.10.11 01:11:25 '142605': login (4.00, #281BB516)
2005.10.11 01:00:45 '142605': pedido está aberto : #2156417 venda 0.10 EURUSD a 1.2064 sl: 1.2114 tp: 0.0000
2005.10.11 01:00:45 '142605': pedido em processo
2005.10.11 01:00:45 '142605': o pedido foi aceito pelo servidor
2005.10.11 01:00:45 '142605': venda imediata 0.10 EURUSD a 1.2064 sl: 1.2114 tp: 0.0000
2005.10.11 01:00:44 '142605': login (4.00, #281BB516)
2005.10.10 23:14:38 Indicador personalizado _Zigzag_2_Ind USDCAD,H1: carregado com sucesso
2005.10.10 23:14:38 Indicador personalizado _Zigzag_2_Ind USDCAD,H1: carregado com sucesso
2005.10.10 23:13:21 '142605': pedido #2144293 comprar 0.10 USDJPY a 113.7400 foi modificado -> sl: 113.2900 tp: 0.0000
2005.10.10 23:13:21 '142605': pedido em processo
2005.10.10 23:13:21 '142605': o pedido foi aceito pelo servidor
2005.10 10 23:13:19 '142605': modificar pedido #2144293 comprar 0.10 USDJPY a 113.7400 sl: 113.0200 tp: 0.0000 -> sl: 113.2900 tp: 0.0000
2005.10.10 23:13:16 Indicador personalizado _Forex_Nn_Ind EURUSD,H1: carregado com sucesso
2005.10.10 23:12:53 Indicador personalizado _Zigzag_2_Ind EURAUD,H1: carregado com sucesso
2005.10.10 23:12:42 Indicador personalizado _Zigzag_2_Ind USDJPY,H1: carregado com sucesso
2005.10.10 23:12:06 Indicador personalizado _Zigzag_2_Ind GBPUSD,H1: carregado com sucesso
2005.10.10 23:11:56 Indicador personalizado _Zigzag_2_Ind EURUSD,H1: carregado com sucesso
2005.10.10 23:11:23 Indicador personalizado _Noc_Ind USDJPY,H1: carregado com sucesso
2005.10.10 23:11:13 Indicador personalizado _Noc_Ind GBPUSD,H1: carregado com sucesso
2005.10.10 23:11:01 Indicador personalizado _Noc_Ind GBPCHF,H1: carregado com sucesso
2005.10.10 23:10:43 Indicador personalizado _Noc_Ind USDCHF,H1: carregado com sucesso
2005.10.10 23:10:32 Indicador personalizado _Noc_Ind EURGBP,H1: carregado com sucesso
2005.10.10 23:10:27 Indicador personalizado _Noc_Ind EURUSD,H1: carregado com sucesso
2005.10.10 23:09:02 '142605': pedido #2135657 comprar 0.10 USDJPY a 113.3500 foi modificado -> sl: 113.4000 tp: 0.0000
2005.10.10 23:09:02 '142605': pedido em processo
2005.10.10 23:09:02 '142605': o pedido foi aceito pelo servidor
2005.10 10 23:09:02 '142605': modificar pedido #2135657 comprar 0.10 USDJPY a 113.3500 sl: 113.0900 tp: 0.0000 -> sl: 113.4000 tp: 0.0000
2005.10.10 23:08:27 Indicador personalizado _Zigzag_2_Ind USDCHF,H1: carregado com sucesso
2005.10.10 23:08:26 Indicador personalizado _Zigzag_2_Ind EURUSD,H1: carregado com sucesso
2005.10.10 23:07:38 Indicador personalizado _Zigzag_2_Ind USDCAD,H1: carregado com sucesso

Log 2.
Tentativa de fechar posição longa, bilhete: 2130092
11.10.2005 17:6:22
Encomende com este bilhete ainda presente, tentando novamente
11.10.2005 17:7:37
Encomende com este bilhete ainda presente, tentando novamente
11.10.2005 17:8:13
Encomende com este bilhete ainda presente, tentando novamente
11.10.2005 17:9:12
Encomende com este bilhete ainda presente, tentando novamente
11.10.2005 17:10:23
Encomende com este bilhete ainda presente, tentando novamente
11.10.2005 17:11:31
Encomende com este bilhete ainda presente, tentando novamente
11.10.2005 17:12:12
Encomende com este bilhete ainda presente, tentando novamente
11.10.2005 17:13:11
Encomende com este bilhete ainda presente, tentando novamente
11.10.2005 17:14:10
Encomende com este bilhete ainda presente, tentando novamente
11.10.2005 17:15:5
Não mais pedidos com este bilhete Não

Também recebi o erro número 2 quando tentei apagar uma ordem pendente.
 
Repito: o erro número 6 indica que você não conseguiu se conectar ao servidor. reitero que as aspas chegam através de uma conexão completamente separada no modo pumppin. e a presença (capacidade de sobrevivência) desta conexão não afeta o estabelecimento de uma nova conexão, comercial. o servidor pode facilmente recusar uma nova conexão sob carga pesada. <br/ translate="no"> a propósito, qual é o número do "novo" 183 construído? Deve ser a partir de 7 de outubro.


Temos, portanto, duas opções. Primeiro - fazemos uma EA que teima em fechar a posição até que ela feche. A segunda é que o sistema o manipula. Acredito que a segunda abordagem é a correta.

Os erros ocorrem devido a pings ou algo mais. Mas. 1) não deve haver situações em que o terminal se comporte como se a posição tivesse sido aberta (fechada), quando na verdade falhou. 2) os códigos de erro nem sempre são inteligíveis. 3) Os erros não devem estar presentes quando há problemas de comunicação.

Deixe-me explicar o último ponto. Digamos que estou solicitando a abertura de uma vaga. Quais os intervalos de tempo?! Enquanto o preço estiver dentro do deslize especificado, o terminal deve tentar abrir uma posição.
Não estou nem mesmo falando em fechar uma posição. Se houver uma instrução para "fechar" uma posição, ela deve ser fechada, mesmo que leve uma hora.
 
Ну и что же теперь делать?
На "тройке" таких проблем не было.
Сейчас же через раз!!!!
Где решение?
Советниками торговать нельзя!!!

para começar, não tire conclusões precipitadas.
no trio havia muito mais problemas diferentes - não mais do que um comércio por execução da EA, comércio assíncrono, inacessibilidade do histórico comercial (mais sobre isso?). agora somos forçados a administrar os fluxos comerciais muito mais finamente.
Se você ler este tópico desde o início você verá várias soluções - use semáforos, verifique a possibilidade de negociar, faça várias tentativas de negociar quando falhar.
Você pode negociar com EAs!!!


Mais uma vez, repito a sugestão: viver juntos, e trabalhar juntos para que os EAs funcionem sem erros.
 
Sugestão para os desenvolvedores. Há uma coisa simples e terrivelmente útil que facilita encontrar problemas nos troncos - o >>>> <<<<. Compare:

2005.10.11 20:19:48 Old tick GBPUSD60 1.7478/1.7482
2005.10.11 20:09:47 Old tick GBPJPY60 199.7100/199.7900
2005.10.11 20:05:51 '142605': ordem #2155774 comprar 0.10 USDJPY a 114.3900 foi modificado -> sl: 113.6600 tp: 115.3900
2005.10.11 20:05:51 '142605': pedido em processo
2005.10.11 20:05:51 '142605': o pedido foi aceito pelo servidor
2005.10.11 20:05:51 '142605': modificar pedido #2155774 comprar 0.10 USDJPY a 114.3900 sl: 113.4900 tp: 115.3900 -> sl: 113.6600 tp: 115.3900

и

2005.10.11 20:19:48 >>>Velho tique<<< GBPUSD60 1.7478/1.7482
2005.10.11 20:09:47 >>>PTick antigo<< GBPJPY60 199.7100/199.7900
2005.10.11 20:05:51 '142605': ordem #2155774 comprar 0.10 USDJPY a 114.3900 foi modificado -> sl: 113.6600 tp: 115.3900
2005.10.11 20:05:51 '142605': pedido em processo
2005.10.11 20:05:51 '142605': o pedido foi aceito pelo servidor
2005.10.11 20:05:51 '142605': modificar pedido #2155774 comprar 0.10 USDJPY a 114.3900 sl: 113.4900 tp: 115.3900 -> sl: 113.6600 tp: 115.3900

As linhas problemáticas tornam-se mais visíveis aos olhos. Devemos fazer em MT?
 
A partir das 12 horas da noite passada, especialistas estavam trabalhando em MQ-demo e Alpari-demo. Durante todo o tempo também não houve erro 128, na Alpari houve um erro 6 (ping error), e em ambos - vários tiquetaques antigos. As encomendas funcionaram sem erros. Construir 1.8.3 de 05.10. Talvez seja algo mais? Por exemplo, peculiaridades de conexão através da porta 443 em diferentes provedores de Internet? O MT3 tinha erros, mas não tantos.
 

Советниками торговать нельзя!!!

para começar não tire conclusões precipitadas.
havia muito mais problemas no trio - não mais que uma negociação de cada vez, negociações assíncronas, nenhum histórico comercial disponível (continue?). agora temos que gerenciar os fluxos comerciais muito mais finamente.
se você ler este tópico desde o início você pode ver várias soluções - use semáforos, verifique a possibilidade de negociação, faça várias tentativas comerciais quando falhar.
conselheiro


Não é permitida a comercialização de Conselheiros Especialistas.
E esta conclusão não é apressada. Há mais de um mês você vem formando isso.
Oferecer aos usuários várias soluções para "administrar os fluxos comerciais de forma mais fina", que o motor do comércio não consegue administrar por si só, é ridículo. Além disso, estas soluções são questionáveis.

1.
usar semáforos

Semáforos sobre variáveis globais não podem ser inicializados na implementação atual.

2.
verificar a possibilidade de negociação

Não existe tal funcionalidade. Há alguma funcionalidade combinada, que nem sempre funciona.

3.
fazer múltiplas tentativas comerciais se não forem bem sucedidas

Quantos são poucos?

4.
suspeitamos de configurações interessantes do servidor.

A construção de agosto foi comercializada, está sendo comercializada e aparentemente continuará a comercializar com as mesmas configurações.

5.
nada de significativo mudou no módulo Expert Advisor desde a construção do mês de agosto.

Então provavelmente é apenas magia. Ou mais provavelmente o mesmo problema que o das variáveis globais - condições raciais no módulo de comunicação.

6.
este problema ocorre muito raramente, mas acontece. assim que você começa a afinar os passos, ele desaparece imediatamente. é por isso que estamos estudando todos os logs enviados para nós

Portanto, suas condições de teste são diferentes das condições do terminal para a maioria dos usuários. Quem precisa de tais testes? Sobre "depuração por etapas", em geral, como se diz, "não faça rir meus chinelos".

O que é impressionante é o fato de que a causa ainda não foi encontrada e, em vez disso, estamos lutando contra as conseqüências com base nos registros dos usuários, aparecem alguns intervalos de tempo, vorkarounds como semáforos e assim por diante.
O tempo do problema é muito bem determinado, apenas alguns dias. É realmente impossível encontrar algo nos registros CVS (ou o que quer que você use (se você o usar, é claro)) que possa ter um impacto tão negativo nos fluxos comerciais?

Infelizmente, o que está acontecendo não parece muito profissional. :(
 
Quark, tenha alguma consciência, não poste tais logs no fórum =)))))

Quanto à realidade do fechamento/abertura - tenho verificações em todas as f-funções e os erros aparecem, mas são erros FALSOS. Verifiquei os registros e o histórico de pedidos, todas as posições foram fechadas. A ordem simplesmente não teve tempo de mudar na história. Eu fiz um atraso de 1 segundo antes de verificar - mas isso não é suficiente... Quando eu perguntei, eles não me responderam.
 
Há alguns pontos que eu gostaria de salientar:

1. Em meus EAs, sempre usei o mecanismo de inversão de ordens em caso de falha - é uma dádiva de Deus. Enquanto houver o MEU sinal comercial para qualquer comércio, a EA irá repetir até uma execução bem sucedida!!! Mas esta é uma situação diferente, muitas vezes o consultor não pode fechar/abrir um pedido por uma hora ou duas ou três sem reiniciar a MT. Às vezes o sinal comercial já desapareceu e a posição ainda está pendurada. Claro, isto está fora de questão para um verdadeiro robô comercial. É claro, você pode tentar escrever um roteiro que faça a MT reiniciar, com um certo número de falhas. Tenho alguns similares para o MT3, mas por experiência pessoal não é FELICITÁVEL. Porque isso acontece, então no início a MT fica pendurada, depois algo mais, etc...

2. Disse que talvez algo dependa do fornecedor .... Eu não acredito realmente nisso, mas quero mencionar que testei o mesmo terminal com o mesmo Expert Advisor através de 2 fornecedores diferentes. Um fornecedor tem erros com menos freqüência, o outro com mais freqüência. E os pings para troca de servidores em ambos os casos são instantâneos e tudo isso. Ambos os canais da Internet são muito bons e confiáveis.