Hilfe bei der Codierung - Seite 562

 

Привет ! Помогите с индикатором ,не показывает peleng и выдает ошибки . Спасибо .

Dateien:
 
CaptureBeta:
Hallo, bitte prüfen Sie, ob der Anhang bei Ihnen funktioniert. Ich habe den Code des Indikators geändert und ihn auf der Handelsplattform meines Brokers (Alpari) getestet. Er zeigt nach der Kompilierung keine Fehler an. Ich habe den Namen des Indikators geändert (durch Hinzufügen eines Wortes "new" in Klammern), um Verwechslungen zu vermeiden.

Hallo,

zunächst einmal vielen Dank für Ihre Hilfe....

können Sie bitte einen Bildschirmausdruck Ihrer Eingabe anhängen, um das Fünfeck z.B. im 1H-Chart des Eurusd zu sehen?

Ich weiß nicht, welche Einstellung ich im Indikatorfenster vornehmen muss, um das Fünfeck zu sehen... Ich sehe nur eine Menge Trendlinien.....

Kohlenstoff

 
mladen:

Großes Be

Ich werde es überprüfen, um zu sehen, was auf meinem Terminal los ist.

mladen,

Wie läuft das?

Es ist wirklich wichtig für uns. (Für mich und diejenigen, die meine HeatMap brauchen.)

Großer Be

 

Hallo,

Ich bin neu mit mql4 und Kodierung als Ganzes so kann jeder der Experten bitte helfen Sie mir mit den folgenden zwei Dilemas.

Ich brauche, um einen Pfeil und Alarm hinzufügen, wenn der Preis ein MA von oben durchbricht, aber es sollte neu zu malen, als wenn der Preis nicht unter dem MA zu schließen, wieder zu verschwinden.

Es zeichnet den Pfeil und die Warnung für Kerze 0, wenn es durchbricht, aber die Warnung geht aus für die gesamte Zeit der Bar geöffnet ist.

Wie kann ich es so einrichten, dass es nur alarmiert, wenn der Pfeil gezeichnet wird, und nicht bei jedem Tick.

Ich habe das Folgende versucht.

if(i==1 && SoundAlert)Alert(_Symbol, _Period," Sell Alert"); oder if(i==0 && SoundAlert)Alert(_Symbol, _Period," Sell Alert"); .... i = 0 in der for-Schleife Aber alarmiert weiterhin bei jedem Tick. Dann meine zweite Abfrage: Ich würde auch gerne wissen, wie im obigen Beispiel, wenn der Preis über einem MA schließt und dort bleibt, aber nach x Bars wieder darunter schließt, um mir einen Alarm zu geben. Was ich möchte, dass Hilfe mit ist, wie kann ich die x Bars zurück, wenn der Preis wieder unter dem MA geschlossen angeben. Ich möchte nur zwischen 1-4 Bars zurück, dass der Preis über dem MA war und dann, wenn die aktuelle Bar geschlossen unter dem MA sollte ma einen Alarm geben. Wo fange ich an, was würde ich brauchen, um zu schauen? Ich denke, die Logik ist etwas wie folgt: if((Close[i+1] && Close[i+2]&&Close[i+3]) > MA && Close <MA), aber stattdessen wie diese Zeile mit der RED, muss ich in der Lage sein, in der Eingabe zu wählen, wie viele Bars zurück zu suchen und es sollte diese Logik entsprechend anpassen. dh: if(Close[range selected]>MA && Close<A) Jede Hilfe und Richtung wird geschätzt.

 
bokFX:
Hallo,

Ich bin neu mit mql4 und Kodierung als Ganzes so kann jeder der Experten bitte helfen Sie mir mit den folgenden zwei Dilemas.

Ich muss einen Pfeil und eine Warnung hinzufügen, wenn der Preis einen MA von oben durchbricht, aber es sollte neu malen, wenn der Preis nicht unter dem MA schließt, um wieder zu verschwinden.

Es zeichnet den Pfeil und die Warnung für Kerze 0, wenn es durchbricht, aber die Warnung geht aus für die gesamte Zeit der Bar geöffnet ist.

Wie kann ich es so einrichten, dass es nur alarmiert, wenn der Pfeil gezeichnet wird, und nicht bei jedem Tick.

Ich habe das Folgende versucht.

if(i==1 && SoundAlert)Alert(_Symbol, _Period," Sell Alert"); oder if(i==0 && SoundAlert)Alert(_Symbol, _Period," Sell Alert"); .... i = 0 in der for-Schleife Aber alarmiert weiterhin bei jedem Tick. Dann meine zweite Abfrage: Ich würde auch gerne wissen, wie im obigen Beispiel, wenn der Preis über einem MA schließt und dort bleibt, aber nach x Bars wieder darunter schließt, um mir einen Alarm zu geben. Was ich möchte, dass Hilfe mit ist, wie kann ich die x Bars zurück, wenn der Preis wieder unter dem MA geschlossen angeben. Ich möchte nur zwischen 1-4 Bars zurück, dass der Preis über dem MA war und dann, wenn die aktuelle Bar geschlossen unter dem MA sollte ma einen Alarm geben. Wo fange ich an, was würde ich brauchen, um zu schauen? Ich denke, die Logik ist etwas wie folgt: if((Close[i+1] && Close[i+2]&&Close[i+3]) > MA && Close <MA), aber stattdessen wie diese Zeile mit dem RED, muss ich in der Lage sein, in der Eingabe zu wählen, wie viele Bars zurück zu suchen und es sollte diese Logik entsprechend anpassen. dh.: if(Close[range selected]>MA && Close<A) Jede Hilfe und Richtung wird geschätzt.

Verwenden Sie etwas wie dieses :

static datetime lastAlertedAt = 0;

if (Time[0]!=lastAlertedAt)

{

lastAlertedAt = Time[0];

...

der Rest des Alarmierungscodes

}

 

15-11-2015, 22:01

Привет! Помогите с индикатором, не показывает Пеленг и выдает ошибки. Спасибо. Вложения

 

Ursprünglich veröffentlicht von mladen View Post

Groß sein

Ich werde es überprüfen, um zu sehen, was auf meinem Terminal los ist

Big Be:

mladen,

Wie läuft das?

Es ist wirklich wichtig für uns. (Für mich und diejenigen, die meine HeatMap brauchen.)

Großes Be

Ich konnte es nicht allein lassen. Mit vielen Comment-Anweisungen, einer nach der anderen, und stundenlangem Detektivspiel habe ich die Ursache des Problems herausgefunden.

Mit den mehrdimensionalen Arrays scheint alles in Ordnung zu sein. Ich hatte die Array-Dimension auf die Anzahl der Paare eingestellt, die ich verwendete. Es musste die Anzahl der Paare und Elemente sein, die der Broker zur Verfügung hatte . Die erste Einrichtung, die ich verwendet habe (Metaquotes-Server), hatte nur 26 Paare. Es hat also funktioniert. Aber andere haben mehr. Einer hat 285. Das Array muss dem Rechnung tragen.

NEUES PROBLEM: Was ist das richtige Format für die Größenänderung eines mehrdimensionalen Arrays? Ich weiß, dass man die Größe nur in der ersten Dimension ändern kann. Aber wenn ich dies verwende, bleibt das Programm einfach stehen, egal ob ich es in start() oder init() einsetze, obwohl ArraySize nach der Größenänderung die richtige Größe angibt:

ArrayResize(AlertsFoundII, Größe);

oder

ArrayResize(AlertsFoundII, 285);

Groß sein

 

Ich habe etwas ausprobiert, aufgrund einer Vermutung. Wenn ich das Array mit keinem ersten Wert wie folgt initialisiere: bool AlertsFoundII[][4][4]; und dann später die Größe des Arrays mit dem berechneten Wert (Variable) ändere, funktioniert es gut.

Groß sein

 
Big Be:
Ursprünglich gepostet von mladen View Post

Big Be

Ich werde es überprüfen, um zu sehen, was auf meinem Terminal los ist.

Ich konnte es nicht allein lassen. Mit vielen Comment-Anweisungen, eine nach der anderen, und stundenlangem Detektivspiel habe ich die Ursache des Problems herausgefunden.

Mit den mehrdimensionalen Arrays scheint alles in Ordnung zu sein. Ich hatte die Array-Dimension auf die Anzahl der Paare eingestellt, die ich verwendete. Es musste die Anzahl der Paare und Elemente sein, die der Broker zur Verfügung hatte . Die erste Einrichtung, die ich verwendet habe (Metaquotes-Server), hatte nur 26 Paare. Es hat also funktioniert. Aber andere haben mehr. Einer hat 285. Das Array muss dem Rechnung tragen.

NEUES PROBLEM: Was ist das richtige Format für die Größenänderung eines mehrdimensionalen Arrays? Ich weiß, dass man die Größe nur in der ersten Dimension ändern kann. Aber wenn ich dies verwende, bleibt das Programm einfach stehen, egal ob ich es in start() oder init() einsetze, obwohl ArraySize nach der Größenänderung die richtige Größe angibt:

ArrayResize(AlertsFoundII, Größe);

oder

ArrayResize(AlertsFoundII, 285);

Großes Be

Es muss auf beide Arten funktionieren (ich verwende 2-dimensionale Arrays, die ständig dynamisch in der Größe geändert werden, und es funktioniert OK)

 
bokFX:
Hallo,

Ich bin neu mit mql4 und Kodierung als Ganzes so kann jeder der Experten bitte helfen Sie mir mit den folgenden zwei Dilemas.

Ich muss einen Pfeil und eine Warnung hinzufügen, wenn der Preis einen MA von oben durchbricht, aber es sollte wieder malen, wenn der Preis nicht unter dem MA schließt, um wieder zu verschwinden.

Es zeichnet den Pfeil und die Warnung für Kerze 0, wenn er durchbricht, aber die Warnung geht aus für die gesamte Zeit der Bar geöffnet ist.

Wie kann ich es so einrichten, dass es nur alarmiert, wenn der Pfeil gezeichnet wird, und nicht bei jedem Tick.

Ich habe das Folgende versucht.

if(i==1 && SoundAlert)Alert(_Symbol, _Period," Sell Alert"); oder if(i==0 && SoundAlert)Alert(_Symbol, _Period," Sell Alert"); .... i = 0 in der for-Schleife Aber alarmiert weiterhin bei jedem Tick. Dann meine zweite Abfrage: Ich würde auch gerne wissen, wie im obigen Beispiel, wenn der Preis über einem MA schließt und dort bleibt, aber nach x Bars wieder darunter schließt, um mir einen Alarm zu geben. Was ich möchte Hilfe mit ist, wie kann ich die x Bars zurück, wenn der Preis wieder unter dem MA geschlossen angeben. Ich möchte nur zwischen 1-4 Bars zurück, dass der Preis über dem MA war und dann, wenn die aktuelle Bar geschlossen unter dem MA sollte ma einen Alarm geben. Wo fange ich an, was würde ich brauchen, um zu schauen? Ich denke, die Logik ist etwas wie folgt: if((Close[i+1] && Close[i+2]&&Close[i+3]) > MA && Close <MA), aber stattdessen wie diese Zeile mit dem RED, muss ich in der Lage sein, in der Eingabe zu wählen, wie viele Bars zurück zu suchen und es sollte diese Logik entsprechend anpassen. dh.: if(Close[range selected]>MA && Close<A) Jede Hilfe und Richtung wird geschätzt.

Danke für die Info Mladen, ich werde es mit dem Alert versuchen.

Ich würde auch gerne wissen, wie im obigen Beispiel, wenn der Kurs über einem MA schließt und dort bleibt, aber nach x Bars wieder darunter schließt, um mir einen Alarm zu geben. Ich möchte wissen, wie ich die x Bars festlegen kann, wenn der Kurs wieder unter dem MA schließt. Ich möchte nur zwischen 1-4 Bars zurück, dass der Preis über dem MA war und dann, wenn die aktuelle Bar geschlossen unter dem MA sollte ma einen Alarm geben. Wo fange ich an, was würde ich brauchen, um zu schauen? Ich denke, die Logik ist etwas wie folgt: if((Close[i+1] && Close[i+2]&&Close[i+3]) > MA && Close <MA), aber stattdessen wie diese Zeile mit der RED, muss ich in der Lage sein, in der Eingabe zu wählen, wie viele Bars zurück zu suchen und es sollte diese Logik entsprechend anpassen. dh: if(Close[range selected]>MA && Close<A) Jede Hilfe und Richtung wird geschätzt.

Grund der Beschwerde: