Controllo dello stop minimo negli EA pubblicati sul mercato. - pagina 9

 
Artyom Trishkin:
Purtroppo, la semplice presenza di un bug, anche trattata ulteriormente, è già uno straccio rosso per i moderatori del mercato. E anche la spiegazione di un'ulteriore logica, che l'EA gestisce le risposte del server, a volte si imbatte nella stessa risposta: "non ci dovrebbero essere errori". E non importa che siano ulteriormente elaborati e facciano parte della "comunicazione" dell'EA con il server.

I prodotti del mercato non sono controllati da programmatori o tester.

Devi solo accettarlo come un fatto e aggiungere alcuni controlli stupidi al codice per passare un controllo formale dei moderatori.

 
Andrey Khatimlianskii:

Devi solo accettarlo come un fatto e aggiungere alcuni controlli stupidi al codice per passare il controllo formale dei moderatori.

e mettersi nei guai più tardi in un conto reale
 
Andrey Khatimlianskii:

I prodotti del mercato non sono controllati da programmatori o tester.

Devi solo accettarlo come un fatto e aggiungere alcuni controlli stupidi al codice per passare il controllo formale del moderatore.

Ho incontrato EAs nel mercato che falliscono nel tester dopo un giorno di test con errore di divisione per zero. E questa merda supera i test sul mercato. Questo dimostra che in effetti i controlli iniziano e finiscono almeno con l'inizio dell'EA.

Personalmente, però, disprezzo gli autori di questo tipo di stronzate. Non pubblicherò mai questa merda.

 
Alexey Volchanskiy:

Mi sono imbattuto in EAs sul mercato che si bloccano nel tester dopo un giorno di test con un errore di divisione pari a zero. E questa merda viene testata sul mercato. Questo dimostra che in effetti i controlli iniziano e finiscono almeno con l'inizio dell'EA.

Personalmente, però, disprezzo gli autori di questo tipo di stronzate. Non posterò mai cose del genere.

Il codice che hai postato qui:

   double ask=SymbolInfoDouble(symToWorkmodify,SYMBOL_ASK);
   double bid=SymbolInfoDouble(symToWorkmodify,SYMBOL_BID);
   double point=SymbolInfoDouble(symToWorkmodify,SYMBOL_POINT);
   int spread=(ask-bid)/point;

Inoltre non è adatto per il mercato, perché dicono che ci sono broker Forex con zero spread, quindi otteniamo zero. Bene, zero moltiplicato per X dà zero, in questo caso "2 * spread = stopLevel = 0".

per evitare questo tipo di errore:

stopLevel=MathMax(2.0*spread,1.0);
 
Vladislav Andruschenko:

Sì, questo è solo per il mercato - ma non c'è universalità per nessun broker

Il modo in cui funziona è che devi fare un min stop a 3 spreads per essere accettato nel mercato,

L'unica differenza è che il mercato li accetta - devi fare un min stop e 3 spread, ma in realtà questo è sbagliato - se un broker min stop = 1 spread - allora l'utente non sarà in grado di mettere meno di 3 spread.

Baffle.

Il mercato sta testando gli EA con parametri predefiniti. Questo proviene dalla corrispondenza con i responsabili del mercato.

Di conseguenza, è possibile inserire una variabile esterna, anche di tipo doppio, per la quale moltiplicare la dimensione dello spread e impostare il valore di default a 3.

 
Alexey Viktorov:

Il mercato sta testando gli EA con parametri predefiniti. Questo viene dalla corrispondenza con i manager di Market.

Di conseguenza, è possibile introdurre una variabile esterna, anche di tipo doppio, su cui moltiplicare la dimensione dello spread e mettere il valore predefinito di 3.

No. Il mercato sta testando con diversi parametri, compresi quelli di default, come stoploss e takeprofit = 1.

ecco l'ultimo lavoro in freelance :-)

Nel testare l'Expert Advisor ho ricevuto messaggi di errore. È necessario testare l'Expert Advisor in diverse modalità: simbolo di trading inadatto mancanza di fondi nel conto mancanza di storia simboli con 4 e 5 cifre decimali diverse modalità di simulazione di tick Controlla anche la correttezza dei valori di tutti i parametri nelle funzioni di trading.

Cioè, è immediatamente ovvio che la persona non conosce il linguaggio di programmazione e sta cercando di vendere il prodotto sul mercato.

 
È meglio prevedere nel codice dei limiti sotto/sopra i quali l'impostazione del prodotto non può essere cambiata. Anche se è impossibile prevedere in anticipo come l'utente configurerà il prodotto. Avevo un caso. All'inizio l'utente che ha comprato il mio prodotto ha scritto un suggerimento per aggiungere alcune funzioni all'indicatore. L'ho fatto. Poi ha cominciato a dirmi che l'indicatore non funzionava bene. L'ho controllato diverse volte nel tester e sono stato seduto nel monitor per alcune ore a guardare l'indicatore sbagliato. Poi ho scoperto attraverso la corrispondenza e le domande principali che questo utente sta usando un indicatore che sta cercando un pattern "inside bar" su un timeframe di un minuto!Coloro che sanno come funziona questo modello non penserebbero nemmeno a negoziare il modello "inside bar" su un time frame di un minuto.
 
Cosa ti impedisce di eseguire tu stesso il tester di strategia invece di indovinare "lo farà o non lo farà". Nel tester di strategia, seleziona l'ottimizzazione e completa l'enumerazione dei parametri di input. Dopo i test, non resta che controllare il registro.
 
Vladislav Andruschenko:

ecco uno sguardo all'ultimo lavoro del freelance :-)

È una citazione della corrispondenza con il moderatore del mercato? Dov'è il riferimento all'errore 130?
 
Karputov Vladimir:
Cosa vi impedisce di eseguire il tester di strategia invece di indovinare "lo farà o non lo farà"? Nel tester di strategia, seleziona l'ottimizzazione e completa l'enumerazione dei parametri di input. Dopo il test, è sufficiente controllare il registro.

Non è così semplice in realtà, alcune situazioni non sono realistiche da controllare nel tester. mi sono imbattuto in questo. per esempio, il consigliere K...... - non poteva essere accettato.

L'idea era quella di aprire una posizione in sospeso dopo l'attivazione di una posizione - un semplice algoritmo a pendolo, ma non è stato accettato,

a causa dell'errore di fondi insufficienti.

L'ordine è stato aperto dal pendolo, ma non è stato preso in considerazione e ho dovuto aprire la posizione dopo la sua apertura, quindi ho dovuto comprare molto.

Ho la sensazione che questa non sia una situazione standard.