Торговые роботы

Как приступить к созданию торгового робота

Польза «черных ящиков»

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

Иначе, при возникновении ситуаций, когда торговый робот ведет себя не так, как ему полагается, делает вопиющие ошибки, трейдер будет вынужден остановить работу и искать другого робота. Кроме того, внезапные сбои могут начисто отбить охоту использовать механические торговые системы, и это при том, что эффективность ряда систем не полежит сомнению.

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

Знакомство с работой советников

Пока до программирования дело не дошло, нужно хотя бы умозрительно ознакомиться с работой советника. Рекомендуется при этом использовать одну из версий наиболее распространенного клиентского терминала MetaTrader. Для ознакомления необходимо скачать программу-советник и протестировать его в Тестере стратегий терминала. Как правило, при тестировании стратегий, советников и экспертов используют отрезки исторических данных двух типов – с ярко выраженным трендом и исторический промежуток с боковым движением при низкой волатильности.

Теперь необходимо провести оптимизацию параметров и оценить, как ведет себя программа на каждом из участков. После этого можно запустить эксперт с разными параметрами на каждом из участков – программа с параметрами, оптимизированными под боковое движение нужно запустить на участке с выраженным трендом. И наоборот, эксперт с параметрами, подогнанными под тренд, запустить на флетовом участке истории.

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

Комбинирование простых программ

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

Многие любители разработки и совершенствования торговых систем спорят – что есть оптимизация, а что является подгонкой, на этот вопрос нет однозначного ответа до сих пор. Главное в том, что любая система должна иметь как можно больше настраиваемых параметров, которые можно регулировать до тех пор, пока система не будет давать подавляющее большинство качественных сигналов.

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

Изучение языка программирования

Теперь пришла пора изучить принципы работы и возможности языка MQL4 или MQL5. Изучение этого языка не займет много времени, поскольку язык считается простым для изучения и использования. Для того чтобы было проще понять те или иные аспекты программирования на MQL5, нужно разобрать несколько советников, которые всегда можно найти в интернете в виде открытого программного кода. Также исключительно полезно для изучения языка программирования общение на одном из тематических форумах. Живое общение и развернутые ответы на корректно заданные вопросы позволят намного быстрее справиться с проблемами изучения законов программирования на этом этапе.

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

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

Создание торгового робота

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

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

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

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

Comment here