Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1446
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Интересно. Буду ждать…
Вот эксперт. Он создает базу (если уже нет) и раз в секунду пишет в нее текущее время.
В коде нет ни одного Print().
Запустил на 10 парах, пошли ошибки:
Что бы получить ошибку надо закрыть и заново запустить MT5 тогда все эксперты начинают работать синхронно.
Хорошо бы:
1. Понять как избавиться от вывода этой ошибки.
2. Придумать шаблонный механизм который бы ставил в очередь в случае недоступности базы.
п.2 я решил тем, что добавил Sleep() с рандомным временем, но это похоже на костыль.
UPDATE: перезалил фаил, первый был с ошибкой
Вот эксперт. Он создает базу (если уже нет) и раз в секунду пишет в нее текущее время.
В коде нет ни одного Print().
Запустил на 10 парах, пошли ошибки:
Что бы получить ошибку надо закрыть и заново запустить MT5 тогда все эксперты начинают работать синхронно.
Хорошо бы:
1. Понять как избавиться от вывода этой ошибки.
2. Придумать шаблонный механизм который бы ставил в очередь в случае недоступности базы.
п.2 я решил тем, что добавил Sleep() с рандомным временем, но это похоже на костыль.
UPDATE: перезалил фаил, первый был с ошибкой
Увы, моих знаний не хватает. Хватило только на то, чтобы понять, что ошибка печатается
DatabaseExecute(db, sql);
Возможность проверить доступность перед созданием запроса, увы отсутствует.
Базу открывает, а запрос создать нет возможности.
Не открываются ордера на сервере, стопов и тейков нет, режимы алго включены и команда на установку проходит, а журналы молчат CTrade class . В тестере работает на реальной торговле молчок. Что проверить?
журнал терминала
журнал терминала
Догадался включил логи, не может лот рассчитать. Не понимаю почему на реале не хочет считать?
Догадался включил логи, не может лот рассчитать. Не понимаю почему на реале не хочет считать?
Логов нет, поэтому догадок может быть в разы больше.
Как вариант, при торговле кроссами если в обзоре рынка не выбрана пара с валютой депозита, торговать не будет.
Например торгуем EURJPY, валюта депозита USD, в обзоре рынка должны присутствовать EURUSD и USDJPY.
Логов нет, поэтому догадок может быть в разы больше.
Как вариант, при торговле кроссами если в обзоре рынка не выбрана пара с валютой депозита, торговать не будет.
Например торгуем EURJPY, валюта депозита USD, в обзоре рынка должны присутствовать EURUSD и USDJPY.
Счёт в USD pro cent, торговля XAUUSD
Всем привет. Подскажите новичку, кого не затруднит. Не могу отрисовать одну стрелку на первом баре с помощью буферов в MQL5
В MQL4 делаю так:
Объявляю глобальную переменную double XX[];
в init пишу:
SetIndexBuffer(0,XX);
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,108);
в Oncalculate пишу:
XX[1]=High[1]; получаю нарисованную стрелку над свечой 1. и все
По аналогии делаю в MQL5:
Объявляю глобальную переменную double XX[];
в init пишу:
SetIndexBuffer(0,XX,INDICATOR_DATA);
PlotIndexSetInteger(0,PLOT_ARROW,108);
в Oncalculate пишу:
XX[1]=high[1]; - не рисует
XX[1]=iHigh(Symbol(),PERIOD_CURRENT,1); - тоже не рисует
Естественно даже вв шапке указано:
#property indicator_buffers 1
#property indicator_plots 1
#property indicator_type1 DRAW_ARROW
#property indicator_color1 clrGreen
#property indicator_width1 1
Что я делаю не так, подскажите пожалуйста !!!
XX[1]=high[1]; - не рисует
Что я делаю не так, подскажите пожалуйста !!!
А если так:
или так:
А если так:
или так:
Спасибо, действительно в On Calculate - это работает.
А как быть если тот же самый момент, только надо реализовать в отдельной функции?
Т.е.
void funkc_()
{
Здесь то доступа к RATES_TOTAL и HIGH нету ? И как быть в этой ситуации ?
}
Вообще MQL5 реально сложнее и не понятнее чем MQL4, естественно "для меня"