PeriodMA — период скользящей средней;
TrailingSto — трейлинг стоп в пунктах;
IN_Point — количество пунктов, при прохождении которых от скользящей средней открывается/закрывается сделка.
Этот несколько доработанный советникможно скачать с моего сайта (№3 в архиве).
Для написания индикатора мне потребовался массив типа очередь. Т.е. чтобы не было необходимости задавать размерность массива, можно было добавлять значения без указания индекса в конец и так далее. В C# и C++ есть такая удобная штука как Queue (с разными методами, но с общим смыслом), а вот в MT4 такого нет. Я подумал, что уже не первый раз сталкиваюсь с необходимостью такой очереди. Решил дописать несколько функций, которые мне нужны и из простого массива сделать очередь. Когда несколько функций было написано, я вынес все в файл *.mqh и думал куда бы поместить его, чтобы использовать в дальнейшем во всех своих работах. И тут я обнаружил, что в папке MQL4 (в MT5 все аналогично) уже есть папка Include, которая УЖЕ вкючает в себя расширения для массивов (и не только).
Разобрав все, что связано с массивами я не расстроился, так как тех методов, что мне нужны, я не нашел. Я вынес их отдельно в файлик ArrayDouble_ext.mqh. Добавил три новых функции: нахождение суммы всего массива, поиск максимального и минимального значений массива. Зачем нужны две последние спросите вы? Поясню. Есть стандартная фунция ArrayMaximum, например:
color TimeFromColor = Red; // левая граница диапазона — цвет
int TimeFromStyle = STYLE_DASH; // левая граница диапазона — стиль
color TimeToColor = Blue; // правая граница диапазона — цвет
int TimeToStyle = STYLE_DASH; // правая граница диапазона — стиль
Беру заменяю Red и Blue на Gray и White, сохраняю. Беру перезагружаю терминал, но линии как были синяя и красная, так и остались. Хотя в исходнике мои цвета стоят.
подскажите, может чего то не так делаю, первый раз сталкиваюсь с этим.