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

 
ukrop1203:
No, solo "caricato con successo" e "rimosso".

Sì, l'ho visto, ho provato a caricare il tuo codice, c'è uno stack overflow di

2019.03.26 19:38:16.053 Stack overflow

provato a spostare le variabili descritte globalmente nella sezione OnStart() non ha aiutato, forse da qualche parte nel codice hai una grande quantità di dati, è necessario capire cosa stai facendo, e il codice non è ottimale scritto, non posso così veloce aiuto


 

Karoche mi è sfuggito questo nel log, il mio script usa grandi array di doppi (3 array di 864000). Ridotto di 10 volte, tutto funziona, sono a un livello basso non è versato, dimmi che tipo di ferro ha bisogno di pompare per far funzionare queste cose, basta aggiungere RAM? Certamente non comprerò uno speciale per il prog, lo riscriverò, mi chiedevo solo.


 
ukrop1203:

Karoche mi è sfuggito questo nel log, il mio script usa grandi array di doppi (3 array di 864000). Ridotto di 10 volte, tutto funziona, sono a un livello basso non è versato, dimmi che tipo di ferro ha bisogno di pompare per far funzionare queste cose, basta aggiungere RAM? Certamente non comprerò uno speciale per il prog, lo riscriverò, mi chiedevo solo.


3 x 8 x 864000 = 20736000 byte

questo è troppo, mt4 è 32 bit, non voglio cercare informazioni, ma penso che i programmi a 32 bit abbiano 2 gb di memoria allocata

Il mio dispositivo non ha nulla a che fare con questo.

ZS: 20736000 byte ricalcolati sono 20 Mb, non molto in linea di principio, probabilmente hai degli array descritti staticamente, prova a passare agli array dinamici e poi ridimensiona, forse ti aiuterà - non ho letto per molto tempo come viene allocata la memoria in MT, ma lo script è andato in crash a causa di uno stack overflow - da qualche parte la memoria è molto riservata

 
Come creare un array tramite new in modo che venga scritto in chem? Ho solo capito come creare una classe con un array nel campo, ma sarebbe strano usarlo, in c++ sembra così: int *array = new int[n]; Non funziona qui.
 
ukrop1203:
Come creare un array tramite new in modo che venga scritto in chem? Ho solo capito come creare una classe con un array nel campo, ma sarebbe strano usarlo, in c++ sembra così: int *array = new int[n]; Non funziona qui.
double x[];
ArrayResize(x,1000);

https://docs.mql4.com/ru/array/arrayresize

ArrayResize - Операции с массивами - Справочник MQL4
ArrayResize - Операции с массивами - Справочник MQL4
  • docs.mql4.com
При успешном выполнении функция возвращает количество всех элементов, содержащихся в массиве после изменения размера; в противном случае возвращает -1 и массив не меняет размеры. Функция может быть применена только к динамическим массивам. При этом необходимо иметь ввиду, что нельзя изменять размер для динамических массивов, назначенных в...
 
Potete dirmi come visualizzare il prezzo ASK cinque caratteri dopo il punto in Print invece di quattro?
 
nkss2020:
Potete dirmi come visualizzare il prezzo ASK cinque caratteri dopo il punto in Print invece di quattro?
Print("Ask: ",DoubleToString(Ask,5));
 
C'è una data per esempio 26.03.2019, come possiamo calcolare 3 giorni da questa per arrivare al commento 23.03.2019?
 
ponochka:
Data 26.03.2019 per esempio, come convertirla in 3 giorni, in modo che il Commento venga 23.03.2019?
Data-3*PeriodoSecondi(PERIOD_D1);
 
Alexey Viktorov:

Sei tu che ci hai messo 24 ore.

ZS. E tu sei quello che si è rimosso...