Errore numero 6 - pagina 27

 
 
Vuoi dire<br / translate="no">"IsConnected - raccogliere le statistiche di connessione del terminale al server ;)"
O c'è una versione più recente?

Stiamo parlando dell'EA presentato in questo thread. per non farvi correre attraverso di esso presenterò la mia copia con cui ho lavorato.
//+------------------------------------------------------------------+
//|                                                    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);
}


//+------------------------------------------------------------------+
 
Un altro registro. Due tronchi per essere esatti. Uno è dal log, il secondo (sotto il primo) è dal mio sistema di segnalazione di bug, ho dato questo sistema nei post in questo thread.

Diario 1.
2005.10.11 20:19:48 Vecchio tick GBPUSD60 1.7478/1.7482
2005.10.11 20:09:47 Vecchio tick GBPJPY60 199.7100/199.7900
2005.10.11 20:05:51 '142605': l'ordine #2155774 compra 0,10 USDJPY a 114,3900 è stato modificato -> sl: 113,6600 tp: 115,3900
2005.10.11 20:05:51 '142605': richiesta in corso
2005.10.11 20:05:51 '142605': richiesta accettata dal server
2005.10.11 20:05:51 '142605': modifica ordine #2155774 compra 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': l'ordine pendente #2155773 è stato cancellato
2005.10.11 20:05:50 '142605': richiesta in corso
2005.10.11 20:05:50 '142605': richiesta accettata dal server
2005.10.11 20:04:59 '142605': cancellare l 'ordine pendente #2155773 vendere stop 0,10 USDJPY a 113,6900 sl: 114,5900 tp: 112,6900
2005.10.11 20:04:56 '142605': ordine aperto: #2165270 buy stop 0,10 EURJPY a 137,6500 sl: 135,6500 tp: 138,6500
2005.10.11 20:04:55 '142605': richiesta in corso
2005.10.11 20:04:55 '142605': richiesta accettata dal server
2005.10.11 20:04:55 '142605': ordine pendente compra stop 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: errore ping
2005.10.11 20:04:14:14 '142605': ordine pendente vendere stop 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: ping fallito
2005.10.11 19:16:49 TradeContext: '142605' cannot login to: MetaQuotes-demo
2005.10.11 19:16:16 TradeContext: errore nell'invio della transazione
2005.10.11 19:16:16 '142605': cancellare l'ordine pendente #2155773 vendere stop 0,10 USDJPY a 113,6900 sl: 114,5900 tp: 112,6900
2005.10.11 19:15:55 '142605': ordine #2130092 compra 0,10 EURUSD a 1,2140 sl: 1,1973 tp: 0,0000 chiuso al prezzo 1,2011
2005.10.11 19:15:55 '142605': richiesta in corso
2005.10.11 19:15:55 '142605': richiesta accettata dal server
2005.10.11 19:15:15 '142605': ordine di chiusura #2130092 compra 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 al prezzo 1,2011
2005.10.11 19:15:15 '142605': login (4.00, #281BB516)
2005.10.11 19:15:05 TradeContext: ping fallito
2005.10.11 19:15:05 TradeContext: errore ping
2005.10.11 19:14:25 '142605': ordine di chiusura #2130092 compra 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 al prezzo 1,2008
2005.10.11 19:14:25 '142605': login (4.00, #281BB516)
2005.10.11 19:14:14 TradeContext: ping fallito
2005.10.11 19:14:14:14 TradeContext: errore ping
2005.10.11 19:13:34 '142605': ordine di chiusura #2130092 compra 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 al prezzo 1,2005
2005.10.11 19:13:34 '142605': login (4.00, #281BB516)
2005.10.11 19:13:23 TradeContext: ping fallito
2005.10.11 19:13:23 TradeContext: errore ping
2005.10.11 19:12:23 '142605': ordine di chiusura #2130092 compra 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 al prezzo 1,2005
2005.10.11 19:12:23 '142605': login (4.00, #281BB516)
2005.10.11 19:12:13 TradeContext: ping fallito
2005.10.11 19:12:12 TradeContext: errore ping
2005.10.11 19:11:32 '142605': ordine di chiusura #2130092 compra 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 al prezzo 1,2004
2005.10.11 19:11:32 '142605': login (4.00, #281BB516)
2005.10.11 19:11:22 TradeContext: ping fallito
2005.10.11 19:11:22 TradeContext: errore ping
2005.10.11 19:10:21 '142605': ordine di chiusura #2130092 compra 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 al prezzo 1,2004
2005.10.11 19:10:21 '142605': login (4.00, #281BB516)
2005.10.11 19:10:10 TradeContext: ping fallito
2005.10.11 19:10:10 TradeContext: errore ping
2005.10.11 19:09:30 '142605': ordine di chiusura #2130092 compra 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 al prezzo 1,2006
2005.10.11 19:09:30 '142605': login (4.00, #281BB516)
2005.10.11 19:09:19 TradeContext: ping fallito
2005.10.11 19:09:19 TradeContext: errore ping
2005.10.11 19:08:19 '142605': ordine di chiusura #2130092 compra 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 al prezzo 1,2003
2005.10.11 19:08:19 '142605': login (4.00, #281BB516)
2005.10.11 19:08:06 TradeContext: ping fallito
2005.10.11 19:08:05:05 TradeContext: '142605' cannot login to: MetaQuotes-demo
2005.10.11 19:07:23 TradeContext: ping fallito
2005.10.11 19:07:23 TradeContext: errore ping
2005.10.11 19:06:22 '142605': ordine di chiusura #2130092 compra 0,10 EURUSD a 1,2140 sl: 0,0000 tp: 0,0000 al prezzo 1,1999
2005.10.11 19:06:22 '142605': login (4.00, #281BB516)
2005.10.11 19:06:19 TradeContext: ping fallito
2005.10.11 19:06:19 TradeContext: errore ping
2005.10.11 19:05:19 '142605': ordine pendente compra stop 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: errore ping
2005.10.11 19:04:18 '142605': ordine pendente vendere stop 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': ordine #2144293 comprare 0,10 USDJPY a 113,7400 è stato modificato -> sl: 113,3800 tp: 0,0000
2005.10.11 18:13:59 '142605': richiesta in corso
2005.10.11 18:13:59 '142605': richiesta accettata dal server
2005.10.11 18:13:23 '142605': modifica ordine #2144293 compra 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': l'ordine #2135657 compra 0,10 USDJPY a 113,3500 è stato modificato -> sl: 113,5000 tp: 0,0000
2005.10.11 18:10:00 '142605': richiesta in corso
2005.10.11 18:10:00 '142605': richiesta accettata dal server
2005.10.11 18:09:12 '142605': modifica ordine #2135657 compra 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': ordine #2139090 vendere 0,10 EURUSD a 1,2099 è stato modificato -> sl: 1,2100 tp: 1,1799
2005.10.11 18:04:18 '142605': richiesta in corso
2005.10.11 18:04:18 '142605': richiesta accettata dal server
2005.10.11 18:04:18 '142605': modifica ordine #2139090 vendere 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': ordine #2137049 vendere 0,10 EURUSD a 1,2167 è stato modificato -> sl: 1,2229 tp: 0,0000
2005.10.11 18:01:57 '142605': richiesta in corso
2005.10.11 18:01:57 '142605': richiesta accettata dal server
2005.10.11 18:01:57 '142605': modifica ordine #2137049 vendere 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': ordine #2139090 vendere 0,10 EURUSD a 1,2099 è stato modificato -> sl: 1,2116 tp: 1,1799
2005.10.11 17:04:18 '142605': richiesta in corso
2005.10.11 17:04:18 '142605': richiesta accettata dal server
2005.10.11 17:04:17 '142605': modifica ordine #2139090 vendere 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': ordine #2137049 vendere 0,10 EURUSD a 1,2167 è stato modificato -> sl: 1,2249 tp: 0,0000
2005.10.11 17:01:50 '142605': richiesta in corso
2005.10.11 17:01:50 '142605': richiesta accettata dal server
2005.10.11 17:01:50 '142605': modifica ordine #2137049 vendere 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': ordine #1986223 vendere 0,10 AUDUSD a 0,7629 è stato modificato -> sl: 0,7628 tp: 0,7512
2005.10.11 17:01:08 '142605': richiesta in corso
2005.10.11 17:01:08 '142605': richiesta accettata dal server
2005.10.11 17:01:08 '142605': modifica ordine #1986223 vendere 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': ordine #2140245 compra 0,10 AUDUSD a 0,7589 sl: 0,7509 tp: 0,0000 chiuso al prezzo 0,7552
2005.10.11 16:06:22 '142605': richiesta in corso
2005.10.11 16:06:22 '142605': richiesta accettata dal server
2005.10.11 16:06:22 '142605': ordine di chiusura #2140245 compra 0,10 AUDUSD a 0,7589 sl: 0,0000 tp: 0,0000 al prezzo 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': connessione fallita [6]
2005.10.11 14:00:20 '142605': ordine #2158310 compra 0,10 EURUSD a 1,2037 sl: 1,1957 tp: 0,0000 chiuso al prezzo 1,2033
2005.10.11 14:00:20 '142605': richiesta in corso
2005.10.11 14:00:20 '142605': richiesta accettata dal server
2005.10.11 14:00:20 '142605': ordine di chiusura #2158310 compra 0,10 EURUSD a 1,2037 sl: 0,0000 tp: 0,0000 al prezzo 1,2033
2005.10.11 14:00:20 '142605': login (4.00, #281BB516)
2005.10.11 13:10:39 '142605': ordine aperto: #2161539 vendere 0,10 EURAUD a 1,5888 sl: 1,5963 tp: 1,5813
2005.10.11 13:10:39 '142605': richiesta in corso
2005.10.11 13:10:39 '142605': richiesta accettata dal server
2005.10.11 13:10:39 '142605': ordine istantaneo vendere 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': l'ordine in sospeso #2160764 è stato cancellato
2005.10.11 13:04:29 '142605': richiesta in corso
2005.10.11 13:04:29 '142605': richiesta accettata dal server
2005.10.11 13:04:29 '142605': cancella l'ordine pendente #2160764 compra 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': ordine #2156460 vendere 0,10 USDJPY a 114,0700 è stato modificato -> sl: 115,9700 tp: 0,0000
2005.10.11 12:11:21 '142605': richiesta in corso
2005.10.11 12:11:21 '142605': richiesta accettata dal server
2005.10.11 12:11:20 '142605': modifica ordine #2156460 vendere 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': ordine #2145173 vendere 0.10 GBPJPY a 200.4800 è stato modificato -> sl: 200.4300 tp: 0.0000
2005.10.11 12:08:06 '142605': richiesta in corso
2005.10.11 12:08:06 '142605': richiesta accettata dal server
2005.10.11 12:08:06 '142605': modifica ordine #2145173 vendere 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': ordine #2149217 vendere 0,10 EURJPY a 137,8900 è stato modificato -> sl: 137,7400 tp: 0,0000
2005.10.11 12:07:35 '142605': richiesta in corso
2005.10.11 12:07:35 '142605': richiesta accettata dal server
2005.10.11 12:07:35 '142605': modifica ordine #2149217 vendere 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': ordine aperto: #2160764 buy stop 0,10 GBPJPY a 200,6800 sl: 199,1800 tp: 201,6800
2005.10.11 12:04:28 '142605': richiesta in corso
2005.10.11 12:04:28 '142605': richiesta accettata dal server
2005.10.11 12:04:27 '142605': ordine pendente compra stop 0,10 GBPJPY a 200,6800 sl: 199,1800 tp: 201,6800
2005.10.11 12:04:27 '142605': ordine aperto: #2160763 vendere stop 0,10 GBPJPY a 199,1500 sl: 200,6500 tp: 198,1500
2005.10.11 12:04:27 '142605': richiesta in corso
2005.10.11 12:04:27 '142605': richiesta accettata dal server
2005.10.11 12:04:27 '142605': ordine pendente vendere stop 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': ordine aperto: #2160333 vendere 0,10 USDJPY a 114,1400 sl: 114,7300 tp: 112,8700
2005.10.11 11:10:09 '142605': richiesta in corso
2005.10.11 11:10:09 '142605': richiesta accettata dal server
2005.10.11 11:10:09 '142605': ordine istantaneo vendere 0,10 USDJPY a 114,1400 sl: 114,7290 tp: 112,8690
2005.10.11 11:08:08 '142605': ordine #2145173 vendere 0.10 GBPJPY a 200.4800 è stato modificato -> sl: 200.5400 tp: 0.0000
2005.10.11 11:08:08 '142605': richiesta in corso
2005.10.11 11:08:08 '142605': richiesta accettata dal server
2005.10.11 11:08:08 '142605': modifica ordine #2145173 vendere 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': ordine #2139100 vendere 0,10 GBPJPY a 200,3700 è stato modificato -> sl: 201,5200 tp: 199,3700
2005.10.11 11:04:27 '142605': richiesta in corso
2005.10.11 11:04:27 '142605': richiesta accettata dal server
2005.10.11 11:04:27 '142605': modifica ordine #2139100 vendere 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': ordine #2145173 vendere 0.10 GBPJPY a 200.4800 è stato modificato -> sl: 200.6500 tp: 0.0000
2005.10.11 10:08:12 '142605': richiesta in corso
2005.10.11 10:08:12 '142605': richiesta accettata dal server
2005.10.11 10:08:12 '142605': modifica ordine #2145173 vendere 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': ordine #2149217 vendere 0.10 EURJPY a 137.8900 è stato modificato -> sl: 137.8400 tp: 0.0000
2005.10.11 10:07:35 '142605': richiesta in corso
2005.10.11 10:07:35 '142605': richiesta accettata dal server
2005.10.11 10:07:35 '142605': modifica ordine #2149217 vendere 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': ordine #2144692 vendere 0.10 EURAUD a 1.5968 è stato modificato -> sl: 1.6070 tp: 1.5568
2005.10.11 10:05:23 '142605': richiesta in corso
2005.10.11 10:05:23 '142605': richiesta accettata dal server
2005.10.11 10:05:23 '142605': modifica ordine #2144692 vendere 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': ordine #2139100 vendere 0,10 GBPJPY a 200,3700 è stato modificato -> sl: 201,6600 tp: 199,3700
2005.10.11 10:04:27 '142605': richiesta in corso
2005.10.11 10:04:27 '142605': richiesta accettata dal server
2005.10.11 10:04:27 '142605': modifica ordine #2139100 vendere 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': ordine #2145173 vendere 0.10 GBPJPY a 200.4800 è stato modificato -> sl: 200.8500 tp: 0.0000
2005.10.11 09:08:05 '142605': richiesta in corso
2005.10.11 09:08:05 '142605': richiesta accettata dal server
2005.10.11 09:08:05 '142605': modifica ordine #2145173 vendere 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': ordine #1893465 vendere 0,10 GBPJPY a 199,9900 è stato modificato -> sl: 202,1100 tp: 197,7300
2005.10.11 06:06:03 '142605': richiesta in corso
2005.10.11 06:06:03 '142605': richiesta accettata dal server
2005.10.11 06:06:02 '142605': modifica ordine #1893465 vendere 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': ordine #2130122 vendere 0,10 USDCAD a 1,1758 è stato modificato -> sl: 1,1941 tp: 1,1658
2005.10.11 06:05:48 '142605': richiesta in corso
2005.10.11 06:05:48 '142605': richiesta accettata dal server
2005.10.11 06:05:48 '142605': modifica ordine #2130122 vendere 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': ordine #2137062 vendere 0.10 EURAUD a 1.5985 è stato modificato -> sl: 1.6116 tp: 0.0000
2005.10.11 06:03:56 '142605': richiesta in corso
2005.10.11 06:03:56 '142605': richiesta accettata dal server
2005.10.11 06:03:56 '142605': modifica ordine #2137062 vendere 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': ordine aperto: #2158310 compra 0,10 EURUSD a 1,2037 sl: 1,1957 tp: 0,0000
2005.10.11 06:00:03 '142605': richiesta in corso
2005.10.11 06:00:03 '142605': richiesta accettata dal server
2005.10.11 06:00:02 '142605': ordine istantaneo compra 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': ordine #2149217 vendere 0,10 EURJPY a 137,8900 è stato modificato -> sl: 137,9000 tp: 0,0000
2005.10.11 05:07:48 '142605': richiesta in corso
2005.10.11 05:07:48 '142605': richiesta accettata dal server
2005.10.11 05:07:48 '142605': modifica ordine #2149217 vendere 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': ordine #2144692 vendere 0.10 EURAUD a 1.5968 è stato modificato -> sl: 1.6084 tp: 1.5568
2005.10.11 05:05:22 '142605': richiesta in corso
2005.10.11 05:05:22 '142605': richiesta accettata dal server
2005.10.11 05:05:22 '142605': modifica ordine #2144692 vendere 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': ordine #2139090 vendere 0,10 EURUSD a 1,2099 è stato modificato -> sl: 1,2125 tp: 1,1799
2005.10.11 05:03:52 '142605': richiesta in corso
2005.10.11 05:03:52 '142605': richiesta accettata dal server
2005.10.11 05:03:52 '142605': modifica ordine #2139090 vendere 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': ordine #2137049 vendere 0,10 EURUSD a 1,2167 è stato modificato -> sl: 1,2255 tp: 0,0000
2005.10.11 05:01:55 '142605': richiesta in corso
2005.10.11 05:01:55 '142605': richiesta accettata dal server
2005.10.11 05:01:54 '142605': modifica ordine #2137049 vendere 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 fallito
2005.10.11 05:00:21 '142605': ordine #2156417 vendere 0,10 EURUSD a 1,2064 sl: 1,2114 tp: 0,0000 chiuso al prezzo 1,2032
2005.10.11 05:00:21 '142605': richiesta in corso
2005.10.11 05:00:21 '142605': richiesta accettata dal server
2005.10.11 05:00:07 '142605': ordine di chiusura #2156417 vendere 0,10 EURUSD a 1,2064 sl: 0,0000 tp: 0,0000 al prezzo 1,2032
2005.10.11 05:00:07 '142605': login (4.00, #281BB516)
2005.10.11 04:07:47 '142605': ordine #2149217 vendere 0.10 EURJPY a 137.8900 è stato modificato -> sl: 138.1700 tp: 0.0000
2005.10.11 04:07:47 '142605': richiesta in corso
2005.10.11 04:07:47 '142605': richiesta accettata dal server
2005.10.11 04:07:47 '142605': modifica ordine #2149217 vendere 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': ordine aperto: #2156460 vendere 0,10 USDJPY a 114,0700 sl: 116,0700 tp: 0,0000
2005.10.11 01:11:25 '142605': richiesta in corso
2005.10.11 01:11:25 '142605': richiesta accettata dal server
2005.10.11 01:11:25 '142605': ordine istantaneo vendere 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': ordine aperto: #2156417 vendere 0,10 EURUSD a 1,2064 sl: 1,2114 tp: 0,0000
2005.10.11 01:00:45 '142605': richiesta in corso
2005.10.11 01:00:45 '142605': richiesta accettata dal server
2005.10.11 01:00:45 '142605': ordine istantaneo vendere 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 Indicatore personalizzato _Zigzag_2_Ind USDCAD,H1: caricato con successo
2005.10.10 23:14:38 Indicatore personalizzato _Zigzag_2_Ind USDCAD,H1: caricato con successo
2005.10.10 23:13:21 '142605': ordine #2144293 comprare 0,10 USDJPY a 113,7400 è stato modificato -> sl: 113,2900 tp: 0,0000
2005.10.10 23:13:21 '142605': richiesta in corso
2005.10.10 23:13:21 '142605': richiesta accettata dal server
2005.10 10 23:13:19 '142605': modifica ordine #2144293 compra 0.10 USDJPY a 113.7400 sl: 113.0200 tp: 0.0000 -> sl: 113.2900 tp: 0.0000
2005.10.10 23:13:16 Indicatore personalizzato _Forex_Nn_Ind EURUSD,H1: caricato con successo
2005.10.10 23:12:53 Indicatore personalizzato _Zigzag_2_Ind EURAUD,H1: caricato con successo
2005.10.10 23:12:42 Indicatore personalizzato _Zigzag_2_Ind USDJPY,H1: caricato con successo
2005.10.10 23:12:06 Indicatore personalizzato _Zigzag_2_Ind GBPUSD,H1: caricato con successo
2005.10.10 23:11:56 Indicatore personalizzato _Zigzag_2_Ind EURUSD,H1: caricato con successo
2005.10.10 23:11:23 Indicatore personalizzato _Noc_Ind USDJPY,H1: caricato con successo
2005.10.10 23:11:13 Indicatore personalizzato _Noc_Ind GBPUSD,H1: caricato con successo
2005.10.10 23:11:01 Indicatore personalizzato _Noc_Ind GBPCHF,H1: caricato con successo
2005.10.10 23:10:43 Indicatore personalizzato _Noc_Ind USDCHF,H1: caricato con successo
2005.10.10 23:10:32 Indicatore personalizzato _Noc_Ind EURGBP,H1: caricato con successo
2005.10.10 23:10:27 Indicatore personalizzato _Noc_Ind EURUSD,H1: caricato con successo
2005.10.10 23:09:02 '142605': l'ordine #2135657 acquistare 0,10 USDJPY a 113,3500 è stato modificato -> sl: 113,4000 tp: 0,0000
2005.10.10 23:09:02 '142605': richiesta in corso
2005.10.10 23:09:02 '142605': richiesta accettata dal server
2005.10 10 23:09:02 '142605': modifica ordine #2135657 compra 0.10 USDJPY a 113.3500 sl: 113.0900 tp: 0.0000 -> sl: 113.4000 tp: 0.0000
2005.10.10 23:08:27 Indicatore personalizzato _Zigzag_2_Ind USDCHF,H1: caricato con successo
2005.10.10 23:08:26 Indicatore personalizzato _Zigzag_2_Ind EURUSD,H1: caricato con successo
2005.10.10 23:07:38 Indicatore personalizzato _Zigzag_2_Ind USDCAD,H1: caricato con successo

Diario 2.
Tentativo di chiudere una posizione lunga, ticket: 2130092
11.10.2005 17:6:22
Ordine con questo biglietto ancora presente, riprovando
11.10.2005 17:7:37
Ordine con questo biglietto ancora presente, riprovando
11.10.2005 17:8:13
Ordine con questo biglietto ancora presente, riprovando
11.10.2005 17:9:12
Ordine con questo biglietto ancora presente, riprovando
11.10.2005 17:10:23
Ordine con questo biglietto ancora presente, riprovando
11.10.2005 17:11:31
Ordine con questo biglietto ancora presente, riprovando
11.10.2005 17:12:12
Ordine con questo biglietto ancora presente, riprovando
11.10.2005 17:13:11
Ordine con questo biglietto ancora presente, riprovando
11.10.2005 17:14:10
Ordine con questo biglietto ancora presente, riprovando
11.10.2005 17:15:5
Non ci sono più ordini con questo biglietto No

Ho anche ottenuto l'errore numero 2 quando ho cercato di cancellare un ordine in sospeso.
 
Ripeto: l'errore numero 6 indica che non sei riuscito a connetterti al server. ribadisco che le quotazioni arrivano attraverso una connessione completamente separata in modalità pumpe. e la presenza (sopravvivenza) di questa connessione non influisce sull'instaurazione di una nuova connessione di trading. il server può facilmente rifiutare una nuova connessione sotto un carico pesante. <br/ translate="no"> a proposito, qual è il numero della "nuova" 183 build? Dovrebbe essere dal 7 ottobre.


Abbiamo quindi due opzioni. Prima - facciamo un EA che chiude ostinatamente la posizione fino a quando non si chiude. Il secondo è che il sistema lo gestisce. Credo che il secondo approccio sia quello corretto.

Gli errori si verificano a causa di ping o altro. Ma. 1) non ci dovrebbero essere situazioni in cui il terminale si comporta come se la posizione fosse stata aperta (chiusa), quando in realtà è fallita. 2) i codici di errore non sono sempre comprensibili. 3) Gli errori non dovrebbero essere presenti affatto quando ci sono problemi di comunicazione.

Lasciatemi spiegare l'ultimo punto. Diciamo che sto chiedendo di aprire una posizione. Quali timeout?! Finché il prezzo è all'interno dello slittamento specificato, il terminale deve cercare di aprire una posizione.
Non sto nemmeno parlando di chiudere una posizione. Se c'è un'istruzione di "chiudere" una posizione, deve essere chiusa, anche se ci vuole un'ora.
 
Ну и что же теперь делать?
На "тройке" таких проблем не было.
Сейчас же через раз!!!!
Где решение?
Советниками торговать нельзя!!!

Per cominciare, non saltate alle conclusioni.
sul trio c'erano problemi molto più diversi - non più di un trade per esecuzione EA, trade asincroni, inaccessibilità della storia del trade (più su questo?). ora siamo costretti a gestire i flussi commerciali molto più finemente.
Se leggete questo thread dall'inizio vedrete diverse soluzioni - usare semafori, controllare la possibilità di scambiare, fare diversi tentativi di scambio quando fallisce.
Puoi fare trading con gli EAs!!!


Ancora una volta, ripeto il suggerimento: vivere insieme, e lavorare insieme per far funzionare gli EA senza errori.
 
Suggerimento agli sviluppatori. C'è una cosa semplice e terribilmente comoda che rende più facile trovare i problemi nei log - il >>>> <<<. Confronta:

2005.10.11 20:19:48 Vecchio tick GBPUSD60 1.7478/1.7482
2005.10.11 20:09:47 Vecchio tick GBPJPY60 199.7100/199.7900
2005.10.11 20:05:51 '142605': l'ordine #2155774 compra 0,10 USDJPY a 114,3900 è stato modificato -> sl: 113,6600 tp: 115,3900
2005.10.11 20:05:51 '142605': richiesta in corso
2005.10.11 20:05:51 '142605': richiesta accettata dal server
2005.10.11 20:05:51 '142605': modifica ordine #2155774 compra 0,10 USDJPY a 114,3900 sl: 113,4900 tp: 115,3900 -> sl: 113,6600 tp: 115,3900

и

2005.10.11 20:19:48 >>>Vecchio tick<<< GBPUSD60 1.7478/1.7482
2005.10.11 20:09:47 >>>Vecchio tick<< GBPJPY60 199.7100/199.7900
2005.10.11 20:05:51 '142605': l'ordine #2155774 compra 0,10 USDJPY a 114,3900 è stato modificato -> sl: 113,6600 tp: 115,3900
2005.10.11 20:05:51 '142605': richiesta in corso
2005.10.11 20:05:51 '142605': richiesta accettata dal server
2005.10.11 20:05:51 '142605': modifica ordine #2155774 compra 0,10 USDJPY a 114,3900 sl: 113,4900 tp: 115,3900 -> sl: 113,6600 tp: 115,3900

Le linee problematiche stanno diventando più visibili all'occhio. Dovremmo fare in MT?
 
A partire dalle 12 di ieri sera, gli esperti stavano lavorando su MQ-demo e Alpari-demo. Durante tutto il tempo non c'era nessun errore 128, su Alpari c'era un errore 6 (errore di ping), e su entrambi - diversi vecchi tick. Gli ordini hanno funzionato senza errori. Build 1.8.3 del 05.10. Forse è qualcos'altro? Per esempio, le peculiarità della connessione attraverso la porta 443 con diversi provider Internet? MT3 aveva degli errori, ma non così tanti.
 

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

per cominciare non saltare alle conclusioni.
c'erano molti altri problemi sul trio - non più di un trade alla volta, trade asincroni, nessuna storia di trading disponibile (continua?). ora dobbiamo gestire i flussi di trade molto più finemente.
se leggi questo thread dall'inizio puoi vedere diverse soluzioni - usare semafori, controllare la possibilità di trading, fare diversi tentativi di trade quando fallisce.
advisor


Gli Expert Advisors non sono autorizzati a fare trading.
E questa conclusione non è affrettata. Lo stai formando da più di un mese ormai.
Offrire agli utenti diverse soluzioni per "gestire più finemente i flussi commerciali", che il motore di trading non può gestire da solo, è ridicolo. Inoltre, queste soluzioni sono discutibili.

1.
utilizzare i semafori

I semafori sulle variabili globali non possono essere inizializzati nell'attuale implementazione.

2.
controllare la possibilità di trading

Non c'è questa funzionalità. C'è qualche funzionalità combinata, che non sempre funziona.

3.
fare più tentativi di scambio se non ha successo

Quanti sono pochi?

4.
sospettiamo che le impostazioni del server siano interessanti.

La build di agosto ha scambiato, sta scambiando e apparentemente continuerà a farlo con le stesse impostazioni.

5.
nulla di significativo è cambiato nel modulo Expert Advisor dalla build di agosto.

Allora probabilmente è solo magia. O più probabilmente lo stesso problema delle variabili globali - condizioni di gara nel modulo di comunicazione.

6.
questo problema si verifica molto raramente, ma succede. non appena si inizia a mettere a punto i passi, scompare immediatamente. ecco perché stiamo studiando tutti i log che ci vengono inviati

Quindi le vostre condizioni di test sono diverse dalle condizioni del terminale per la maggior parte degli utenti. Chi ha bisogno di questi test? Riguardo al "debugging per passi", in generale, quello che si chiama "non far ridere le mie pantofole".

Ciò che colpisce è il fatto che la causa non è stata ancora trovata e invece stiamo combattendo contro le conseguenze sulla base dei log degli utenti, appaiono alcuni timeout, vorkaround come semafori e così via.
La tempistica del problema è molto ben determinata, solo pochi giorni. È davvero impossibile trovare qualcosa nei log del CVS (o qualsiasi cosa usiate (se lo usate affatto, ovviamente)) che possa avere un impatto così negativo sui flussi commerciali?

Sfortunatamente, quello che sta succedendo non sembra molto professionale. :(
 
Quark, abbi un po' di coscienza, non postare tali registri sul forum =)))))

Per quanto riguarda la realtà della chiusura/apertura - ho dei controlli in tutte le funzioni f e gli errori appaiono, ma sono errori FALSI. Ho controllato i registri e la cronologia degli ordini, tutte le posizioni erano chiuse. L'ordine non ha avuto il tempo di muoversi nella storia. Ho fatto un ritardo di 1 secondo prima di controllare - ma non è abbastanza... Quando ho chiesto, non mi hanno dato una risposta.
 
Ci sono alcuni punti che vorrei fare:

1. Nei miei EA, ho sempre usato il meccanismo di inversione degli ordini in caso di fallimento - è una manna dal cielo. Finché c'è il MIO segnale di commercio a qualsiasi commercio l'EA ripeterà fino a un'esecuzione di successo!!! Ma questa è una situazione diversa, spesso il consulente non può chiudere/aprire un ordine per un'ora o due o tre senza riavviare MT. A volte il segnale di trade è già scomparso e la posizione è ancora in sospeso... Naturalmente, questo è fuori questione per un vero robot di trading. Naturalmente, si può provare a scrivere uno script che faccia ripartire MT, con un certo numero di fallimenti. Ne ho alcuni simili per MT3, ma per esperienza personale non è AFFIDABILE. Perché succede, poi all'inizio MT si blocca, poi qualcos'altro, ecc.

2. Ha detto che forse qualcosa dipende dal fornitore .... Non ci credo molto, ma voglio dire che ho testato lo stesso terminale con lo stesso Expert Advisor tramite 2 diversi provider. Un fornitore ha errori meno spesso, l'altro più spesso. E i ping al server commerciale in entrambi i casi sono istantanei e tutto il resto. Entrambi i canali Internet sono molto buoni e affidabili.