Настройки и сова друг к другу не подходят ....
Техн ошибка ?
Уважаемый Владимир! Советник достаточно часто выставляет большее кол-во отложенныз ордеров, чем предусмотрено параметром Orders. При Orders=5 кол-во выставленных ордеров на разных валютных парах доходило до восьми позиций, хотя должно быть равно четырем.
Удалите строку кода (или закомментируйте)
if (!IsDemo()) return;
и перекомплируйте советника. Будет торговать на реале. Только стрёмно это - он в просадки просто гигантские может ввести депозит.
Автор, плохая практика на каждой итерации цикла объявлять одну и ту же переменную. Посмотрите, это Ваш код
while(true){ for(i=OrdersTotal()-1; i>=0; i--){ if(OrderSelect(i,SELECT_BY_POS)){ if(OrderMagicNumber()==Magic && Symbol()==OrderSymbol()){ int OT=OrderType();
Если в коде Вы дважды объявляете переменную, то компилятор выдаёт ошибку, мол, переменная уже объявлена. Здесь же он не может выдать эту ошибку. Но логика не верна - исправьте. Эта ошибка повторяется у Вас и далее по коду. В том числе и конструкция for (int i....) не верна именно в этом случае. Ваш цикл for находится внутри цикла while. for будет повторяться и повторяться пока ни произойдёт принудительное прерывание цикла while. И точно также переменная int i будет каждый раз объявляться заново - не каждый тик, а внутри одного тика на каждой итерации цикла while. Я не процитировал этот участок кода - смотрите сами ниже по коду.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Grid MA ATR:
Советник по стратегии сетка. Выставляет сети из стоп ордеров по тренду в направлении МА.
Автор: Vladimir Khlystov