Fragen von Anfängern MQL4 MT4 MetaTrader 4 - Seite 40

 
Игорь:

Ich habe es auf ein leeres Diagramm gelegt, alles wird angezeigt und zählt wie es soll

Ich schließe und starte das Terminal Screenshot 1

Ich habe die TF geändert und alles erscheint wieder und funktioniert bis zum nächsten Neustart

Ich möchte nur vermeiden, die TF anzukreuzen, weil ich immer noch bezahlte Indizes habe, die 1-2 Minuten für die Neuberechnung brauchen.

Ich habe es mit einem Fenster und ohne Fenster versucht.

das Problem tritt beim Starten auf

Ich glaube, mit der Einstellung für die Textmarke stimmt etwas nicht.

 
Игорь:

Problem beim Starten

Ich vermute, dass etwas mit der Einstellung der Textbeschriftung nicht stimmt.

Eine Sache, die ich nicht verstehe, ist, warum Sie alle Variablen in Ihrem Code initialisiert haben?

wie diese

double s = ....

Das alles sollte vor init() stehen, aber ohne Ausdrücke

double e,p,r,s,t;


und der Code enthält nur Ausdrücke

void init()

{

s=...

}

void start()

{

r=...

t=...

}

Spielen Sie ein wenig herum, bauen Sie den Code korrekt um.

Und ich hoffe, dass alles funktionieren wird.

 
Renat Akhtyamov:

Eine Sache verstehe ich nicht - warum werden alle Variablen in Ihrem Code initialisiert?

wie diese

double s = ....

Das alles sollte vor init() stehen, aber ohne Ausdrücke

double e,p,r,s,t;


Ich habe nur Ausdrücke im Code.

void init()

{

s=...

}

void start()

{

r=...

t=...

}

Spielen Sie ein wenig herum, bauen Sie den Code korrekt um.

Und ich hoffe, dass alles funktionieren wird.

Ich bin Autodidakt und habe diesen Code nicht geschrieben, sondern ihn von seiner Website gestohlen.

Aber er wird Ihre Fragen nicht beantworten und behebt Fehler gegen eine Gebühr.

der Code funktioniert, ich benutze ihn schon seit langem und habe viele nützliche Informationen darüber geschrieben

aber alle haben das gleiche Problem nach einem Neustart

Ich kämpfe schon seit langem damit, aber ich werde Ihre neueste Version ausprobieren.

Ich gebe Ihnen Bescheid!

 
Игорь:

Ich bin Autodidakt und habe diesen Code nicht geschrieben, sondern der professionelle Programmierer KIMIV IGORI auf seiner Website

aber er wird Ihre Fragen nicht beantworten und behebt Fehler nur gegen eine Gebühr.

der Code funktioniert, ich benutze ihn schon seit langem und habe viele nützliche Informationen darüber geschrieben

aber alle haben das gleiche Problem nach einem Neustart

Ich kämpfe schon seit langem damit, aber ich werde Ihre neueste Version ausprobieren.

Ich werde Bericht erstatten!

Ich verstehe nicht warum, aber beim Neustart flucht er an dieser Stelle

DoubleToStr(s/AccountBalance()*100.0, 2)

error 2016.12.20 21:31:43.360 test USDCHF,H4: zero divide in 'test.mq4' (93,26) - Division durch Null.


 
Sergey Gritsay:

Ich weiß noch nicht warum, aber beim Nachladen flucht er an dieser Stelle

DoubleToStr(s/AccountBalance()*100.0, 2)

error 2016.12.20 21:31:43.360 test USDCHF,H4: zero divide in 'test.mq4' (93,26) - Division durch Null.


Legen Sie eine Pause in inite ein oder machen Sie eine Art Prüfung für balance == 0, Expert Advisor lädt schneller als das Terminal sich mit dem Server verbindet und der Saldo ist im Moment des Starts unbekannt, d.h. Null.
 

Hallo alle)

Ich bin neu in mql4 und ich komme mit alles selbst... Ich bin neu bei mql4, also seid bitte nicht zu hart zu mir).

Ich möchte meine Handelsstrategie automatisieren und benutze sie, um einen Expert Advisor zu schreiben.

Im Abschnitt"Kommentar" ist es erforderlich, dass die Informationen in der Tabelle in einem Tabellenlayout angezeigt werden. Sagen wir, ich brauche drei Spalten und etwa 10 Zeilen.
BITTE!!! wie mache ich das ...

 
Sergey Gritsay:

Ich weiß noch nicht warum, aber beim Nachladen flucht er an dieser Stelle

DoubleToStr(s/AccountBalance()*100.0, 2)

error 2016.12.20 21:31:43.360 test USDCHF,H4: zero divide in 'test.mq4' (93,26) - Division durch Null.


Da das Diagramm zwar geladen, aber noch nicht mit dem Server verbunden ist, ist das Ergebnis eine Division durch Null.

Wir müssen prüfen, ob: if(Kontostand()== 0) { return(0); }

Zeile ersetzen:

// +"пипс "+DoubleToStr(s/AccountBalance()*100, 2)+"%", ecText, 130, 5, eiCorner);

+"пипс "+DoubleToStr(s/(AccountBalance()==0?1:AccountBalance())*100, 2)+"%", ecText, 130, 5, eiCorner);
 
Игорь:

Ich bin Autodidakt und habe diesen Code nicht geschrieben, sondern der professionelle Programmierer KIMIV IGORI auf seiner Website

aber er wird Ihre Fragen nicht beantworten und behebt Fehler nur gegen eine Gebühr.

der Code funktioniert, ich benutze ihn schon seit langem und habe viele nützliche Informationen darüber geschrieben

aber alle haben das gleiche Problem nach einem Neustart

Ich kämpfe schon seit langem damit, aber ich werde Ihre neueste Version ausprobieren.

Ich werde Ihnen Bescheid geben!

Ich habe einen Fehler in Ihrem Code behoben und die Anzeige der Informationen ein wenig verbessert.
Dateien:
test.mq4  56 kb
 
Sergey Gritsay:
Igor hat einen Fehler in Ihrem Code behoben und die Anzeige der Informationen ein wenig angenehmer gestaltet.

Vielen Dank, lieber Mann, ich werde eine Woche lang mit dem Code beschäftigt sein!

Ihr Bild ist großartig!

Ich werde es benutzen!

Ich würde meine gerne benutzen, es ist alles klar und es gibt nicht viel funktionierenden Code!

Nichts für ungut, ich werde Ihre auch benutzen - aber ich habe noch nicht so viel Zeit!

Vielleicht wird jemand meine benutzen!

 
Vitaly Muzichenko:

Da das Diagramm zwar geladen wurde, aber keine Verbindung zum Server bestand, ist das Ergebnis eine Division durch Null.

Wir müssen ein Häkchen setzen, wenn: if(Kontostand()== 0) { return(0); }

Ersetzen Sie die Leitung:

// +"пипс "+DoubleToStr(s/AccountBalance()*100, 2)+"%", ecText, 130, 5, eiCorner);

+"пипс "+DoubleToStr(s/(AccountBalance()==0?1:AccountBalance())*100, 2)+"%", ecText, 130, 5, eiCorner);

Ich habe keine Fehler erhalten, die ich gesucht habe!

Ein RIESIGES DANKESCHÖN, dass endlich alles funktioniert hat !!!!

Ich bin sehr froh, dass ich endlich meine Arbeit erledigt habe!!!

Nochmals vielen Dank !!!!!!!!!!!!!!!!!!!

Grund der Beschwerde: