[ARCHIVIO]Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non posso andare da nessuna parte senza di te - 5. - pagina 248

 

gyfto:
//C++

MT4_EXPFUNC int __stdcall GetStrAddress(const char *str) {    
    MqlStr* s = (MqlStr*)str;
    return (int)s->string; 
}
//MQL4

Affinché altri non soffrano allo stesso modo, ho allegato l'intero progetto zippato. Con le fonti, in modo che possano vedere che non è un virus. Non ho avuto il tempo di controllare cosa è compilato da VC++ 6.0 e cosa è spazzatura. StrAddress.dll è nella cartella Debug.

Ecco come stanno le cose:
MT4_EXPFUNC int stdcall GetStrAddress(LPCSTR szStr)
 {    
  return(int(szStr));
 }
 
silhouette:

Per qualche motivo, il terminale si è bloccato durante il test. Ora, quando lo si accende, inizia ad usare circa 150 mb di memoria e si blocca. Stavo per reinstallare, ma ho spostato tutti i miei file prima di farlo. Quando ho aperto le cartelle ho scoperto che non tutti i file che avevo creato erano lì. Dove sono gli altri?


Ho risolto il problema della posizione dei file, ma non sono ancora riuscito a risolvere il problema della sospensione. Dopo aver reinstallato si blocca alla seconda esecuzione (la prima funziona bene). Come ho detto, i primi hangs sono avvenuti durante i test. Sono andato nei file e ho scoperto che il file history nella cartella tester occupa più di 700 mb! Prima di questo avevo caricato la cronologia e messo il terminale offline. Ha caricato la storia per 2 anni in pochi minuti e poi l'ha convertita in altri intervalli di tempo. Quale potrebbe essere la ragione del congelamento?
 
TarasBY:
Ho deciso di portare il look di questo Idyuk al "solito" (mi perdoni l'autore). Il risultato (in archivio).


Igor, ci sei riuscito in modo glorioso. Finisci questo tema. :)
 
AndEv:
In realtà, non hai bisogno di nient'altro se non di OHLC. E non si tratta del codice. Quando i grafici sono aperti, le serie temporali sono create nella memoria virtuale e tutte le quotazioni in arrivo sono memorizzate nella memoria principale senza essere scritte nei file della cronologia. I file della cronologia vengono scritti solo quando si chiude MT4. Quando si richiedono dati senza aprire il grafico corrispondente, le serie temporali non vengono create, ma i dati scaricati vengono scritti direttamente nei file della cronologia. Per ottenere questi dati, abbiamo bisogno di interrogare di nuovo e solo in questo caso otterremo dati freschi (dal file). Volevo provare a simulare in qualche modo la presenza di un grafico aperto, per ottenere i dati dalla RAM, non da un file.


Questo sembra essere ciò di cui avete bisogno:

https://www.mql5.com/ru/code/9968

 

Per la prima volta ho notato questo errore dell'indicatore zigzag DT_ZZ_optomized. Potrebbe essere a causa dell'appartamento di oggi? O devo correggere qualcosa nel codice? Non è sicuro, non è possibile!

grafic

 
Puoi dirmi se c'è un indicatore che mostra il prezzo alto e basso di ogni candela e se sì, come si chiama?
 
alex12:
Puoi dirmi se c'è un indicatore che mostra il prezzo alto e basso di ogni candela e se sì, come si chiama?

Se passi il mouse su una candela, vedrai i dati di questa candela, incluso il prezzo più alto (High) e più basso (Low).


 
Grazie, ma non ho bisogno dei dati di ogni candela, ho bisogno di un indicatore che disegni il prezzo alto e basso di ogni candela - preferibilmente con una linea continua.
 
alex12:
Grazie, ma non ho bisogno dei dati di ogni candela, ho bisogno di un indicatore che disegni il prezzo alto e basso di ogni candela - preferibilmente con una linea continua.
Disegna due MA con periodo=1, una "Apply to: High", l'altra "Apply to: Low".
 
:) E un whisky per lo zio Vita. Per la scienza (nessuna faccina sorridente).