Как вы так сняли скриншот, что его не увеличить, еле разобрал
Везде ошибка модификации ордера
Эти ошибки обозначают что Ваш советник при попытке установить TP или SL не может завершить операцию удачно и выдаёт Вам в логи ошибку.
Чтобы исправить данную ошибку надо или видеть код советника или быть телепатом. Во втором случае Вам сюда.
Ну, советник может быть написан и без ошибок, но в настройках уровни СЛ и ТП меньше уровня StopLevel
Ошибка 1 - это попытка изменить параметр на то же самое значение, которое этот параметр уже имеет.
Грубо говоря: у вас стоплосс уже установлен на цене 1.12345, но вы опять его пытаетесь модифицировать, отправляя в приказе на модификацию ту же самую цену: 1.12345. В ответ получаете ошибку 1.
Вот сам код( при компиляции которого ошибок не было).
Вот сам код(если понадобится файл, я его прикрепил выше, при компиляции которого ошибок не было).
//+------------------------------------------------------------------+ //| Test advisor on 2MA.mq4 | //| Copyright 2017, MetaQuotes Software Corp. | //| https:/goga342@yandex.ru | //+------------------------------------------------------------------+ #property copyright "Copyright 2017, MetaQuotes Software Corp." #property link "https://www.mql5.com" #property version "1.00" #property strict //------------------параметры советника ------------------------------- extern double lots=0.01; // extern int Magic=1111678111; extern int Slippage=1; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { if(Digits==3 || Digits==5)//EURJPY 125.429, EURUSD 1.32164 if(Digits==2 || Digits==4)// AUDJPY 87.75, EURAUD 1,4271 { Slippage*=10; } return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ int start() { int ticket; double DM=iDeMarker(NULL,0,14,1); //if(Bid>OrderOpenPrice()&& CountSell()==0 && DM==0.7)// открытие продаж if(CountSell()==0 && DM==0.8)// открытие продаж { ticket=OrderSend(Symbol(),OP_SELL,lots,Bid,Slippage,0,0,"советник",Magic,0,clrNONE); if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)==true) if(!OrderModify(ticket,OrderOpenPrice(),0,0,0)==true) Print("Ошибка модификации ордера на продажу!"); } } // if(DM>0.2 && CountSell()>0)// закрытие продаж { for(int i=OrdersTotal()-1; i>=0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true) { if(OrderMagicNumber()==Magic && OrderType()==OP_BUY) if(!OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,clrNONE)) Print("Ошибка открытия ордера на покупку !"); } } } //+------------------------------------------------------------------+ if(CountBuy()==0 && DM<0.2)// открытие покупок { ticket=OrderSend(Symbol(),OP_BUY,lots,Ask,Slippage,0,0,"советник",Magic,0,clrNONE); if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET)) if(!OrderModify(ticket,OrderOpenPrice(),0,0,0)==true) Print("Ошибка модификации ордера на покупку!"); } } // if(CountBuy()>0 && DM>0.8)// закрытие покупок { for(int i=OrdersTotal()-1; i>=0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true) { if(OrderMagicNumber()==Magic && OrderType()==OP_SELL) if(!OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,clrNONE)) Print("Ошибка открытия ордера на продажу!"); } } } return(0); } //+------------------------------------------------------------------+ int CountSell()//проверкна открытие ордеров на продажу { int count=0; for(int trade=OrdersTotal()-1; trade>=0; trade--) { if(OrderSelect(trade,SELECT_BY_POS,MODE_TRADES)==true) { if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic && OrderType()==OP_SELL) { if(OrderType()==OP_SELL) count++; } } } return(count); } //+------------------------------------------------------------------+ int CountBuy()// проверкна открытие ордеров на покупку { int count=0; for(int trade=OrdersTotal()-1; trade>=0; trade--) { if(OrderSelect(trade,SELECT_BY_POS,MODE_TRADES)==true) { if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic && OrderType()==OP_BUY) { if(OrderType()==OP_BUY) count++; } } } return(count); } //+------------------------------------------------------------------+
- www.mql5.com
Вот сам код( при компиляции которого ошибок не было).
Вы для чего сразу после открытия позиции с нулевыми стопами и тейками, тут же вызываете модификацию ордера на удаление стопов и тейков (тоже нулевые значения) ? Вот и вся проблема: ордер имеет 0 для стоп и 0 для тейк, но вы вызываете модификацию стопа на 0 и тейка на 0. Зачем?
Вот вам и пишется в журнал ошибка 1 постоянно - попытка изменить параметр на то же самое значение.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Подскажите, если не трудно. Что обозначают эти ошибки и как их можно исправить?
Artyom Trishkin, 2018.06.19 08:30
Ошибка 1 - это попытка изменить параметр на то же самое значение, которое этот параметр уже имеет.
Грубо говоря: у вас стоплосс уже установлен на цене 1.12345, но вы опять его пытаетесь модифицировать, отправляя в приказе на модификацию ту же самую цену: 1.12345. В ответ получаете ошибку 1.
Вы для чего сразу после открытия позиции с нулевыми стопами и тейками, тут же вызываете модификацию ордера на удаление стопов и тейков (тоже нулевые значения) ? Вот и вся проблема: ордер имеет 0 для стоп и 0 для тейк, но вы вызываете модификацию стопа на 0 и тейка на 0. Зачем?
Вот вам и пишется в журнал ошибка 1 постоянно - попытка изменить параметр на то же самое значение.
Артем, мне иногда тебя прям жалко становится ))
Артем, мне иногда тебя прям жалко становится ))
А что так?
да такое разжевывать..
ту один сегодня спрашивал, почему, когда я выключаю комп, советник перестает работать )) IQ = -150
да такое разжевывать..
...
Ну я ж не стал разжёвывать, что у него в коде модификация с заковыристой логической проверкой (вероятно просто от того, что человек просто не понимает сам что он пишет)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования