Приветствтую!
В предыдущей статье, просили в комментах дивергенцию реализовать по MACD. Казалось довольно понятная и простая ситуация (нет)
Процесс формализации довольно сложный оказался. Для начала я пошел таким путем — нашел на графике типичную ситуацию, и попытался ее обьяснить «роботу». По сути надо было найти две «впадинки» на графике, одна ниже другой, и две «холма» по индикатору.
А по сути получилось так, что 100% совпадать точки не будут (крайне редко могут совпасть) Это натолкнуло на мысль искать сценарий, при котором я оцениваю ситуацию, с другой стороны. Смотрю на то что в среднем график снижается, а индикатор растет. И тут оказалось тоже засада.
В общей картине индикатор растет, но на самом деле, в момент образования второй впадинки на графике, макд в 90% случаев начинает так же снижаться. Как итог, получилось так, что долгим упорным методом формализации, я смог обьяснить роботу — только частный пример (такие были повторяющиеся примеры на истории, но довольно мало.
В целом такой подход имеет место быть, так как можно взять 10-20 отдельных ситуаций и запрограммировать их, и каждая отдельная ситуация будет рассматриваться как отдельный сигнал. но все же даже в таком случае мы частично только будем ловить отдельные ситуации.
Есть ли универсальный способ? мне его не удалось найти.
Основные проблемы заключаются в большом количестве «обманок» на рынке. То есть когда вроде впадинка есть, но через бар, рынок еще больше падает, а точку мы себе уже определили и уже в рынке. Немало ситуаций в которых впадинки образуются, но если тупо сравнить три бара — то мы их не поймаем так как три минимума могут быть равны, или закрытие может быть ниже или выше предыдущих лоев, и тд. рынок рисует что угодно, и чтобы каждый такой момент поймать, кода не хватит (ну только у самых упорных). При реализации важно учитывать это. то есть ситуации если сравнивать, минимум больше предыдущего а предыдущий меньше его предыдущего — не всегда является впадинкой. Но если писать больше или равно — то в боковике привет — таких ситуаций будет сотни. То же самое с макд, индикатор может нарисовать впадинку потом резко ее перекрыть и снова нарисовать и перекрыть. Потому тут есть один правильный метод. Анализировать 10-20баров, то есть отстать от рынка на час — но потом уверенно сказать — да, час назад надо было входить)) В таком случае мы будем все правильно анализировать, вот только не будем успевать торговать.
Понимая все это — ушел от попыток обьяснить конкретные примеры, и сделал их более абстрактными. В двух словах, запрограммировал ситуации так — ну если вроде как рынок падает (текущий лой ниже чем неизменный лой за 20 (параметризированное количество баров), а текущий макд выше чем так же «неизменный» то это наша дивергенция)
Что дальше? мы возможно 70% правильно поймаем дивергенции, но будет и доля ошибок. Важно при этом понимать — это лишь метод поиска а не алгоритм входа. даже если мы определили что тут дивергенция, не факт что робот решит там открыть сделку.
На примере пара ситуаций — горизонтальные линии это как раз зоны дивергенции (начало дивергенции без обнуления)
В последнем примере сразу наклевывается доп фильтр, не рассматривать дивергенции при малых значениях индикатора. Но это и все другое, уже самостоятельно можно «допиливать».
Сами примеры скриптов закину в телегу https://t.me/msvTslab обсудить можно тут https://t.me/msvgroup
Далее, есть еще пару запросов на реализации уровней — что то похожее на работу зигзагов, если кому интересно увидеть реализацию чего то — пишите!)
Ну или — к счастью.
Ибо тогда бы это смог делать каждый :)
ТС, спасибо, что делитесь опытом — всегда с интересом читаю такие топики.
Удачи и профита, пишите ещё!
Носорог, а тут важнее не железяке обьяснить, а самому себе.
мы привыкли «интуитивно» анализировать. типа, вот это дивергенция и это тоже и эта ситуация похожа, и тд. а на деле, если четко у себя в голове принимать, что есть настоящая дивергенция, то и железке обьяснить можно. Разница будет лишь в том, что интуиция будет в ручной торговле, а у машины все просто с этим. в крайнем случае можно рандомайзер прикрутить и вот, таже чуйка, но от машины))