весь форум перерыл, не смог найти способ автоматического расчета смещения стрелок/значков в индикаторе (при переключении ТФ нужно подстраивать смещение), но точно знаю, что несколько месяцев назад кто то выкладывал готовую функцию
весь форум перерыл, не смог найти способ автоматического расчета смещения стрелок/значков в индикаторе (при переключении ТФ нужно подстраивать смещение), но точно знаю, что несколько месяцев назад кто то выкладывал готовую функцию
ЗЫ: вот одно не пойму, почему я поиском минут 20 искал и вроде точно помнил, что Виталий это выкладывал (искал поиском и по его сообщениям), но ты нашел, а я нет (((((
ЗЫ: вот одно не пойму, почему я поиском минут 20 искал и вроде точно помнил, что Виталий это выкладывал (искал поиском и по его сообщениям), но ты нашел, а я нет (((((
Ларчик просто открывается: блокнот и файл под именем "Полезности". Что вижу, что может где-то кому-то пригодиться, и это не банальщина - вписываю ссылку на пост и краткое описание. Уже так много лет... Мы ж тут для помощи людям, а не только в виде "смотрящих" за порядком
Спасибо. Моих мышцаф не хватает) Зафиксировать момент изменение цвета красного на синий не сложно, но как узнать, что в это время, синяя линия накрыта чёрной, не представляю. Какое условие нужно добавить к этому:-
чтобы исключить сигнал при пересечении баром чёрной линии? На вашем скриншоте считать последнее пересечение вверх, а пересечение предыдущих трёх баров не считать.
Всё проще, пока бары закрываются выше линии EMA(21) пишется в один буфер (синий), ниже - в другой(красный). Что бы исключить сигнал переходов этой линии, нужно что бы не менее двух баров подряд были закрыты или выше или ниже. Для кода это будет так:
bool
b = false,
s = false; //обе эти переменные должны быть объявлены за пределами всех блоков программы
BUY_1=NormalizeDouble(iCustom(NULL,0,"4X Pip Snager Trend",1,1),Digits);
if(BUY_1 != EMPTY_VALUE)
{
// первичный вход в этот блок означает, что 1 бар закрыт выше линии, но действие при этом не выполняется т. к. b == false (либо изначально, либо было сброшено в блоке else)// вторичный и все последующие подряд входы в этот блок означают, что, как минимум 2 бара подряд закрыто выше линии и действие будет выполнятся т. к. в предыдущем входе b присвоено значение trueif(b)
{
// ДЕЙСТВИЕ ДЛЯ СИНЕЙ ЛИНИИ
}
b = true;
s = false;
}
elae
{
// аналогично, как и в блоке вышеif(s)
{
// ДЕЙСТВИЕ ДЛЯ КРАСНОЙ ЛИНИИ
}
b = false;
s = true;
}
ЗЫ: вот одно не пойму, почему я поиском минут 20 искал и вроде точно помнил, что Виталий это выкладывал (искал поиском и по его сообщениям), но ты нашел, а я нет (((((
Но этот метод не учитывает прокрутку графика пользователем, в этом вся соль. Поставьте индикатор на волатильный период, а затем прокрутите в флетовый, или наоборот. В этом смысле отталкиваться от данных какого нибудь ATR для рассчета расстояния разумней. Если не хочется отслеживать прокрутку графика пользователем для перестановки всех стрелок исходя из новых крайних цен графика.
Вот пример на базе фрактала. Сделал 2 дополнительных буфера. Для фрактала это лишнее, так как можно просто отталкиваться от цены свечи. Но для вашей задачи возможно такой вариант будет нужен.
Nikolay Khrushchev: Вот пример на базе фрактала. Сделал 2 дополнительных буфера. Для фрактала это лишнее, так как можно просто отталкиваться от цены свечи. Но для вашей задачи возможно такой вариант будет нужен.
спасибо!
да действительно у меня задача намного проще - подписываю около 30 вершин ЗигЗага номерами вершин, дальше в истории не будет текстовых меток
Artyom Trishkin:
Ларчик просто открывается: блокнот и файл под именем "Полезности". Что вижу, что может где-то кому-то пригодиться, и это не банальщина - вписываю ссылку на пост и краткое описание. Уже так много лет... Мы ж тут для помощи людям, а не только в виде "смотрящих" за порядком
уговорил, в КБ полезностей залью, не скажу что мне жалко вот и не делюсь, просто сопровождать свои коды я не уверен, что буду, а обсуждать, что и как уже устал
ЗЫ: из интересного и готового, примерно на 98%:
1 . доступ к вершинам ЗигЗага как к массиву структур (динамический список и перегрузка оператора [] ), все вроде летает и очень удобно, что пишешь ZZ[2].price... ZZ[i]. up = true
2. секундный график средствами МТ4
из этого (1-2), что то есть интересное для форума? - или тут как и везде, дайте нам на 100% готовый код, мы делать ничего н будем самостоятельно ((((
да действительно у меня задача намного проще - подписываю около 30 вершин ЗигЗага номерами вершин, дальше в истории не будет текстовых меток
уговорил, в КБ полезностей залью, не скажу что мне жалко вот и не делюсь, просто сопровождать свои коды я не уверен, что буду, а обсуждать, что и как уже устал
ЗЫ: из интересного и готового, примерно на 98%:
1 . доступ к вершинам ЗигЗага как к массиву структур (динамический список и перегрузка оператора [] ), все вроде летает и очень удобно, что пишешь ZZ[2].price... ZZ[i]. up = true
2. секундный график средствами МТ4
из этого (1-2), что то есть интересное для форума? - или тут как и везде, дайте нам на 100% готовый код, мы делать ничего н будем самостоятельно ((((
Ну с каждого кода можно извлечь что-то полезноеи, а иногда даже неординарное.
Кодобаза именно для этих целей и создана, а не для тех, что с ней вытворяют 2 человека.
P.S. Натолкнули на хорошую мысль, нужно будет и мне переписать на массив структур, как-то об этом даже не подумал ранее.
Vitaly Muzichenko: P.S. Натолкнули на хорошую мысль, нужно будет и мне переписать на массив структур, как-то об этом даже не подумал ранее.
массив структур немного проще, но функциональность ниже, я делал через динамические списки CList - реализация довольно простая, но привыкнуть к работе с указателями в MQL довольно сложно, постараюсь код дооформить и выложу в КБ
весь форум перерыл, не смог найти способ автоматического расчета смещения стрелок/значков в индикаторе (при переключении ТФ нужно подстраивать смещение), но точно знаю, что несколько месяцев назад кто то выкладывал готовую функцию
ПОМОГИТЕ! )))
весь форум перерыл, не смог найти способ автоматического расчета смещения стрелок/значков в индикаторе (при переключении ТФ нужно подстраивать смещение), но точно знаю, что несколько месяцев назад кто то выкладывал готовую функцию
ПОМОГИТЕ! )))
Это?
Это?
круто!
ЗЫ: вот одно не пойму, почему я поиском минут 20 искал и вроде точно помнил, что Виталий это выкладывал (искал поиском и по его сообщениям), но ты нашел, а я нет (((((
круто!
ЗЫ: вот одно не пойму, почему я поиском минут 20 искал и вроде точно помнил, что Виталий это выкладывал (искал поиском и по его сообщениям), но ты нашел, а я нет (((((
Ларчик просто открывается: блокнот и файл под именем "Полезности". Что вижу, что может где-то кому-то пригодиться, и это не банальщина - вписываю ссылку на пост и краткое описание. Уже так много лет... Мы ж тут для помощи людям, а не только в виде "смотрящих" за порядком
Спасибо. Моих мышцаф не хватает) Зафиксировать момент изменение цвета красного на синий не сложно, но как узнать, что в это время, синяя линия накрыта чёрной, не представляю. Какое условие нужно добавить к этому:-
чтобы исключить сигнал при пересечении баром чёрной линии? На вашем скриншоте считать последнее пересечение вверх, а пересечение предыдущих трёх баров не считать.
Всё проще, пока бары закрываются выше линии EMA(21) пишется в один буфер (синий), ниже - в другой(красный). Что бы исключить сигнал переходов этой линии, нужно что бы не менее двух баров подряд были закрыты или выше или ниже.
Для кода это будет так:
круто!
ЗЫ: вот одно не пойму, почему я поиском минут 20 искал и вроде точно помнил, что Виталий это выкладывал (искал поиском и по его сообщениям), но ты нашел, а я нет (((((
Но этот метод не учитывает прокрутку графика пользователем, в этом вся соль. Поставьте индикатор на волатильный период, а затем прокрутите в флетовый, или наоборот.
В этом смысле отталкиваться от данных какого нибудь ATR для рассчета расстояния разумней.
Если не хочется отслеживать прокрутку графика пользователем для перестановки всех стрелок исходя из новых крайних цен графика.
Вот пример на базе фрактала. Сделал 2 дополнительных буфера. Для фрактала это лишнее, так как можно просто отталкиваться от цены свечи. Но для вашей задачи возможно такой вариант будет нужен.
спасибо!
да действительно у меня задача намного проще - подписываю около 30 вершин ЗигЗага номерами вершин, дальше в истории не будет текстовых меток
Ларчик просто открывается: блокнот и файл под именем "Полезности". Что вижу, что может где-то кому-то пригодиться, и это не банальщина - вписываю ссылку на пост и краткое описание. Уже так много лет... Мы ж тут для помощи людям, а не только в виде "смотрящих" за порядком
уговорил, в КБ полезностей залью, не скажу что мне жалко вот и не делюсь, просто сопровождать свои коды я не уверен, что буду, а обсуждать, что и как уже устал
ЗЫ: из интересного и готового, примерно на 98%:
1 . доступ к вершинам ЗигЗага как к массиву структур (динамический список и перегрузка оператора [] ), все вроде летает и очень удобно, что пишешь ZZ[2].price... ZZ[i]. up = true
2. секундный график средствами МТ4
из этого (1-2), что то есть интересное для форума? - или тут как и везде, дайте нам на 100% готовый код, мы делать ничего н будем самостоятельно ((((
спасибо!
да действительно у меня задача намного проще - подписываю около 30 вершин ЗигЗага номерами вершин, дальше в истории не будет текстовых меток
уговорил, в КБ полезностей залью, не скажу что мне жалко вот и не делюсь, просто сопровождать свои коды я не уверен, что буду, а обсуждать, что и как уже устал
ЗЫ: из интересного и готового, примерно на 98%:
1 . доступ к вершинам ЗигЗага как к массиву структур (динамический список и перегрузка оператора [] ), все вроде летает и очень удобно, что пишешь ZZ[2].price... ZZ[i]. up = true
2. секундный график средствами МТ4
из этого (1-2), что то есть интересное для форума? - или тут как и везде, дайте нам на 100% готовый код, мы делать ничего н будем самостоятельно ((((
Ну с каждого кода можно извлечь что-то полезноеи, а иногда даже неординарное.
Кодобаза именно для этих целей и создана, а не для тех, что с ней вытворяют 2 человека.
P.S. Натолкнули на хорошую мысль, нужно будет и мне переписать на массив структур, как-то об этом даже не подумал ранее.P.S. Натолкнули на хорошую мысль, нужно будет и мне переписать на массив структур, как-то об этом даже не подумал ранее.
массив структур немного проще, но функциональность ниже, я делал через динамические списки CList - реализация довольно простая, но привыкнуть к работе с указателями в MQL довольно сложно, постараюсь код дооформить и выложу в КБ