Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2560
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Добавил контроль открытия на текущей свече, не допускается открытие заново, если уже есть или было открытие.
спасибо!
а с " MaximumRisk и DecreaseFactor из кода и открывал позиции по фиксированному лоту?" не получилось?
Добавил контроль открытия на текущей свече, не допускается открытие заново, если уже есть или было открытие.
разобрался с лотом. еще раз спасибо!
if(StringFind(vName, name_n) != -1) ObjectDelete(vName);
ObjectDelete(0,vName);
Не могли бы вы подсказать, как можно реализовать следующую функцию:
Есть пересечение двух МА. Если произошло пересечение, то необходимо место пересечения + два бара вперед окрасить другим цветом(Не всю линию МА). Я пользовался следующим методом отрисовки:
и для отрисовки написал такой код:
Однако это работает не так, как хотелось бы. Моих знаний программирования к сожалению не хватает, поэтому прошу помощи у вас. Заранее спасибо!
Есть пересечение двух МА. Если произошло пересечение, то необходимо место пересечения + два бара вперед окрасить другим цветом(Не всю линию МА).
лучше делать отдельный буфер с DRAW_ARROW и сдвигом на 2 бара. Когда ма-шки пересеклись ставишь ему значения. Всё :-)
if (Crossed(Fast_Ma,Slow_Ma,i)) SignalBuffer[i]=close[i]; else SignalBuffer[i]=EMPTY_VALUE;
иначе изменение цвета МA на одном баре мягко говоря плохо заметно. К тому-же ты хочешь подкрашивать на 2 бара вперёд, всё равно где-то придётся добавлять сдвиг
лучше делать отдельный буфер с DRAW_ARROW и сдвигом на 2 бара. Когда ма-шки пересеклись ставишь ему значения. Всё :-)
if (Crossed(Fast_Ma,Slow_Ma,i)) SignalBuffer[i]=close[i]; else SignalBuffer[i]=EMPTY_VALUE;
иначе изменение цвета МA на одном баре мягко говоря плохо заметно. К тому-же ты хочешь подкрашивать на 2 бара вперёд, всё равно где-то придётся добавлять сдвиг
Спасибо за ваш ответ!
У меня МА сдвиг имеют. + если я использую функцию
DRAW_COLOR_SECTIONто я могу при пересечение МА менять толщину. Про DRAW_ARROW, я думал, но там проблема в том, что можно ставить только значки, а я хотел, чтобы линяя МА меняла цвет, а в дальнейшем и толщину
Почему график рисуется для баров в левой части графика, а не для баров от 0 до 199 (т.е. в правой части)?
Начал разбираться с MT5, написал простой код (ниже).
Почему график рисуется для баров в левой части графика, а не для баров от 0 до 199 (т.е. в правой части)?
Вы забыли ArraySetAsSeries() указать. Он как раз и отвечает за отрисовку баров в правой части графика. Указывать необходимо в функцию OnInit()
Вы забыли ArraySetAsSeries() указать. Он как раз и отвечает за отрисовку баров в правой части графика. Указывать необходимо в функцию OnInit()
Спасибо!
Как удалить все до 2000 года?
ПС В МТ4 кнопкой F2 можно вызвать окно и в нем удалить лишнее, но в МТ5 похоже такого нет?