Ошибки, баги, вопросы - страница 143

 
pronych:

Сначала проверяем сколько надо OrderCalcMargin(..), а потом сравниваем с тем что есть AccountInfoDouble( ACCOUNT_FREEMARGIN ). Насколько я понимаю.

А рыночное окружение, это свойства инструмента, такие как аск, бид, обьем.., а в данном случае  требуемый залог. Поправьте, если  не прав.

 

bool  OrderCalcMargin(
   ENUM_ORDER_TYPE       action,           // тип ордера
   string                symbol,           // имя символа
   double                volume,           // объем
   double                price,            // цена открытия
   double&               margin            // переменная для получения значения маржи
   );

Ну в параметрах функции есть цена, т.е. при открытии ордера по рынку, указываем аск или бид. Соответственно рыночное окружение это что-то другое...

Собственно говоря интересно даже не то, что это за загадочное "рыночное окружение" в которое не входят открытые позиции и отложенные ордера...(а именно это и должно быть рыночное окружение...) .

А вот если на чемпионате выставлен отложеннник. На тот момент когда он выставлялся, согласно этой функции, проверяем все нормально. Но цена идет против позиции, доходит до отложенника, но денег уже не достаточно для открытия, сервер посылает..(удаляет отложенник), соответственно возникает ошибка "недостаточно денег". Будет это считаться ошибкой?

 
Dmitriy2:

 

Ну в параметрах функции есть цена, т.е. при открытии ордера по рынку, указываем аск или бид. Соответственно рыночное окружение это что-то другое...

Собственно говоря интересно даже не то, что это за загадочное "рыночное окружение" в которое не входят открытые позиции и отложенные ордера...(а именно это и должно быть рыночное окружение...) .

А вот если на чемпионате выставлен отложеннник. На тот момент когда он выставлялся, согласно этой функции, проверяем все нормально. Но цена идет против позиции, доходит до отложенника, но денег уже не достаточно для открытия, сервер посылает..(удаляет отложенник), соответственно возникает ошибка "недостаточно денег". Будет это считаться ошибкой?

Рыночное окружение это всё, извините за тавтологию, что находится вокруг, простите, Вашего рабочего инструмента. В данном случае.

А вот второй вопрос загадка. Тут я не отвечу.  Понимаю, времени мало, но попробуйте смоделировать на своем демо-счете на м1 со стопами вблизи. или ждите комментариев. 

Простите, тут не помогу, с отложниками в коде не работаю.

 

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

Желаю Вам успеть. 

 

Да что моделировать, при тесте бывает возникает ошибка что нет денег именно при такой ситуации. Допустим можно соптимизировать так что такой ситуации не возникнет... но зачем это нужно... И не будет ли это поводом для дисквалификации на чемпионате. А вычислять каждый раз что будет со счетом на котором несколько позиций и несколько отложенников - нецелесообразно как с точки зрения ресурсов, так и логически...

Про окружения я не пойму что хотели этим сказать, зачем это написали... почему на каждую функцию так не пишут... Например на структуру торгового запроса можно было написать "действует при текущем рыночном окружении"...:) какой-то тут тайный смысл..:) 

Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса - Документация по MQL5
 
2003.01.02 09:54:30    Network    '680408': authorization on MetaQuotes-Demo failed (Invalid or fake server)


после регистрации нового демо-аккаунта не хочет залогиниваться с такой ошибкой. что это значит и что делать?

 
Dmitriy2:

Да что моделировать, при тесте бывает возникает ошибка что нет денег именно при такой ситуации. Допустим можно оптимизировать так что такой ситуации не возникнет... но зачем это нужно... И не будет ли это поводом для дисквалификации на чемпионате. А вычислять каждый раз что будет со счетом на котором несколько позиций и несколько отложенников - нецелесообразно как с точки зрения ресурсов, так и логически... 

Про окружения я не пойму что хотели этим сказать, зачем это написали... почему на каждую функцию так не пишут... Например на структуру торгового запроса можно было написать "действует при текущем рыночном окружении"...:) какой-то тут тайный смысл..:) 

Всегда отложниками было сложно управлять. на мт4 тоже. может попробовать уйти от этого? например сделать виртуальные отложники (просто хранить их в переменных и открываться по рынку, когда цена пересекла). Сейчас ведь время важно.

Ну а окружение, как я уже сформулировал себе в мозг, это примерно так -"параметры, которые изменяются, или не не изменяются, в зависимости от рыночной ситуации, применимые для определенного инструмента, или их группы". Так понятней? Можно написать просто от рынка 

 
nickbilak:
2003.01.02 09:54:30    Network    '680408': authorization on MetaQuotes-Demo failed (Invalid or fake server)


после регистрации нового демо-аккаунта не хочет залогиниваться с такой ошибкой. что это значит и что делать?


проверь время на своем компе
 
Lizar:
проверь время на своем компе

спасибо, помогло :)

это на ноуте недавно биос сбросился и я не заметил время

могли бы и логе это напечатать вместо Invalid or fake server

 
Dmitriy2:

А вот если на чемпионате выставлен отложеннник. На тот момент когда он выставлялся, согласно этой функции, проверяем все нормально. Но цена идет против позиции, доходит до отложенника, но денег уже не достаточно для открытия, сервер посылает..(удаляет отложенник), соответственно возникает ошибка "недостаточно денег". Будет это считаться ошибкой?
Такие единичные ошибки не повлияют на судьбу Вашего советника на чемпионате. Вот если при отсутствии денег он тупо будет повторно пытаться открыть позицию, генерируя гигабайты в журнал, как это бывало в прошлых чемпионатах, тогда дисквалифицируют.
 
nickbilak:

могли бы и логе это напечатать вместо Invalid or fake server

Именно на время в логе я и обратил внимание. Название ошибки - ухахочешься.