Ошибка при тестировании на MT5

 
Здравствуйте. Сколько делал под биржу советников, и было всё ок. Брокер Открытие. Теперь после некоторого перерыва открываю тестер и у всех советников вылетает ошибка position stop out triggered at 0.00%
 
Я так понимаю это из-за расширенных настроек тестирования? Но я их пытаюсь изменить, снова захожу и они без изменений
 
Неужели никто не знает ответ? Тестировать вообще не получается
 
Murat Ishakov:
Неужели никто не знает ответ? Тестировать вообще не получается

Знаете детский анекдот про Вовочку? Показывает училка хвост птицы, а он не смог ответить как это птица называется...

Вы переплюнули эту училку. Даже хвост кода не показали.

 
Alexey Viktorov:

Знаете детский анекдот про Вовочку? Показывает училка хвост птицы, а он не смог ответить как это птица называется...

Вы переплюнули эту училку. Даже хвост кода не показали.

А как я могу показать? Там несколько советников из фриланса, чужая собственность как бы. Тут скорее напрягает что раньше они все работали, а сейчас вдруг все разом перестали. Может после обновления терминала? Я пытаюсь разобраться
 
Murat Ishakov:
А как я могу показать? Там несколько советников из фриланса, чужая собственность как бы. Тут скорее напрягает что раньше они все работали, а сейчас вдруг все разом перестали. Может после обновления терминала? Я пытаюсь разобраться

Мне не надо. Я не специалист по советникам для ФОРТС. А знающие не тратят время на телепатию. Сделайте упрощённый вариант с такими-же тараканами, может кто и подскажет в чём проблема.

 

Ну вот, взял некоторые части из одного советника и упростил. И всё равно например с настройками 1, 500, 500 на Si-6.20 всегда stop out


#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#include <Trade\Trade.mqh>

input double Lot=1;        // Лот
input int SL=50;        // Стоп-лосс (0 - отключить)
input int TP=200;        // Тейк-профит (0 - отключить)

CTrade mp;
datetime dtm=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   Signal();
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Signal()
  {
   if(dtm<iTime(Symbol(), 0, 0) && Npos()==0)
     {
      if(iOpen(Symbol(), 0, 1)<iClose(Symbol(), 0, 1))
         OrderOpen(1);

      else
         if(iOpen(Symbol(), 0, 1)>iClose(Symbol(), 0, 1))
            OrderOpen(2);
     }
  }

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OrderOpen(int type)
  {
   double tp=0,sl=0,price=0;
   bool rez=false;

   if(type==1)
     {
      price=SymbolInfoDouble(Symbol(),SYMBOL_ASK);

      if(SL>0)
         sl=price-SL*Point();
      if(TP>0)
         tp=price+TP*Point();

      rez=mp.Buy(Lot,Symbol(), price, sl,tp,"");
     }

   if(type==2)
     {
      price=SymbolInfoDouble(Symbol(),SYMBOL_BID);

      if(SL>0)
         sl=price+SL*Point();
      if(TP>0)
         tp=price-TP*Point();

      rez=mp.Sell(Lot,Symbol(), price, sl,tp,"");
     }


   if(rez==true)
      dtm=iTime(Symbol(), 0, 0);
  }

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int Npos()
  {
   int kolpos=0;

   for(int pos=0; pos<PositionsTotal(); pos++)
     {
      if(PositionSelectByTicket(PositionGetTicket(pos))==true)
        {
         if(PositionGetString(POSITION_SYMBOL)==Symbol())
           {
            kolpos++;
           }
        }
     }

   return(kolpos);
  }
//+------------------------------------------------------------------+
 

Аналогичная ерунда. Раньше все было норм, сейчас вылетает ошибка position stop out triggered at 0.00%

Брокер Открытие. Причем так на сишке, на нефти нормально.

Вы решили проблему?

 
Murat Ishakov:

Ну вот, взял некоторые части из одного советника и упростил. И всё равно например с настройками 1, 500, 500 на Si-6.20 всегда stop out

Nikita Chernyshov:

Аналогичная ерунда. Раньше все было норм, сейчас вылетает ошибка position stop out triggered at 0.00%

Брокер Открытие. Причем так на сишке, на нефти нормально.

Вы решили проблему?

Видать разработчики не заглядывают в биржевой раздел ((

Попробуйте описать проблему в общем (флудовом) разделе

Причина обращения: