[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non potrei andare da nessuna parte senza di te - 2. - pagina 456

 
peshihod:


Come continuazione del tema.

Ci vuole pratica per imparare.

Fate quanto segue nel terminale di trading:
1. Si deve aprire un conto demo.
Inserite i dettagli del conto nel terminale di trading: File->Login->...
2.Utilizzare un grafico aperto o aprirne uno nuovo:File->New_chart->...
3. Impostare il massimo in: Service->Settings->Charts->Max Bar Histories->250000
4. Impostare il timeframe di un minuto: Charts->Period->M1_One_minute
5.Aggiorna: Grafici->Rinfresca
6.Open Strategy Tester: Vista->Tester_strategie
Chiudi tutte le altre finestre, lascia una finestra con un grafico e la finestra Strategy Tester.
------------------
Poi in Strategy Tester nelle impostazioni:
7.Simbolo: selezionare il simbolo, che il grafico è aperto.
8.Modello: Per prezzi aperti (.....)
<<Questo modello da usare finché non c'è una funzione OrderSend() nel programma.
9.Use date: casella di controllo.
Data: _Da:<Ieri(tranne sabato e domenica)>, _a:Oggi
10.Visualizzazione: rimuovere il segno di spunta se presente.
11.Periodo: M1
12.Ottimizzazione: rimuovere la spunta se presente.
---------------------
Poi aprite MetaEditor:
13.Nel menu del terminale di trading: Service->Editor_MetaQuotes_Language
14.Scrivere un programma, per esempio:
//=====================

//=============================

15.In MetaEditor, nel menu: File->Save_as: dare un nome al file, salvare l'estensione .mq4, la cartella deve essere 'experts'.
16.In MetaEditor nel menu: File->Compile
---------------------------------------
Poi nel tester nelle impostazioni:
17.Advisor: trova e seleziona il nome del file del programma.
18. Cliccate con il mouse sul pulsante "Start".
19.
Dopo aver controllato i messaggi di Print() vediamo il risultato dell'operazione dell'applicazione.
-----------------------------------------
Per una visione più facile:
20. Cliccare con il tasto destro del mouse su qualsiasi linea del registro->Apri
Questo aprirà la cartella dei log con un file *.log, che puoi aprire con qualsiasi editor di testo, Notepad, Word, ecc.

PS
Se il file è troppo grande e nessun editor di testo è in grado di aprirlo, cancella questo file usando le funzioni di Windows e riavvia il programma premendo il pulsante "Start" nel terminale di trading. Cartella del tester: "...\Installation_folder\tester\logs", da non confondere con un altro: "...\Installation_folder\logs"

PPS
Per imparare a programmare, è necessario un compilatore di linguaggio di programmazione che trasformi la scrittura testuale delle azioni necessarie in un "programma" (leggibile dall'uomo), in un linguaggio di comandi macchina -- comprensibile per un computer. Senza pratica, è impossibile imparare. Mql4 non crea programmi separati, *.mq4 si trasforma in *.ex4, che viene eseguito da una shell di programma.
*.ex4 non può essere eseguito direttamente, l'algoritmo descritto sopra aggira questo punto.


Perché tutto questo?
 
boris.45:

Ciao a tutti, chiedo aiuto a trader esperti per ottimizzare correttamente un EA...

Non c'è risposta alla tua domanda, almeno io passo... Si possono cogliere solo singoli punti, per esempio nelle discussioni e leggere articoli nella sezione "tester", dopo di che si avranno altre domande.
 
Un'altra domanda. Quali funzioni possono essere utilizzate per elaborare la storia degli ordini chiusi
 
boris.45:

Ciao a tutti, sto chiedendo aiuto a trader esperti sulla questione della corretta ottimizzazione di un Expert Advisor. Ho scritto un Expert Advisor su due medie mobili. Nella prima fase ho fissato un periodo di movimento lungo e cambiando il valore di un periodo di movimento con un piccolo periodo ho trovato i periodi di movimento ottimali per il massimo profitto. Ho ottenuto la redditività di meno di 1,5, e il drawdown entro il 10 per cento. Ho testato usando questi parametri per il prossimo intervallo di tempo e ho ottenuto circa 70 percento di profitto, ma con grandi drawdown. Ovviamente, non potevo lavorare con drawdown del 10%. Nella seconda fase ho introdotto l'indicatore ADX per il controllo della velocità di cambiamento della tendenza, le medie mobili e il controllo dei livelli di prezzo su diversi tipi di tendenza. Come risultato dell'ottimizzazione, ho ottenuto una redditività non peggiore di 3,5 e un rapporto di drawdown non superiore al 3%. Quando ho testato sulla base di parametri ottimali, ho ottenuto una completa assenza di accordi a parametri ottimali molto buoni e una perdita dell'account a parametri ottimali peggiori. Da quanto ho capito, ho regolato i parametri del mio Expert Advisor su parametri statistici di prezzo. Ho esaminato due dozzine di Expert Advisors in Kodobase, ho esaminato articoli pubblicati e letto un certo numero di libri sul trading nel mio tempo, e la questione della corretta metodologia di ottimizzazione degli esperti manca ovunque. Il problema: come trovare la "media aurea" tra l'ottimizzazione dei parametri e il loro adattamento su un periodo di tempo specifico? Forse qualcuno conosce il sito giusto, l'articolo o semplicemente condivide la sua esperienza pratica nel risolvere questo problema?

Grazie per la vostra attenzione, spero nel vostro aiuto.



Vedi qui, e cerca "Come ottimizzare correttamente un EA" sito:mql4.com.
 

demlin:
Еще вопрос. Какими функциями можно обработать историю по закрытым ордерам

 for (orderIndex = (OrdersHistoryTotal() - 1); orderIndex >= 0; orderIndex--)
   {   
      if (!OrderSelect(orderIndex, SELECT_BY_POS, MODE_HISTORY))
      {
         Print("Ошибка при доступе к исторической базе (",GetLastError(),")");
         continue;
      }
   
      if ((OrderSymbol() != Symbol()) || (OrderMagicNumber() != MagicNumber))
      {
         continue;
      }
      
        
   //-------------------------Принимаем в расчет только ордер, закрытый недавно-----------------------
if(time<OrderCloseTime())     //(сравниваем его с хранящимся в пероеменной time) 
  {
    time=OrderCloseTime();     //если время закрытия ордера больше - ложим его в переменную
         
         
     
         int lastType = OrderType();
         double lastLots = OrderLots();
         double lastProfit = OrderProfit() + OrderSwap();
         
        // Print ("lastProfit = ", NormalizeDouble(lastProfit, 1));
  ....
......
......
       
Esempio. In grassetto.
 
semiromid:

A cosa serve tutto questo?


1. Quando aggiungi il tuo commento, non hai bisogno di ripetere tante righe, meno ripetizioni ci sono meglio è.

2. Puoi trovare un compilatore C++ e imparare lì.

 
boris.45:

Ciao a tutti, sto chiedendo aiuto a trader esperti sulla questione della corretta ottimizzazione di un Expert Advisor. Ho scritto un Expert Advisor su due diapositive. Su

...............................................................................

Ho scritto un Expert Advisor su due timeframe scorrevoli, cioè sul timeframe? Forse qualcuno conosce il sito giusto, l'articolo o semplicemente condivide la sua esperienza pratica nel risolvere questo problema?

Grazie per la vostra attenzione, spero nel vostro aiuto.


Anch'io mi sono scervellato su questo. Non credo che nessuno possa farlo meglio dell'autore.
 
Roman.:
Esempio. In grassetto.
Non sarà sufficiente((((.
 
peshihod:


1. Quando aggiungi il tuo commento, non duplicare tante righe, meno ripetizioni ci sono meglio è.

2. Puoi trovare un compilatore C++ e imparare lì.


Ti occupi della pulizia del forum, e crei i tuoi commenti flood. Hai scritto un manuale su come usare... carta igienica...MetaEditor e lo Strategy Tester. Queste informazioni aiuteranno tutti i neofiti del forum ad imparare il linguaggio di programmazione mql4.

Sai ...Smettila di fare il prepotente con i nuovi arrivati!!!

Se non volete aiutare, non volete parlare direttamente, non sapete spiegare, allora andate direttamente in un altro thread "Topic: For Virtuoso Programmers". Ti annoierai lì? Certo, ti fa sentire come Bill Gates tra i nuovi arrivati.

Per favore, non rispondere ad altre domande. Posso imparare senza di te.

 
semiromid:

Per favore, non rispondetemi più.

Per favore, non chiedete altro.