Не требует доказательств то, что торговля на финансовых рынках, благодаря развитию компьютерной техники и интернета, за последние годы превратилась в высокотехнологичный процесс. Конечно, отношение к автоматической торговле не у всех одинаковое, но то, что, согласно статистике, свыше 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 дает порой самые поразительные и совсем неожиданные результаты. А сам процесс оптимизации настолько увлекателен, что вполне может заменить вам любое хобби, сопровождавшее вас до этого всю предыдущую жизнь.
Что же касается торговли на реальных счетах, то вот именно к этому занятию относиться как хобби настоятельно не советую: деньги – вещь серьезная. А написание грамотного ТЗ – одна из составляющих этого бизнес-процесса.