ДОМАШНЕЕ ЗАДАНИЕ ДЛЯ ТРЕЙДЕРА
Сервис «Фриланс» на портале MQL5.com предоставляет уникальную возможность: выбрав одного из 500 (!) программистов, трейдер может с его помощью создать собственного торгового робота. Но для этого требуется качественное техническое задание.
Так как же составить такое ТЗ?
Не требует доказательств то, что торговля на финансовых рынках, благодаря развитию компьютерной техники и интернета, за последние годы превратилась в высокотехнологичный процесс. Конечно, отношение к автоматической торговле не у всех одинаковое, но то, что, согласно статистике, свыше 60% всех торговых сделок сейчас совершается с использованием торговых роботов, это факт. И речь здесь идет не только о частных трейдерах, но и о крупных, некогда весьма консервативных, финансовых структурах, банках и фондах. Думаю, я не ошибусь, прогнозируя, что всего через несколько лет названные 60% превратятся в 80, а затем и в 99%.
Шестое человеческое чувство под названием интуиция, может быть, иногда и помогает, но в сочетании с напряженной нервной системой чаще всего мешает трезвому анализу и приводит к плачевным результатам. Что же касается советников (роботов) для автоматической торговли, то они способны без устали работать 24 часа в сутки все 5 рабочих дней в неделю, лишенные каких-либо эмоций, и принимать решения в считанные доли секунды согласно заложенному в них алгоритму.
И вот здесь возникает очень важный вопрос: а как сделать так, чтобы программа, согласно которой действует советник, в точности соответствовала тому, что в нее хотел заложить ее создатель? Под создателем здесь мы понимаем не высшие силы, а трейдера, разработавшего торговую систему, и программиста, переложившего эту систему на язык MQL5.
Хорошо, если они едины – он же трейдер, он же сам себе программист. В этом случае есть достаточно много шансов, что они найдут между собой общий язык.
А если это два разных человека? И один из них (трейдер) абсолютно ничего не понимает в программировании? Как тут быть?
Как показывает практика, единственным средством общения в данном случае является Техническое Задание (ТЗ), в котором трейдер (заказчик) должен четко и максимально доходчиво расписать то, что он хочет видеть отлитым в строчки компьютерного кода.
Говорят, сколько людей, столько и мнений. Но в нашем случае это не совсем так. Автор этих строк проанализировал около полусотни вариантов требований, которые предъявляют программисты к структуре и содержанию ТЗ, и понял, что на 4/5, как минимум, они у всех одинаковы. А вот оставшиеся 20% позволяют – правда косвенно – судить о том, насколько программист в теме и насколько сложные советники он привык создавать.
Если говорить о советниках средней навороченности (нейросетевые из рассмотрения вообще исключаем), то требования к ТЗ будут выглядеть примерно так:
1. Торговая платформа, на которой будет работать советник;
2. Валютные пары и таймфреймы;
3. Используемые индикаторы (если нестандартные, то приложить);
4. Полное описание параметров системы (оптимизируемых и нет);
5. Правила работы по торговой системе (входы, выходы, сопровождение позиций. Тут лучше дополнительно приложить еще и разъясняющие скриншоты);
6. Типы ордеров: рыночные, отложенные. Наличие StopLoss, TakeProfit, TrailingStop и безубытка (если они требуются);
7. Правила управления капиталом (фиксированный лот или формула расчета его величины, процент от депозита и т.п.)
В разделе «Фриланс» на портале mql5.com (в меню терминалов МТ4 и МТ5 закладка «Справка - MQL5 community - MQL5 Работа») к услугам трейдера около 500 опытных программистов, с помощью которых достаточно быстро, недорого и, главное, качественно можно претворить это техническое задание в жизнь, получив на его основе готового к работе советника.
Что же касается данных там полезных советов по составлению ТЗ, то:
- помните, что программист не несет ответственности за прибыльность стратегии. Поэтому, перед тем, как начать работу над советником, убедитесь сами в ее прибыльности, торгуя на демо или на центовом реальном счете;
- чтобы избежать недопонимания, согласуйте с программистом необходимые термины и определения;
- и знайте, что отладкой программы и выявлением ошибок всегда и везде занимается заказчик. Совсем не исключено, что после тестирования советника вам придется еще не раз пообщаться с программистом, чтобы довести советника, что называется, «до ума».
И вот тут, если не возражаете, автор позволит себе дать несколько дополнительных советов, базирующихся на собственном опыте.
I. Заранее предупредите программиста, что этот ваш советник – лишь рождественская елка, которую вы потом будете украшать все новыми и новыми игрушками. В качестве игрушек будут выступать дополнительные индикаторы и фильтры, уточняющие условия входа в позицию и выхода из нее, привязка ко времени разных торговых сессий, различные варианты расчета размера лота, порядок открытия хеджирующих позиций... Да мало ли какие еще идеи придут вам в голову в процессе эксплуатации и совершенствования данного советника!
И если вы не предусмотрите заранее возможность такой его модификации, вам каждый раз придется платить за новый советник (из моей практики $50 - $100). А так – всего лишь за его модификацию, т.е. около $10 - $15. Как говорится, почувствуйте разницу.
II. Этот пункт вытекает из п.I. Заранее вы никогда на 100% не знаете, какое из этих «елочных украшений» придется ко двору, а какое – будет бесполезно и даже вредно. Поэтому настоятельно рекомендую в настройках советника для каждой (!) функции предусмотреть возможность ее отключения (кнопку вкл/выкл). Это, кстати, значительно упростит для вас и процесс оптимизации рабочих параметров советника в тестере терминалов МТ4 и МТ5.
Простой пример: изначально вы предусмотрели закрытие позиции по TP, а потом решили добавить еще и возможность закрытия по пересечению МА. В результате имеем четыре варианта: закрытие только по ТР, закрытие только по МА, закрытие по наступлению первого из этих событий и закрытие по наступлению обоих событий. Вот для того, чтобы выяснить, какой из них лучше, и нужны кнопочки вкл/выкл ТР и вкл/выкл МА.
III. И наконец п.III, дополняющий два предыдущих. Не стесняйтесь нагрузить программиста и предусмотрите для каждого из параметров советника возможность их оптимизации. Надо сказать, что эта замечательная функция, встроенная в МТ4 и МТ5 дает порой самые поразительные и совсем неожиданные результаты. А сам процесс оптимизации настолько увлекателен, что вполне может заменить вам любое хобби, сопровождавшее вас до этого всю предыдущую жизнь.
Что же касается торговли на реальных счетах, то вот именно к этому занятию относиться как хобби настоятельно не советую: деньги – вещь серьезная. А написание грамотного ТЗ – одна из составляющих этого бизнес-процесса.