Fragen Sie! - Seite 86

 
int start()

{

int Grenze;

int counted_bars=IndicatorCounted();

//---- Prüfung auf mögliche Fehler

if(gezählte_Balken<0) return(-1);

//---- der letzte gezählte Balken wird neu gezählt

if(gezählte_Balken>0) gezählte_Balken--;

limit=Balken-gezählt_Balken;

//---- Hauptschleife

for(int i=0; i<limit; i++)

{

//---- ma_shift auf 0 gesetzt, da SetIndexShift zuvor aufgerufen wurde

ExtBlueBuffer=iMA(NULL,0,JawsPeriod,0,MODE_SMMA,PRICE_MEDIAN,i);

ExtRedBuffer=iMA(NULL,0,ZähneZeitraum,0,MODE_SMMA,PREIS_MEDIAN,i);

ExtLimeBuffer=iMA(NULL,0,LipsPeriod,0,MODE_SMMA,PRICE_MEDIAN,i);

}

//---- erledigt

return(0);

}

Hallo Programmierer,

Ich versuche, einige MQL4-Funktionen durchzugehen und stieß auf diesen Beispielcode wie oben. Könnte mir jemand freundlicherweise erklären:

1.) Was ist der Grund für die Verwendung der Variable "limit" dort?

2.) Ich habe versucht, den Beispielcode auszuführen, der immer den Wert 2 zurückgibt, was ist der Zweck des "Limit"-Werts 2 in der for-Schleife?

3.) An welchen Positionsbalken arbeitet diese for-Schleife?

Ich danke Ihnen.

 

Suche nach einem einfachen ea

Hallo ... ich suche diese einfache ea

Daily Breakout EA mit Trailing Stop und Profit Lock Funktion.

Existieren?

 

Frage zum#property-Indikator

Wie lautet die Anweisung, den #property-Indikator als Strich und nicht als Bindestrich (Standard) zu codieren?

Einfache Frage, aber unbekannte Antwort zur Zeit!

Dave

Vielen Dank, dass Sie diese Frage für mich beantworten!

 

icustom ! anzeige -> ea

Guten Morgen, ist ein Anfänger der Sprache mq4, würde ich eine Hilfe zu schätzen wissen, ich im Voraus danken!

der Indikator hat zwei Variablen:

bool TurnedUp = false

bool TurnedDown = false

Wie kann man die Funktion icustom im EA verwenden, um die Werte von TurnedUp und TurnedDown zu lesen?

iCustom(Symbol(), "postfin",0,TurnedUp,0,0,0); ....

iCustom(Symbol(), "postfin",0,TurnedDown,0,0,0);

.....my Proben, nicht funktioniert, möglich, weil es sich mit "bool" ??

Teil EA und Fehler ..

//+------------------------------------------------------------------+

//| EXPERTEN-GRUNDRECHNUNG |

//| HIER ANFANGEN |

//+------------------------------------------------------------------+

iCustom(Symbol(), "postfin",0,TurnedUp,0,0,0);

iCustom(Symbol(), "postfin",0,TurnedDown,0,0,0);

//EnterLong = TurnedUp;

// EnterShort = TurnedDown;

// EnterLong = wahr;

// if( TurnedUp == true ) EnterLong== true;

// EnterShort = TurnedDown;

//}

//if(icustom(Symbol(), "postfin", "TurnedUp",0,0) == True && EnterLong== 1 )

//{

//+------------------------------------------------------------------+

//| EXPERT BASIC CALCULATION |

//| ENDE HIER |

//+------------------------------------------------------------------+

//+------------------------------------------------------------------+

//| SIE SOLLTEN NICHTS UNTERHALB DIESES FELDES ÄNDERN MÜSSEN.

//+------------------------------------------------------------------+

// ENTERLONG-BEDINGUNG

if(EnterLong == true && CountLongs(MagicNumber)== 0)

{

Dateien:
 

Weiß jemand, wie man das macht?

Hier ist, was ich versuche zu codieren:

Ich habe ein Diagramm mit einem RSI daran angehängt. Dann ziehe ich einen gleitenden Durchschnitt in das RSI-Fenster und wähle "auf die Daten des vorherigen Indikators anwenden". Jetzt verwendet mein gleitender Durchschnitt die RSI-Werte für seine Berechnungen.

Ich kann nicht herausfinden, wie ich dies in einen EA programmieren kann. Die Applied_Price-Werte in mq4 haben nicht die Option, "vorherige Indikator-Daten" für den gleitenden Durchschnitt zu wählen.

Im Grunde versuche ich, den aktuellen gleitenden Durchschnitt des aktuellen RSI zu erhalten.

Wenn Sie wissen, was ich zu tun versuche und vielleicht eine Lösung haben, wäre ich für jede Hilfe sehr dankbar.

Danke!

Wölfe

 

brauche Hilfe für einfachen Code

Liebe Kollegen!

Ich habe ein Stück Code für einen Zeitfilter, der den EA zu bestimmten Stunden deaktiviert:

extern bool UseHourTrade = True;

extern int FromHourTrade = 8;

extern int ToHourTrade = 18;

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

if (UseHourTrade){

if ((Hour()>=FromHourTrade && Hour()<=ToHourTrade)) {

Comment("Non-Trading Hours!");

return(0);

____________________________________________

ABER ich möchte den EA genau am Freitag vor dem Wochenende deaktivieren. Ich brauche keine offene Position nach 8.00 CET am Freitag. Könnten Sie mir einen Gefallen tun und diese Art von Code posten oder den oben genannten Code korrigieren?

Ich bitte um Ihren Rat, weil ich kein Programmierer bin.

Mit freundlichen Grüßen,

Warren

 

PC-Ressourcen reduzieren

Ich habe einen Beispielcode gesehen, normalerweise berechnet sich jeder Code selbst alle Ticks,

d.h. jeder einzelne Feed-Preis vom Server, die Gruppe von Code berechnet sich selbst.

Dann PC's am Client-Terminal wird verarbeiten oder berechnen jede ticks, dies machen Client PC's brauchen mehr Ressourcen, wie RAM & CPU

Eine Idee, um die PC-Ressourcen und die Iteration am Client-Terminal zu reduzieren, wäre, wenn wir diese Codegruppe so steuern könnten, dass sie bei :

1. Jede komplette Minute und nicht bei jedem Tick berechnen. 2. Jeden kompletten M1-Balken und nicht bei jedem Tick berechnen.

Kann jemand einen Beispielcode dafür geben?

Mit freundlichen Grüßen,

BornToWin

 

Warnung bei jedem MTF-Indikator...

Codersguru,

Ist es möglich, ein Alert (vorzugsweise eine Stimme) zu einem MTF-Indikator hinzufügen? Ich möchte, dass der Alarm ertönt, wenn alle 3 Kriterien in meinem RSI-3TF erfüllt sind, wenn möglich.

Vielen Dank für Ihre Antwort.

Mit freundlichen Grüßen.

 
BornToWin:
Ich habe den Beispielcode gesehen, normalerweise berechnet sich jeder Code selbst alle Ticks,

bedeutet, dass die Codegruppe jeden einzelnen Feed-Preis vom Server selbst berechnet.

Dann PC's am Client-Terminal wird verarbeiten oder berechnen jede ticks, dies machen Client PC's brauchen mehr Ressourcen, wie RAM & CPU

Die Idee, die PC-Ressourcen und die Iteration am Client-Terminal zu reduzieren, wäre, wenn wir diese Code-Gruppe steuern könnten, um zu berechnen:

1. Jede komplette Minute und nicht bei jedem Tick berechnen. 2. Jeder komplette M1-Balken und nicht bei jedem Tick berechnen

Kann jemand einen Beispielcode dafür geben?

Mit freundlichen Grüßen,

BornToWin
if(iVolume(NULL,PERIOD_M1,0) == 1)

{

//do what you want here, first tick of every M1 bar.

}
 

Ich habe den Schlüssel! Irgendeine andere Idee?!

Danke für die Antwort, Michel,

Ich habe den Schlüssel.

Aber manchmal ist das Volumen des ersten Ticks eines jeden M1-Balkens > 1

Wenn iVolume() > 1 beim ersten Tick ist, hat die Berechnung nicht funktioniert!?

Oder muss der erste Tick dieses M1-Balkens = 1 sein?

Und wir können den Ausdruck nicht in >= 1 ändern, richtig?

Das würde diese Idee unbrauchbar machen, weil die Berechnung bis zum Ende des Balkens läuft!

Meine Idee ist es, nur am Ende des TF M1 zu berechnen.

Irgendeine andere Idee?

BornToWin

Michel:
if(iVolume(NULL,PERIOD_M1,0) == 1)

{

//do what you want here, first tick of every M1 bar.

}