SpiderNotKnowWeb
- Эксперты
- Iurii Kuksov
- Версия: 1.0
- Активации: 5
Этот советник для открытия ордеров использует Moving Average с определенными параметрами. Первую сделку он всегда будет открывать на покупку, но, при определенных настройках, он может открывать сделки только на продажу. Для закрытия ордеров он использует профит по достижению которого он закроет все ордера и начнет свою работу заново. Пока, он работает как Мартингейл и как сеточник.
extern double Lots = 0.20; - С этого параметра, который является стоимостью валюты по которой вы будете торговать, советник начинает свою работу. То есть, первый открывшийся ордер в терминале будет открыт за 0.20 долларов, если у вас счет в долларах и будет открыт ордер на покупку. Далее советник будет работать по принципу мартингейла и за увеличение сделок будет отвечать параметр MultiplierBuy. Если цена будет грозить убытком, то параметром StepBuy вы сможете задать, где именно и на каком расстоянии от открывшегося убыточного ордера открыть еще один ордер на покупку, что бы тем самым компенсировать понесенный убыток ордера который был открыт до вновь открывшегося ордера. P.S: Тут надо заметить, что этот параметр MultiplierBuy не может равняться "Нулю - 0", так как в коде идет умножение и в таком случае будет ошибка и второй, и последующие ордера, если текущая цена будет уходить в убыток, открываться не будут. Но, если вы хотите, что бы ваш советник торговал одним лотом и открывал сеть ордеров, то этот параметр надо делать "Единицей - 1". extern double Lots2 = 0.70; - Тут надо сказать немного, о самой стратегии торговли советника. Он открывает, или сеть, или мартингейл ордера только на покупку. Параметром WhenToClose определяется, после какого ордера будет открыт встречный ордер на продажу с увеличенным лотом, так как текущая цена движется в убыток, для того что бы при достижении определенной суммы закрыть все ордера советника и начать торговлю заново с чистого листа. Здесь, в настройках стоит, что после второго ордера будет открыт ордер на продажу. И если текущая цена, все по прежнему будет двигаться в направлении убытка, то при достижении параметра DistanceToClosing, в пунктах, будет открыт ордер на продажу, по цене умноженной на параметр IncreasingClosingAmount, то есть, на десять - 10, по цене 2.00 доллара. И при достижении профита, суммы, заданной параметром - CloseTOTAL, здесь 10 центов и более, ордера советника будут закрыты. А параметр Lots2 отвечает за то, если это условие не будет выполнено и текущая цена рынка изменит свой тренд и пойдет против закрытия ордеров и начнет угрожать маржа-колом, так как ордер на продажу был открыт большим лотом, то, после самого первого ордера на покупку, текущая рыночная цена, достигнув расстояния указанного параметром BuyClosure мы откроем опять ордер на покупку по цене Lots2, в надежде что наши ордера, в суме покроют убытки открытого ордера на продажу и при достижении определенной сумы, наши ордера будут закрыты с прибылью указанной параметром CloseTOTAL. extern double Lots3 = 4.00; - Этот параметр советника отвечает за лот открываемого ордера, если текущая рыночная цена опять изменит свой тренд и пойдет в убыток уже всем открывшимся ордерам в рынке, то мы попробуем изменить ситуацию в свою сторону и откроем ордер на продажу по этой цене и советник закроет все ордера при достижении параметра указанного нами в CloseTOTAL. extern int Slippage = 50; - это параметр проскальзывания от текущей цены. extern int Magic = 401; - это магический номер extern int Magic2 = 402; - это магический номер extern int Magic3 = 403; - это магический номер extern int Magic4 = 404; - это магический номер P.S: В терминале можно открыть два и более советников. Но, что бы они не мешали друг другу в работе, надо будет у каждого советника изменить все магик номера, что бы они не были похожи друг на друга, так как советник для каждой операции пользуется отдельными магическими номерами. //--- extern int BeginningSELL = 6; - этот параметр отвечает, после какого открытого ордера на покупку будут открываться ордер на продажу. (В данном случае он не будет открыт, так как будут происходить события на закрытие ордеров). extern double StartMultiplierSell = 2.0; - этот параметр является множителем и отвечает по какой цене будет открыт ордер на продажу. Здесь он его увеличивает в двое, то есть, Lots = 0.40; //--- extern int StepBuy = 600; - этот параметр отвечает за пункты по которым будет открыт следующий ордер на покупку, если цена пойдет в убыток. extern int StepSell = 100; - этот параметр отвечает за пункты по которым будет открыт следующий ордер на продажу, если цена пойдет в убыток. extern double MultiplierBuy = 2; - этот параметр множитель, отвечает за увеличение лота, по какой цене будет покупаться увеличиваясь ордер на покупку. extern double MultiplierSell = 2; - этот параметр множитель, отвечает за увеличение лота, по какой цене будет покупаться увеличиваясь ордер на продажу. //--- extern double CloseTOTAL = 0.10; - этот параметр отвечает за сумму, профит, достигнув которого и более советник будет пытаться закрыть все находящиеся ордера в рынке этим советником. extern int BuyClosure = 1000; - этот параметр отвечает за логику работы, и, если ордера не будут закрыты по профиту и цена уйдет вверх, к лосям и поменяет свой тренд, то после преодоления текущей рыночной ценой первого ордера на покупку на указанное расстояние в пунктах, будет открыт ордер на покупку что бы в сумме с уже открывшимися ордерами на покупку преодолеть убыток открытым ордером на продажу и закрыть ордера с прибылью указанной параметром CloseTOTAL. extern int SellClosure = 200; - этот параметр отвечает за расстояние для открытия ордера на продажу, если текущая цена опять изменит свой тренд и пойдет к медведям и, что бы попытаться опять закрыть ордера с прибылью указанной параметром CloseTOTAL. extern int WhenToClose = 2; - это параметр отвечает, после какого ордера на покупку будет открыт ордер на продажу что бы закрыть все ордера находящиеся в рынке по достижению указанной цены и более параметром CloseTOTAL. extern int DistanceToClosing = 50; - этот параметр отвечает на каком расстоянии от ордера будет открываться ордер на продажу, что бы закрыть все ордера находящиеся в рынке. extern double IncreasingClosingAmount = 10; - этот параметр является множителем и увеличивает Lots, что бы открывшиеся ордер на продажу мог закрыть все открытые ордера на покупку.
https://vk.com/s/v1/doc/wykWN_M4SUrQLxUeKLxhJspKCP9GjMDYws_iMDQdtoTIO4H2Kt0 - это работа советника, лог файл из тестера стратегий с первыми его настройками на скриншоте.
https://vk.com/s/v1/doc/pT3bXrhVpolRRjpN-Qqk_R9YvE2q5OrFfWlyR0ADc_hyOh-p-Ao - это работа советника, лог файл из тестера стратегий со вторыми настройками на скриншоте.