Волны Эллиотта в Mt4

Тема в разделе "Зиг-Заг. Системы с использованием ZigZag.", создана пользователем MRoVas, 16 сен 2008.

  1. MRoVas

    MRoVas Новичок

    Здравствуйте.

    Написал тут программку (на Delphi) по Волнам Эллиотта (будем ждать Mql5).
    Пока это своего рода лишь пародия на что-то достойное внимания.
    Результаты расчета сохраняютя в файл, а затем с помощью индикатора отображаются в MT4.

    eurusdmn.gif

    scanwavewindow.gif

    Как работать с программой:
    1). Открыть нужный график в MT4 и сделать его Автономным.
    2). Через "Архив котировок" сохранить файл нужного инструмента (формат csv). При сохранении другим способом необходимо проверить, чтобы формат записи в файле имел вид "yyyy.mm.dd, hh:mm, Open, High, Low, Close, Volume"
    3). Открыть программу и вписать адрес папки files MetaTrader в окно <!--coloro:#0000FF--><span style="color:#0000FF"><!--/coloro-->1<!--colorc--></span><!--/colorc--> (туда будут сохраняться результаты расчетов). Нажать "Сохранить" (далее не надо будет вводить этот адрес).
    4). В программе открыть (Файл -> Открыть) сохраненный файл инструмента и нажать на кнопку "Считать".
    5). В окне <!--coloro:#0000FF--><span style="color:#0000FF"><!--/coloro-->2<!--colorc--></span><!--/colorc--> в виде дерева будут изображены результаты расчетов.
    6). В MT4 к графику применить индикатор Wave.
    7). В MT4 обновляйте график, если символы располагаются "неправильно".

    P.S. Файлы:
    Посмотреть вложение WavesMT4v.0.0.0.2.rar
    Посмотреть вложение WavesMT4v.0.0.0.3.rar Увеличино быстродействие (это, наверное, максимум, что можно сделать в плане скорости).
    Посмотреть вложение WavesMT4v.0.0.0.4.rar Появилась возможность задать глубину анализа по времени и по количеству волновых уровней; решена проблема с invalid-барами; отпала необходимость указывать число цифр после запятой конкретного инструмента.
    Посмотреть вложение WavesMT4v.0.0.0.5.rar Глобальных изменений нет. Вернулся русский интерфейс, на 1500 строк сокращен код программы, немного увеличено быстродействие.
    Посмотреть вложение WavesMT4v.0.0.1.0.rar Плюс: переработаны правила для волн, в том числе незавершенных. Минус: значительно пострадало быстродействие. Также в индикаторе Wave можно задать параметр Lev - волновой уровень, который будет "воспроизводиться линиями соответствующего цвета, что-то вроде Зиг-Зага".
    Посмотреть вложение WavesMT4v.0.0.2.0.rar Добавлена возможность самостоятельно выбирать варианты разметки волн (правой кнопкой мыши в дереве волн).
    Посмотреть вложение WavesMT4v.0.0.3.0.rar Увеличено быстродействие анализа. В индикатор (Wave v.0.0.3.0) добавлены параметры:
    1. Offset - смещение маркировки волн (в пикселях) от вершины бара;
    2. ShowSelectWave - при true показывает участок волны, выбранной в программе правой кнопкой мыши (используется при самостоятельном выборе вариантов разметки конкретной волны);
    3. SaveAnalysisOnExit - если значение равно true, то при отключении индикатора разметка сохраняется на графике (используется при необходимости самостоятельно скорректировать разметку на графике).
    Посмотреть вложение WavesMT4v.0.0.4.0.rar 1. В индикатор (Wave v.0.0.4.0) добавлен параметр ShowChannel. При true отображаются каналы, построенные по 3-м последним экстремумам волн.
    2. При анализе участка графика появилась возможность указать, что начало - это обязательно старт какой-либо волны высшей степени.

    <b><!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->НОВАЯ ВЕРСИЯ:<!--colorc--></span><!--/colorc--></b> Посмотреть вложение ScanWavev.0.2.zip 1. Сортировка волн в соответствии с их оценкой (волны с большей оценкой расположены выше);
    2. Анализ волн в соответствии с правилами Elwave (теоретически Elwave должен корректно воспринимать разметку, сделанную программой);
    3. Правила хранятся в фале modern75.rls (информация из файла считывается в момент загрузки программы, поэтому программа запускается с небольшой задержкой);
    4. Вывод целей на график в MT4.
    P.S. Да простят меня прогнозисы ^secret^
     
  2. Pepsik

    Pepsik Активный пользователь

    Cool!

    Вопросы/ответы:
    - если ничего не пишет в папку files (соответственно и не появляется ничего на графике) - то, значит, адрес этой папки указан без слеша на конце:
    пример : С:\Program Files\MetaTrader-Alpari\files неправильно, С:\Program Files\MetaTrader-Alpari\files<b>\</b> правильно
    - что значит "При этом удалить invalid-данные, если таковые имеются." ? Как это сделать ? - смотреть в архиве котировок строки invalid, пометить их и удалить.
    - можно просто "файл-сохранить как- csv " сохранять ? (почему именно через архив котировок?) -Да, можно. Можно просто сохранять открытый график клавишами Ctrl и S, потом этот файл анализировать в программе, но важно, чтоб перед наложением индикатора Wave на этот график (того же обязательно таймфрейма, что и сохраненный\проанализированный программой файл), этот график сделать автономным (right mouse click - Свойства, или F8 - галочка в левом верхнем углу - "Автономный"), иначе МТ повиснуть может
     
  3. MRoVas

    MRoVas Новичок

    Даже не знаю пока в чем проблема (может адрес введен неверный). Можно ввести любой другой адрес и проверить сохраняет прога туда или нет.

    Прилагаю картинку. Эти данные появляются у меня (может у кого-то их вообще нет) в начале истории некоторых инструментов. Если их не удалить то разметка будет смещена влево на число этих invalid-баров.

    Archiv.gif

    Можно.
     
  4. Putnik_odessa

    Putnik_odessa Профи форума

    Добрый день, Роман!

    1. Не считываеются шрифт интерфейса - Vista:

    Untitled.gif

    2. Зачем график делать автономным? и если в каталоге есть автономные графики нестандартных временных периодов - будут ли они считываться (у меня пока вообще не читаются):

    Untitled_02.gif

    3. Есть множество утилит сохраняющих котировки в папку Expert/files - может быть их использовать вемто ручного сохранения, делают они это автоматически?
     
  5. MRoVas

    MRoVas Новичок

    В первом посте можно скачать версию проги с переводом русских букв в транслит (пока с проблемой русских символов детально не разбирался (Vista на моем "супер компе" не стоит, поэтому прога на ней может работать некорректно)).

    Чтобы с приходом нового тика индикатор не обновлялся и постоянно не перерисовывал тысячу символов (чтобы MetaTrader не зависал).
    Нестандартные периоды должен считывать. Проблема может быть, если данные сохраняли с помощью какого-нибудь скрипта и формат записи не совпадает с MT'шным csv (см. ниже).

    Их можно использовать. Главное, чтобы формат записи в файле совпадал с MetaTader'ским csv - "YYYY.MM.DD, HH:MM, Open, High, Low, Close, Volume"
     
  6. alexhorn

    alexhorn Активный пользователь

    Здравствуйте, Роман!
    По XP всё запускается и работает без проблем.
    С 1 по 5 пункт я разобрался. А вот как присоединить результаты к графику, не понял.
    На график вывожу индикатор Wave, и тишина, результатов никаких. По идее, что-то ещё надо сделать? И какое значение "Максимальное число точек для определения волны" вы порекомендуете и вообще от чего зависит эта величина? Или просто методом подбора пользователь определяет?
     
  7. MRoVas

    MRoVas Новичок

    <b><!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro--><!--coloro:#0000FF--><span style="color:#0000FF"><!--/coloro-->(относится к версии 0.0.0.1)<!--colorc--></span><!--/colorc--> ЗАБЫЛ СКАЗАТЬ, ЧТОБЫ ФАЙЛЫ С ДАННЫМИ ИНСТРУМЕНТОВ НЕ СОХРАНЯЛИ В ПАПКЕ FILES MT4, Т.К. ФАЙЛЫ С РЕЗУЛЬТАТАМИ РАЗМЕТКИ ИХ "ЗАТИРАЮТ" (ПОТОМУ ЧТО ИМЕЮТ ТАКОЕ ЖЕ ИМЯ).<!--colorc--></span><!--/colorc--></b>

    По идее разметка должна сразу выводиться.
    Попробуйте обновить график. Если не поможет, посмотрите присутствует ли файл с результатами разметки в папке files? Если он там есть и в окне ниже <b>НЕ</b> появляется сообщение об ошибке, значит все должно работать.
    Experts.gif

    Поясню на картинках.
    Анализ ведется сверху вниз. То есть сначала программа определяет волны высших степеней.
    На рисунке ниже видно, что программа определила волну <!--coloro:#0000FF--><span style="color:#0000FF"><!--/coloro-->(2)<!--colorc--></span><!--/colorc--> и волну <!--coloro:#0000FF--><span style="color:#0000FF"><!--/coloro-->(3)<!--colorc--></span><!--/colorc-->. Далее программа анализирует внутреннюю структуру волны <!--coloro:#0000FF--><span style="color:#0000FF"><!--/coloro-->(3)<!--colorc--></span><!--/colorc-->. Третья волна должна состоять из 5 волн меньшей степени. Для их определения понадобится минимум 6 точек (показаны на рисунке). ЗигЗаг выдает эти 6 точек (или более, если ровно 6 не получается сформировать). Но по ним нельзя обозначить 5 волн, т.к. нарушаются определенные правила. Поэтому получается "пробел" в разметке.
    6points.gif
    Тогда вы можете указать, например, 12 точек (рисунок ниже). Программа перебирает все сочетания этих точек (при этом уменьшается быстродействие), и уже может определить пять волн, которые соответсвуют всем правилам.
    12points.gif

    Таким образом, если существуют "пробелы" в разметке, можно увеличить число точек, но при этом помнить, что считать прога будет дольше.
     
  8. Putnik_odessa

    Putnik_odessa Профи форума

    А вот это уже очень плохо - большинство волновиков используют дополнительные программы (Aget, Elwave, DT4 .....) котировки они получают от MT4 как раз их папки Expert/Files - на это настроены 90% скриптов и индикаторов, причем работа идет on-line по тикам. Следовательно, нарушена первая заповедь программиста - не навреди основной программе.
    Роман, может быть простым способом будет в новой версии изменить название папки - или менять имя - дописавая некое обозначение???? Иначе выставленные системы будут рушиться, ведь у многих стоит и составная история инструментов - если ее затрет - спасибо не скажут.

    С уважением!!!
     
  9. MRoVas

    MRoVas Новичок

    Сделал (новая версия в первом посте) ;)
     
  10. Pepsik

    Pepsik Активный пользователь

    ,балин, осталось только русские бубуквы на место вернуть... :)
     
  11. Putnik_odessa

    Putnik_odessa Профи форума

    Опробовал у сына на XP - работает без проблем, но с Vista отказывается читать данные наотрез, жаль! Буквально неделю назад снес витруальную машину с XP/
     
  12. alexhorn

    alexhorn Активный пользователь

    Так. Всё супер, разобрался. Проблемма была вывести результат на график. Будем теперь смотреть работу.
     
  13. Putnik_odessa

    Putnik_odessa Профи форума

    Роман, добрый день!

    Есть два предложения:

    1. Перенести ветку в раздел волнового анализа - волновики там быстрее откликнутся и тестировать будет веселее и преложений появится больше.

    2. по самой программе - если все-таки ее доработать, чтобы брать данные из папки expert/files. У многих там автоматически сохраняются архивы котировок и создавать еще один архив крайне не удобно, тем более что его либо нужно создавать в ручную, либо переписывать советник с трассировкой в другую папку, в любом случае иметь два архива, которые постепенно разрастаются до гигабайтов не хочется.

    С уважением, Putnik!

    Есть и еще предложения, сегодня попробую их сформулировать.
     
  14. Pepsik

    Pepsik Активный пользователь

    А что, сейчас программа не может "брать данные из папки expert/files" ??
     
  15. Putnik_odessa

    Putnik_odessa Профи форума

    У меня - нет! Выводится сообщение: I/O error 32

    к томуже, когда я сохраняю текстовый файл в другую папку - автоматически формат не распознается, расширение приходится подписывать в ручную.

    <b>Сразу хочется добавить пожелания:</b>
    1. По возможности реализовать анализ не только всего графика (записанного файла), но и его части, задавая глубину анализа как по колличеству баров, так и на конкретный временной период.
     
  16. Pepsik

    Pepsik Активный пользователь

    "У меня - нет!"

    А у меня да!) Просто наверняка у вас тот файл занят каким-нибудь процессов в этот момент, например, скриптом, который его создает, или Елвейвом\ DT и проч., которые в данный момент его читают.. Нет ?

    "когда я сохраняю текстовый файл в другую папку - автоматически формат не распознается, расширение приходится подписывать в ручную."

    когда сохраняете Метатрейдером его данные по инструменту? ( тогда причем тут эта программа)

    "По возможности реализовать анализ не только всего графика (записанного файла), но и его части, задавая глубину анализа как по колличеству баров, так и на конкретный временной период."

    Ну ведь ваши же скрипты, сохраняющие квоты в файл, позволяют сохранять "от даты такой-то", нет ? )

    А еще можно в файле убрать некоторые строки ... руками
     
  17. Putnik_odessa

    Putnik_odessa Профи форума

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

    P.S. Роман, хочу подчеркнуть, это не претензии к программе, это пожелания. Если они интересны, продолжу дальше...
     
  18. Putnik_odessa

    Putnik_odessa Профи форума

    <u>Pepsik спасибо за подсказку</u> - файл читался создаваемым индикатором который его и создавал, на время считывания его приходится теперь отключать!
     
  19. Pepsik

    Pepsik Активный пользователь

    <i>задавать временной диапазон анализа в анализирующей программе </i>

    Я мыслю, что это сделать ( реализовать), в программе, будет..сложно ( сложнее чем некоторое другое, более важное в ней), нет?


    прим. Я поделюсь.. соображением - я отказался нах от всяких скриптов и индиков, которые якобы сохраняют мне файл csv , отчасти - потому что мне нажать "сохранить файл как" гораздо легше, чем "присоединить индикатор\запустить скрипт" и так далее.. Не знаю, времени потрачено много, а толку..... никакого особо. Мот меня кто переубедит?

    Роману - Роман, давай буквы обратно, русские, а ? ))
     
  20. Putnik_odessa

    Putnik_odessa Профи форума

    Программа конечно не пародия, а вполне серьезный задел. Впрос в том по какому пути идти - полной автоматизации, или по пути диалога: программа - трейдер - программа.
    С моей точки зрения, второй путь предпочтительней - вернее реальнее, а соотвественно и результаты будут ближе к истине. Но для этого, помимо расчета волн придется добавлять много сервисных функций.
    Всвязи с этим вопрос к автору: по какому пути сам хотел идти Роман и готов ли принимать к исполнению такие пожелания!?!

    С уважением, Putnik
     

Поделиться этой страницей