artem92:
Всем привет! Возможно ли настроить ЕА так чтобы тот отправлял алерты каждый раз когда цена выбранного инструманта (открытого чарта) останавливалась больше чем скажем 20 секунд?
Если у кого-то есть мысли, поделитесь кодом пожалуйста
засекается время в OnTimer
засекается время в OnTick
считаем разницу в OnTick
если превысили 20 секунд, дальше выполняем необходимые днйствия
Renat Akhtyamov #:
засекается время в OnTimer
засекается время в OnTick
считаем разницу в OnTick
если превысили 20 секунд, дальше выполняем необходимые днйствия
Заряжаю код через chatGpt, но че-то алерты не приходят, если не сложно глянь плиз что тут изменить. Тут на 30 сек
//+------------------------------------------------------------------+ //| PriceAlert.mq4 | //| Copyright 2024, YourCompanyName | //| https://www.yourwebsite.com| //+------------------------------------------------------------------+ #property strict // Define the maximum allowed delay in seconds input int maxDelaySeconds = 30; // Define the alert message string alertMessage = "Prices have stopped moving for more than " + IntegerToString(maxDelaySeconds) + " seconds."; // Variable to store the time of the last tick datetime lastTickTime; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { // Set the initial time of the last tick lastTickTime = TimeCurrent(); // Set timer for checking ticks every second EventSetTimer(1000); return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { // Deinitialization code here } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { // Update the time of the last tick lastTickTime = TimeCurrent(); } //+------------------------------------------------------------------+ //| Expert timer function to check for price movement | //+------------------------------------------------------------------+ void OnTimer() { // Get the current time datetime currentTime = TimeCurrent(); // Calculate the time elapsed since the last tick int elapsedSeconds = currentTime - lastTickTime; // If no tick has arrived within the specified time frame, trigger an alert if (elapsedSeconds >= maxDelaySeconds) { // Send alert/notification Alert(alertMessage); } } //+------------------------------------------------------------------+
Попробуйте поставить
EventSetTimer(1);
Никак не срабатывают алерты всё равно(

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Всем привет! Возможно ли настроить ЕА так чтобы тот отправлял алерты каждый раз когда цена выбранного инструманта (открытого чарта) останавливалась больше чем скажем 20 секунд?
Если у кого-то есть мысли, поделитесь кодом пожалуйста