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

 
Artyom Trishkin:

datetime è ulong

Grazie mille!
 
Vitaly Gorbunov:

Non avresti dovuto correggere subito il suo codice, l'uomo semplicemente non capisce le chiavi elementari del compilatore, e per scrivere un codice normale devi conoscere queste sottigliezze e usare la documentazione!

Ho fatto notare l'antichità del video e se l'avesse copiato esattamente come era nel video ci sarebbe riuscito. Ma lui si è offeso e si è lamentato del post, il che ha portato alla sua cancellazione, mentre lui stesso non ha nemmeno intenzione di indagare!

Si scopre che non è stato del tutto inutile. Non ha nemmeno provato a capire la differenza nel codice presentato e non funziona nemmeno così.

In generale, non mi piace nemmeno sollecitare le correzioni del codice. Ma qui si è rivelato che "non è il caso". Sono stato interessato alle biblioteche per molto tempo, ho anche avuto la mia biblioteca personale. Ma avendo capito che devo passare l'intera libreria insieme al codice dell'Expert Advisor o dell'indicatore, e spiegare cosa metterci... Non tutti lo capiscono subito, ho deciso di lasciar perdere. Questa è una risposta alla replica

E per rimediare, ho dovuto riordinare tutto e ricordare ciò che avevo dimenticato. Questo mi ha lasciato il codice finito.
 
Sergey Maksiutenko:

Non preoccupatevi.

Capisco che non potete aiutarmi.

Ho rimosso #property strict, ho rimosso tutte le proprietà tranne#propertylibrary

non aiuta.

Prova a inserire il mio progetto e trova l'errore,

e postare il codice corretto, se questo è il problema.

Forum sul trading, sistemi di trading automatico e tester di strategie

Qualsiasi domanda, aiuto e discussione su algoritmi e codici per i principianti di MQL4

Alexey Viktorov, 2018.10.03 11:56


Ho lavorato su questo e ho imparato tutto quello che avevo già dimenticato. Questo mi ha lasciato con un codice finito.
C'è un codice funzionante e pronto a partire.
 
Ha, ho capito il problema! Mi chiedo perché tutto funziona per me e non per lui! Se può mostrarmi quali file sono nel suo \Include \Libraries \Experts \Scripts, forse sarebbe anche possibile presentare un errore al Service Desk!
 
Sergey Maksiutenko Bene, sono pronto a postare il contenuto delle cartelle giuste, altrimenti ti considererò un troll! Perché sono riuscito a riprodurre questo problema e so cosa c'è che non va!
 

Sono seduto su XP, MT4 1090 e ne consegue che non avrò nessun aggiornamento.

Quando cambio scala temporale in MT4il grafico si sposta costantemente a sinistra o a destra - se passo da una scala più grande a una più piccola (ad esempio da giornaliera a oraria) i dati sono vecchi di mezzo anno sullo schermo. Se passo da una scala più piccola a una più grande, mostra solo le ultime 10 candele. Devo eseguire continui gesti per rendere il grafico accettabile, il che è fastidioso.

Per comodità, ho scritto un codice che cambia la scala sulla tastiera e sposta il grafico alla fine:


void OnChartEvent(const int id,

const long &lparam,

const double &dparam,

const string &sparam)

{

stringa Key1_Value="1";

stringa Key2_Value="2";

stringa Key3_Value="3";


if(StringGetChar(Key1_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,5);

if(StringGetChar(Key2_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,60);

if(StringGetChar(Key3_Value,0)==lparam)

ChartSetSymbolPeriod(0,NULL,1440);

ChartNavigate(0,CHART_END,0);

}


Tutto funziona, ma ChartNavigate "congela" il grafico in posizione e non lo lascia scorrere a sinistra. Come risolvere il problema?

 
psyman:

Sono seduto su XP, MT4 1090 e ne consegue che non avrò nessun aggiornamento.

Quando cambio scala temporale in MT4il grafico si sposta costantemente a sinistra o a destra - se passo da una scala più grande a una più piccola (ad esempio da giornaliera a oraria) i dati sono vecchi di mezzo anno sullo schermo. Se passo da una scala più piccola a una più grande, mostra solo le ultime 10 candele. Devo eseguire continui gesti per rendere il grafico accettabile, il che è fastidioso.

Per comodità, ho scritto un codice per cambiare la scala sulla tastiera e spostare il grafico alla fine:

Lì c'è un pulsante per far sì che il grafico si sposti da solo.

1

 


Se voglio disegnare una linea di tendenza, l'autoscroll non permette di scorrere il grafico verso sinistra.

Soprattutto perché funziona solo quando arrivano nuove zecche.

 
psyman:


Lo scorrimento automatico impedisce lo scorrimento del grafico verso sinistra se, per esempio, è necessario tracciare una linea di tendenza.

Soprattutto perché funziona solo quando arrivano nuove zecche.

poi come questo

void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
{
if (id==CHARTEVENT_KEYDOWN)
   {
   if(lparam=='1')
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_M5);

   if(lparam=='2')
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_H1);

   if(lparam=='3')
      ChartSetSymbolPeriod(0,_Symbol,PERIOD_D1);

    ChartNavigate(0,CHART_END,0);
   }
}
 
Grazie mille.