Campionato di trading automatizzato 2007: errori comuni negli esperti - pagina 5

 
komposter:
Kadak:
Ma gli organizzatori permetteranno a un tale EA di entrare nella competizione. Usando questo design, il test "overuse resources" di 5 minuti con più valute supera l'EA senza problemi.
Questo disegno è un buon tono di programmazione di Expert Advisor.
Non ho sentito di organizzatori che squalificano gli EA competenti ;)

Non credo nemmeno io. Vorrei avere notizie dagli ORGANIZZATORI.
 
Kadak:

Lo penso anch'io. Vorrei avere notizie dagli ORGANIZZATORI.
Una corsa al concorso mostrerà tutto questo. Se non occupa troppe risorse, va bene(purché si segua il resto delle regole).
 
Renat:
Martes:

Cari organizzatori!

Posso chiedere la definizione esatta del multi-currency Expert Advisor? Ho cercato sul sito web con le parole "multi-currency expert", ma non ho trovato nulla nella documentazione, e anche il resto delle pagine (per lo più dal forum del campionato) non ha fornito una definizione. Immagino all'incirca cosa sia un esperto di multi-valuta, ma ho bisogno anche di una definizione precisa.

Un Expert Advisor multivaluta è qualcuno che apre posizioni di trading in altri strumenti, escluso il simbolo a cui è collegato. Qualsiasi Expert Advisor può fare riferimento a grafici e parametri di altri simboli per informazioni, ma a causa di questo non è considerato multicurrency.

Cioè, un Expert Advisor non multivaluta può prendere informazioni su diverse coppie di valute da diversi timeframe per prendere decisioni sugli ordini della coppia di valute del grafico corrente?

In questo caso, posso usare il codice qui sotto per testare il mio Expert Advisor multicurrency nella modalità a coppia di valute singola. È possibile ottenere informazioni su altre coppie di valute durante i test?

==========================================================================


if ((mono==1)&&(f==0) ) ////=== mono - segno di apertura dell'ordine su una coppia di valute, f - segno della coppia di valute del grafico corrente
{
ticket=OrderSend(Symbol(), OP_BUY, LotsOptimized, Ask, 5,Bid-StopLoss*Point, Ask+TakeProfit*Point, Commenta,f,0, Green);
se(biglietto>0)
{
if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)) {}
else Print("Error opening BUY order: ", GetLastError());
}

}
else
{
double bid =MarketInfo(Symbol_array[f], MODE_BID);
double ask =MarketInfo(Symbol_array[f], MODE_ASK);
double point =MarketInfo(Symbol_array[f], MODE_POINT);
ticket=OrderSend(Symbol_array[f], OP_BUY, LotsOptimized, ask, 5,bid-StopLoss*point, ask+TakeProfit*point,Commenta,f,0, Green);
se(biglietto>0)
{
if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)) {}
else Print("Error opening BUY order : ", GetLastError());
}


}

======================================================================================

 
Si prega di consigliare come sbarazzarsi di "errore 4108 quando si chiude l'ordine no...". Quanto è critico, visto che l'Expert Advisor funziona correttamente.
 
Tihon_RUS:
Si prega di consigliare come sbarazzarsi di "errore 4108 quando si chiude l'ordine no...". E quanto è critico, visto che l'Expert Advisor funziona correttamente.
Devi specificare il ticket corretto per chiuderlo. Non si può dire nulla senza il codice.
 
forse c'è un errore qui da qualche parte?







while (OrdersTotal()>0)
{
if (!OrderSelect(0, SELECT_BY_POS)) break;
if (OrderType()>OP_SELL)
{
if (!OrderDelete(OrderTicket())
{
Print("Error ", GetLastError()," when deleting a pending order ",
OrderTicket());
break;
}
}
{
double price;
if (OrderType()==OP_SELL)
price = MarketInfo(OrderSymbol(), MODE_ASK);
else
price = MarketInfo(OrderSymbol(), MODE_BID);

if (!OrderClose(OrderTicket(), OrderLots(), price, 3))
{
Print("Error ", GetLastError()," when closing the position ", OrderTicket());
break;
}
}
}
Sleep(10000);
 
...
if ((OrderType()>OP_SELL) && (OrderCloseTime() == 0))
...

Aggiungere un controllo del tempo di chiusura. Non c'è bisogno di cancellare gli ordini che sono già stati cancellati.

 

Potresti dirmi cosa c'è che non va?

Non capisco cosa c'è di sbagliato!

Trawl inizia a lavorare a 50 pips

in questo caso all'inizio la posizione è portata a +5 punti senza perdite dall'apertura dell'ordine al raggiungimento di 35 punti

e poi quando raggiunge 50 pips un trawl inizia a lavorare

quando provo sulla mia macchina in questo momento e in altri periodi non ottengo l'errore 130

---

questo è ciò che la macchina che sta testando l'advisor dà - io non ottengo un errore durante il test :-(

Mi chiedo se un trasferimento a Breakeven di 35p e il prossimo trall di 50p potrebbe darmi degli errori?

d'altra parte se emulo un forte requote su movimenti forti - come evito il problema?

2007.09.06 19:30 loading
yz_t4 on EURUSD:240
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:08  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:08  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:08  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:09  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:10  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:10  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:10  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:24  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:25  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:25  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:30  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:30  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:30  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 17:12  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 17:12  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 17:13  yz_t4 EURUSD,H4: OrderModify error 1
1 min 34 seconds
Errors: 20
  
Код тралла достаточно сложный и все же я приведу его! 
File:
yz_trall.mq4  10 kb
 

Cari Renat e Rosh!

1. Quando si invia un Expert Advisor, l'autore deve specificare le condizioni di test dell'Expert Advisor (coppie di valute, TF)? Questa è ovviamente una domanda stupida, ma se si scelgono le proprie condizioni, potrebbe essere difficile inserirle :)

2. Se le condizioni di un EA multivaluta sono diversi grafici aperti di coppie straniere con determinati TF, saranno osservati quando si lancia l'EA nel campionato e dove formularli?

 
goldtrader:

Cari Renat e Rosh!

1. Quando si invia un Expert Advisor, l'autore deve specificare le condizioni di test dell'Expert Advisor (coppie di valute, TF)? Questa è ovviamente una domanda stupida, ma se si scelgono le proprie condizioni, potrebbe essere difficile inserirle :)

2. Se le condizioni di un EA multivaluta sono diversi grafici aperti di coppie straniere con determinati TF, saranno rispettate quando si lancia l'EA nel campionato e dove possono essere indicate?


1. Testiamo gli EAs sul simbolo/periodo che è specificato nel profilo del partecipante nella scheda "Files". Tuttavia, possiamo testare l'Expert Advisor su qualsiasi dato solo per rilevare gli errori. Se l'Expert Advisor è scritto correttamente e la gestione degli errori è prevista in esso, allora si comporterà decentemente su qualsiasi dato, non sovraccaricherà il server di trading con richieste errate e non produrrà enormi log.

2. Nella descrizione dell'Expert Advisor, è necessario specificare quali grafici devono essere aperti. Se non specificate i periodi dei grafici, i grafici corrispondenti saranno aperti con il periodo specificato per il simbolo principale.