Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1387
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
Ja. Der EA arbeitet auf dem H1-Zeitrahmen und kann eine Position um 10:17 Uhr eröffnen, Sie müssen sicherstellen, dass er vor 11:00 Uhr, d.h. auf dem aktuellen Balken - nicht mehr eröffnet.
Ist es möglich, die Fehlersuche ab einer bestimmten Uhrzeit statt 00.00 Uhr zu starten (abgesehen von der Möglichkeit, zu blättern). Wenn jemand das weiß, kann er uns sagen, wie?
Ist es möglich, im Debug-Modus manuell zu handeln, z.B. eine von einer Eule eröffnete Order manuell zu schließen?
Guten Tag zusammen. Ich schreibe die Gral-Maschine neu, ich habe keinen Weg zurück ;-) mit Markt-Aufträge öffnet es perfekt, keine Fehler... Aber mit schwebenden Aufträgen habe ich wieder Probleme mit Fehler 130 und 4107 und deaktiviert Preis((((.
Ich erhalte einen Eröffnungspreis wie diesen.
{//--НАЧАЛО ОТЛОЖЕННЫХ ОРДЕРОВ--------------------------------------------------------------------------------------------+ //-НАЧАЛО ДАННЫХ ДЛЯ ОТЛОЖЕННЫХ ПОКУПАК-------------------------------------------------------------------------------------------+ int max_bars= iHighest(NULL, // ТЕКУЩИЙ СИМВОЛ PeriodForWork_pending_orders,// ТФ ДЛЯ ПОИСКА МАКСИМУМА УСТАНОВКИ ОТЛОЖЕННОГО ОРДЕРА MODE_HIGH,// ИЩЕМ МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ ХАЙ range_max // ДИАПОЗОН ПОИСКА ИЗ ЭН СВЕЧЕЙ ); // ПОЛУЧАЕМ НОМЕР СВЕЧИ НА КОТОРОЙ ИМЕЕТСЯ МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ double max_Price=iHigh(Symbol(),// СИМВОЛ ТЕКУЩЕГО ИНСТРУМЕНТА(НА КОТОРОМ РАБОТАЕТ ГРААЛЬ;-) PeriodForWork_pending_orders, // ТФ НА КОТОРОМ АСЧИТЫВАЕМ ЦЕНУ МАКСИМУМА max_bars// НА КАКОМ БАРЕ БЫЛ МАКС ТОТ И ПОДСТАВИМ;) ); if(max_Price-(Ask+2.2*(Ask-Bid)) < 0.0) { max_Price = Ask+2.2*(Ask-Bid); } else max_Price = max_Price; //КОНЕЦ ПОЛУЧЕНИЯ ДАННЫХ ДЛЯ ПОКУПАК//-------------------------------------------------------------------------------------------------+ //----ПОЛУЧЕНИЕ ДАННЫХ ДЛЯ ОТЛОЖЕННЫХ ПРОДАЖ//-------------------------------------------------------------------------------------------------+ int min_bars= iLowest(NULL, // ТЕКУЩИЙ СИМВОЛ PeriodForWork_pending_orders,// ТФ ДЛЯ ПОИСКА МАКСИМУМА УСТАНОВКИ ОТЛОЖЕННОГО ОРДЕРА MODE_LOW,// ИЩЕМ МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ ЛОУ range_max // ДИАПОЗОН ПОИСКА ИЗ ЭН СВЕЧЕЙ ); // ПОЛУЧАЕМ НОМЕР СВЕЧИ НА КОТОРОЙ ИМЕЕТСЯ МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ double min_Price=iLow(Symbol(),// СИМВОЛ ТЕКУЩЕГО ИНСТРУМЕНТА(НА КОТОРОМ РАБОТАЕТ ГРААЛЬ;-) PeriodForWork_pending_orders, // ТФ НА КОТОРОМ АСЧИТЫВАЕМ ЦЕНУ МАКСИМУМА min_bars// НА КАКОМ БАРЕ БЫЛ МАКС ТОТ И ПОДСТАВИМ;) ); // --ПОЛУЧИЛ МИНИМАЛЬНУЮ ЦЕНУ ДЛЯ ОТКРЫТИЯ ОТЛОЖКИ if(min_Price+(Ask-2.2*(Ask-Bid)) < 0.0)// ПРОВЕРКА ДЛЯ ИЗБЕЖАНИЯ ОШИБКИ 130 { min_Price = Ask+2.2*(Ask-Bid); } else min_Price = min_Price; //-----ДОБАВЛЕНИЕ ФИЛЬТРА К ОТОЛЖКАМ ЕСЛИ ФИЛЬТР ВКЛЮЧЕН if(use_filter==en_c_filbtpom) { //ЕСЛИ ВКЛЮЧЕКНЫ ОТЛОЖКИ С ФИЛЬТРОМ double filter_buy= Filter_buy*Point; // ПРИСВОЕНИЕ ЛОКАЛЬНОЙ ПЕРЕМЕННОЙ ФИЛЬТР БАЙ ЗНАЧЕНИЯ ПЕРЕМЕННОЙ ВХОДНОГО ПАРАМЕТРА И ПЕЕРВОД ЭТОГО ДЕЛА В ПУНКТЫ double filter_sell= Filter_sell *Point; // ПРИСВОЕНИЕ ЛОКАЛЬНОЙ ПЕРЕМЕННОЙ ФИЛЬТР СЕЛЛ ЗНАЧЕНИЯ ПЕРЕМЕННОЙ ВХОДНОГО ПАРАМЕТРА И ПЕЕРВОД ЭТОГО ДЕЛА В ПУНКТЫ filter_buy= NormalizeDouble(filter_buy,Digits); // НОРМАЛИЗАЦИЯ ЗНАЧЕНИЯ ФИЛЬТР БАЙ ДЛЯ КОРРЕКТНЫХ РАСЧЁТОВ filter_sell= NormalizeDouble(filter_sell,Digits); // НОРМАЛИЗАЦИЯ ЗНАЧЕНИЯ ФИЛЬТР СЕЛЛ ДЛЯ КОРРЕКТНЫХ РАСЧЁТОВ max_Price= max_Price+filter_buy; //МАКС ПРАЙС ПРИБАВИЛ ЗНАЧЕНИЯ ФИЛЬТРА, ЧТО БЫ ОТЛОЖКА ВСТАЛА ЧУТЬ ВЫШЕ НАЙДЕННОГО ХАЙ min_Price= min_Price- filter_sell; // ОТ МИН ПРАЙС ОТНИМАЮ ЗНАЧЕНИЕ ФИЛЬТТР СЕЛ, ЧТОБЫ ОТЛОЖКА ВСТАЛА ЧУТЬ НИЖЕ НАЙДЕННОГО МИНИМУМА... max_Price= NormalizeDouble(max_Price,Digits); min_Price= NormalizeDouble(min_Price,Digits); }//--КОНЕЦ ЕСЛИ ОТКРЫВАЕМСЯ С ФИЛЬТРОМ--------------------------------------------------------------------------------------------+ //КОНЕЦ ПОЛУЧЕНИЯ ДАННЫХ ДЛЯ ОТОЛЖЕННЫХ ПРОДАЖ И ПОКУПАК//-------------------------------------------------------------------------------------------------+Ich erhalte Stop Loss und Profit wie folgt
Wenn ich diese Information erhalte, überprüfe ich das Stopp-Niveau und prüfe, ob der berechnete Eröffnungskurs höher ist als asc.
Ich eröffne den Kaufstopp selbständig wie folgt
Meine Frage ist: Was sollte ich tun, um diese Fehler zu vermeiden?
Guten Tag zusammen. Ich schreibe die Gral-Maschine neu - ich habe keinen Weg zurück ;-) mit Markt-Aufträgen öffnet alles gut - keine Fehler... Aber mit schwebenden Aufträgen wieder Probleme in Form von Fehlern 130 und 4107 und deaktiviert Preis((((.
4107 ausschließen
4107 ausschließen
Ich verstehe nicht, wo Sie den Code, den Sie heruntergeladen haben, hinzufügen wollen. Können Sie in meinem Beitrag hervorheben, was eine Fehlerausnahme ist und wo sie einzufügen ist?
sie nicht ergänzen, sondern verändern
sie nicht ergänzen, sondern verändern
Ich weiß nicht, was ich in was ändern soll. Kann ich farblich kennzeichnen, was grün ist, und rot, was ich in grün ändern muss?
{//--НАЧАЛО ОТЛОЖЕННЫХ ОРДЕРОВ--------------------------------------------------------------------------------------------+ //-НАЧАЛО ДАННЫХ ДЛЯ ОТЛОЖЕННЫХ ПОКУПАК-------------------------------------------------------------------------------------------+ int max_bars= iHighest(NULL, // ТЕКУЩИЙ СИМВОЛ PeriodForWork_pending_orders,// ТФ ДЛЯ ПОИСКА МАКСИМУМА УСТАНОВКИ ОТЛОЖЕННОГО ОРДЕРА MODE_HIGH,// ИЩЕМ МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ ХАЙ range_max // ДИАПОЗОН ПОИСКА ИЗ ЭН СВЕЧЕЙ ); // ПОЛУЧАЕМ НОМЕР СВЕЧИ НА КОТОРОЙ ИМЕЕТСЯ МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ double max_Price=iHigh(Symbol(),// СИМВОЛ ТЕКУЩЕГО ИНСТРУМЕНТА(НА КОТОРОМ РАБОТАЕТ ГРААЛЬ;-) PeriodForWork_pending_orders, // ТФ НА КОТОРОМ АСЧИТЫВАЕМ ЦЕНУ МАКСИМУМА max_bars// НА КАКОМ БАРЕ БЫЛ МАКС ТОТ И ПОДСТАВИМ;) ); if(max_Price-(Ask+2.2*(Ask-Bid)) < 0.0) { max_Price = Ask+2.2*(Ask-Bid); } else max_Price = max_Price; //КОНЕЦ ПОЛУЧЕНИЯ ДАННЫХ ДЛЯ ПОКУПАК//-------------------------------------------------------------------------------------------------+ //----ПОЛУЧЕНИЕ ДАННЫХ ДЛЯ ОТЛОЖЕННЫХ ПРОДАЖ//-------------------------------------------------------------------------------------------------+ int min_bars= iLowest(NULL, // ТЕКУЩИЙ СИМВОЛ PeriodForWork_pending_orders,// ТФ ДЛЯ ПОИСКА МАКСИМУМА УСТАНОВКИ ОТЛОЖЕННОГО ОРДЕРА MODE_LOW,// ИЩЕМ МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ ЛОУ range_max // ДИАПОЗОН ПОИСКА ИЗ ЭН СВЕЧЕЙ ); // ПОЛУЧАЕМ НОМЕР СВЕЧИ НА КОТОРОЙ ИМЕЕТСЯ МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ double min_Price=iLow(Symbol(),// СИМВОЛ ТЕКУЩЕГО ИНСТРУМЕНТА(НА КОТОРОМ РАБОТАЕТ ГРААЛЬ;-) PeriodForWork_pending_orders, // ТФ НА КОТОРОМ АСЧИТЫВАЕМ ЦЕНУ МАКСИМУМА min_bars// НА КАКОМ БАРЕ БЫЛ МАКС ТОТ И ПОДСТАВИМ;) ); // --ПОЛУЧИЛ МИНИМАЛЬНУЮ ЦЕНУ ДЛЯ ОТКРЫТИЯ ОТЛОЖКИ if(min_Price+(Ask-2.2*(Ask-Bid)) < 0.0)// ПРОВЕРКА ДЛЯ ИЗБЕЖАНИЯ ОШИБКИ 130 { min_Price = Ask+2.2*(Ask-Bid); } else min_Price = min_Price; //-----ДОБАВЛЕНИЕ ФИЛЬТРА К ОТОЛЖКАМ ЕСЛИ ФИЛЬТР ВКЛЮЧЕН if(use_filter==en_c_filbtpom) { //ЕСЛИ ВКЛЮЧЕКНЫ ОТЛОЖКИ С ФИЛЬТРОМ double filter_buy= Filter_buy*Point; // ПРИСВОЕНИЕ ЛОКАЛЬНОЙ ПЕРЕМЕННОЙ ФИЛЬТР БАЙ ЗНАЧЕНИЯ ПЕРЕМЕННОЙ ВХОДНОГО ПАРАМЕТРА И ПЕЕРВОД ЭТОГО ДЕЛА В ПУНКТЫ double filter_sell= Filter_sell *Point; // ПРИСВОЕНИЕ ЛОКАЛЬНОЙ ПЕРЕМЕННОЙ ФИЛЬТР СЕЛЛ ЗНАЧЕНИЯ ПЕРЕМЕННОЙ ВХОДНОГО ПАРАМЕТРА И ПЕЕРВОД ЭТОГО ДЕЛА В ПУНКТЫ filter_buy= NormalizeDouble(filter_buy,Digits); // НОРМАЛИЗАЦИЯ ЗНАЧЕНИЯ ФИЛЬТР БАЙ ДЛЯ КОРРЕКТНЫХ РАСЧЁТОВ filter_sell= NormalizeDouble(filter_sell,Digits); // НОРМАЛИЗАЦИЯ ЗНАЧЕНИЯ ФИЛЬТР СЕЛЛ ДЛЯ КОРРЕКТНЫХ РАСЧЁТОВ max_Price= max_Price+filter_buy; //МАКС ПРАЙС ПРИБАВИЛ ЗНАЧЕНИЯ ФИЛЬТРА, ЧТО БЫ ОТЛОЖКА ВСТАЛА ЧУТЬ ВЫШЕ НАЙДЕННОГО ХАЙ min_Price= min_Price- filter_sell; // ОТ МИН ПРАЙС ОТНИМАЮ ЗНАЧЕНИЕ ФИЛЬТТР СЕЛ, ЧТОБЫ ОТЛОЖКА ВСТАЛА ЧУТЬ НИЖЕ НАЙДЕННОГО МИНИМУМА... max_Price= NormalizeDouble(max_Price,Digits); min_Price= NormalizeDouble(min_Price,Digits); }//--КОНЕЦ ЕСЛИ ОТКРЫВАЕМСЯ С ФИЛЬТРОМ--------------------------------------------------------------------------------------------+Ist es möglich, Barpreis- und Tickvolumen-Daten von anderen Instrumenten im MT4-Tester zu erhalten?
Versuchen Sie es.