Игорь, есть хороший индикатор, который может объединять несколько свечей в одну. Но он работает только на часовом графике. Можно ли сделать его универсальным?
Эта функция выполняет поиск ближайшего нижнего фрактала и возвращает его ценовой уровень. Особенностью данной функции является возможность установки произвольной формулы фрактала. Стандартная, общепринятая формула фрактала выглядит таким образом 2-2. Что означает 2 бара слева и 2 бара справа. А с помощью данной функции можно задавать даже очень экзотические фракталы, типа 8-2 (8 баров слева и 2 бара справа), 5-3 (5 баров слева и 3 бара справа) и т.д. Функция принимает следующие необязательные параметры:
sy - Наименование инструмента. "" или NULL - текущий символ. Значение по умолчанию NULL.
tf - Таймфрейм. Значение по умолчанию 0 - текущий символ.
nl - Количество баров слева. Значение по умолчанию - 2.
nr - Количество баров справа. Значение по умолчанию - 2.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 07.10.2006 |//| Описание : Возвращает ценовой уровень ближайшего нижнего фрактала |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" или NULL - текущий символ) |//| tf - таймфрейм ( 0 - текущий таймфрейм) |//| nl - количество баров слева |//| nr - количество баров справа |//+----------------------------------------------------------------------------+doubleGetNearestDownFractal(stringsy="0", inttf=0, intnl=2, intnr=2){boolf;
intfb, i, nb=-1;
if(sy=="" || sy=="0")sy=Symbol();
if(nl<1)nl=1;
if(nr<1)nr=1;
fb=nr;
while(nb<0){fb++;
f=True;
for(i=fb; i>fb-nr; i--){if(iLow(sy, tf, i)>iLow(sy, tf, i-1)){f=False; break; }}if(f){for(i=fb; i<fb+nl; i++){if(iLow(sy, tf, i)>iLow(sy, tf, i+1)){f=False; break; }}if(f){nb=fb; break; }}}return(iLow(sy, tf, nb));
}
Если бы ишо была возможность поиска не только последнего фрактала...................УХ!!! ...
Ага. Например, отметить (вертикальной линией) все фракталы (на протяжении последних 9 баров), которые по отношению к координате только что сформировавшегося фрактала имеют значение >= 1 и вывести это значение над фракталом. В порядке помощи (уж не смею и просить)....
Эта функция выполняет поиск ближайшего верхнего фрактала и возвращает его ценовой уровень. Особенностью данной функции является возможность установки произвольной формулы фрактала. Стандартная, общепринятая формула фрактала выглядит таким образом 2-2. Что означает 2 бара слева и 2 бара справа. А с помощью данной функции можно задавать даже очень экзотические фракталы, типа 8-2 (8 баров слева и 2 бара справа), 5-3 (5 баров слева и 3 бара справа) и т.д. Функция принимает следующие необязательные параметры:
sy - Наименование инструмента. "" или NULL - текущий символ. Значение по умолчанию NULL.
tf - Таймфрейм. Значение по умолчанию 0 - текущий символ.
nl - Количество баров слева. Значение по умолчанию - 2.
nr - Количество баров справа. Значение по умолчанию - 2.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 07.10.2006 |//| Описание : Возвращает ближайший верхний фрактал |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента (NULL - текущий символ) |//| tf - таймфрейм ( 0 - текущий таймфрейм) |//| nl - количество баров слева |//| nr - количество баров справа |//+----------------------------------------------------------------------------+doubleGetNearestUpFractal(stringsy="0", inttf=0, intnl=2, intnr=2){boolf;
intfb, i, nb=-1;
if(sy=="" || sy=="0")sy=Symbol();
if(nl<1)nl=1;
if(nr<1)nr=1;
fb=nr;
while(nb<0){fb++;
f=True;
for(i=fb; i>fb-nr; i--){if(iHigh(sy, tf, i)<iHigh(sy, tf, i-1)){f=False; break; }}if(f){for(i=fb; i<fb+nl; i++){if(iHigh(sy, tf, i)<iHigh(sy, tf, i+1)){f=False; break; }}if(f){nb=fb; break; }}}return(iHigh(sy, tf, nb));
}
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
НА ЭТОМ ВСЕ!!!!!
СПАСИБО !
Игорь, есть хороший индикатор, который может объединять несколько свечей в одну. Но он работает только на часовом графике. Можно ли сделать его универсальным?
Спасибо.
Функция GetNearestDownFractal().
Эта функция выполняет поиск ближайшего нижнего фрактала и возвращает его ценовой уровень. Особенностью данной функции является возможность установки произвольной формулы фрактала. Стандартная, общепринятая формула фрактала выглядит таким образом 2-2. Что означает 2 бара слева и 2 бара справа. А с помощью данной функции можно задавать даже очень экзотические фракталы, типа 8-2 (8 баров слева и 2 бара справа), 5-3 (5 баров слева и 3 бара справа) и т.д. Функция принимает следующие необязательные параметры:
Примеры использования функции GetNearestDownFractal().
PS. Во вложении скрипт для тестирования функции GetNearestDownFractal().
Примеры использования функции GetNearestDownFractal().
PS. Во вложении скрипт для тестирования функции GetNearestDownFractal().
Если бы ишо была возможность поиска не только последнего фрактала...................УХ!!! ...
Если бы ишо была возможность поиска не только последнего фрактала...................УХ!!! ...
Ага. Например, отметить (вертикальной линией) все фракталы (на протяжении последних 9 баров), которые по отношению к координате только что сформировавшегося фрактала имеют значение >= 1 и вывести это значение над фракталом. В порядке помощи (уж не смею и просить)....
Восторгаюсь вашим общим умением писать подобное. Сам - ламер недопатченый. Только начинаю изучать MQL.
Простите за отступление от темы!
Никак не пойму как можно написать:
1. Сравнение линии Стохастика за 1 и 2 бар и ее же сигнальной функцией при образовании нового 0 бара.
(грубо говоря оценить направление движения линии вверх-вниз и пересечения оных)
2. Как сделать это раз в час/полчаса/15 минут.
Покажите пожалуйста на простеньком примере!?
Или дайте ссылку на что нибудь подобное.
Заранее спасибо, даже если проигнорите!!!
1. Сравнение линии Стохастика за 1 и 2 бар и ее же сигнальной функцией при образовании нового 0 бара.
(грубо говоря оценить направление движения линии вверх-вниз и пересечения оных)
2. Как сделать это раз в час/полчаса/15 минут.
Покажите пожалуйста на простеньком примере!?
Или дайте ссылку на что нибудь подобное.
https://book.mql4.com/ru/samples/indicators
https://book.mql4.com/ru/build/conditions
https://book.mql4.com/ru/samples/indicators
https://book.mql4.com/ru/build/conditions
Спасибо за Стохастику.
Просто я думал можно еще как-то сделать.
А как сделать торговлю только раз в заданный промежуток времени?
(например исследование сигнала происходит раз в 15,30 или 60 минут)
Интересует сама функция.
Функция GetNearestUpFractal().
Эта функция выполняет поиск ближайшего верхнего фрактала и возвращает его ценовой уровень. Особенностью данной функции является возможность установки произвольной формулы фрактала. Стандартная, общепринятая формула фрактала выглядит таким образом 2-2. Что означает 2 бара слева и 2 бара справа. А с помощью данной функции можно задавать даже очень экзотические фракталы, типа 8-2 (8 баров слева и 2 бара справа), 5-3 (5 баров слева и 3 бара справа) и т.д. Функция принимает следующие необязательные параметры: