| / | Поиск |
|
Входной параметр Input_Price_Customs может изменяться от 0 и до 14. В зависимости от значения этого параметра функция возвращает значение цены для текущего графика по номеру бара, используемого в качестве второго параметра: 0-CLOSE, 1-OPEN, 2-HIGH, 3-LOW, 4-MEDIAN, 5-TYPICAL, 6-WEIGHTED, 7-Heiken Ashi Close, 8-SIMPL, 9-TRENDFOLLOW, 10-0.5*TRENDFOLLOW, 11-Heiken Ashi High, 12-Heiken Ashi Low, 13-Heiken Ashi Open, 14-Heiken Ashi Close. При необходимости в кейсы функции можно дописать какие-либо другие алгебраические выражения для определения входных цен на основе массивов таймсерий. Индикаторы с применением функции PriceSeries() очень удобно использовать при оптимизации и тестировании советников.
Введение В своих предыдущих статьях 1, 2, 3, 4 из этого цикла я вёл речь о самых простейших торговых системах, отличительной особенностью которых был всего один таймфрейм, на котором они работали. Следствием этого оказывается полное отсутствие у такой МТС реакции на изменения рыночных тенденций в более глобальном масштабе времени, что чревато убыточной работой советника в сильно изменившихся условиях рынка, которые никак в подобной торговой системе не определяются. Вообще-то, в реальной торговле едва ли кому придёт в голову мысль строить свою торговую стратегию на данных, получаемых с графика всего одного таймфрейма. Считается нормой использовать как минимум два таймфрейма для полноценной работы. Действующую трендовую тенденцию обычно определяют на графике какого-нибудь достаточно крупного таймфрейма, а точку входа в рынок в направлении этой тенденции более точно вычисляют по графику более мелкого формата. В своих предыдущих статьях я, на мой взгляд, привёл более чем достаточное и исчерпывающее количество примеров простейших торговых систем для того, чтобы научиться проектировать такие системы самостоятельно. Так что теперь было бы логичным приступить к методам усовершенствования таких торговых систем на основании вышеизложенной логики размышлений.
Введение Итак, с 1 июля 2008 года компания MetaQuotes Software Corp. открывает регистрацию на участие в Automated Trading Championship 2008! С моей стороны было бы несколько нелогичным упустить такую возможность и не воспользоваться случаем, продолжить цикл своих статей с изложения логики построения эксперта, который бы по всем формальным признакам вписался в условия проведения Automated Trading Championship 2008 и за весь период этого мероприятия не сделал бы ни одной грубой ошибки, за которую он бы мог быть дисквалифицирован!
Введение Самым лучшим источником информации во многих случаях является цвет. Его изменение достаточно наглядно и оперативно сигнализирует о наступившем изменении в свойствах рынка. Поэтому трехцветные трендовые индикаторы зачастую оказываются более информативными и более эффективными, чем их одноцветные аналоги. Достаточно взглянуть всего на один пример представленный в двух вариантах:
Введение Поступило предложение от читателя предыдущей статьи немного механизировать сам процесс бэктестинга, чтобы за один общий заход можно было получить результаты всех оптимизаций одновременно. Да и всё время передвигать период тестирования в бэктестинге тоже не так чтобы и шибко удобно, лучше это как-то сделать в автопилотном режиме. Сама идея просто великолепная - благо возможностей для её реализации в MQL4 более чем достаточно, так что с решения этой задачи я и начну эту статью.
Введение Вопросам оптимизации торговых систем в настоящее время посвящено более чем достаточное количество соответствующей литературы, и было бы не совсем логичным заниматься подробным пересказыванием того, что можно и так без особого труда найти в интернете. Но вот самые актуальные, основополагающие и достаточно простые идеи, лежащие в основе логики понимания целесообразности применения результатов оптимизации механических торговых систем вообще, и фактической практической пользы от оптимизации в частности, следовало бы выяснить немного повнимательнее и поподробнее.
Введение В механических торговых системах, построенных на базе индикаторов, в основе которых лежат какие-либо алгоритмы усреднения, их создатели редко когда используют больше одного какого-нибудь алгоритма усреднения. Во многих случаях, если алгоритм эксперта построен на основе обычных мувингов и индикаторов, входящих в стандартный набор индикаторов терминала MetaTrader 4, дело ограничивается четырьмя стандартными алгоритмами: простым, экспоненциальным, сглаженным и линейно-взвешенным усреднениями. Такой подход сильно ограничивает возможности эксперта.
О таких заменах индикаторов на функции я уже писал в своих статьях на эту тему 1, 2, 3. Эксперт с этой заменой представлен файлом Exp_17_.mq4. Следует отметить тот факт, что алгоритм JMA сглаживания, который использован в индикаторе JFatl.mq4 достаточно ресурсоёмкий, и подобная замена индикатора индикаторной функцией обеспечивает весьма существенное приращение скорости оптимизации этого эксперта по сравнению с предыдущим экземпляром. И наконец, для особо ленивых был сделан тот же самый эксперт(Exp_17R.mq4), в котором все необходимые функции были размещены внутри экспертного кода, и который для компиляции и своей работы не требует никаких дополнительных инклюдников и индикаторов. Все три аналога этого эксперта работают абсолютно идентично! Разве что в последнем эксперте значения переменных IPC_Up и IPC_Dn могут меняться в несколько меньших размерах (0-10), по причине отсутствия обращений к индикатору Heiken Ashi#.mq4. Иногда на форуме даже от грандов программирования на MQL4 раздаются возгласы, что, дескать, писать такие индикаторные функции - это всё равно, что надевать штаны через голову. У меня так, например, процедура написания такой функции по вполне понятному коду занимает всего пятнадцать минут. Так что ежели потом в таких штанах и так одетых можно бегать вообщем-то марафонские дистанции оптимизаций в шесть раз быстрее, то я для себя выбираю именно такой путь!
Помогите пожалуйста вытянуть цвет текущей свечи в советник из индикатора Heiken Ashi 2.Пробовал double r=iCustom(Symbol(),0,"Heiken Ashi2",0,0); double g=iCustom(Symbol(),0,"Heiken Ashi2",1,0);
Введение В своей предыдущей статье я подробно занялся построением экспертов, обрабатывающих информацию, которая поступает с двух разных таймфреймов. Но всё дело в том, что этой информации далеко не всегда бывает достаточно для того, чтобы войти в рынок очень точно. Например, если меньший таймфрейм равен часовику, то вход в рынок сразу на смене часового бара - это зачастую далеко не самое лучшее решение, потому как тенденция, действующая на более мелком таймфрейме, чем часовой, и обычно присутствующая в ценовом шуме, может работать против открываемой позизии. Во многих случаях такую кратковременную тенденцию можно достаточно легко определить. И в случае, если она идёт против открываемой позиции, то отложить вход в рынок до того момента, когда эта, действующая на самом мелком таймфрейме, тенденция не изменит своё направление на противоположное. Или в худшем случае войти в рынок перед следующей сменой часового бара. С решения этой задачи я и начну свою статью. Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |