English
Интервью с Александром Артаповым (ATC 2012)

Интервью с Александром Артаповым (ATC 2012)

MetaTrader 5Интервью | 7 декабря 2012, 09:36
4 359 0
Automated-Trading
Automated-Trading

Интервью на Automated Trading Championship 2012 от 07.12.2012.

Советник Александра Артапова (artall) уже на второй неделе Чемпионата оказался на третьей позиции, торгуя на двух символах - EURUSD и EURJPY. Затем он ненадолго покинул TOP-10 и после месяца борьбы за выживание вновь включился в схватку за $80 000. И как оказалось, в запасе у его эксперта есть еще тузы в рукаве, нужно только дождаться новых уровней на торговом счете.

Здравствуйте, Александр. Расскажите, как вы занялись торговлей?

Здравствуйте, приветствую всех участников 6-го ежегодного Чемпионата по автоматическому трейдингу - ATC 2012.

Трейдинг как таковой заинтересовал меня в 2000 году, со  случайной покупки журнала "Валютный спекулянт". Хотя и ранее, подспудно, занимала мысль - чем же занимаются те кричащие и бегающие люди в "яме"? А в том первом журнале, кроме статей, обзоров и интервью, были и намётки на программирование свечного графика на языке Метастока. Ну, и это отложилось на будущее, что это как-то где-то можно сделать на сухой математике, без эмоций выполняющей поставленные ей задачи, и использовать, так сказать. Начал искать специализированную литературу, почитывать, рыть Интернет, открывать демо-счета. Опять искал, изучал - короче, заинтересовало.

Ну, а начал торговать руками уже осенью того же года. Прочувствовал, так сказать, все "прелести" взлётов и падений - и рынков, и своего характера. А поскольку программированием как ветвью математики интересовался всегда, то параллельно с ручной торговлей начал пробовать переложить свои эмоции и идеи/стратегии на "сухой код".

Начав искать возможность автоторговли, нашёл MQL ещё третьей версии, изучал язык, что-то пописывал. Помню, слово-то какое – Советник – значит должен советовать где, что и сколько открыть/закрыть. Увлёкся скриптами по сведению данных от разных индикаторов с разных таймфреймов в табличку со стрелочками. И до сих пор могу их (в тех или иных вариациях) использовать при ручной торговле. Вот откуда, наверное, верность и любовь к мультивалютности, если где-то на рынке тишина, то где-то возможно началось движение.

Но серьёзные советники пришли только с выходом языка MQL4. В 2006 году подошёл и первый Чемпионат по автоматическому трейдингу, в котором и принял бой один из моих советников.

Так значит, вы уже ветеран Чемпионата? Менялись ли как-то ваши взгляды на трейдинг за эти годы?

Да, можно так сказать, участвовал каждый год кроме 2010 года, когда по некоторым причинам получился пропуск. Изменения? Конечно, каждый год давал новые идеи. Цифры в названии моего эксперта, видите, перевалили за 500. :) Были такие эксперты, что созданы под впечатлением победы одного из участников и его нейросети, а так - в основном уровни, свечи, фильтры от стандартных и собственных индикаторов с различным видением ММ, Стопов и сопровождением ордера (теперь и позиции). Главное, что объединяет все идеи, так это Мультивалютность. Сразу с первого прочтения Правил Чемпионата даже тени сомнения не было, что будет мультивалютный – стал искать возможности создать таковой на MQL4.

Перспективы на Чемпионате совсем другие, - сроки небольшие, да и компания профи-программистов собирается попробовать свои силы. Необходимо всегда быть в рынке, ну и запастись везением. И вот, только в этот году родилась идея ощутить все "прелести" и горки в 15-лотовой позиции даже по 3-6 инструментам. Нужно найти и вытянуть пару-тройку "ведущих" инструментов на необходимый уровень маржи, и уже потом подтягивать к работе другие. Вот как-то так меняются взгляды год от года, но основы остаются и накапливаются.

Это всё про чемпионатские советники, эти никоим образом не стыкуется с реальными экспертами - с ежедневными скучными кропающими по чуть-чуть или проваливающимися на стопах. Ещё добавлю, что какими бы ни были уровни, фильтры входа/выхода - они всегда равноправны по отношению к операциям Buy и Sell, никогда не подгоняю (подбираю, подсиживаю) под сегодняшний рынок. Вот такие взгляды.

Где-то в обзорах упоминался мой ник в связи с якобы непонятной мультивалютностью советника. Так вот, предвосхищая вопрос о моём нынешнем советнике, скажу, что EURUSD и EURJPY запустились в торговлю нормально, а вот USDCAD по досадной ошибке в коде отбился; и теперь только эти две "ведущие" пары будут торговаться до следующего уровня баланса. А дотянут иль нет - наблюдаю и переживаю последние три недели.

Александр Артапов (artall) - участник Automated Trading Championship 2012

Да, как раз хотелось задать вопрос по поводу вашего мультивалютника. Чем обусловлен выбор пар для текущего Чемпионата?

Выбор рабочих инструментов на самом деле прост. Это те пары и кроссы из набора разрешенных, которые лучшим образом показали себя на тестовом периоде (и вне его) и отвечали/отзывались на показания выбранного мной индикатора. А именно, это EURUSD, EURJPY, USDCAD, GBPUSD, GBPJPY ,EURGBP, AUDUSD - всего 7.

Работают они в связках до жестко заданных размеров баланса счёта, как я упоминал. Причём лишь EURUSD может и будет работать один при балансе меньше, чем у начального депозита, пока не вытянет его в плюс.

А пары объединены так - EURUSD, EURJPY, USDCAD работают до определённого уровня, затем вступают GBPUSD, GBPJPY и EURGBP, затем AUDUSD присоединяется последним. Не знаю, нова ли идея, но мне понравилось. И свободную маржу использовали до 90%, и лот сами снижали или увеличивали в зависимости от кривой баланса. Да и вообще, соответствовали духу соревнования - "быстрее, больше, выше". ;)

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

Да, и чтобы совсем уже закончить о начинке моего советника - я использовал (был выбор) события OnChartEvent(), приходящие с каждого рабочего (на данном уровне) баланса, по каждому инструменту каждые 30 минут. А в качестве Стопов и Тейков использовал давно любимый индикатор ATR, трейлинга нет.

Вы упомянули о сбое в советнике, из-за которого "не включилась в работу" USDCAD. Какое внимание вы уделяете обработке ошибок при создании торгового робота?

На этапе тестирования и отладки кода внимание самое пристальное. В основном использую Print (printf), реже Alert и Comment, где можно и нужно, и даже где нельзя. Ну, а сигналы к покупке/продаже (Объект-стрелку) рисует сам индикатор. На визуализации и в торговле это хорошо видно. На последнем этапе, где-то с августа, по-моему, вышло обновление MQL5 с профилированием кода (измерение скорости и количества работ функций, индикаторов и т.д.) - тоже помогло "подрихтовать", оптимизировать кое-что. А с USDCAD получилась, говорю, глупая, нелепая ошибка, не хочу о ней говорить.

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

Вторую неделю Чемпионата вы закончили на третьем месте, и за 7 недель баланс вырос совсем немного. Изменился рынок или произошел какой-то сбой в торговой стратегии?

Да нет, советник всё отрабатывает как надо (кроме, тьфу, канадца), как его учили. ;) Рынок стал менее волатильным с частыми сменами направлений, для него часто - это пятнадцать 30-минуток, т.е. 7,5 часов. Ладно бы в доливку шёл, а ведь все переворачивается туда-сюда.

Ну что тут сказать, рынок он и есть рынок, сколько новостей за это время поприходило, да разнонаправленных тоже, да выборы президента США, да и Греция с Испанией против Германии...

Не верю, не верю я в прямые растущие графики баланса, искусственно это все, не по рынку, с пересидками. А вот не удастся пересидеть, что будет с такими?

Эксперт набирает позицию по частям, а выходит сразу же одной сделкой практически. Срабатывают стопы или так задумано по самой стратегии? И почему позиция набирается в несколько сделок - поступают сигналы от разных систем?

А потому, что по задумке в течении минуты придерживается свободная маржа для вновь возможных сигналов от других инструментов, а коль таковых не приходит, разбирает оставшуюся маржу, но в пределах допустимого. С проверкой, естественно. Выходы сделаны по стопам/тейкам, смене суток при положительном балансе и обратному сигналу объемом в пределах 5 лот. А затем после выхода открывает новую позицию, то есть вначале закрытие, и только потом открытие.

Что-то мы увлеклись и углубились с начинкой советника, всё выложил. Надо переключаться! Хотя можно ещё – все всё знают и нет секретов уже. Идей ещё намного больше и возможности реализации тоже есть.

Значит, на всех парах в этом советнике должна работать одна и та же стратегия? А пробовали сделать так, чтобы на одной паре торговало несколько стратегий в одном роботе?

О-о-о, нет, не пробовал так торговать, хотя были задумки... Это по времени и тестирования и объему анализа данных уже будет сложнее в квадрате, а если ещё поиграть и с периодами - то и все в кубе... и т.д. и т.п. В алгоритме много перечислений, массивов, циклов, проверок, а с тестированием и так уже проблемы по текущему количеству инструментов.

Пробовал оптимизировать одни и те же параметры для всех символов – не идёт! У каждой пары всё-таки "свой характер", который описывает свой индикатор ATR; пробовал временные фильтры (см. выше) каждому присвоить свои – не идет!...

Сейчас вот подумал, вот если взять один/два инструмента (это максимум) и несколько периодов по А. Элдеру, например, и несколько стратегий - может выйти что-то "стоящее".

А каким образом выбирались тройки валютных пар? Делались дополнительные расчеты и анализ отдельных прогонов?

Ничего из будущего в трейдинге нам недоступно. Поэтому на исторических данных действительно делались прогоны, анализы различных сочетаний пар или троек, их кривые баланса, доходность, просадки, использования маржи.

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

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

Уже после начала Чемпионата вспомнил и вернул к жизни метод, описанный и разобранный уважаемым Dmitriy Skub из статьи Контроль наклона кривой баланса. Это было описано и используется в советнике FF532, выложенном и тестируемом в сервисе Сигналы. Интересно и полезно посмотреть. Что вам скажет больше об успехе или неудаче сделки, как не кривая баланса - что пора уже что-то сменить/изменить в стратегии.

Были ли трудности во время регистрации с ограничением в 30 минут на автоматических проверках?

Да, как я упоминал уже, были трудности с тестированием - перечисления, массивы, циклы и т.д. И тики-тики-тики. 30 мин? Не знаю, на какой цифре остановиться. Может час? Два? Понимаю и вас - мощности не бесконечные, ежечасный прогон таких монстров.

Не могу определенно сказать, мой КПК не очень силён, тестировал в режиме  "OHLC на М1" в основном, трейлинга нет, а тики шлёпают и шлёпают, израсходовал весь запасец с другого ПК в облаке MQL5 Cloud. ;)  А опрос данных индикаторов чего стоит, а вот сейчас анализ истории ещё добавится.

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

Сколько времени тестировался ваш чемпионатский эксперт и пришлось ли что-то в нем урезать, чтобы уложиться в 30 минут?

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

Следите ли вы за другими мультивалютными экспертами на этом/предыдущих Чемпионатах, и если да – дают они идеи?

Нет, не слежу – подглядываю, своих "тараканов" полно в голове – за ними бы усмотреть. :)

Смотрю, чтобы свой работал, смотрю и делаю к нему усовершенствования. Вот статьи регулярно просматриваю на сайте MQL5, новости, комментарии на Чемпионате. То есть болею за своего и желаю ему добраться до тройки.

Вот вы нашли стратегию и хотите её торговать на разных символах. Сложно превратить простую стратегию для одного символа в мультивалютного робота? Что вам помогало, чем пользовались?

Если коротко ответить: нет, несложно, надо иметь только желание. Я использовал массив инструментов, в цикле перебирал их только в Init(), отправляя на каждый график индикатор, сообщающий о моменте появления там, на других инструментах, сигналов на вход/выход. Далее – уже техника, использовал торговые функции с проверками.

А можно даже Стандартной библиотекой воспользоваться. Но громоздко, тяжёлый получается, но зато со всеми проверками, сообщениями, но можно.

А помогали мне в этом и сайт MQL5, в его числе - форум, база кодов, документация, статьи, конечно же, Стандартная библиотека (использовал некие моменты). И вообще, знание языка, развивающиеся MetaTrader 5 и MQL5, счёт чемпионатский для тестирования (его настройки торгового окружения), режимы тестирования в Тестере и, конечно, своё видение рынка.

Спасибо за такие подробные ответы, Александр. Желаем вам и вашему эксперту удачи! 

Разрешите и мне поблагодарить за предоставленную возможность высказаться перед зрителями Чемпионата, буду ждать помидорков. ;)

А также хочу пожелать всем участникам удачи в дальнейшем трейдерстве, развития знаний, успехов в жизни и на Чемпионате. Здоровья всем родным и близким!

Интервью с Сергеем Абрамовым (ATC 2012) Интервью с Сергеем Абрамовым (ATC 2012)
Торговый робот Сергея Абрамова (26405) со второй недели Чемпионата держится в TOP-10, и тем не менее немало побеспокоил своего разработчика. Как выяснилось, в нем оказалась небольшая ошибка в блоке закрытия позиций.
Основы программирования на MQL5 - Строки Основы программирования на MQL5 - Строки
В статье рассматривается всё, что можно делать со строками в языке MQL5. Статья должна быть интересна в первую очередь новичкам, приступившим к изучению программирования на MQL5. Опытным программистам представляется хорошая возможность подытожить, обобщить и систематизировать свои знания.
Интервью с Евгением Гнидко (ATC 2012) Интервью с Евгением Гнидко (ATC 2012)
Позиции эксперта Евгения Гнидко (FIFO) на Automated Trading Championship 2012 являются, пожалуй, самыми стабильными на текущий момент. Попав в TOP-10 на третьей неделе, он по сей день держится в тройке сильнейших.
Как стать поставщиком сигналов для MetaTrader 4 и MetaTrader 5 Как стать поставщиком сигналов для MetaTrader 4 и MetaTrader 5
Хотите раздавать свои торговые сигналы и получать за это деньги? Зарегистрируйтесь на сайте MQL5.com в качестве продавца, укажите свой торговый счет и предложите трейдерам подписку на копирование ваших сделок.