Здравствуйте прошу помощи при авто валидации советника Автоматическое тестирование дало сообщение
Автоматическое тестирование продукта завершено с ошибками:
При
тестировании версии 1.0 продукта "***" были выявлены ошибки. После исправления вам следует залить файл продукта заново для
повторной попытки проверки.
test on EURUSD,H1
there are no trading operations
test on NZDUSD,H1
there are no trading operations
test on GBPUSDcheck,M30
there are no trading operations
test on XAUUSDcheck,Daily
there are no trading operations
Для мультивалютного эксперта добавьте возможность торговать только по одной валютной паре.
Мой советник "***" мультивалютный у него по умолчанию поставлена галка торговать только по одной валютной паре торгует только по таймфрейму М5.
Автоматическое тестирование не тестирует этот таймфрем М5 прошу помощи.
С уважением Сулейман А
Что именно не ясно? Сделайте в советнике возможность торговать ПО ОДНОМУ символу и ПО ЛЮБОМУ таймфрейму.
Что именно не ясно? Сделайте в советнике возможность торговать ПО ОДНОМУ символу и ПО ЛЮБОМУ таймфрейму.
Я сделала чтобы мой советник торговал ПО ОДНОМУ символу и ПО ЛЮБОМУ таймфрейму
ошибка тажа
Состояние тестирования: Тестирование завершилось с ошибками
test on EURUSD,H1 there are no trading operations test on NZDUSD,H1 there are no trading operations test on GBPUSDcheck,M30 there are no trading operations test on XAUUSDcheck,Daily there are no trading operations
Я сделала чтобы мой советник торговал ПО ОДНОМУ символу и ПО ЛЮБОМУ таймфрейму
ошибка тажа
Состояние тестирования: Тестирование завершилось с ошибками
test on EURUSD,H1 there are no trading operations test on NZDUSD,H1 there are no trading operations test on GBPUSDcheck,M30 there are no trading operations test on XAUUSDcheck,Daily there are no trading operations
что не понятно, по всей видимости нет вообще никаких торговых операций, ни по одному инструменту
Помогите что мне делать
Сделать советник, который торгует.
Помогите что мне делать на моем MetaTrader 4 в тестере советник сделки открывает Автоматическое тестирование продукта НЕТ что мне делать
ОН сделки открывает на моём MetaTrader 4 советник мой торгует внизу скрин
P.S.
Проблема в вашем авто тестере а не в моем советнике.
Помогите что мне делать на моем MetaTrader 4 в тестере советник сделки открывает Автоматическое тестирование продукта НЕТ что мне делать
ОН сделки открывает на моём MetaTrader 4 советник мой торгует внизу скрин
P.S.
Проблема в вашем авто тестере а не в моем советнике.
Прошу обратить внимание СКОЛЬКО опубликовано продуктов в Маркете.
Попробуйте выучить статью: Какие проверки должен пройти торговый робот перед публикацией в Маркете.
Прошу обратить внимание СКОЛЬКО опубликовано продуктов в Маркете.
Попробуйте выучить статью: Какие проверки должен пройти торговый робот перед публикацией в Маркете.
extern double TakeProfit = 50; //Тейкпрофит ордера extern int Delta = 100; extern int Expiration = 1; //Время истечения ордера int GetOrdersCount(int MagicNumbers, int Type) { int count = 0; for(int i = 0; i < OrdersTotal(); i++) { // already closed if(OrderSelect(i, SELECT_BY_POS) == false) continue; // not current symbol if(OrderSymbol() != Symbol()) continue; // order was opened in another way if(OrderMagicNumber() != MagicNumbers) continue; if(OrderType() == Type) { count++; } } return (count); } bool CheckMoneyForTrade(string symb, double lots,int type,double prize) { int Plecho= AccountLeverage(); double ContraktSize=SymbolInfoDouble(Symbol(),SYMBOL_TRADE_CONTRACT_SIZE); double freemargin= ((ContraktSize*(prize+(5*Point())))/Plecho)*lots; if(AccountFreeMargin()<freemargin) { string oper=(type==OP_BUY)? "Buy":"Sell"; Print("Not enough money for ", oper," ",lots, " ", symb, " Error code=",GetLastError()); return(false); } return(true); } bool CheckVolumeValue(double volume) { string description; //--- минимально допустимый объем для торговых операций double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN); if(volume<min_volume) { description=StringFormat("Объем меньше минимально допустимого SYMBOL_VOLUME_MIN=%.2f",min_volume); return(false); } //--- максимально допустимый объем для торговых операций double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MAX); if(volume>max_volume) { description=StringFormat("Объем больше максимально допустимого SYMBOL_VOLUME_MAX=%.2f",max_volume); return(false); } //--- получим минимальную градацию объема double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP); int ratio=(int)MathRound(volume/volume_step); if(MathAbs(ratio*volume_step-volume)>0.0000001) { description=StringFormat("Объем не является кратным минимальной градации SYMBOL_VOLUME_STEP=%.2f, ближайший корректный объем %.2f", volume_step,ratio*volume_step); return(false); } description="Корректное значение объема"; return(true); } void placeBuyOrder(double sl,string symbol,int timeFrame){ double buyPrice = MarketInfo(symbol, MODE_ASK) ; double buySL = sl; string tradeComment= "Buy above "+DoubleToStr(buyPrice,4)+ " stop "+DoubleToStr(buySL,4) +" Lot "+DoubleToStr(lotSize,2) ; Print("Placing buy order at "+DoubleToStr(buyPrice)+" with SL at "+DoubleToStr(buySL) + " Lot "+DoubleToStr(lotSize,2) ); // comments ObjectCreate("TradeComment",OBJ_LABEL,0,0,0); ObjectSet("TradeComment",OBJPROP_XDISTANCE,5); ObjectSet("TradeComment",OBJPROP_YDISTANCE,40); ObjectSetText("TradeComment",tradeComment,14,"Arial",DodgerBlue); // draw arrow ObjectCreate("TradeArrow1",OBJ_ARROW,0,iTime(ccy,tf,0),iLow(ccy,tf,0)-50*pnt); ObjectSet("TradeArrow1",OBJPROP_ARROWCODE,241); ObjectSet("TradeArrow1",OBJPROP_COLOR,DodgerBlue); ObjectSet("TradeArrow1",OBJPROP_WIDTH,3); double Lowprice=iLow(symbol,timeFrame,1); double Highprice=iHigh(symbol,timeFrame,1); if (int(MathAbs(iOpen(symbol,timeFrame,1)-iClose(symbol,timeFrame,1))/Point)==0) { BuyPrice=Ask+Delta*Point; SellPrice=Bid-Delta*Point; } if (int(MathAbs(iOpen(symbol,timeFrame,1)-iClose(symbol,timeFrame,1))/Point)>0) { BuyPrice=Ask+(int(MathAbs(iOpen(symbol,timeFrame,1)-iClose(symbol,timeFrame,1))/Point)*2)*Point; SellPrice=Bid-(int(MathAbs(iOpen(symbol,timeFrame,1)-iClose(symbol,timeFrame,1))/Point)*2)*Point; } lotSize = SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN); double MarginNeeded=MarketInfo(Symbol(),MODE_MARGINREQUIRED)*lotSize; if(MarginNeeded>=AccountFreeMargin() && lotSize>0) { return; } if ( (IsNewOrderAllowed())&&(CheckMoneyForTrade(symbol, lotSize,OP_BUY,BuyPrice)==true) && (CheckVolumeValue(lotSize)==true)) { if (AccountFreeMarginCheck(symbol, OP_BUY, lotSize) && GetLastError() != 134) { if (GetOrdersCount(MagicNumber, OP_BUY) < 1) { datetime expiration = TimeCurrent()+3600*Expiration; RefreshRates(); ticketlong=OrderSend(symbol,OP_BUYSTOP,lotSize,BuyPrice,Slippage,NormalizeDouble(buySL, digits),BuyPrice+TakeProfit*Point,"",MagicNumber,expiration,Blue); } } } /// } if (ticketlong < 0) { check=GetLastError(); if(check!=0) Print("Long OrderSend OP_BUY failed with error: ",ErrorDescription(check)); return; } }
...
Вот такая грустная история.
конечно грустная -- у вас же сделки открываются буквально "раз в пятилетку"
и это на 5-ти минутном ТФ
Автоматическое тестирование продукта завершено с ошибками:
При
тестировании версии 1.0 продукта "***" были выявлены ошибки. После исправления вам следует залить файл продукта заново для
повторной попытки проверки.
test on EURUSD,H1
there are no trading operations
test on NZDUSD,H1
there are no trading operations
test on GBPUSDcheck,M30
there are no trading operations
test on XAUUSDcheck,Daily
there are no trading operations
Для мультивалютного эксперта добавьте возможность торговать только по одной валютной паре.
Мой советник "***" мультивалютный у него по умолчанию поставлена галка торговать только по одной валютной паре торгует только по таймфрейму М5.
Автоматическое тестирование не тестирует этот таймфрем М5 прошу помощи.
С уважением Сулейман А
Мультивалютный он в каком смысле? Он только анализирует несколько символом или открывает ордера на нескольких символах? Али просто может быть запущен на разных символах?
В МТ4 в тестере можно открываться только по одному, по своему символу. Если так, то при работе в тестере, надо сделать так, что бы советник и не пытался открывать ордера по другим символам.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Автоматическое тестирование продукта завершено с ошибками:
При тестировании версии 1.0 продукта "***" были выявлены ошибки. После исправления вам следует залить файл продукта заново для повторной попытки проверки.
test on EURUSD,H1
there are no trading operations
test on NZDUSD,H1
there are no trading operations
test on GBPUSDcheck,M30
there are no trading operations
test on XAUUSDcheck,Daily
there are no trading operations
Для мультивалютного эксперта добавьте возможность торговать только по одной валютной паре.
Мой советник "***" мультивалютный у него по умолчанию поставлена галка торговать только по одной валютной паре торгует только по таймфрейму М5.
Автоматическое тестирование не тестирует этот таймфрем М5 прошу помощи.
С уважением Сулейман А