Error número 6 - página 27

 
 
Te refieres a<br / translate="no">"IsConnected - recoger las estadísticas de conexión del terminal al servidor ;)"
¿O hay una versión más reciente?

estamos hablando del EA presentado en este hilo. para no haceros correr por él os presentaré mi propia copia con la que he estado trabajando.
//+------------------------------------------------------------------+
//|                                                    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);
}


//+------------------------------------------------------------------+
 
Otro registro. Dos troncos para ser exactos. Una es del registro, la segunda (debajo de la primera) es de mi sistema de reporte de errores, que he descrito en los posts de este hilo.

Registro 1.
2005.10.11 20:19:48 Tic antiguo GBPUSD60 1.7478/1.7482
2005.10.11 20:09:47 Tic antiguo GBPJPY60 199.7100/199.7900
2005.10.11 20:05:51 '142605': la orden #2155774 comprar 0.10 USDJPY a 114.3900 ha sido modificada -> sl: 113.6600 tp: 115.3900
2005.10.11 20:05:51 '142605': solicitud en proceso
2005.10.11 20:05:51 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 20:05:51 '142605': modificar la orden #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': la orden pendiente #2155773 ha sido eliminada
2005.10.11 20:05:50 '142605': solicitud en proceso
2005.10.11 20:05:50 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 20:04:59 '142605': borrar orden pendiente #2155773 vender stop 0.10 USDJPY a 113.6900 sl: 114.5900 tp: 112.6900
2005.10.11 20:04:56 '142605': la orden está abierta : #2165270 comprar stop 0.10 EURJPY a 137.6500 sl: 135.6500 tp: 138.6500
2005.10.11 20:04:55 '142605': solicitud en proceso
2005.10.11 20:04:55 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 20:04:55 '142605': orden pendiente de compra stop 0.10 EURJPY a 137.6500 sl: 135.6500 tp: 138.6500
2005.10.11 20:04:55 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 20:04:54 TradeContext: error de ping
2005.10.11 20:04:14:14 '142605': orden pendiente de venta stop 0.10 EURJPY a 136.8800 sl: 138.8800 tp: 135.8800
2005.10.11 20:04:14 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:17:55 TradeContext: ping fallado
2005.10.11 19:16:49 TradeContext: '142605' no puede acceder a: MetaQuotes-demo
2005.10.11 19:16:16 TradeContext: error en el envío de la transacción
2005.10.11 19:16:16 '142605': borrar orden pendiente #2155773 vender stop 0.10 USDJPY a 113.6900 sl: 114.5900 tp: 112.6900
2005.10.11 19:15:55 '142605': orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 1.1973 tp: 0.0000 cerrado al precio 1.2011
2005.10.11 19:15:55 '142605': solicitud en proceso
2005.10.11 19:15:55 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 19:15:15 '142605': cerrar la orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 0.0000 tp: 0.0000 al precio 1.2011
2005.10.11 19:15:15 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:15:05 TradeContext: ping fallado
2005.10.11 19:15:05 TradeContext: error de ping
2005.10.11 19:14:25 '142605': cerrar la orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 0.0000 tp: 0.0000 al precio 1.2008
2005.10.11 19:14:25 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:14:14 TradeContext: ping fallado
2005.10.11 19:14:14:14 TradeContext: error de ping
2005.10.11 19:13:34 '142605': cerrar la orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 0.0000 tp: 0.0000 al precio 1.2005
2005.10.11 19:13:34 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:13:23 TradeContext: ping fallado
2005.10.11 19:13:23 TradeContext: error de ping
2005.10.11 19:12:23 '142605': cerrar la orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 0.0000 tp: 0.0000 al precio 1.2005
2005.10.11 19:12:23 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:12:13 TradeContext: ping fallado
2005.10.11 19:12:12 TradeContext: error de ping
2005.10.11 19:11:32 '142605': cerrar la orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 0.0000 tp: 0.0000 al precio 1.2004
2005.10.11 19:11:32 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:11:22 TradeContext: ping fallado
2005.10.11 19:11:22 TradeContext: error de ping
2005.10.11 19:10:21 '142605': cerrar la orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 0.0000 tp: 0.0000 al precio 1.2004
2005.10.11 19:10:21 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:10:10 TradeContext: ping fallado
2005.10.11 19:10:10 TradeContext: error de ping
2005.10.11 19:09:30 '142605': cerrar la orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 0.0000 tp: 0.0000 al precio 1.2006
2005.10.11 19:09:30 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:09:19 TradeContext: ping fallado
2005.10.11 19:09:19 TradeContext: error de ping
2005.10.11 19:08:19 '142605': cerrar la orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 0.0000 tp: 0.0000 al precio 1.2003
2005.10.11 19:08:19 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:08:06 TradeContext: ping fallado
2005.10.11 19:08:05:05 TradeContext: '142605' no puede acceder a: MetaQuotes-demo
2005.10.11 19:07:23 TradeContext: ping fallado
2005.10.11 19:07:23 TradeContext: error de ping
2005.10.11 19:06:22 '142605': cerrar la orden #2130092 comprar 0.10 EURUSD a 1.2140 sl: 0.0000 tp: 0.0000 al precio 1.1999
2005.10.11 19:06:22 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:06:19 TradeContext: ping fallado
2005.10.11 19:06:19 TradeContext: error de ping
2005.10.11 19:05:19 '142605': orden pendiente de compra stop 0.10 EURJPY a 137.7600 sl: 135.7600 tp: 138.7600
2005.10.11 19:05:19 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 19:05:18 TradeContext: error de ping
2005.10.11 19:04:18 '142605': orden pendiente de venta stop 0.10 EURJPY a 136.8800 sl: 138.8800 tp: 135.8800
2005.10.11 19:04:17 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 18:13:59 '142605': la orden #2144293 comprar 0.10 USDJPY a 113.7400 fue modificada -> sl: 113.3800 tp: 0.0000
2005.10.11 18:13:59 '142605': solicitud en proceso
2005.10.11 18:13:59 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 18:13:23 '142605': modificar la orden #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': la orden #2135657 comprar 0.10 USDJPY a 113.3500 fue modificada -> sl: 113.5000 tp: 0.0000
2005.10.11 18:10:00 '142605': solicitud en proceso
2005.10.11 18:10:00 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 18:09:12 '142605': modificar la orden #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': la orden #2139090 vender 0.10 EURUSD a 1.2099 fue modificada -> sl: 1.2100 tp: 1.1799
2005.10.11 18:04:18 '142605': solicitud en proceso
2005.10.11 18:04:18 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 18:04:18 '142605': modificar la orden #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': la orden #2137049 vender 0.10 EURUSD a 1.2167 fue modificada -> sl: 1.2229 tp: 0.0000
2005.10.11 18:01:57 '142605': solicitud en proceso
2005.10.11 18:01:57 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 18:01:57 '142605': modificar la orden #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': inicio de sesión (4.00, #281BB516)
2005.10.11 17:04:18 '142605': la orden #2139090 vender 0.10 EURUSD a 1.2099 fue modificada -> sl: 1.2116 tp: 1.1799
2005.10.11 17:04:18 '142605': solicitud en proceso
2005.10.11 17:04:18 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 17:04:17 '142605': modificar la orden #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': la orden #2137049 vender 0.10 EURUSD a 1.2167 fue modificada -> sl: 1.2249 tp: 0.0000
2005.10.11 17:01:50 '142605': solicitud en proceso
2005.10.11 17:01:50 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 17:01:50 '142605': modificar la orden #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': la orden #1986223 vender 0.10 AUDUSD a 0.7629 fue modificada -> sl: 0.7628 tp: 0.7512
2005.10.11 17:01:08 '142605': solicitud en proceso
2005.10.11 17:01:08 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 17:01:08 '142605': modificar orden #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': inicio de sesión (4.00, #281BB516)
2005.10.11 16:06:22 '142605': orden #2140245 comprar 0.10 AUDUSD a 0.7589 sl: 0.7509 tp: 0.0000 cerrada al precio 0.7552
2005.10.11 16:06:22 '142605': solicitud en proceso
2005.10.11 16:06:22 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 16:06:22 '142605': cerrar la orden #2140245 comprar 0.10 AUDUSD a 0.7589 sl: 0.0000 tp: 0.0000 al precio 0.7552
2005.10.11 16:06:21 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 14:33:41 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 14:29:12 '142605': conexión fallida [6]
2005.10.11 14:00:20 '142605': orden #2158310 comprar 0.10 EURUSD a 1.2037 sl: 1.1957 tp: 0.0000 cerrado al precio 1.2033
2005.10.11 14:00:20 '142605': solicitud en proceso
2005.10.11 14:00:20 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 14:00:20 '142605': cerrar la orden #2158310 comprar 0.10 EURUSD a 1.2037 sl: 0.0000 tp: 0.0000 al precio 1.2033
2005.10.11 14:00:20 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 13:10:39 '142605': orden abierta : #2161539 vender 0.10 EURAUD a 1.5888 sl: 1.5963 tp: 1.5813
2005.10.11 13:10:39 '142605': solicitud en proceso
2005.10.11 13:10:39 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 13:10:39 '142605': orden instantánea de venta de 0,10 EURAUD a 1,5888 sl: 1,5963 tp: 1,5813
2005.10.11 13:10:39 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 13:04:29 '142605': la orden pendiente #2160764 ha sido eliminada
2005.10.11 13:04:29 '142605': solicitud en proceso
2005.10.11 13:04:29 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 13:04:29 '142605': borrar orden pendiente #2160764 comprar stop 0.10 GBPJPY a 200.6800 sl: 199.1800 tp: 201.6800
2005.10.11 13:04:29 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 12:11:21 '142605': la orden #2156460 vender 0.10 USDJPY a 114.0700 fue modificada -> sl: 115.9700 tp: 0.0000
2005.10.11 12:11:21 '142605': solicitud en proceso
2005.10.11 12:11:21 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 12:11:20 '142605': modificar la orden #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': la orden #2145173 vender 0.10 GBPJPY a 200.4800 fue modificada -> sl: 200.4300 tp: 0.0000
2005.10.11 12:08:06 '142605': solicitud en proceso
2005.10.11 12:08:06 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 12:08:06 '142605': modificar la orden #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': la orden #2149217 vender 0.10 EURJPY a 137.8900 fue modificada -> sl: 137.7400 tp: 0.0000
2005.10.11 12:07:35 '142605': solicitud en proceso
2005.10.11 12:07:35 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 12:07:35 '142605': modificar la orden #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': la orden está abierta : #2160764 comprar stop 0.10 GBPJPY a 200.6800 sl: 199.1800 tp: 201.6800
2005.10.11 12:04:28 '142605': solicitud en proceso
2005.10.11 12:04:28 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 12:04:27 '142605': orden pendiente de compra stop 0.10 GBPJPY a 200.6800 sl: 199.1800 tp: 201.6800
2005.10.11 12:04:27 '142605': la orden está abierta : #2160763 vender stop 0.10 GBPJPY a 199.1500 sl: 200.6500 tp: 198.1500
2005.10.11 12:04:27 '142605': solicitud en proceso
2005.10.11 12:04:27 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 12:04:27 '142605': orden pendiente de venta stop 0.10 GBPJPY a 199.1500 sl: 200.6500 tp: 198.1500
2005.10.11 12:04:27 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 11:10:09 '142605': orden abierta : #2160333 vender 0.10 USDJPY a 114.1400 sl: 114.7300 tp: 112.8700
2005.10.11 11:10:09 '142605': solicitud en proceso
2005.10.11 11:10:09 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 11:10:09 '142605': orden instantánea de venta de 0,10 USDJPY a 114,1400 sl: 114,7290 tp: 112,8690
2005.10.11 11:08:08 '142605': la orden #2145173 vender 0.10 GBPJPY a 200.4800 fue modificada -> sl: 200.5400 tp: 0.0000
2005.10.11 11:08:08 '142605': solicitud en proceso
2005.10.11 11:08:08 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 11:08:08 '142605': modificar la orden #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': la orden #2139100 vender 0.10 GBPJPY a 200.3700 fue modificada -> sl: 201.5200 tp: 199.3700
2005.10.11 11:04:27 '142605': solicitud en proceso
2005.10.11 11:04:27 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 11:04:27 '142605': modificar la orden #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': inicio de sesión (4.00, #281BB516)
2005.10.11 10:08:13 '142605': la orden #2145173 vender 0.10 GBPJPY a 200.4800 fue modificada -> sl: 200.6500 tp: 0.0000
2005.10.11 10:08:12 '142605': solicitud en proceso
2005.10.11 10:08:12 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 10:08:12 '142605': modificar la orden #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': la orden #2149217 vender 0.10 EURJPY a 137.8900 fue modificada -> sl: 137.8400 tp: 0.0000
2005.10.11 10:07:35 '142605': solicitud en proceso
2005.10.11 10:07:35 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 10:07:35 '142605': modificar la orden #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': la orden #2144692 vender 0.10 EURAUD a 1.5968 fue modificada -> sl: 1.6070 tp: 1.5568
2005.10.11 10:05:23 '142605': solicitud en proceso
2005.10.11 10:05:23 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 10:05:23 '142605': modificar la orden #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': la orden #2139100 vender 0.10 GBPJPY a 200.3700 fue modificada -> sl: 201.6600 tp: 199.3700
2005.10.11 10:04:27 '142605': solicitud en proceso
2005.10.11 10:04:27 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 10:04:27 '142605': modificar la orden #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': inicio de sesión (4.00, #281BB516)
2005.10.11 09:08:05 '142605': la orden #2145173 vender 0.10 GBPJPY a 200.4800 fue modificada -> sl: 200.8500 tp: 0.0000
2005.10.11 09:08:05 '142605': solicitud en proceso
2005.10.11 09:08:05 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 09:08:05 '142605': modificar la orden #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': inicio de sesión (4.00, #281BB516)
2005.10.11 06:06:03 '142605': la orden #1893465 vender 0.10 GBPJPY a 199.9900 fue modificada -> sl: 202.1100 tp: 197.7300
2005.10.11 06:06:03 '142605': solicitud en proceso
2005.10.11 06:06:03 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 06:06:02 '142605': modificar la orden #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': la orden #2130122 vender 0.10 USDCAD a 1.1758 fue modificada -> sl: 1.1941 tp: 1.1658
2005.10.11 06:05:48 '142605': solicitud en proceso
2005.10.11 06:05:48 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 06:05:48 '142605': modificar la orden #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': la orden #2137062 vender 0.10 EURAUD a 1.5985 fue modificada -> sl: 1.6116 tp: 0.0000
2005.10.11 06:03:56 '142605': solicitud en proceso
2005.10.11 06:03:56 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 06:03:56 '142605': modificar la orden #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': la orden está abierta : #2158310 comprar 0.10 EURUSD a 1.2037 sl: 1.1957 tp: 0.0000
2005.10.11 06:00:03 '142605': solicitud en proceso
2005.10.11 06:00:03 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 06:00:02 '142605': orden instantánea de compra de 0,10 EURUSD a 1,2037 sl: 1,1957 tp: 0,0000
2005.10.11 06:00:02 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 05:07:48 '142605': la orden #2149217 vender 0.10 EURJPY a 137.8900 fue modificada -> sl: 137.9000 tp: 0.0000
2005.10.11 05:07:48 '142605': solicitud en proceso
2005.10.11 05:07:48 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 05:07:48 '142605': modificar la orden #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': la orden #2144692 vender 0.10 EURAUD a 1.5968 fue modificada -> sl: 1.6084 tp: 1.5568
2005.10.11 05:05:22 '142605': solicitud en proceso
2005.10.11 05:05:22 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 05:05:22 '142605': modificar la orden #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': la orden #2139090 vender 0.10 EURUSD a 1.2099 fue modificada -> sl: 1.2125 tp: 1.1799
2005.10.11 05:03:52 '142605': solicitud en proceso
2005.10.11 05:03:52 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 05:03:52 '142605': modificar la orden #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': la orden #2137049 vender 0.10 EURUSD a 1.2167 fue modificada -> sl: 1.2255 tp: 0.0000
2005.10.11 05:01:55 '142605': solicitud en proceso
2005.10.11 05:01:55 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 05:01:54 '142605': modificar la orden #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': inicio de sesión (4.00, #281BB516)
2005.10.11 05:00:21 TradeContext: ping fallado
2005.10.11 05:00:21 '142605': orden #2156417 vender 0.10 EURUSD a 1.2064 sl: 1.2114 tp: 0.0000 cerrado al precio 1.2032
2005.10.11 05:00:21 '142605': solicitud en proceso
2005.10.11 05:00:21 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 05:00:07 '142605': cerrar la orden #2156417 vender 0.10 EURUSD a 1.2064 sl: 0.0000 tp: 0.0000 al precio 1.2032
2005.10.11 05:00:07 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 04:07:47 '142605': la orden #2149217 vender 0.10 EURJPY a 137.8900 fue modificada -> sl: 138.1700 tp: 0.0000
2005.10.11 04:07:47 '142605': solicitud en proceso
2005.10.11 04:07:47 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 04:07:47 '142605': modificar la orden #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': inicio de sesión (4.00, #281BB516)
2005.10.11 01:11:25 '142605': la orden está abierta : #2156460 vender 0.10 USDJPY a 114.0700 sl: 116.0700 tp: 0.0000
2005.10.11 01:11:25 '142605': solicitud en proceso
2005.10.11 01:11:25 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 01:11:25 '142605': orden instantánea de venta de 0,10 USDJPY a 114,0700 sl: 116,0700 tp: 0,0000
2005.10.11 01:11:25 '142605': inicio de sesión (4.00, #281BB516)
2005.10.11 01:00:45 '142605': la orden está abierta : #2156417 vender 0.10 EURUSD a 1.2064 sl: 1.2114 tp: 0.0000
2005.10.11 01:00:45 '142605': solicitud en proceso
2005.10.11 01:00:45 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 01:00:45 '142605': orden instantánea de venta de 0,10 EURUSD a 1,2064 sl: 1,2114 tp: 0,0000
2005.10.11 01:00:44 '142605': inicio de sesión (4.00, #281BB516)
2005.10.10 23:14:38 Indicador personalizado _Zigzag_2_Ind USDCAD,H1: cargado con éxito
2005.10.10 23:14:38 Indicador personalizado _Zigzag_2_Ind USDCAD,H1: cargado con éxito
2005.10.10 23:13:21 '142605': la orden #2144293 comprar 0.10 USDJPY a 113.7400 fue modificada -> sl: 113.2900 tp: 0.0000
2005.10.10 23:13:21 '142605': solicitud en proceso
2005.10.10 23:13:21 '142605': la solicitud ha sido aceptada por el servidor
2005.10 10 23:13:19 '142605': modificar la orden #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: cargado con éxito
2005.10.10 23:12:53 Indicador personalizado _Zigzag_2_Ind EURAUD,H1: cargado con éxito
2005.10.10 23:12:42 Indicador personalizado _Zigzag_2_Ind USDJPY,H1: cargado con éxito
2005.10.10 23:12:06 Indicador personalizado _Zigzag_2_Ind GBPUSD,H1: cargado con éxito
2005.10.10 23:11:56 Indicador personalizado _Zigzag_2_Ind EURUSD,H1: cargado con éxito
2005.10.10 23:11:23 Indicador personalizado _Noc_Ind USDJPY,H1: cargado con éxito
2005.10.10 23:11:13 Indicador personalizado _Noc_Ind GBPUSD,H1: cargado con éxito
2005.10.10 23:11:01 Indicador personalizado _Noc_Ind GBPCHF,H1: cargado con éxito
2005.10.10 23:10:43 Indicador personalizado _Noc_Ind USDCHF,H1: cargado con éxito
2005.10.10 23:10:32 Indicador personalizado _Noc_Ind EURGBP,H1: cargado con éxito
2005.10.10 23:10:27 Indicador personalizado _Noc_Ind EURUSD,H1: cargado con éxito
2005.10.10 23:09:02 '142605': la orden #2135657 comprar 0.10 USDJPY a 113.3500 fue modificada -> sl: 113.4000 tp: 0.0000
2005.10.10 23:09:02 '142605': solicitud en proceso
2005.10.10 23:09:02 '142605': la solicitud ha sido aceptada por el servidor
2005.10 10 23:09:02 '142605': modificar la orden #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: cargado con éxito
2005.10.10 23:08:26 Indicador personalizado _Zigzag_2_Ind EURUSD,H1: cargado con éxito
2005.10.10 23:07:38 Indicador personalizado _Zigzag_2_Ind USDCAD,H1: cargado con éxito

Registro 2.
Intentando cerrar una posición larga, ticket: 2130092
11.10.2005 17:6:22
Ordenar con este billete todavía presente, tratando de nuevo
11.10.2005 17:7:37
Ordenar con este billete todavía presente, tratando de nuevo
11.10.2005 17:8:13
Ordenar con este billete todavía presente, tratando de nuevo
11.10.2005 17:9:12
Ordenar con este billete todavía presente, tratando de nuevo
11.10.2005 17:10:23
Ordenar con este billete todavía presente, tratando de nuevo
11.10.2005 17:11:31
Ordenar con este billete todavía presente, tratando de nuevo
11.10.2005 17:12:12
Ordenar con este billete todavía presente, tratando de nuevo
11.10.2005 17:13:11
Ordenar con este billete todavía presente, tratando de nuevo
11.10.2005 17:14:10
Ordenar con este billete todavía presente, tratando de nuevo
11.10.2005 17:15:5
No hay más pedidos con este billete No

También obtuve el error número 2 cuando intenté eliminar una orden pendiente.
 
Repito: el error número 6 indica que ha fallado la conexión con el servidor. reitero que las cotizaciones entran a través de una conexión completamente separada en modo pumppin. y la presencia (supervivencia) de esta conexión no afecta al establecimiento de una nueva conexión comercial. el servidor puede rechazar fácilmente una nueva conexión bajo una gran carga. <br/ translate="no"> por cierto, ¿qué número es la "nueva" build 183? Debería ser del 7 de octubre.


Por lo tanto, tenemos dos opciones. Primero - hacemos un EA que cierra obstinadamente la posición hasta que se cierra. La segunda es que el sistema lo maneja. Creo que el segundo enfoque es el correcto.

Los errores se producen debido a los pings o a cualquier otra cosa. Pero. 1) no debe haber situaciones en las que el terminal se comporte como si la posición se hubiera abierto (cerrado), cuando en realidad ha fallado. 2) los códigos de error no siempre son inteligibles. 3) Los errores no deberían estar presentes en absoluto cuando hay problemas de comunicación.

Permítanme explicar el último punto. Digamos que solicito abrir una posición. ¿Qué tiempos muertos? Mientras el precio esté dentro del deslizamiento especificado, el terminal debe intentar abrir una posición.
Ni siquiera estoy hablando de cerrar una posición. Si hay una instrucción de "cerrar" una posición, debe cerrarse, aunque tarde una hora.
 
Ну и что же теперь делать?
На "тройке" таких проблем не было.
Сейчас же через раз!!!!
Где решение?
Советниками торговать нельзя!!!

para empezar, no saque conclusiones precipitadas.
en el trío había problemas mucho más diferentes - no más de una operación por ejecución de EA, operaciones asíncronas, inaccesibilidad del historial de operaciones (¿más sobre esto?). ahora estamos obligados a gestionar los flujos de operaciones de forma mucho más fina.
Si lees este hilo desde el principio verás varias soluciones - usar semáforos, comprobar la posibilidad de comerciar, y hacer varios intentos de comerciar cuando falla.
¡¡¡Puedes operar con EAs!!!


Una vez más, repito la sugerencia: convivir y trabajar juntos para que los EA funcionen sin errores.
 
Sugerencia a los desarrolladores. Hay una cosa sencilla y terriblemente práctica que facilita la búsqueda de problemas en los registros: el >>>> <<<. Compara:

2005.10.11 20:19:48 Tic antiguo GBPUSD60 1.7478/1.7482
2005.10.11 20:09:47 Tic antiguo GBPJPY60 199.7100/199.7900
2005.10.11 20:05:51 '142605': la orden #2155774 comprar 0.10 USDJPY a 114.3900 ha sido modificada -> sl: 113.6600 tp: 115.3900
2005.10.11 20:05:51 '142605': solicitud en proceso
2005.10.11 20:05:51 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 20:05:51 '142605': modificar la orden #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 >>>Tic antiguo<<< GBPUSD60 1.7478/1.7482
2005.10.11 20:09:47 >>>Tic antiguo<< GBPJPY60 199.7100/199.7900
2005.10.11 20:05:51 '142605': la orden #2155774 comprar 0.10 USDJPY a 114.3900 ha sido modificada -> sl: 113.6600 tp: 115.3900
2005.10.11 20:05:51 '142605': solicitud en proceso
2005.10.11 20:05:51 '142605': la solicitud ha sido aceptada por el servidor
2005.10.11 20:05:51 '142605': modificar la orden #2155774 comprar 0.10 USDJPY a 114.3900 sl: 113.4900 tp: 115.3900 -> sl: 113.6600 tp: 115.3900

Las líneas problemáticas se hacen más visibles a la vista. ¿Debemos hacerlo en MT?
 
A partir de las 12 de la noche, los expertos trabajaron en MQ-demo y Alpari-demo. Durante todo el tiempo tampoco hubo ningún error 128, en Alpari hubo un error 6 (error de ping), y en ambos - varios ticks antiguos. Los pedidos funcionaron sin errores. Build 1.8.3 de 05.10. ¿Tal vez sea otra cosa? Por ejemplo, ¿las peculiaridades de la conexión a través del puerto 443 con diferentes proveedores de Internet? MT3 tenía errores, pero no tantos.
 

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

para empezar no saques conclusiones precipitadas.
había muchos más problemas en el trío - no más de una operación por EA, operaciones asíncronas, no hay historial de operaciones disponible (¿sigue?). ahora tenemos que gestionar los flujos de operaciones mucho más finamente.
si lees este hilo desde el principio puedes ver varias soluciones - usar semáforos, comprobar la posibilidad de operar, hacer varios intentos de operaciones cuando fallan.
EA


Los Asesores Expertos no pueden operar.
Y esta conclusión no es precipitada. Llevas más de un mes formándolo.
Ofrecer a los usuarios varias soluciones para "gestionar los flujos comerciales de forma más fina", que el motor de negociación no puede gestionar por sí mismo, es ridículo. Además, estas soluciones son cuestionables.

1.
utilizar semáforos

Los semáforos de las variables globales no se pueden inicializar en la implementación actual.

2.
comprobar la posibilidad de comerciar

No existe tal funcionalidad. Existe una funcionalidad combinada, que no siempre funciona.

3.
hacer múltiples intentos de comercio si no se tiene éxito

¿Cuántos son pocos?

4.
sospechamos que la configuración del servidor es interesante.

La construcción de agosto ha operado, está operando y aparentemente seguirá operando con la misma configuración.

5.
Nada significativo ha cambiado en el módulo de Asesor Experto desde la versión de agosto.

Entonces es probable que sólo sea magia. O más probablemente el mismo problema que con las variables globales - condiciones de carrera en el módulo de comunicación.

6.
este problema ocurre muy raramente, pero ocurre. en cuanto se empiezan a afinar los pasos, desaparece inmediatamente. por eso estamos estudiando todos los logs que nos envían

Por lo tanto, sus condiciones de prueba son diferentes de las condiciones del terminal para la mayoría de los usuarios. ¿Quién necesita estas pruebas? Sobre la "depuración por pasos", en general, como se dice, "no me hagas reír las zapatillas".

Lo que llama la atención es el hecho de que aún no se ha encontrado la causa y en cambio estamos luchando contra las consecuencias en base a los registros de los usuarios, aparecen algunos timeouts, vorkarounds como semáforos y demás.
El tiempo del problema está muy bien determinado, apenas unos días. ¿Es realmente imposible encontrar algo en los registros de CVS (o lo que sea que utilices (si es que lo utilizas, por supuesto)) que pueda tener un impacto tan negativo en los flujos comerciales?

Desgraciadamente, lo que ocurre no parece muy profesional. :(
 
Quark, ten un poco de conciencia, no publiques esos registros en el foro =)))))

En cuanto a la realidad del cierre/apertura - tengo comprobaciones en todas las funciones f y aparecen errores, pero son errores FALSE. He comprobado los registros y el historial de pedidos, todas las posiciones estaban cerradas. La orden no tuvo tiempo de moverse en la historia. Hice un retraso de 1 segundo antes de comprobarlo - pero no es suficiente... Cuando pregunté, no me dieron una respuesta.
 
Hay algunos puntos que me gustaría señalar:

1. En mis EAs, siempre he utilizado el mecanismo de reversión de órdenes en caso de fallo - es un regalo del cielo. ¡¡¡Mientras haya MI señal de comercio a cualquier comercio el EA repetirá hasta una ejecución exitosa!!! Pero esta es una situación diferente, a menudo el asesor no puede cerrar/abrir una orden durante una hora o dos o tres sin reiniciar MT. A veces la señal de operación ya ha desaparecido y la posición sigue pendiente... Por supuesto, esto está fuera de lugar para un robot de comercio real. Por supuesto, puedes intentar escribir un script que haga que MT se reinicie, con un cierto número de fallos. Tengo algunos similares para MT3, pero por experiencia personal no es FIABLE. Porque pasa, luego al iniciar MT se cuelga, luego otra cosa, etc.

2. Dijo que quizás algo depende del proveedor .... No creo realmente en ello, pero quiero mencionar que he probado el mismo terminal con el mismo Asesor Experto a través de 2 proveedores diferentes. Un proveedor tiene errores con menos frecuencia, el otro con más frecuencia. Y los pings al servidor de comercio en ambos casos son instantáneos y todo eso. Ambos canales de Internet son muy buenos y fiables.