Безвозмездно, то есть даром, написал по просьбе человека простой советник для торговли на рынке Forex. Исходник и описание прилагаются.
Этот советник мне попросили написать по алгоритму, который привожу ниже. Советник предлагаю в двух версиях: в базовой версии программы и ее модификации. Базовая версия, так сказать, должна была работать идеально (с позиции большой теории) и именно на это рассчитывал человек, когда эту версию у меня заказывал. Но, теория и практика не всегда одно и тоже. Замечу, что я работаю с двумя типами заказов. Первый, наиболее приоритетный и желанный для меня, когда надо что-то написать за деньги. Второй вариант, когда пишу что-то бесплатно для тренировки и по просьбам заказчиков. Плюсы второго варианта: а) бесплатно, б) исходники в открытом виде для всех желающих. Недостатки тоже есть: а) пишу долго, так как обычно есть заказы, которые за оплату, б) не занимаюсь (практически не занимаюсь) модификацией алгоритмов, которые предложили и которые надо было реализовать программно. На этом со вступительной частью все. Кому надо что-то написать-запрограммировать обращайтесь.
Алгоритм советника, который я назвал XYZ.
Итак, смотрите картинку:
Есть некая текущая цена, куда пойдет рынок мы не знаем (это вполне естественное состояние) и знать не хотим (а, это, уже методически не верно), полагая, что будущее покажет все само. Поэтому ставим два отложенных ордера на расстоянии, которое определяется значением переменной punkt. На таком же расстоянии для отложенных ордеров определяем сторлосс и тейкпрофит. Естественно, что определили начальное значение лота — lot. Ждем, пока один из ордеров из отложенного не превратится в текущий. После этого убираем второй отложенный ордер. Оставшийся ордер ведем. Если ордер закрылся с прибылью, то все начинаем с самого начала. Ставим два отложенных ордера на расстоянии punkt… Если ордер закрылся с убытком, то сразу открываем другой, но противоположный, то есть переворачиваемся. Убыток по продаже – покупаем, убыток по покупке – продаем. Причем, открываем с увеличенным лотом, который рассчитываем, как lot*k, где k некий коэффициент больше или равный двум. Теоретически имея большой депозит и начав с маленького лота, например, с 0.01 всегда будем оставаться в прибыли, так как цена все же должна двигаться, даже если присутствует флет. Проверяя программу на практике (базовый вариант xyz) заказчик заметил, что на седьмом неудачном шаге советник не мог открыть новый ордер. Метод лечения – в лоб – используйте больший депозит и надейтесь, что у вас не будет, например, 10 или 20 неудачных итераций (переворотов) подряд.
Небольшую модификацию этого базового варианта XYZ я сделал (XYZ ver. 1.1). Поставил следующие ограничения. Переменная maxlots – указано максимальное значение, до которого можем увеличивать lot, надеясь отыграться на очередном перевороте.
Значения параметров на основе оптимизации.
Пара евро-доллар, ДЦ Alpari.
punkt=194; число пунктов от текущей цены, на которое ставим отложенные ордера
k=3; коэффициент, на который умножаем лот, если предыдущий ордер был выбит по стоплоссу
magic=5981613; «магическое» число, которое идентифицирует ордера открытые этим советником
maxlots = 0.64; Максимальное значение лота, которое не можем привышать. Если получаем более этого значения, то используем это.
lot = 0.01; начальный лот. Для разных типов счетов минимальный лот разный.
Учтите, что некоторые ДЦ разрешают ставить лоты 0.1 или 0.2, но не 0.11 или 0.21.
Депозит от 10000 руб.
Параметры советника:
Советник тестировал на Forex4you. Был выбран счет с фиксированным спредом. По результатам оптимизации наилучшие: 40 пунктов значение переменной punkt, значение переменной k ставим 3. То есть, если сделка закрыта по убытку, то открываемся в другую сторону с лотом предыдущего ордера, умноженным на k.
Можно продолжать усовершенствования и далее с учетом разных предложений (например, не закрывать сделку по профиту, а после того, как достигнут определенный уровень прибыли, переставляем в безубыток и начинаем все с самого начала…). Текст советника в исходнике, так что можете вносить изменения сами.
- Модифицированная версия 1.1 запущена на демосчете
- Тип торгового счета: demo.micro.mt4 | Торговая платформа: MetaTrader 4
- Логин в MetaTrader: 6071097
- Сервер: Alpari-Demo2
- Пароль в MetaTrader (investor): hjg2hPt
- Программа для торговли http://www.alpari.ru/download/mt/mt4setup.exe
- Валюта депозита: RUR
* * *
Скачать текущую версию можно по ссылке https://www.mctrewards.ru/files/xyz.zip
* * *
На этом собственно все. Практически все, так как осталось дать ссылку на интересный ресурс сети Интернет. Если хотите послушать авторадио прямо с веб странички, то этот ресурс для вас. Не все же торговлей заниматься, а если и заниматься, то хорошая музыка не мешает, особенно если сделки в профите и прибыль растет. На этом действительно все. Всем всех благ!