Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 119

 
hoz:


Хм. И каким же образом данные номер может повлиять на сбор статистики об ордерах?


Замечательно! Самое интересное, что кто-то об этом знает как ни странно. Как можно было об этом догадаться?


Если тестируется сова в демо, то как может учесться данный ордер? Т.е. тот баланс, который изначально даётся на демо - это и будет то самое.. искомое ОНО? А в реале - уже, то что вывел и положил на депо, верно?

Наверно, возможно как-то прописывать в сове вывод части депо, когда с хорошим профитом закрываешься, или доливку, когда попал на лосс. Надо поискать, может, есть такое, а?!

 
hoz:


Хм. И каким же образом данные номер может повлиять на сбор статистики об ордерах?


Замечательно! Самое интересное, что кто-то об этом знает как ни странно. Как можно было об этом догадаться?


Если тестируется сова в демо, то как может учесться данный ордер? Т.е. тот баланс, который изначально даётся на демо - это и будет то самое.. искомое ОНО? А в реале - уже, то что вывел и положил на депо, верно?

Ну почему бы в вам в любом вашем цикле перебора ордеров, не сделать проверку на тип 6 и, если такой попался, то вывести о нём все данные в журнал. Думаю, увидев о них более наглядную информацию, вам станет более понятен смысл как сиё использовать в своих целях. Ась? :))

ЗЫ. Не вредности ради - развития для...

 
artmedia70:

Ну почему бы в вам в любом вашем цикле перебора ордеров, не сделать проверку на тип 6 и, если такой попался, то вывести о нём все данные в журнал. Думаю, увидев о них более наглядную информацию, вам станет более понятен смысл как сиё использовать в своих целях. Ась? :))

ЗЫ. Не вредности ради - развития для...



Сделаю, как допишу текущий код.(Имеется ввиду, вывести в журнал все параметры ордера? В тестере тоже можно?) Хотя если это только не торговые операции, то заочно странновато это всё.

Кстати, вот поправил функцию поиска ордеров. Нечего не поменялось. Минимальные значение количества всех ордеров, так и количества отложек вообще минимально 1. Даже когда ордеров вообще нет в рынке. Вот код:

//+-------------------------------------------------------------------------------------+
//| Поиск своих ордеров                                                                 |
//+-------------------------------------------------------------------------------------+
void FindOrders(int& t, int& p)
{
   int total = OrdersTotal() - 1;
   t = 0;
   p = 0;
   for (int i=total; i>=0; i--)
   {
      if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue;
      if (OrderSymbol() != Symbol()) continue;
      if (OrderMagicNumber() != i_magic) continue;
      if (OrderType() > 1 || OrderType() < 6)
      {
          p++;
      }
      t++;
      pr ("FindOrders(): " + "t = " + t);
      pr ("FindOrders(): " + "p = " + p);
   }
}

6-ой тип уже исключён. Обнуления почему-то нет. Что не так? Раньше всех подобное работало исправно. Код то примитивно простой.

 
hoz:


Сделаю, как допишу текущий код.(Имеется ввиду, вывести в журнал все параметры ордера? В тестере тоже можно?) Хотя если это только не торговые операции, то заочно странновато это всё.

Кстати, вот поправил функцию поиска ордеров. Нечего не поменялось. Минимальные значение количества всех ордеров, так и количества отложек вообще минимально 1. Даже когда ордеров вообще нет в рынке. Вот код:

6-ой тип уже исключён. Обнуления почему-то нет. Что не так? Раньше всех подобное работало исправно. Код то примитивно простой.


if (OrderType() > 1 && OrderType() < 6)
 
artmedia70:


if (OrderType() > 1 && OrderType() < 6)


Это уже признак сонности видимо у меня.

Но суть опять же не совсем в том. Прогоняю в тестере сову. На скрине, как видно ни отложек ни рыночных ордеров нет.

Как отдельная функция, так и стандартный коммент, которым я продублировал отдельную функцию для вывода на экран требуемых величин, показывают, ято рыночные ордера и отложки есть постоянно.

Вот получилась функция такая:

//+-------------------------------------------------------------------------------------+
//| Поиск своих ордеров                                                                 |
//+-------------------------------------------------------------------------------------+
void FindOrders(int& t, int& p)
{
   int total = OrdersTotal() - 1;
   t = 0;
   p = 0;
   for (int i=total; i>=0; i--)
   {
      if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue;
      if (OrderSymbol() != Symbol()) continue;
      if (OrderMagicNumber() != i_magic) continue;
      if (OrderType() > 1 && OrderType() < 6)
      {
          p++;
      }
      t++;
      Comment("t = ", t, "p = ", p);
      pr ("FindOrders(): " + "t = " + t);
      pr ("FindOrders(): " + "p = " + p);
   }
}

Вызываю со старта, где изначально значения счётчиков тоже обнуляю:

int start()
{
   if (g_lastBarTime == Time[0])         // На текущем баре все необходимые действия..
       return (0);                               // ..уже были выполнены
   
   int oTotal = 0, oPending = 0;
   
   FindOrders(oTotal, oPending);
   
   int signal = GetGeneralSignal(oTotal);
   
   if (signal != SIGNAL_NO)
   {
       if (!Trade(signal))
       return(0);
   }
   else
 

помогите найти ошыбку))

if(to1<tc&&mag==11&&total>0&&tip==OP_BUYSTOP){

RefreshRates();

double st=NormalizeDouble(Ask+delta*Point-StopLoss*Point,Digits);

double tp=NormalizeDouble(Ask+TakeProfit*Point+delta1*Point,Digits);

if (OrderModify(ticket,Ask+delta*Point,3,st,tp))

{to1=tc; Print("BUY STOP1 MOD : ");}

}

OrderModify error 130


 
А где OrderSelect()?
 
а почему не получается следить за темами форума, сообщения не приходят на почту?
 
JLY:
а почему не получается следить за темами форума, сообщения не приходят на почту?

Сделали бы лучше как на форуме MQL5, новые сообщения в избранных темах отображались бы звёздочкой наверху около профиля.

 
Может кто подскажет, есть ли функция, которая замеряет время от момента выслания ордера на открытие позиции до момента принятия его сервером брокера? У меня советник на VPS работает, искал подешевле (не обязательно ближе брокеру) и интересно сколько времени занимает такая задержка.
Причина обращения: