Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 552

 
Vitalii Ananev:
Wenn Sie rsi und stochastic in einem Indikator benötigen, kann dieser mit Hilfe der mql-Sprache implementiert werden. Wenden Sie sich an den freiberuflichen Dienst.
Nicht verfügbar. Ich werde es selbst tun. DANKE!
 
Vitalii Ananev:

Die Bedingung für das Durchbrechen des Niveaus.

z.B. Schlusskurs eines Kerzenständers

doppelter Uroven; - Niveau

wenn (Close[2]<Uroven && Close[1]>=Uroven) von unten nach oben

wenn (Close[2]>Uroven && Close[1]<=Uroven) von oben nach unten.

Ich danke Ihnen.
 

Hallo, bin auf dieses Problem gestoßen.

Es gibt eine Bedingung in dem Programm: Wenn eine Variable (in der der Gewinn bestimmter Aufträge berechnet wird) kleiner ist als der Ausdruck aus mehreren anderen Variablen, werden als nächstes mehrere Funktionen ausgeführt.

Ich werde nicht sofort genau beschreiben, was und wie es berechnet wird, da dies zu viel wäre. Vielleicht wird die Antwort sehr einfach sein, weil ich sie nicht kenne:)

Bei der Ausführung des Programms stellt sich also heraus, dass diese Bedingung erfüllt ist, obwohl die erste Variable in Wirklichkeit viel größer ist als die andere (ich habe zum Beispiel die Werte 146,3412 und 0,41 im Tester ausgegeben).

Alle Variablen in dieser Bedingung sind vom Typ double und werden separat korrekt berechnet.

Können Sie mir sagen, woran das liegen könnte?

 
Maria Baburina:

Hallo, bin auf dieses Problem gestoßen.

Es gibt eine Bedingung in dem Programm: Wenn eine Variable (in der der Gewinn bestimmter Aufträge berechnet wird) kleiner ist als der Ausdruck aus mehreren anderen Variablen, werden als nächstes mehrere Funktionen ausgeführt.

Ich werde nicht sofort genau beschreiben, was und wie es berechnet wird, da dies zu viel wäre. Vielleicht wird die Antwort sehr einfach sein, weil ich sie nicht kenne:)

Bei der Ausführung des Programms stellt sich also heraus, dass diese Bedingung erfüllt ist, obwohl die erste Variable viel größer ist als die andere (z. B. die im Tester angezeigten Werte - 146,3412 und 0,41).

Alle Variablen in dieser Bedingung sind vom Typ double und werden separat korrekt berechnet.

Können Sie mir sagen, woran das liegen könnte?

Die Lösung liegt wirklich an der Oberfläche - hier:Telepath Club
Клуб Телепатов (^_^) - MQL4 форум
Клуб Телепатов (^_^) - MQL4 форум
  • www.mql5.com
Клуб Телепатов (^_^) - MQL4 форум
 
Karputov Vladimir:
Die Lösung liegt wirklich an der Oberfläche - hier:Telepath Club

Voraussetzung:

if (ProfitSellDBL < (Profit_Upgr+(Tral_Start__Upgr-Tral_Size__Upgr)*TV*SumLotSellDBL)) CloseTriggerS_Upgrade=0;


ProfitSellDBL wird hier berechnet

   for (i=totalsellDBL-1; i>=0; i--)
      {
      ReturnValueBool=OrderSelect(DoubleSell[i][0],SELECT_BY_TICKET);
      SumLotSellDBL+=OrderLots();
      j=i+totalbuyDBL;
      MassivDBL[j][0]=OrderProfit()+OrderCommission()+OrderSwap();
      MassivDBL[j][1]=DoubleSell[i][0]; 
      ProfitSellDBL+=MassivDBL[j][0];
      LastPriceSellDBL = OrderOpenPrice(); 
      LastLotSellDBL = OrderLots();      
      }

Gewinn_Upgr = 0,01

Tral_Start__Upgr wird mit einer externen Variablen vom Typ int gleichgesetzt und ist gleich 5.

Tral_Size__Upgr ist ebenfalls gleich 4

TV - Tick-Wert, =10

SummeLotSellDBL = 0,04

 
Vitalii Ananev:

Die Bedingung für das Durchbrechen des Niveaus.

z.B. Schlusskurs eines Kerzenständers

doppelter Uroven; - Niveau

wenn (Close[2]<Uroven && Close[1]>=Uroven) von unten nach oben

wenn (Close[2]>Uroven && Close[1]<=Uroven) von oben nach unten.

Tut mir leid, das funktioniert nicht. Ich werde es in einem Bild beschreiben. Die rote gestrichelte Linie ist ein Indikator, die blauen Linien sind Niveaus.

Bedingung für die Eröffnung des Kaufs: wenn der Indikator ein beliebiges Niveau von unten nach oben überschreitet.

Bedingung für die Schließung des Kaufs (bei gleichzeitiger Eröffnung des Verkaufs): wenn der Indikator ein beliebiges Niveau von oben nach unten überschreitet, mit Ausnahme des Niveaus, an dem der Auftrag eröffnet wurde.

Tut mir leid, ich langweile Sie sicher schon.

Dateien:
 
Maria Baburina:

Voraussetzung:


ProfitSellDBL wird hier berechnet

Gewinn_Upgr = 0,01

Tral_Start__Upgr wird mit einer externen Variablen vom Typ int gleichgesetzt und ist gleich 5.

Tral_Size__Upgr ist ebenfalls gleich 4

TV - Tick-Wert, =10

SummeLotSellDBL = 0,04

Pferde und Menschen verwechselt...Typenumwandlung
 
edutak:

Tut mir leid, es funktioniert nicht. Ich beschreibe es mit einem Bild. Die rote gestrichelte Linie ist der Indikator, die blauen Linien sind die Niveaus.

Bedingung für die Eröffnung des Kaufs: wenn der Indikator ein beliebiges Niveau von unten nach oben überschreitet.

Bedingung für die Schließung des Kaufs (bei gleichzeitiger Eröffnung des Verkaufs): wenn der Indikator ein beliebiges Niveau von oben nach unten überschreitet, mit Ausnahme des Niveaus, bei dem der Auftrag eröffnet wurde.

Tut mir leid, ich langweile Sie sicher schon.

Wenn sie sich von oben nach unten kreuzt, sehen Sie sich den Eröffnungskurs des Auftrags an und stellen fest, welche Linie er bei der Eröffnung überschritten hat. Wenn die gleiche Linie jetzt überschritten wird, sollte der Auftrag natürlich nicht geschlossen werden.
 
Ist es möglich, die Diagramme für den Kontostand und das Aktienkonto online im Fenster für das Währungspaar anzuzeigen? Wo kann ich die entsprechende Software erhalten?
 
edutak:

Tut mir leid, es funktioniert nicht. Ich beschreibe es mit einem Bild. Die rote gestrichelte Linie ist der Indikator, die blauen Linien sind die Niveaus.

Bedingung für die Eröffnung des Kaufs: wenn der Indikator ein beliebiges Niveau von unten nach oben überschreitet.

Bedingung für die Schließung des Kaufs (bei gleichzeitiger Eröffnung des Verkaufs): wenn der Indikator ein beliebiges Niveau von oben nach unten überschreitet, mit Ausnahme des Niveaus, an dem der Auftrag eröffnet wurde.

Tut mir leid, ich langweile Sie sicher schon.

Setzen Sie anstelle von Close[2] den Indikatorwert auf den zweiten Balken (z.B. iRSI(.......,2) ), und anstelle von Close[1] den Indikatorwert auf den ersten Balken. Und uroven ist der Wert des Levels.

Und den Rest haben Sie bereits oben erfahren.

Grund der Beschwerde: