Sari la conținut

Probleme In Mt4


Postări Recomandate

Salut. Mai nou Metatrader-ul nu vrea sa ruleze functiile Alert/PlaySound/MessageBox. Am incercat sa creez programe care folosesc doar o functie alert si atat. Problema e ca in init() si deinit() merg, in start() nu. De exemplu, un program ca asta:

int init()

{}

int start()

{

Alert("Nu merge");

Sleep(1000);

}

int deinit()

{}

 

nu face absolut nimic. Din cate stiu ar trebui sa imi apara o casuta in care scrie "Nu merge" o data la fiecare secunda sau cand pretul face un nou tick. Daca de exemplu in start() scriu doar if (1==1) Alert("ceva, orice"); tot nimic nu face. Ce imi scapa?

Link spre comentariu
Distribuie pe alte site-uri

  • Răspunsuri 10
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

Din cate stiu ar trebui sa imi apara o casuta in care scrie "Nu merge" o data la fiecare secunda sau cand pretul face un nou tick. Daca de exemplu in start() scriu doar if (1==1) alert("ceva, orice"); tot nimic nu face. Ce imi scapa?

Alert() nu este egal cu alert() (cu A mic).Daca scriu cu A mic alert imi crapa la compilare pt ca nu recunoate pe "alert" ca o functie mql.Mql4 este un limbaj case sensitive , deci Alert!=alert!=aleRt!=...

 

Te inseli cu finctia Sleep()

 

Din helpul mql4 ..

The Sleep() function suspends execution of the current expert within the specified interval.

Asta insemna ca atunci cand intanleste functia Sleep asteapta perioada din paranteza dupa care este executat codul de sub Sleep().

 

Later edit:

Daca vrei sa ti se execute un cod la un numar de secunde fa asa:

while(true)
 {
   //Codul care vrei sa se execute aici..
   Sleep(x);
}
Editat de Mangusta
Link spre comentariu
Distribuie pe alte site-uri

Am scris cu "A" mare nu mic in program. Nu da eroare. Dupa cum ziceam daca pun un Alert() in init() sau deinit() merge, daca il pun in start() nu merge. Si nu pricep care e problema... Daca stii documentatia oficiala, e undeva urmatorul programel:

 

//--------------------------------------------------------------------

// possible.mq4

// To be used as an example in MQL4 book.

//--------------------------------------------------------------------

int Count=0; // Global variable

//--------------------------------------------------------------------

int start() // Special funct. start()

{

double Price = Bid; // Local variable

Count++;

Alert("New tick ",Count," Price = ",Price);// Alert

return; // exit start()

}

//--------------------------------------------------------------------

int init() // Special funct. init()

{

Alert ("Function init() triggered at start");// Alert

return; // Exit init()

}

//--------------------------------------------------------------------

int deinit() // Special funct. deinit()

{

Alert ("Function deinit() triggered at exit");// Alert

return; // Exit deinit()

}

//--------------------------------------------------------------------

 

Ce face presupun ca e simplu de dat seama. II dau copy paste asa cum il vezi, il compilez, deschid un grafic, ma duc la Navigator si trag Expert Advisoru peste el. Face la fel, imi da alerte cand incepe si se termina programul, dar nu de fiecare data cand pretul se misca un tick. Mersi de ajutor :D

Link spre comentariu
Distribuie pe alte site-uri

Am dat copy/paste.Am scris alert cu A mare in toate cele 3 locuri (init(),deinit(),start()) si am pus expetul pe grafic si mierge.Imi deschide fereastra cu alert si imi insira pe acolo valorile tickurilor , lucru pe care trebuie sa il faca codul.

Scrie cu A mare "Alert" si pune-l pe grafic.

Eu am patit o data cu meta traderul..aveam in "if" si intra aleator in if fara sa respecte conditia de intrat in "if".Problema era compilatorul care era busit.Daca nu merge cu alert cu "A" mare incearca un reinstal la platfoma metatrader.

 

/Later edit:

Am postat codul in code si automat mi-a scris alert cu a mic.Deci tind sa cred ca condul nu este problema si compilatorul sau interpretorul de ma MT.Da reinstal la MT.

Editat de Mangusta
Link spre comentariu
Distribuie pe alte site-uri

Problema s-a rezolvat. Era vorba de un singur click. Asadar, daca intampinati ceva asemanator apasati butonul "Expert Advisors" de pe bara de sus (langa New Order). Si daca in coltul din dreapta sus unde scrie numele expertului aveti un X atunci nu va merge. Multumesc Mangusta.

Link spre comentariu
Distribuie pe alte site-uri

  • 5 luni mai târziu...

Am si eu o problema:am modificat niste indicatori,pentru diverse teste si i-am salvat cu nume diferite de cele originale.Dupa ce i-am testat si nu mi-au placut i-am sters din "Indicators" dar continua sa-mi apara in fereastra "custom" din platforma.Necazul e,ca in felul asta "lista" s-a marit si ca sa ajung la "z" ma plictisesc asteptand pana ruleaza toate mortaciunile.

Deci,intrebare:cum fac sa dispara din lista "custom",indicatorii care nu mai exista?

Link spre comentariu
Distribuie pe alte site-uri

  • 1 lună mai târziu...

Am si eu o problema in MT4 atat de suparatoare si chinuitoare incat in ultima instanta m-am decis sa cer ajutor pe forum.

Problema: Am adaugat 2 indicatori si un template. Dupa ce am deschis a doua zi MT4-ul, template-ul a ramas indicatorii au disparut.

Am incercat cu Drag & Drop, i-am recompilat, i-am sters si i-am adaugat din nou , am sters toti indicatorii nefolositori....acelasi rezultat: imposibil de incarcat pe grafic. Paradoxal niciun alt custom indicator nu mai merge incarcat, desi ei imi apar in lista de navigator.

 

Solutia radicala: Am dezinstalat platforma, am downloadat alta de la alt broker am adaugat template-ul si indicatorii in cauza si la fel...la prima rulare a mers insa a doua zi cand am deschis MT4 iar au disparut. Nu inteleg unde este buba. Sa fie oare de PC?!

 

Daca aveti vreo idee, hint sau o directie de urmat v-as fi recunoscator.

 

Multumesc.

Link spre comentariu
Distribuie pe alte site-uri

Alătură-te conversației

Poți posta acum și să te înregistrezi mai târziu. Dacă ai un cont, autentifică-te acum pentru a posta cu contul tău.

Vizitator
Răspunde la acest subiect...

×   Alipit ca text avansat.   Alipește ca text simplu

  Doar 75 emoji sunt permise.

×   Linkul tău a fost încorporat automat.   Afișează ca link în schimb

×   Conținutul tău precedent a fost resetat.   Curăță editor

×   Nu poți lipi imagini direct. Încarcă sau inserează imagini din URL.

  • Navigare recentă   0 membri

    • Nici un utilizator înregistrat nu vede această pagină.

×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.