MetaTrader 4 Client Terminal build 509 - страница 35

 
FAQ:


Если присмотреться, то видно, что некоторые сделки зависли в воздухе. такой результат может быть если вы в конце одного из первых тестов сохранили график с уже нанесенными старыми сделками как шаблон для тестера. проверить - в самом начале тестирования остановить (пауза). нажать Ctrl+B + Ctrl+A и кнопка делит в окне графики чарта.

если нет, тогда лучше сделать видео и в сервис-дек.

Я вставил печать в советник и имею в цифрах все, что на графике. По распечатке видно, что получаемые по рифреш аск-бид, которые используются в OrderSend, не совпадают с опен[0] до 60(!) пипсов. Можно было бы подумать, что прошло время (тики) между опен и аск-бид, но по графику видно, что цены сделок сильно выпадают из соответствующих бар.

Если у Вас нет каких-либо уточняющих мыслей, то что отправлять в сервис-деск?

 

давайте разберемся. тестирование ведется на М1 и в визуальном режиме, я правильно вас понимаю ?

Но данные вы берете с цен Н1 - так ?

Какую цену вы вставляете в формулу отправки ордера ?

Можно увидеть кусок кода ?

В любом случае это глюк терминала получается, но надо разобраться где.

 
FAQ:

давайте разберемся. тестирование ведется на М1 и в визуальном режиме, я правильно вас понимаю ?

Но данные вы берете с цен Н1 - так ?

Какую цену вы вставляете в формулу отправки ордера ?

Можно увидеть кусок кода ?

В любом случае это глюк терминала получается, но надо разобраться где.

Тестирование ведется на М1 без визуализации.

Решения по позе принимаются на Н1

   for (i   =  0; i  <  NumberBars;   i++)
   {
      Buf_EUR[i]              =  iOpen(symvol,   TimeFrame,   i);
      Buf_DATE[i]             =  TimeToStr(iTime(symvol,   TimeFrame,   i));
//   Print("");
// 
//   Print("EURUSD = ",         iOpen(symvol, TimeFrame,  i),
//         ", DATE  =  ",       Buf_DATE[i],
//         " , i = ",  i); 
   }

TimeFrame = 60, ниже видно, что проверял, действительно выбирает NumberBars на Н1 цен опен.

Эти сведения передаются в R. Там вычисляется сигнал по позе: 1, 0, -1.

Если единица, то после рефреш получаем аск-бид и OrderSend. Если не делать рефреш, то часто получаем ошибку "Нет цены".

Очень просто и не затейливо.

 
FAQ:


99% у вас терминал(ы) стоит в защищенной зоне (программ 86). Вынесите его на другой диск, или измените для текущего юзера права на паку терминала, или запускайте из под администратора.


Вы видно привыкли общаться в пользователями семёрки х64. Нет, у меня старая добрая ХР х86, чистая, без бубенцов и побрякушек, терминалы и прочие проги всегда ставлю на второй раздел, бзик у меня такой в системный раздел ничего лишнего не ставить, даже своп на отдельном диске. И уж конечно я на свой комп вхожу как администратор.
 
если вы тестируете без визуализации, а потом "открываете график" то такие сдвиги вполне возможны. Я просил кусок кода с OrderSend()
 
evillive:

Вы видно привыкли общаться в пользователями семёрки х64. Нет, у меня старая добрая ХР х86, чистая, без бубенцов и побрякушек, терминалы и прочие проги всегда ставлю на второй раздел, бзик у меня такой в системный раздел ничего лишнего не ставить, даже своп на отдельном диске. И уж конечно я на свой комп вхожу как администратор.


Очень интересненько. Тогда я вам порекомендую обновить Интернет Эксплорер до последней возможной версии, так как терминал использует АПи от 9, ну или поставить все последние обновления на хрюшу. Сам на ней в основном работаю, но такого не замечено ни разу.

А краш логи термина есть ?

 
FAQ:
если вы тестируете без визуализации, а потом "открываете график" то такие сдвиги вполне возможны. Я просил кусок кода с OrderSend()

Открываю график в тестере, который М1, затем нажимаю Н1 и его выложил выше. А куда деть прокрутку с печатью цен. Могу прогнать и прицепить. Вот код.

   RefreshPrice();
   Print("Open"); 
   Print("Time = ",              TimeToStr(iTime(symvol,  1,   0)),
         ", Bid = ",             Bid_EUR,
         ", Ask = ",             Ask_EUR);
   result                     =  0; 
// -------------- Размер лота -------------------------------------------------
//    Берем из R
   Lot_EUR                    =   MathAbs(eur_poz); 
// -------------------- Открыть лонг по EURUSD и шорт по GBPUSD ----------------
   if (eur_poz             >  0)                // Войти в лонг - Buy
   {
      Print("");  
      Print("Открываем ", comm_EUR); 
      Ticket               =  OrderSend(symvol,  
                                 OP_BUY,
                                 Lot_EUR,       // Кол-во лотов
                                 Ask_EUR,       // Цена покупки  
                                 slippage_EUR,  // Допустимое проскальзывание при открытии
                                 CommonSL_EUR,  // Стоплосс
                                 CommonTP_EUR,  // Тэйкпрофит
                                 comm_EUR,      // Комментарий
                                 Magic_EUR,     // Магический номер - тип входа 
                                 0,             // Срок истечения контракта
                                 Green);
 
FAQ:


Очень интересненько. Тогда я вам порекомендую обновить Интернет Эксплорер до последней возможной версии, так как терминал использует АПи от 9, ну или поставить все последние обновления на хрюшу. Сам на ней в основном работаю, но такого не замечено ни разу.

А краш логи термина есть ?

лог чист. ИЕ9 на ХР не пойдёт, вроде там последний совместимый 8. Обновления и так все, просто разработчики торопятся выкинуть хорошую систему на помойку и сжигают все мосты.
 

я бы посоветовал вам вместо Ask_EUR поставить просто Аск, ну или брать данные через маркет инфо.

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

 
FAQ:

я бы посоветовал вам вместо Ask_EUR поставить просто Аск, ну или брать данные через маркет инфо.

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

Сейчас поставлю.