Ваши вопросы по языку MQL4

Ugar

Гуру форума
Огромное спасибо.
Если есть возможность, выложите скрипт - рисование вертикальных линий. По временному диапазону.
Готового такого нет. Кстати, в этом случае лучше эту задачу выполнять индикатору. Ведь время идёт и после прохождения очередного отрезка времени, нужно добавлять линии. То есть нужно следить за временем. Скрипт же, выполнив задачу, выгружается из памяти.
 

search1

Прохожий
Добрый день. Подскажите как данные индикатора с одного тф перенести на старший тф?
Хочу посчитать накопление на M1 и на этих данных строить индикатор на H1.
Спасибо.
 

Ugar

Гуру форума
Добрый день. Подскажите как данные индикатора с одного тф перенести на старший тф?
Хочу посчитать накопление на M1 и на этих данных строить индикатор на H1.
Спасибо.
В индикаторе на Н1 на каждом баре вызвать индикатор на М1 столько раз столько баров М1 в баре H1, перебирая М1 бары и накапливая значение.
Естественно, для работы такого индикатора должны быть качественные истории M1 и Н1.
 

Ugar

Гуру форума
А с помощью какой функции это можно сделать? (я-новичек :)
В индикаторах обычно всё делается в цикле, в данном случае будет внутри цикла H1 ещё цикл перебора баров М1.
while() for() только это не функции, а операторы.
Если новичёк, то может стоит взяться за что то по проще.
 

zzzzz

Интересующийся
Здраствуйте,подскажите пожалуйста как алерт прикрутить к индюку.
 

Refa

Интересующийся
Здравствуйте уважаемые программисты подскажите как прописать в коде совы работу лота от баланса
 

Ugar

Гуру форума
Здравствуйте уважаемые программисты подскажите как прописать в коде совы работу лота от баланса
По какой системе? Существует много систем управления капиталом, от самых простых которые работают не везде и до фирменных разработок корифеев, например от Larry Williams или Ryan Jones.
Всё просто, продумай формулу и опиши в языке. Если конечно помнишь школьный курс арифметики и умеешь программировать. Если нет то лучше обратиться к программисту и описать на пальцах что хочешь.

ps Обращаться ко мне по поводу доработки чужого советника не надо.
 

zzzzz

Интересующийся
Здраствуйте.Возможно ли у Rsi поменять внешний вид?если да то как это можно сделать?спасибо.
 

Ugar

Гуру форума
Здраствуйте.Возможно ли у Rsi поменять внешний вид?если да то как это можно сделать?спасибо.
Конечно можно. А какой вид надо?
Самое простое:
Найди строчку SetIndexStyle(0,DRAW_LINE);
и поменяй в ней DRAW_LINE на DRAW_HISTOGRAM
После компиляции индикатор будет выглядеть в виде гистограммы.
 

Nuclear

Новичок форума
В советнике постоянно вот такая хрень
Parameter *otstyp* is given not correctly
объясните , что это значит что за параметр надо поправить???
пипец как замучало
 

Ugar

Гуру форума
В советнике постоянно вот такая хрень
Parameter *otstyp* is given not correctly
объясните , что это значит что за параметр надо поправить???
пипец как замучало
Неправильно задано значеник переменной *otstyp*. Скорее всего это внешняя переменная. То есть та, значение которой задаёт пользователь в настройках. Попробуй задать в 10 раз больше и посмотри.
 

kamilkz

Почетный гражданин
Здравствуйте уважаемые программисты, подскажите как отразить (определить) в программе советника пересечение ценой определенного уровня индикатора (как пример: допустим, уровень 45 у МА)
 

Ugar

Гуру форума
Здравствуйте уважаемые программисты, подскажите как отразить (определить) в программе советника пересечение ценой определенного уровня индикатора (как пример: допустим, уровень 45 у МА)
Код:
Expand Collapse Copy
double ma1=iMA(NULL,0,200,0,MODE_SMA,PRICE_CLOSE,1);
   double ma0=iMA(NULL,0,200,0,MODE_SMA,PRICE_CLOSE,0);
   if(Close[1]<ma1+45*Point && Close[0]>ma0+45*Point)
      {
      //Пересечение ценой уровня +45 от МА на текущем баре
      }
   if(Close[1]>ma1-45*Point && Close[0]<ma0-45*Point)
      {
      //Пересечение ценой уровня -45 от МА на текущем баре
      }
Пример пересечения ценой уровня +45 от SМА200 вверх и -45 от SMA200 вниз.
 

eevviill

Заблокирован
Здравствуйте уважаемые программисты, подскажите как отразить (определить) в программе советника пересечение ценой определенного уровня индикатора (как пример: допустим, уровень 45 у МА)
Например RSI.
PHP:
Expand Collapse Copy
double RSI1=(Symbol(),0,14,PRICE_CLOSE,1);
double RSI2=(Symbol(),0,14,PRICE_CLOSE,2);
 
//пересечение вверх 60 уровня.
if(RSI2<60 && RSI1>60)
Alert("RSI>60");
 

sochinik

Местный житель
Хочу заставить работать советник Exp - SafetyLockPRO5 с несколькими магиками, а как их прописать не знаю - мне нужно прописать для работы 1976 и 1977, а вводится только одно число.А как их разделить и чтобы советник мог работать сразу с двумя магиками. Я понимаю что можно повесить сову в двух разных окнах, но не хотелось бы нагромождать терминал...
 

hiks

Интересующийся
Подскажите как в коде написать:
Если последний ордер закрылся по стоплоссу то ....
Если последний ордер закрылся по тейкпрофиту то ....
 

eevviill

Заблокирован
Подскажите как в коде написать:
Если последний ордер закрылся по стоплоссу то ....
Если последний ордер закрылся по тейкпрофиту то ....
Что то типа
PHP:
Expand Collapse Copy
OrderSelect(1,SELECT_BY_POS,MODE_HISTORY);
if(OrderTakeProfit()==OrderClosePrice()) ....
 
Верх