View Full Version : Индикатор объемов....
Frim_mgn
05-03-2010, 15:24
В общем тут такая идея пришла, но знаний mq4 не хватает, даже не представляю как это можно реализовать. Смысл заключается в отслеживании количества тиков(объемов) на барах. То есть к примеру, у нас есть часовой бар, он делиться на 5 квадратиков, цвет квадрата показывает какой объем был в этот промежуток. То есть получается что отслеживает в данной ситуации количество тиков за 12 минут. Но думаю проще будет сделать деление на 4 квадрата по 15 минут вот картинку нарисовал, чтоб более понятна была мысль)), например красн квадрат это 25-40 тиков. Синий 10-15, желтый 50-80. Реально ли это реализовать,.? Заранее спасибо
Scriptong
05-03-2010, 20:51
Это уже реализовано в МТ4 в виде графика объема. Для этого вам нужно перейти с часового графика на М15 и присоединить индикатор объема. Он будет отображен в виде гистограммы в нижней части графика.
Если же так нужно рассматривать М15 на Н1 и в виде цветов, то тоже можно сделать. Для этого требуется полное описание соответствия цветов количеству тиков. Но учтите, что самих свечей не будет видно.
Frim_mgn
07-03-2010, 14:51
Здравствуйте) Я не правильно выразился,точнее не совсем хорошо подумал . Хотелось бы увидеть следующий индикатор. В течении бара у нас есть тики, они бывают как вверх , так и вниз, так вот индикатор должен показывать сколько тиков было, как вверх так и вниз.
За точку отсчета берем открытие бара, 10тиков вверх -откладываем 1ед(условный прямоугольник) в зеленый сектор вверх, 10тиков вниз- откладываем 1ед вниз(красный сектор), относительно цены открытия. К примеру, после открытия бара у нас прошло 7тиков вверх, и 3 тика вниз, держим в уме, приходят еще тики, становиться 10 тиков вверх, 6 вниз, теперь отклыдаваем 1прямоугольник зеленый, 6 держим в уме и так далее, если под конец бара, остаються не добитые тики, при открытии следующего обнуляемся. Хотелось бы, чтоб индикатор сам считал тики и все откладывал в реальном времени, ведь данный индикатор на сколько я понимаю можно реализовать взяв историю Volumes на 1минуте, но будет не так точно.
Надеюсь это можно реализовать) Вот картинки моего виденья дел
Scriptong
07-03-2010, 16:38
В таком виде индикатор будет работать только в режиме реального времени. На истории его применение невозможно, так как в МТ4 не хранится история тиков. Соответственно, невозможно узнать количество тиков "вверх" и "вниз". Доступно только количество тиков.
Frim_mgn
07-03-2010, 17:48
В таком виде индикатор будет работать только в режиме реального времени. На истории его применение невозможно, так как в МТ4 не хранится история тиков. Соответственно, невозможно узнать количество тиков "вверх" и "вниз". Доступно только количество тиков.
Я понимаю. Сможете реализовать?
Еще хотел бы кое-что добавить, я не знаю каким образом считаются объемы в МТ4, то биш, это сумарное количество тиков в общем, не зависимо на какое колиство пунктов 1тик сдвигает цену, или сумарное количество пунктов на на которое сдвигают цену тики.
В индикаторе хотелось бы видеть именно пункты цены на которые идет сдвиг вверх или вниз.
10 пунктов-1ед условной отметки
Scriptong
10-03-2010, 19:15
Тогда требуется уточнение. После каждого движения на 10 пунктов в одну сторону мы будем рисовать один блок или все же на манер крестиков-ноликов (там для отображения противоположного блока требуется превышение предыдущего движения в два раза)?
К примеру, цена прошла вверх 10 пунктов, а потом вернулась вниз на 10 пунктов. Это один зеленый и один красный или вообще такое движение не фиксируется?
Frim_mgn
10-03-2010, 19:57
К примеру, цена прошла вверх 10 пунктов, а потом вернулась вниз на 10 пунктов. Это один зеленый и один красный или вообще такое движение не фиксируется?
Фиксируем любое движение, и это то же.
Тогда требуется уточнение. После каждого движения на 10 пунктов в одну сторону мы будем рисовать один блок или все же на манер крестиков-ноликов (там для отображения противоположного блока требуется превышение предыдущего движения в два раза)?
Противоположного или следующего? Мне кажется это хорошая идея, делать блоки по принципу 10-20-40-80..., т к планируется использование индикатора на Часовом графике, это сделает менее объемно его отображение.
Если я вас правильно понял, то выглядеть это будет так
:)
Scriptong
16-03-2010, 21:04
Противоположного или следующего? Мне кажется это хорошая идея, делать блоки по принципу 10-20-40-80..., т к планируется использование индикатора на Часовом графике, это сделает менее объемно его отображение.
Если я вас правильно понял, то выглядеть это будет так
:)
Нет, совсем неправильно. Я имел в виду классические крестики-нолики.
Но в текущей версии я реализовал следующий алгоритм:
1) Начальным уровнем всегда является цена открытия свечи. Если индикатор прикреплен в середине свечи, то текущая цена Bid
2) Изменение цены на Ticks пунктов в меньшую или большую сторону рисует соответствующий бокс выше или ниже уровня открытия свечи. Следует иметь в виду, что если цена за один тик преодолела расстояние в несколько боксов, то в течение следующих тиков все они будут отображены. Например, бокс 5 пунктов, а цена взлетела на 20 пунктов. Тогда будет отображено сразу четыре бокса.
Индикатор еще серьезно не тестировался, поэтому могут быть какие-то ошибки, за которые прошу особо не пинать.
Frim_mgn
17-03-2010, 06:01
Но в текущей версии я реализовал следующий алгоритм:
1) Начальным уровнем всегда является цена открытия свечи. Если индикатор прикреплен в середине свечи, то текущая цена Bid
2) Изменение цены на Ticks пунктов в меньшую или большую сторону рисует соответствующий бокс выше или ниже уровня открытия свечи. Следует иметь в виду, что если цена за один тик преодолела расстояние в несколько боксов, то в течение следующих тиков все они будут отображены. Например, бокс 5 пунктов, а цена взлетела на 20 пунктов. Тогда будет отображено сразу четыре бокса.
Все верно.
Индикатор еще серьезно не тестировался, поэтому могут быть какие-то ошибки, за которые прошу особо не пинать.
Спасибо Вам большое буду тестировать:)
Frim_mgn
19-03-2010, 13:24
Потестировал в принципе начало хорошее. Не хватает индикатору "Памяти", принцип я описывал 3м посте. То есть иногда цена бегает так
1п верх- 1п низ -1п верх -1низ и т д, индикатор по идеи должен рисовать бокс когда достигнеться нужная сумма тиков он не рисует. Рисует только когда происходит чистые тики в одну сторону без отката. Вот:)
Scriptong
19-03-2010, 19:54
Потестировал в принципе начало хорошее. Не хватает индикатору "Памяти", принцип я описывал 3м посте. То есть иногда цена бегает так
1п верх- 1п низ -1п верх -1низ и т д, индикатор по идеи должен рисовать бокс когда достигнеться нужная сумма тиков он не рисует. Рисует только когда происходит чистые тики в одну сторону без отката. Вот:)
Значит, я неправильно понял.
Как тогда быть с тиками, которые изменяют цену не на один пункт, а больше? Редко, но бывают такие тики, которые меняют цену на 10 и более пунктов.
Frim_mgn
20-03-2010, 05:55
Значит, я неправильно понял.
Как тогда быть с тиками, которые изменяют цену не на один пункт, а больше? Редко, но бывают такие тики, которые меняют цену на 10 и более пунктов.
Данные тики мы так же учитываем и держим в памяти, если у нас бокс=10тиков,и тик дернул цену на 10 п значит сразу рисуем бокс, если например 1й тик дернул цену на 9 пунктов вверх, потом 2й(следующий) тик дернул цену на 7 пунктов вниз, то индикатор должен уже держать в уме 9пунктов для верхнего бокса и 7 пунктов для нижнего, потом скажем опять 3й тик дернул на 6 пунктов вверх, тогда у нас должен нарисоваться верхний бокс и 5 тиков остаться в уме.:)
Scriptong
20-03-2010, 18:44
Данные тики мы так же учитываем и держим в памяти, если у нас бокс=10тиков,и тик дернул цену на 10 п значит сразу рисуем бокс, если например 1й тик дернул цену на 9 пунктов вверх, потом 2й(следующий) тик дернул цену на 7 пунктов вниз, то индикатор должен уже держать в уме 9пунктов для верхнего бокса и 7 пунктов для нижнего, потом скажем опять 3й тик дернул на 6 пунктов вверх, тогда у нас должен нарисоваться верхний бокс и 5 тиков остаться в уме.:)
ОК. На следующей неделе исправлю
Frim_mgn
28-03-2010, 14:55
Еще небольшое дополнение насчет отображения, надо бы чтоб ширина бокса была ровно с ширину свечки, и еще заметил, что относительно вертикальной оси тоже смещение боксов происходит, и становиться не понятно, к какой свече относиться столбец.
Scriptong
29-03-2010, 07:23
К сожалению, эту проблему решить невозможно. Боксы рисуются средствами MQL4, где все объекты позиционируются относительно середины свечи. Чтобы горизонтальная линия была видна, требуется провести ее от середины одной свечи до середины другой.
Попробуйте на досуге увеличить масштаб графика и попытайтесь поработать с объектами (прямоугольник, линии, текст). Думаю, суть проблемы станет очевидна.
Единственный объект, который можно позиционировать без ограничений, это "Текстовая метка". Но его привязка происходит к координатам экрана, а не свечам. Поэтому на него не будет действовать прокрутка графика, что делает очень затруднительным его использование для рисования на свечах.
Frim_mgn
29-03-2010, 13:43
Понятно... Может тогда сделать уже гистограмой индикатор, я с самого начала еще думал об этом, но прикинул что на графике наглядней будет.
Тогда хотелось бы увидеть вот что:) Все условия попрежнему, тогда точкой отсчета будет 0 ВВерх откладываем количество пунктов на которое толкнули тики цену вверх зелен цвет, и соответ. вниз. Вот только мне интересно в плане маштаба гистограммы, как будет.... На гистограмме можно ли сделать, образно говоря, так же бокс определенного размера? А по вертикальное оси должно тогда показываться полное число тиков
Scriptong
30-03-2010, 19:20
Попробуем так. Гистограмма показывает количество тиков, выраженное в боксах. То есть, если 1 бокс = 10 тиков, то значение 2 означает 20 тиков. В положительную сторону откладываются тики вверх, в отрицательную - тики вниз. Текущее значение можно будет увидеть в подписи индикатора. Например, Tick_Counter_V2 3.0000 -4.0000, означает 3 бокса вверх и 4 вниз.
В верхнем левом углу вывел текущее количество тиков, которое набирается для нового бокса.
Сейчас индикатор считает только тики, не обращая внимание на реальный прирост. Но можно переделать и с учетом реального прироста цены.
Frim_mgn
30-03-2010, 20:26
Спасибо,На первый взгляд все как надо:). Буду тестировать завтра, сейчас уже рынок вялый)
И еще вопрос, я вчера не подумал об этом... А нужны ли вообще боксы теперь когда отображение через гистограмму сделали)) Боксы изначально предусматривались, чтоб экономить место на самом графике... А раз у нас гистограмма, то можно просто откладывать кол-во ПУНКТОВ вверх или вниз...
Ведь смысл тот же самый останеться? Я ведь прав?)
Frim_mgn
31-03-2010, 16:53
Так все ниче переделывать не надо, можно прсото поставить размер бокса 1))
Scriptong, доработайте пожалуйста версию, чтоб она считала именно пункты на которые тики дергают цену. ЗАметил небольшой недочет, когда у нас новый бар, и скажем цена бокс 3 пункта, когда происходит ПЕРВЫЕ 3 тика скажем вниз то гистограмма не рисуется... а даже пропадает нулевой уровень, потом же когда выполниться условие для бокса вверх, то на гистограмме появляются сразу бокс вверх и бокс вниз
Scriptong
01-04-2010, 14:07
Теперь индикатор считает пункты. Перечисленные недостатки попытался устранить, добавил опцию UseComment.
Frim_mgn
01-04-2010, 18:33
Теперь индикатор считает пункты. Перечисленные недостатки попытался устранить, добавил опцию UseComment.
Спасибо, Вам большое) Все работает, как надо. Только проблемка с отображением первых тиков гистограммы вроде осталась, но это мелочь. Буду тестировать. :)
Я так понимаю расчитанные бары гистограммы нельзя сохранить? Может как то в логи записывать или глобальные переменные...
Scriptong
02-04-2010, 07:34
В глобальные переменные точно никак, так как объем данных будет большой. А вот в файлы можно. Но тут появляется много проблем. Ведь данные могут быть сохранены для одного таймфрейма и настроек индикатора, а индикатор впоследствии включен с другими настройками и на другом таймфрейме. Это уже серьезная проблема синхронизации, которая даже для разработчиков МТ4 стала ахилесовой пятой.
Frim_mgn
02-04-2010, 08:51
В глобальные переменные точно никак, так как объем данных будет большой. А вот в файлы можно. Но тут появляется много проблем. Ведь данные могут быть сохранены для одного таймфрейма и настроек индикатора, а индикатор впоследствии включен с другими настройками и на другом таймфрейме. Это уже серьезная проблема синхронизации, которая даже для разработчиков МТ4 стала ахилесовой пятой.
Спасибо за разъяснение. Буду тестировать не выключая терминал:)
Scriptong
02-04-2010, 17:20
Спасибо за разъяснение. Буду тестировать не выключая терминал:)
Нет, все это сделать можно. Моего уровня квалификации для этого достаточно. Только будет это небыстро (не одна неделя). Тут уж вам решать, насколько востребован подобный инструмент. Я, например, считаю, что анализ тиков бесперспективен, в этом шуме ловить нечего.
Frim_mgn
03-04-2010, 08:27
Нет, все это сделать можно. Моего уровня квалификации для этого достаточно. Только будет это небыстро (не одна неделя). Тут уж вам решать, насколько востребован подобный инструмент. Я, например, считаю, что анализ тиков бесперспективен, в этом шуме ловить нечего.
Я понимаю. Если у меня будут успехи, то продожим тему:)
Еще раз спасибо, за помощь.
Frim_mgn
28-04-2010, 14:02
Здравствуйте! Уважаймый Scriptong, когда у вас будет время, не могли бы вы написать простенький советник, который от текущей цены каждые n секунд, откладывает отложенные ордера вверх на покупку, вниз на продажу, на m писов. сделать трал ТП и СЛ.
Заранее спасибо.:)
Scriptong
29-04-2010, 09:37
Здравствуйте. Могу, конечно. Но первым делом я должен выполнить две других просьбы: http://forum.fxservice.com/showthread.php?t=4842 и http://forum.fxservice.com/showthread.php?t=4812
Frim_mgn
29-04-2010, 11:02
Здравствуйте. Могу, конечно. Но первым делом я должен выполнить две других просьбы: http://forum.fxservice.com/showthread.php?t=4842 и http://forum.fxservice.com/showthread.php?t=4812
Конечно, я все понимаю. Я поэтому и написал, что когда у вас будет время. Мне не горит. ТАм тоже темы интересные=)
Frim_mgn
31-05-2010, 13:23
Актуально:)
Scriptong
31-05-2010, 13:38
Здравствуйте! Уважаймый Scriptong, когда у вас будет время, не могли бы вы написать простенький советник, который от текущей цены каждые n секунд, откладывает отложенные ордера вверх на покупку, вниз на продажу, на m писов. сделать трал ТП и СЛ.
Заранее спасибо.:)
Вот теперь давайте подробнее:
1) Все ли время должны откладываться ордера?
2) Что делать, когда один из ордеров срабатывает?
3) Что делать с накопленными ранее установленными отложенными ордерами при установке новых?
4) Насколько критично понятие "каждые n секунд"? Дело в том, что советник срабатывает от тика, который абсолютно никак не привязан к секундам и действия будут выполняться только когда тик пришел позже этих самых "n секунд". Если точное соблюдение "n секунд" критично, то советник будет зацикленным, что отразится на загрузке терминала и прочих мелких неудобствах. Хотя это действительно мелочи. Например, пользователи AutoGraf, который тоже является зацикленным советником, никаких неудобств не испытывают.
Frim_mgn
31-05-2010, 14:14
1) Еще неплохо бы сделать в советнике ограничение по времени работы, StartHour, EndHour по терминальному времени.
2)Когда ордер срабатывает, противоположный просто удаляется.
3) При установке новых ордеров старые 2 удаляются.
4) Секунды важны, к тикам привязаться так не получиться. Думаю загрузка особо не будет мешать.
Я честно говоря думал, что можно сделать чтоб советник срабатывал каждые n секунд... Функция sleep здесь не поможет? или тогда советник будет срабатывать через время = sleep+(время прихода тика)?:)
Scriptong
31-05-2010, 15:43
Функция sleep здесь не поможет? или тогда советник будет срабатывать через время = sleep+(время прихода тика)?:)
Ну так с помощью sleep и работает зацикленный советник. Только sleep не будет давать заданную пользователем задержку в n секунд, так как помимо этой задержки у советника должны работать другие функции: анализатор своих сделок, трейлинг и т. д.
Frim_mgn
31-05-2010, 16:46
Ну так с помощью sleep и работает зацикленный советник. Только sleep не будет давать заданную пользователем задержку в n секунд, так как помимо этой задержки у советника должны работать другие функции: анализатор своих сделок, трейлинг и т. д.
А нельзя сделать так, что пока сделка не открыта то советник работает на зацикливании, то бишь, ждет пока один из ордеров сработает, когда ордер отрываеться, то переходит на по-тиковую работу.
Прошу прощение, если говорю не совсем корректно, я еще плоховато разбираюсь в mq4:).
Scriptong
31-05-2010, 18:01
А нельзя сделать так, что пока сделка не открыта то советник работает на зацикливании, то бишь, ждет пока один из ордеров сработает, когда ордер отрываеться, то переходит на по-тиковую работу.
Прошу прощение, если говорю не совсем корректно, я еще плоховато разбираюсь в mq4:).
К сожалению, все не так просто. Представьте себе ситуацию: выставлены отложенные ордера и советник "повис" в ожидании n секунд. За это время срабатывает один из ордеров и требуется удаление противоположного ордера и может даже уже подтяжка трейлинга. А советник висит в ожидании. Это только один из вариантов. Я еще полностью алгоритм не продумывал, просто описал случай, первым пришедший в голову.
Frim_mgn
01-06-2010, 11:02
Надеюсь все же получиться:)
Scriptong
02-06-2010, 15:39
Надеюсь все же получиться:)
Получится, конечно. Мы ведь дискутировали по поводу варианта реализации.
Scriptong
08-06-2010, 11:56
Как и договаривались, задание реализовано в виде скрипта. Поэтому файл с исходным кодом необходимо положить в папку experts\scripts.
Каждые WaitSeconds скрипт устанавливает два проивоположных отложенных ордера на расстоянии от цены OffsetPips таким образом, чтобы путь цены до них был одинаковым.
Если за WaitSeconds хотя бы один ордер не сработал, то оба ордера перемещаются на новые уровни. При срабатывании ордера противоположный удаляется и скрипт ждет закрытия позиции по стопу или профиту, хотя и производит дальнейший отсчет времени. Это нужно для того, чтобы установить новые отложенные ордера не сразу же после закрытия позиции, а именно в назначенное время.
Не рекомендуется устанавливать параметр WaitSeconds слишком малым (порядка 60 секунд). Это может привести к блокировке счета брокером.
Frim_mgn
08-06-2010, 14:59
Спасибо,Scriptong большое:) А в виде советника почему не получилось реализовать? Почему может брокер заблокировать? Разве запрос 1 раз в минуту это много?) Пролистал условия торговли, не нашел каких то ограничений
Scriptong
08-06-2010, 15:08
Спасибо,Scriptong большое:) А в виде советника почему не получилось реализовать? Почему может брокер заблокировать? Разве запрос 1 раз в минусу это много?)
В принципе, можно и в виде советника. Но я больше привык называть советниками те программы, которые реагируют на тик. В данном случае программа никак не привязана к тикам и, по сути, выполняет одноразовое действие. Поэтому я сделал скрипт.
То же самое можно было бы реализовать в виде советника с той лишь разницей, что для старта ему бы понадобился один тик. Скрипт этого мелкого недостатка лишен.
Один запрос в минуту - это много, действительно много. И то такое среднее выйдет, если вы установите WaitSeconds = 120. Одно дело, если подобная активность фиксируется в течение непродолжительного времени . И совсем другое дело, когда это поставлено на поток. Ладно если бы скрипт открывал позиции, а тут - отложенные ордера, которые для ДЦ никакого интереса не представляют. Не забудьте, что может быть использовано несколько валютных пар одновременно, что увеличивает нагрузку на торговый сервер.
Frim_mgn
08-06-2010, 15:11
Понятно. Скрипт я так понимаю в тестере не протестишь.
Scriptong
08-06-2010, 15:57
Понятно. Скрипт я так понимаю в тестере не протестишь.
В тестере - нет. Даже при реализации в виде советника его нельзя было бы протестировать, так как суть остается одна - зацикленность. Во-вторых, тестер генерирует тики и привязка к секундам там вовсе неуместна. Результаты бы были совсем никчемными, так как очень мало отражали бы реальность.
Эта проблема решается при введении тиковой зависимости стратегии. Но тогда не у дел остается секундная точность.
P. S. Обнаружил небольшую опечатку в коде. Новая версия скрипта здесь.
Frim_mgn
08-06-2010, 16:15
Все понял, спасибо. Буду тестировать.
P.S Scriptong,я просто восхищаюсь иногда вами и вашей деятельностью. Как вы просто так помогаете людям, независимо от перспективности их идей, спокойно отвечаете коротко и ясно на все вопросы, пусть иногда и глупые. Таких людей, как вы, нынче мало...
Здоровья и Успехов Вам!:)
P.S Scriptong,я просто восхищаюсь иногда вами и вашей деятельностью. Как вы просто так помогаете людям, независимо от перспективности их идей, спокойно отвечаете коротко и ясно на все вопросы, пусть иногда и глупые. Таких людей, как вы, нынче мало...
С удовольствием присоединяюсь . Терпение просто дьявольское , я бы так не смог . Снимаю шляпу .
Frim_mgn
03-09-2010, 05:50
Здравствуйте.Scriptong, если несложно, нельзя ли немного изменить индикатор TickCounter, и сделать чтоб блок рисовался, когда размер тика был >= параметра Ticks. Попробывал сам, но что то не работает, может прямо здесь можно на ошибку указать фуекция старт
#property copyright "Scriptong"
#property link "scriptong@mail.ru"
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_level1 0
#property indicator_color1 Lime
#property indicator_color2 Red
//---- input parameters
extern string A1 = "Размер бокса в пунктах";
extern int Ticks = 1;
extern string A2 = "Выводить или нет комментарий в левом верхнем углу";
extern bool UseComment = True;
double Tick;
double UpBuffer[], DownBuffer[], NBL;
int UpT, DownT, // количество тиков вверх и вниз от последнего обнуления
AllUp, AllDown;
bool Activate;
//+-------------------------------------------------------------------------------------+
//| Custom indicator initialization function |
//+-------------------------------------------------------------------------------------+
int init()
{
Activate = False;
if (Ticks < 1)
{
Alert("Значение Ticks должно быть больше нуля!");
return(0);
}
SetIndexBuffer(0, UpBuffer);
SetIndexBuffer(1, DownBuffer);
SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, 2);
SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, 2);
Tick = MarketInfo(Symbol(), MODE_TICKSIZE);
NBL = MarketInfo(Symbol(), MODE_BID);
UpBuffer[0] = 0;
DownBuffer[0] = 0;
AllUp = 0;
AllDown = 0;
Activate = True;
return(0);
}
//+-------------------------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+-------------------------------------------------------------------------------------+
int deinit()
{
Comment("");
return(0);
}
//+-------------------------------------------------------------------------------------+
//| Custom indicator iteration function |
//+-------------------------------------------------------------------------------------+
int start()
{
if (!Activate) return(0);
// - 1 - ================= Обнуление значений переменных на первом тике свечи ===========
if (Volume[0] == 1)
{
NBL = Open[0];
UpT = 0;
DownT = 0;
UpBuffer[0] = 0;
DownBuffer[0] = 0;
AllUp = 0;
AllDown = 0;
return(0);
}
// - 1 - ================================ Окончание блока ===============================
double NBid = Bid;
// - 2 - =========================== Рост цены на текущем тике ==========================
if (NBid > NBL)
{
if (Tick >= Ticks)
{
AllUp += Tick;
UpBuffer[0] = AllUp;
}
}
// - 2 - ================================ Окончание блока ===============================
// - 3 - =========================== Падение цены на текущем тике =======================
if (NBL > NBid)
{
if (Tick >= Ticks)
{
AllDown += Tick;
DownBuffer[0] = -AllDown;
}
}
// - 3 - ================================ Окончание блока ===============================
if (UseComment)
Comment("Текущее количество тиков:\nВверх: ", UpT, "\nВниз: ",DownT);
NBL = NBid;
return(0);
}
//+------------------------------------------------------------------+
Заранее спасибо.
Здравствуйте.Scriptong, если несложно, нельзя ли немного изменить индикатор TickCounter, и сделать чтоб блок рисовался, когда размер тика был >= параметра Ticks. Попробывал сам, но что то не работает, может прямо здесь можно на ошибку указать фуекция старт
Заранее спасибо.
Не думаю что кто-то будет охотно разбираться с декомпилированными источника, попробуй хотя бы нормализовать имена переменных по смыслу (какие сможешь).
if (Volume[0] == 1.0) {
сразу ошибка, объём тиков не может быть дробным :)
Frim_mgn
05-09-2010, 06:06
Не думаю что кто-то будет охотно разбираться с декомпилированными источника, попробуй хотя бы нормализовать имена переменных по смыслу (какие сможешь).
сразу ошибка, объём тиков не может быть дробным :)
Пардон, странно, не понял каким образом этот индикатор оказался декомпилированым:confused:. Когда Scriptong, выкладывал исходник. Даж внимание на это не обратил.
trif288, Спасибо за наводку:) Сообщение отредактировал.
Scriptong
06-09-2010, 08:19
Здравствуйте.Scriptong, если несложно, нельзя ли немного изменить индикатор TickCounter, и сделать чтоб блок рисовался, когда размер тика был >= параметра Ticks. Попробывал сам, но что то не работает, может прямо здесь можно на ошибку указать фуекция старт
Заранее спасибо.
Вы привели одну из старых версий TickCounter. Я же выкладывал третью версию. Там подобных проблем быть не должно - http://forum.fxservice.com/showpost.php?p=23057&postcount=20
sergey33
03-02-2011, 05:33
здравствуйте.а возможно написание такого индюка?
после построения тела свечи она делится пополам и раскраш. в соответствующий цвет согласно условию.условие-в какой части построенной свечи скорость поступления тиков была выше.(красн.-выше,
желт.-ниже.)
Scriptong
04-02-2011, 08:03
здравствуйте.а возможно написание такого индюка?
после построения тела свечи она делится пополам и раскраш. в соответствующий цвет согласно условию.условие-в какой части построенной свечи скорость поступления тиков была выше.(красн.-выше,
желт.-ниже.)
В принципе возможно. Но для учета скорости поступления тиков необходимо, чтобы индикатор был все время онлайн. После выключения терминала или индикатора все данные будут уничтожены и информацию придется собирать заново. То же самое касается всевозможных перезагрузок индикатора и переключения таймфреймов.
Чтобы сделать "правильный" индикатор, необходимо вести учет истории тиков с записью ее в файл. Для этого потребуется достаточно большой объем памяти компьютера.
На мой взгляд слежение за тиковой историей мало что может дать. Характер поступления тиков в каждом ДЦ свой, т.к. формируется из разных наборов источников (поставщиков котировок), которые, ко всему прочему, проходят фильтрацию. Алгоритмы фильтрации также являются уникальными.
И главное, чего нельзя узнать на Форекс, это объем каждого тика. Новая котировка может быть как "пустой" (имеющая нулевой объем), так и полной (объемом от 1 до нескольких десятков или сотен лотов). Знание объемов могло бы помочь при анализе тиковой истории, но простым смертным оно недоступно.
sergey33
04-02-2011, 18:35
спасибо за ответ.использовал ваш индикатор,не плохо определяет открытие сделок.можно писать и сов.
Scriptong
06-02-2011, 11:44
использовал ваш индикатор,не плохо определяет открытие сделок.можно писать и сов.
О каком именно индикаторе в данном случае идет речь?
sergey33
06-02-2011, 22:15
О Tick Counter3.Я написал в другой теме пожелания об индикаторе.пробую руками и за 5 сделок не просадил не одну.но как вы знаете у него нет истории ,и в тестере его не погоняешь.сегодня попробую опять.в добавок к нему еще один индикатор.После этого можно подумать о советнике.
sergey33, а вы не подскажите, пожалуйста, каким образом вы определяете моменты для открытие сделок.?
sergey33
08-06-2011, 14:36
sergey33, а вы не подскажите, пожалуйста, каким образом вы определяете моменты для открытие сделок.?
Честно говоря,я использовал его как довесок к торговой системе.А как ты собирался его использовать со своим другом?
В прочем-коммерческую тайну не выдают.
У меня сейчас другая проблема стоит.
Бросай ты все эти индюки,что бы попасть в 5% из тех кто поднимает,нужна своя эксклюзивная система,которая будет работать в разрез и вопреки другим.Ну если он тебе поможет,скажи спасибо автору.
Пиши.пообщаемся.
Можно без 33
А Вообще,я автора просил измерять не только количество тиков,но и скорость их поступления при строительстве бара,что бы понять где больше шевелений.
Но автору-большой респект.
Frim_mgn
21-07-2011, 18:09
Честно говоря,я использовал его как довесок к торговой системе.А как ты собирался его использовать со своим другом?
В прочем-коммерческую тайну не выдают.
У меня сейчас другая проблема стоит.
Бросай ты все эти индюки,что бы попасть в 5% из тех кто поднимает,нужна своя эксклюзивная система,которая будет работать в разрез и вопреки другим.Ну если он тебе поможет,скажи спасибо автору.
Пиши.пообщаемся.
Можно без 33
А Вообще,я автора просил измерять не только количество тиков,но и скорость их поступления при строительстве бара,что бы понять где больше шевелений.
Но автору-большой респект.
Скорость мерить нет смысла, т к это зависит от кучи факторов, от качества инета, от фильтрования котировок, от скорости работы компьютера даже. Если вы хотите мерить скорость для того, чтобы ловить рывки на новостях, то здесь на форуме есть скрипт, который Scriptong писал по моему заказу, лучше использовать его.
Powered by vBulletin® Version 4.1.8 Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.