Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 684

 
Sprut112:
Come spiegare all'Expert Advisor (Ma standard) che dovremmo comprare (vendere) solo al momento dell'incrocio delle medie, e non in generale, quando Ma_1> Ma_2. E compra costantemente, non può fermarsi

È necessario ricordare nella variabile che l'attraversamento è già avvenuto, e quando attraversa di nuovo, riscrivere la variabile che ha già attraversato di nuovo. Questa è la variante №1.

Guardate la storia delle transazioni, se l'ultimo acquisto, quindi attendere il segnale di vendita, e poi si alternano come questo, questo modo è più affidabile

 
Vitaly Muzichenko:

È necessario ricordare nella variabile che l'attraversamento è già avvenuto, e quando attraversa di nuovo, riscrivere la variabile che ha già attraversato di nuovo. Questa è la variante №1.

Guardate la storia degli scambi, se l'ultimo acquisto, poi aspettare il segnale di vendita, e poi alternare in un cerchio, questo modo è più affidabile

Qualcosa di molto saggio, non puoi aggiungere qualcosa alla condizione?
 
Sprut112:
Non è complicato aggiungere qualcosa alla condizione stessa?

Qual è il problema? Non è difficile lavorare con la storia, ed è ancora più facile scrivere l'intersezione in una variabile.

 
Vitaly Muzichenko:

È necessario ricordare nella variabile che l'attraversamento è già avvenuto, e quando attraversa di nuovo, riscrivere la variabile che ha già attraversato di nuovo. Questa è la variante №1.

Guardate la storia delle transazioni, se l'ultimo acquisto, aspetteremo il segnale di vendita, e così ci alterneremo intorno, questo metodo è più affidabile

Se stiamo parlando dell'ultimo incrocio della MA, il trading lungo la MA è di solito più facile:

1. controllare la nuova barra

2. al nuovo bar controlliamo la condizione:

ma_1[1] >ma_2[1] && ma_1[2]<ma_2[2] - crossover top-down

o ma_1[1]<ma_2[1] && ma_1[2]>ma_2[2] - crossover top-down

se non fa alcuna differenza quale MA attraversa dall'alto, allora si usano entrambe le condizioni:

if((ma_1[1]>ma_2[1]  && ma_1[2]<ma_2[2]) || (ma_1[1]<ma_2[1]  && ma_1[2]>ma_2[2])) // пересечение!!!
 
Vitaly Muzichenko:

Qual è il problema? Non è difficile lavorare con la storia, ed è ancora più facile scrivere l'intersezione in una variabile.

Va bene, grazie.
 
Igor Makanu:

Quando si tratta dell'ultimo incrocio della MA, il trading sulla MA è di solito più facile:

1. controllare la nuova barra

2. Al nuovo bar controlliamo la condizione:

ma_1[1] >ma_2[1] && ma_1[2]<ma_2[2] - crossover top-down

o ma_1[1]<ma_2[1] && ma_1[2]>ma_2[2] - crossover top-down

se non fa alcuna differenza quale MA attraversa dall'alto, allora si usano entrambe le condizioni:

Beh, questo ha ancora senso.
 

Amici, potreste dirmi perché durante l'ottimizzazione di un EA, la cartella \Terminal\tester\logs accumula enormi file di log del seguente contenuto:

2 00:00:01.796 2014.04.01 10:57:30 Tester: #102 cancellato per scadenza

2 00:00:02.221 2014.04.24 08:59:59 Tester: #103 cancellato per scadenza

2 00:00:02.326 2014.04.30 12:57:30 Tester: #104 cancellato per scadenza

2 00:00:02.852 2014.05.29 10:20:00 Tester: ordine #105, vendere 0,10 EURUSD è aperto a 1,35871

0 00:00:02.852 2014.05.29 10:22:30 Tester: stop loss #105 a 1,35910 (1,35876 / 1,35926)

2 00:00:02.941 2014.06.04 01:20:00 Tester: ordine #106, compra 0,10 EURUSD è aperto a 1,36306

0 00:00:02.941 2014.06.04 01:22:30 Tester: stop loss #106 a 1,36259 (1,36253 / 1,36303)

2 00:00:03.133 2014.06.13 14:03:20 Tester: ordine #107, vendere 0,10 EURUSD è aperto a 1,35382

E alcuni dei miei EA scrivono questi log e altri no. Non riesco a capire.

 


Com'è possibile?

 
Come posso rendere immutabili le variabili di input nel codice EA? Per esempio p, sto usando un EA su un Macd e non voglio che le sue variabili siano visualizzate nella finestra delle impostazioni
 
Sprut112:
Come rendere le variabili di input immutabili nel codice EA? Per esempio p, sto usando un EA su Macd e non voglio che le sue variabili siano visualizzate nella finestra delle impostazioni

leggere l'aiuto premendo F1 nel codice sorgente su "commands" su input o extern ;)