торговая стратегия на базе Волновой теории Эллиота - страница 153

 

Vladislav, эта ссылка требует регистрации на форуме. Но я пытался на этом форуме регистрироваться уже 3 раза. 2 раза полгода назад и сейчас попробовал. Но на все попытки зарегистрироваться на мыло приходит письмо следующего содержания:
**************
Ваша регистрация должна быть подтверждена администратором перед тем, как вы сможете первый раз
залогинится. По подтверждению регистрации вам будет послано письмо. Регистрация подтверждается в
среднем раз в сутки.
**************
И на этом всё! Никакого подтверждения регистрации и соответственно невозможность войти на сайт
***********
Логин/пароль не найдены.
Невозможно продолжить (никто не знает почему, даже не спрашивайте).
***********
Особенно умиляет конечно же последняя фраза - "(никто не знает почему, даже не спрашивайте)". Наверное она в глазах админа выглядит просто гениальной?!
Наверное админ форума думает, что эта фраза в тот самый момент когда человек в энный раз пытается получить доступ к информации его же форума, но вместо информации читает такую надпись будет повышать его авторитет как админа что ли? При этом самое интересное что и спросить то действительно не у кого - на форуме отсутствует какой-либо e-mail для связи с админом.

Я думаю, что наверное новых участников уже не регистрируют на том форуме? Типа кто успел зарегистрироваться в былые годы - тот читает закрытые разделы, а кто не успел, то соответственно опоздал? Так что ли?
Может быть Вы могли бы выложить в zip файле в этой ветке интересные страницы обсуждения по рекомендуемой выше ссылке?
Заранее благодарю!
 
solandr, там всегда и у всех проблемы с регистрацией.
 
Может быть Вы могли бы выложить в zip файле в этой ветке интересные страницы обсуждения по рекомендуемой выше ссылке?


Вот сама страничка http://fxfilecheng.narod.ru/page.rar

А вот прикрепленный файл http://fxfilecheng.narod.ru/Pesavento_Fibonacci_Ratios.rar
 
Чтобы не быть голословным, говоря, что в алгоритме мт-шного зигзага ошибки, даю ссылку http://onix-trade.net/forum/index.php?s=&showtopic=118&view=findpost&p=106493
По этой ссылке имеется анализ ошибки в зигзаге.

Для проверки правильности сделанных выводов в код зигзага поместим после строчек, где идет запись в буфер найденных значений:
ExtMapBuffer[shift]=val; - строка записи в буфер
if (shift<13 && val>0) Print ("shift="+shift+" low val="+val+" Low[shift]="+Low[shift]); - проверка, что же на самом деле туда пишется и, самое главное - куда это пишется

ExtMapBuffer2[shift]=val;
if (shift<13 && val>0) Print ("shift="+shift+" high val="+val+" High[shift]="+High[shift]);

Проверка проводится на минутках количество проверяемых баров можно задать, отличающимся от 13

И сразу становится видно, что в буферы зигзага записывается мусор. И с этим мусором все работают.
Все думают, что зигзаг что-то правильное выдает. А на самом деле? Первооснова многих систем зигзаг. А первооснова-то гнилая.


Вобщем как задачка по программированию интересно - нужно будет посмотреть. Кстати, Вы не проверяли что именно пишется в эти ячейки - к вечеру будет больше свободного времени сам гляну. Дело в том, что при прорисовке нерисуемое значение индикатора по умолчанию отлично от нуля (максимальный лонг, если не ошибаюсь)- я на этом тоже пару раз попадался. И еще: в индикаторах (как в этом не знаю) достаточное количество ошибок, связанных с неправильной адресацией мсассивов. Говоря проще: неверно считаются или сдвигаются индексы: в С массивы адресуются от нуля до последнего элемента, который не включается. Самая распространенная ошибка - выход за границы массивов. При статическом размещении это на работоспособность комплекса влиять не будет до тех пор, пока программа не пытается изменить память вне области данных. Зато то, что выдает иногда (совершенно не предсказуемо когда) сам алгоритм использованию не подлежит. При переписывании на СРР тех алгоритмов, что мне были нужны, я очень много ошибок с неверной адресацией поправил (как только наткнулся на предел в статике и пришлось делать из длл динамическое размещение массивов данных - вот тут и пошли ошибки - в VCPP можно компилировать проги с отладочной информацией и хотя бы частично локализовать проблемы).
По поводу самого алгоритма встроенного зиг-зага - для целей поиска паттернов он, ИМХО, не годится (хоть правленный, хоть родной). Нужен алгоритм, который будет фильтровать значимые, с точки зрения текущей ситуации, свинги. Например, если величина отклонения меньше текущего "шума", то свинг игнорируется сразу, если больше, то учитывается сразу и потом не убирается. ИМХО - лучше видеть все как было. Это для целей ЕВА, когда пытаются одним паттерном 3-5 описать движение на рынке, все нужно подгонять под этот паттерн. Если использовать более широкий набор (все паттерны Песавенто-Гартли), то, собственно, не особо важно какой паттерн идентифицируется, а обычно перед значимыми разворотами так и быват. Гляньте мой пост выше по ветке, где я выдожил картинку в паттерном AB=CD, там еще была видна бабочка Гартли (которая идентифицировалась ранее) и было видно как отработали уровни. И, если честно, для меня было все равно какая там волна по Эллиотту. А что меня волновало - так это вероятность отработки расчетных зон. А в этом определиться помогают каналы регрессии, но это повторение почти всей ветки.

С уважением, Владислав.
Удачи и попутных трендов.
 

Вобщем как задачка по программированию интересно - нужно будет посмотреть. Кстати, Вы не проверяли что именно пишется в эти ячейки - к вечеру будет больше свободного времени сам гляну. Дело в том, что при прорисовке нерисуемое значение индикатора по умолчанию отлично от нуля (максимальный лонг, если не ошибаюсь)- я на этом тоже пару раз попадался.


На самом деле это число (2147483647 или 2 в степени 31 минус 1 [2^31-1])
и есть ноль. Для невыведения пустых незначимых значение в MQL-IV используется SetIndexEmptyValue().
 

Вобщем как задачка по программированию интересно - нужно будет посмотреть. Кстати, Вы не проверяли что именно пишется в эти ячейки - к вечеру будет больше свободного времени сам гляну. Дело в том, что при прорисовке нерисуемое значение индикатора по умолчанию отлично от нуля (максимальный лонг, если не ошибаюсь)- я на этом тоже пару раз попадался.


На самом деле это число (2147483647 или 2 в степени 31 минус 1 [2^31-1])
и есть ноль. Для невыведения пустых незначимых значение в MQL-IV используется SetIndexEmptyValue().


Решил добавить. Это число (2147483647) обычно возникает в следующей ситуации:
1) Пишется индикатор, в котором имеется хотя бы один индикаторный буфер
2) Незначащие значения подавляются функцией SetIndexEmptyValue(), но при этом
3) Пустые значения не заполняются принудительно нулевым значением

Результат: при просмотре на график индикатор работает правильно, но когда начинаешь обращаться к такому индикатору к эррозированному индексу из другого индикатора или советника, то начинают происходить чудеса - выдается это число 2147483647. Если есть опыт - начинаешь сразу эту алгоритмическую ошибку фиксить в коде индикатора, если нет - начинаются поиски черной кошки в темной комнате, при этом самой кошки как бы и нет. Но все равно полезно ее поискать - это называется опыт и крепко западает в .... память :)
 

Вобщем как задачка по программированию интересно - нужно будет посмотреть. Кстати, Вы не проверяли что именно пишется в эти ячейки - к вечеру будет больше свободного времени сам гляну. Дело в том, что при прорисовке нерисуемое значение индикатора по умолчанию отлично от нуля (максимальный лонг, если не ошибаюсь)- я на этом тоже пару раз попадался.


На самом деле это число (2147483647 или 2 в степени 31 минус 1 [2^31-1])
и есть ноль. Для невыведения пустых незначимых значение в MQL-IV используется SetIndexEmptyValue().



При всем уважении, но на самом деле 2 в степени +31 в общем случае ну никак единицей быть не может. Это равенство может выполняться только благодаря ограничению разрядности данных. Что Вы будете делать при изменении разрядности ? Если массив инициализируется нулем, то и должен быть ноль, если нет - тогда должно быть указано, что результат не определен. В конце концов, разработчики сами ссылались на стандарт СРР. Хотя я все делаю проще: нужен ноль - принудительно обнуляю.

С уважением, Владислав.
Удачи и попутных трендов.
ЗЫ 2 Rosh - прочитал добавление. Насколько я помню, такой эффект (2147483647 вместо нуля) возникал и без подавления значения по умолчаню функцией SetIndexEmptyValue(), могу ошибаться - давно было. Да и давно вернулся к привычке выработанной еще в период программирования на С - все инициализировать (хоть нулем, хоть каким другим нужным значением) принудительно - обычно это экономит большое количство времени и без этого просто беда :). С тех пор эта проблема не беспокоит - просто вспомнил как сам наткнулся на это.
 
Возведем 2 в степень 31 и от результата отнимем единицу - это я и имел ввиду(Ответ : 2147483647 ). Проверьте в Экселе. 32-й бит зарезервирован под знак числа (плюс или минус)
 

При всем уважении, но на самом деле 2 в степени +31 в общем случае ну никак единицей быть не может. Это равенство может выполняться только благодаря ограничению разрядности данных. Что Вы будете делать при изменении разрядности ? Если массив инициализируется нулем, то и должен быть ноль, если нет - тогда должно быть указано, что результат не определен. В конце концов, разработчики сами ссылались на стандарт СРР. Хотя я все делаю проще: нужен ноль - принудительно обнуляю.



Я говорил не об инициализации начальным значением (функция ArrayInitialize()), а о подавлении вывода нулевых или неинициализированных (часто эффектодинаков) значений (функций SetIndexEmptyValue()) . Эти функции не эквиваленты друг другу.
 
Возведем 2 в степень 31 и от результата отнимем единицу - это я и имел ввиду. Проверьте в Экселе. 32-й бит зарезервирован под знак числа (плюс или минус)



Только для знаковых, для ансигнед нет. А для данных типа лонг лонг ? Я же говорю - что Вы будете делать при изменении разрядности данных ? Техника развивается достаточно быстро и при переходе на 64-разрядные шины размерность переменных типа int будет изменяться - по стандарту СРР она зависит от размерности шины данных и ограничена минимальным значением (не максимальным), соотвественно может измениться и диапазон не только инт, но и лонга. Это чары строго однобайтовые. Для чего-то ведь стандарты придумали ? Одна из причин совместимость программ.

С уважением, Владислав.
Удачи и попутных трендов.