La decelerazione lineare è un errore di programmazione o una caratteristica di MT4? - pagina 3

 

Qualche altra idea intelligente?

 
-Aleks-:


E quali sono le conclusioni?
 
Vinin:
Quali sono le conclusioni?

Ahimè, ma finora sono ancora una volta giunto alla conclusione che non c'è una comunità di programmazione, ma ci sono persone che vogliono fare soldi ma non godono del loro lavoro.

Quindi sono confuso e depresso....

 
-Aleks-:

Ahimè, ma finora sono ancora una volta giunto alla conclusione che non c'è una comunità di programmazione, ma ci sono persone che vogliono fare soldi ma non godono del loro lavoro.

Nel complesso, confuso e depresso....

Mettere in ordine e ottimizzare gli EA costerà molto di più del costo iniziale.

Ci sarà il risultato desiderato?

 
C'è l'"algoritmo del pittore di Schlemiel":

Schlemiel ottenne un lavoro come pittore e dovette dipingere in mezzo alla strada. Il primo giorno, ha preso un barile di vernice e ha segnato 300 metri di strada.
-Bene! - ha detto il capo - Tu lavori velocemente! - E gli ha pagato un centesimo.

Il giorno dopo, Schlemiel ha percorso solo 150 metri.

- Beh, non così bene come ieri, ma si lavora comunque velocemente. 150 metri non sono pochi", disse il capo e lo pagò.

Un altro giorno dopo, Schlemiel ha tracciato 30 metri di strada.
- Bcero 30 metri! - Il capo si arrabbiò: "Non va bene. Il primo giorno hai fatto dieci volte tanto. Che cosa è successo?

- Non posso farci niente", dice Schlemil. Ogni giorno devo allontanarmi sempre di più dal barile di vernice...
 
Vinin:

Portare i consulenti a regime e ottimizzarli costerà molto di più dei costi iniziali.

Ci sarà il risultato desiderato?

Nella fase di miglioramento della strategia, e soprattutto della tattica, dobbiamo ordinare ogni sorta di additivi per testare l'idea, e in questa fase possiamo tollerare la lentezza dell'Expert Advisor.

Ma sono stato sorpreso da una velocità 6 volte più lenta rispetto alla versione principale dell'EA. L'ottimizzazione della sintonizzazione di EA è necessaria almeno per la raccolta di dati analitici.

Ho ragione di capire che è impossibile leggere il codice di altre persone ed è meglio ordinare un'altra versione dell'EA dopo che avremo ottenuto un successo, ma deve essere scritto da zero, e solo in questo caso, possiamo essere sicuri di alta velocità e affidabilità? Personalmente pensavo che il compito del compilatore fosse quello di tagliare le operazioni che si duplicano a vicenda, per esempio...

 
MetaQuotes:
C'è l'"algoritmo del pittore di Schlemiel":

Schlemiel ottenne un lavoro come pittore e dovette dipingere in mezzo alla strada. Il primo giorno, ha preso un barile di vernice e ha segnato 300 metri di strada.
-Bene! - disse il capo - Tu lavori velocemente! - E gli ha pagato un centesimo.

Il giorno dopo, Schlemiel ha percorso solo 150 metri.

- Beh, non così bene come ieri, ma si lavora comunque velocemente. 150 metri non sono insignificanti", disse il capo e gli pagò il denaro.

Un altro giorno dopo, Schlemiel ha disegnato 30 metri di strada.
- Bcero 30 metri! - Il capo si è arrabbiato, non va bene. Il primo giorno hai fatto dieci volte di più. Che cosa è successo?

- Non posso farci niente", dice Schlemil. Ogni giorno devo allontanarmi sempre di più dal barile di vernice...

Non è una "favola" inequivocabile, in altre parole non c'è modo di scrivere codice in modo che non rallenti e allo stesso tempo non riscriverlo da zero?

E il codice che ho allegato è abbastanza adeguato?

 
Dai primi post, ho intuito quale potesse essere il problema, ma solo quando ho guardato il codice sorgente ho finalmente capito... Mio Dio, è stato almeno scritto da un programmatore o da uno studente dell'accademia dell'acqua?
 
micle:
Dai primi post, ho intuito quale potesse essere il problema, ma alla fine l'ho capito solo quando ho visto il codice sorgente... Mio Dio, è stato almeno scritto da un programmatore o da uno studente dell'accademia dell'acqua?

Intrigante!

Allora qual è il problema e, soprattutto, come risolverlo?

Non credo che sia una cattiva idea...

File:
SL3000.png  81 kb
 
-Aleks-:

Intrigante!

Allora qual è il problema e, cosa più importante, come risolverlo?

Il problema è la duplicazione del codice, troppe dichiarazioni condizionali. In effetti, il codice consiste del 99% di linee che includono in qualche modo l'operatore condizionale If. Sono sicuro che se si guarda dentro, il numero di confronti può essere ridotto di 10 volte. Questo non solo rallenta l'esecuzione, ma questo codice è anche difficile da leggere. Una persona che fa aggiunte ha almeno 2 compiti principali:

1 - non romperlo

2 - Aggiungere le funzionalità necessarie.

Il codice illeggibile causa comunque un'ulteriore duplicazione di tutti i tipi di controlli e confronti - e anche questo è una spesa aggiuntiva. Guardando il codice, personalmente mi ricordo di me stesso circa 25 anni fa, quando ho appena iniziato a programmare, e l'ho imparato dal manuale del PC Atari 800XL senza alcun insegnante, solo perché era interessante.

Motivazione: