omissamf: Ich möchte diesen Code ändern
- Was hält Sie also davon ab? Lernen Sie es zu programmieren oder bezahlen Sie jemanden. Wir werden es nicht FÜR Sie programmieren. Wir sind bereit, Ihnen zu HILFEN, wenn Sie uns Ihren Versuch (unter Verwendung von SRC) und die Art Ihres Problems mitteilen.
- Haben Sie versucht
BarStart = Time[0]; Sleep(3000); RefreshRates();
Hallo WHRoeder, danke für die Antwort. Ich entschuldige mich für mein Verhalten, aber es war nicht meine Absicht, jemanden zu beleidigen und respektlos zu sein. Ich habe den ganzen Tag versucht, den Code zu ändern, um dies zu erreichen, aber es ist mir nicht gelungen. Sie sind der Beginn der Studie MQL4 . Ich bitte wieder entschuldigen Administratoren . Grüße , Massimo
Hallo WHRoeder, ich habe es versucht, aber es funktioniert nicht!!! Ich habe es auf alle Arten versucht, aber ich verstehe nicht, wo ich falsch liege!!!
Wie auch immer, danke für alles, Massimo.
Ich sehe keinen Alarm in Ihrem Code
Hallo GunRai, ich sende Ihnen den vollständigen Code, so werde ich erklären. Ich konnte nicht verzögern die Bestätigung der Bedingungen der Kerze öffnen (wie es jetzttut), aber nach 3 Sekunden, auch der Vorschlag von WHRoeder. Ich kann nicht verstehen, wo ich falsch bin !!!
Danke, Max.
//+------------------------------------------------------------------+ //| RSI 70-30.mq4 | //| Massimo | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Massimo" #property link "https://www.mql5.com" #property version "1.00" #include <stdlib.mqh> #include <stderror.mqh> //--- indicator settings #property indicator_chart_window #property indicator_buffers 2 #property indicator_type1 DRAW_ARROW #property indicator_width1 1 #property indicator_color1 0xFFAA00 #property indicator_label1 "Buy" #property indicator_type2 DRAW_ARROW #property indicator_width2 1 #property indicator_color2 0x0000FF #property indicator_label2 "Sell" static datetime BarStart=0; //--- indicator buffers double Buffer1[]; double Buffer2[]; datetime time_alert; //used when sending alert extern bool Audible_Alerts = true; double myPoint; //initialized in OnInit void myAlert(string type, string message) { if(type == "print") Print(message); else if(type == "error") { Print(type+" | RSI 30-70 @ "+Symbol()+","+Period()+" | "+message); } else if(type == "order") { } else if(type == "modify") { } else if(type == "indicator") { if(Audible_Alerts) Alert(type+" | RSI 30-70 @ "+Symbol()+","+Period()+" | "+message); } } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { IndicatorBuffers(2); SetIndexBuffer(0, Buffer1); SetIndexEmptyValue(0, 0); SetIndexArrow(0, 241); SetIndexBuffer(1, Buffer2); SetIndexEmptyValue(1, 0); SetIndexArrow(1, 242); //initialize myPoint myPoint = Point(); if(Digits() == 5 || Digits() == 3) { myPoint *= 10; } return(INIT_SUCCEEDED); } //_____________________________________________ //_____________________________________________ int start(){ if (BarStart !=Time[0]) { BarStart = Time[0]; Sleep(3000); RefreshRates(); //this code don't work // //Indicator Buffer 1 if(iRSI(NULL, PERIOD_CURRENT, 2, PRICE_CLOSE, 0) < 30 ) { Buffer1[0] = Low[0] - iATR(NULL, PERIOD_CURRENT, 14, 0); //Set indicator value at Candlestick Low - Average True Range if(0 == 0 && Time[0] != time_alert) { myAlert("indicator", "Buy"); time_alert = Time[0]; } //Instant alert, only once per bar } else { Buffer1[0] = 0; } //Indicator Buffer 2 if(iRSI(NULL, PERIOD_CURRENT, 2, PRICE_CLOSE, 0) > 70 ) { Buffer2[0] = High[0] + iATR(NULL, PERIOD_CURRENT, 14, 0); //Set indicator value at Candlestick High + Average True Range if(0 == 0 && Time[0] != time_alert) { myAlert("indicator", "Sell"); time_alert = Time[0]; } //Instant alert, only once per bar } else { Buffer2[0] = 0; } } return(0); } //+------------------------------------------------------------------+
Sie haben recht, Sie führen einen Indikator aus. | int start(){ if (BarStart !=Time[0]) { BarStart = Time[0]; Sleep(3000); RefreshRates(); //this code don't work |
Versuchen Sie dies | #define MAX_DATETIME D'3000.12.31 23:59:59' // 32,535,215,999 #define MIN_DATETIME D'1970.01.01 00:00:00' // Zero. int start(){ static datetime alertTime = MAX_DATETIME; if(TimeCurrent() > alertTime){ alertTime = MAX_DATETIME; Alert(...); } if (BarStart !=Time[0]) { BarStart = Time[0]; : if(condition) alertTime = TimeCurrent() + 3; // Delay |
WHRoeder:
Danke, jetzt studiere ich den Code , den Sie mir geschickt haben und gebe Ihnen dann Bescheid.Sie haben recht, Sie führen einen Indikator aus. | |
Versuchen Sie dies |
Für jetzt, unendlichen Dank, Massimo.
WHRoeder:
WHRoeder Hallo, ich habe versucht, den Code mit Ihren Anweisungen zu ändern. Ich habe versucht, verschiedene Möglichkeiten, und das ist, was Sie senden , ist das, was Sie nicht Fehler haben, aber die Verzögerung von etwa fünf Sekunden gibt es nur sull'alert Ton, während die Pfeile halten genaue Öffnung der Kerze erscheinen .Sie haben recht; Sie verwenden einen Indikator. | |
y thi |
Hallo und vielen Dank, Massimo.
#define MAX_DATETIME D'3000.12.31 23:59:59' // 32,535,215,999 #define MIN_DATETIME D'1970.01.01 00:00:00' // Zero. int start(){ static datetime alertTime = MAX_DATETIME; if (TimeCurrent() > alertTime) { alertTime = MAX_DATETIME; Alert(“ ATTENTION!!!!); } if (BarStart !=Time[0]) { BarStart = Time[0]; // //Indicator Buffer 1 if(iRSI(NULL, PERIOD_CURRENT, 2, PRICE_CLOSE, 0) < 30 ) { alertTime = TimeCurrent() + 3; Buffer1[0] = Low[0] - iATR(NULL, PERIOD_CURRENT, 14, 0); } else { Buffer1[0] = 0; } //Indicator Buffer 2 if(iRSI(NULL, PERIOD_CURRENT, 2, PRICE_CLOSE, 0) > 70 ) { alertTime = TimeCurrent() + 3; Buffer2[0] = High[0] + iATR(NULL, PERIOD_CURRENT, 14, 0); } else { Buffer2[0] = 0; } } return(0); } //+------------------------------------------------------------------+
omissamf: es gibt nur einen Sull' alert-Ton,
- Keine Ahnung, was Sie meinen.
Alert(“ ATTENTION!!!!); }
Versuchen Sie/postet Code, der kompiliert.
WHRoeder:
Ich habe ATTENTION !!! , weil es derjenige ist , der in Ton / visuellen Alarm erscheint, aber ich versuche, mit Ihrer Hilfe, um den Beginn der Pfeil einige Sekunden zu verzögern. In diesem Fall. Achtung !!! Es wird nach 5 Sekunden erscheinen , während Pfeile erscheinen nur öffnen Sie die Kerze.- Keine Ahnung, was Sie meinen.
- Versuchen Sie, den Code zu kompilieren.
Vielen Dank für alles, Massimo.
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ich möchte diesen Code ändern , so dass der Alarm, anstatt bei der Eröffnung der Kerze erscheint, erkennt die Bedingungen nach ein paar Sekunden.
Danke für alles, Massimo.