Евгений Ждан - MQL4-программирование: торговый робот за один вечер

Шрифт
Фон

MQL4-программирование: торговый робот за один вечер


Евгений Ждан

© Евгений Ждан, 2017


Введение

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

Данные о том, что именно зарабатывающих трейдеров не более 5% встречаются повсеместно. Деньги остальных 95% делятся между первыми 5% и брокерами/диллинговыми центрами.

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

Дело в том, что, начиная торговать, трейдер выполняет условия своей торговой стратегии. После череды успешных сделок, последний расслабляется, начинает думать, что поймал удачу за бороду и жизнь обеспечена. Появляется чрезмерная уверенность в своих действиях и трейдер начинает отклоняться от торговой стратегии. Открываются сделки не по системе, а по «наитию». Пребывая в эйфории от череды успешно закрытых ордеров, трейдер увеличивает торговый лот. И уже скоро этот человек отправляется в число тех теряющих деньги 95% трейдеров.

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

Торговый робот лишен эмоций и способен монотонно выполнять свой алгоритм с приходом каждого нового ценового значения. Конечно, иногда трейдеру придется запрещать ему работу, например, во время крайне-важных финансово-политических новостей, когда волатильность возрастает в разы. Например, такими событиями в недавнем прошлом являлись Britain Exit  «Брекзит»  кампания сторонников выхода Великобритании из ЕС, выборы президентов США и Франции, авария на АЭС Фукусима-1, спровоцировавшая обвал японской национальной валюты и т. п. Надеюсь, мысль вам понятна.

В этой книге мы научимся делать торговых роботов для для самого распространенного и самого удобного торгового терминала MetaTrader4 от компании MetaQuotes. Если быть точнее, в этой книге мы по шагам создадим советника (Expert Advisor), полностью готового «к употреблению». Естественно, прибыльность конечного продукта я не обещаю, нам важно другое  научиться их делать.

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

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

Немного теории

Типы данных

Торговый эксперт оперирует данными. Он работает с поступающими ценами, ценовыми значениями индикаторов, ведет подсчеты открытых ордеров, что-то печатает в Журнал торгового терминала.

В mql4 существуют следующие типы данных:

Теперь весь наш код выглядит так:

Основные типы данных:

 целые числа (char, short, int, long, uchar, ushort, uint, ulong)

 логические (bool)

 литералы (ushort)

 строки (string)

 числа с плавающей точкой (double, float)

 цвет (color)

 дата и время (datetime)

 перечисления (enum)

Сложные типы данных:

 структуры;

 классы.

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

 Тип int  целые числа, т. е. 1, 2, 5,100, 1425

 Тип double  числа с дробной частью (с запятой): 1,0254, 0,0547

 Тип bool  имеет только 2 значения  true (правда) и false (ложь).

 Тип string  строковые значения, т. е. слова: «слово», «предложение из четырех слов»

Переменные

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

С типом bool все также, например переменная bool b = true, означает, что бочонок с именем b содержит в себе true.



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

КОНЕЦ ОЗНАКОМИТЕЛЬНОГО ОТРЫВКА

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

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

Условные операторы if-else

Условные операторы if-else применяются всегда и везде. If  означает «если», else  «если нет, то».

Например:

if (x <y) // Если содержимое бочонка x меньше содержимого бочонка y

{

Что-то делаем, например, открываем ордер. Или закрываем другой ордер, да все что угодно!


} else // А если x не меньше y, делаем то, что ниже, в фигурных скобках

К сожалению!!! По просьбе правообладателя доступна только ознакомительная версия...

Ваша оценка очень важна

0
Шрифт
Фон

Помогите Вашим друзьям узнать о библиотеке

Скачать книгу

Если нет возможности читать онлайн, скачайте книгу файлом для электронной книжки и читайте офлайн.

fb2.zip txt txt.zip rtf.zip a4.pdf a6.pdf mobi.prc epub ios.epub fb3

Популярные книги автора