И снова про публикацию в маркете - Volume limit reached - страница 4

 
Dmytryi Voitukhov:
Можно конкретнее?  

если лимит 100 лотов, у вас открыто 99, и еще пытаетесь открыть 2-3 (>1), эта ситуация у вас происходит скорее всего, всего кода вашего не видел.

if((SumLotAll+lots)>volume_limit && volume_limit>0) 
 
Aleksey Mavrin:

если лимит 100 лотов, у вас открыто 99, и еще пытаетесь открыть 2-3 (>1), эта ситуация у вас происходит скорее всего, всего кода вашего не видел.

99+2>100 => lots=0. Предположение такое - в момент постановки ордера он сначала отложенный. (Замечал при замедлении процесса) При реквоте - добавляем. А поскольку я отложенные не использую - то и объемы с учетом отложенных не проверяю.
 
Dmytryi Voitukhov:
Кто в теме - может ли это влиять?

Тут много кто в теме.

Люди думаю просто придерживаются мнения - что тем кто такие вопросы задаёт и с пятого раза не понимает подсказок - таким нечего делать в Маркете )

 
Dmytryi Voitukhov:
Вот как бывает - сообщить нечего по существу а туда же... Есть и другой взгляд - можно делать вид что умный и бояться задавать вопросы А можно задавать и развиваться. Если надо - и 10 раз спрошу. По поводу маркета - никто Вас туда не заставляет идти. И если такой большой ум - предложи демку для теста! Моя выложена. 

Даже интересно стало что ты там такое выложил? Вижу только четыре темы создал типа этой, где долго не вдупливаешь элементарных вещей, даже когда тебя носом тыкаешь.

Но ничего, не сдавайся. Вперёд! Молодец! Верю в тебя!

з.ы. подсказка - перечитай ещё раз - тебе дали решение уже давно)

 
Для справки 

Примечание

...Функции fmax(), fmin(), MathMax(), MathMin() могут работать с целыми типами без преобразования к типу double.

https://www.mql5.com/ru/docs/math/mathmax

... если что...

Дополню:

Если в функцию передаются параметры разных типов, то параметр младшего типа автоматически приводится к старшему типу. Тип возвращаемого значения соответствует старшему типу.


Пример:

Когда переменная была объявлена как double  - даже если число указано без дробной части - десятичная точка и один ноль ей уже присвоены.

NormalizeDouble(3,2)  возвращает 3.0. Тип даже не был объявлен. NormalizeDouble отрабатывает корректно даже при подаче целого.

NormalizeDouble(MathMax(3, 2.50),2) возвращает 3.0.  MathMax привел к старшему типу.

1 - у нас же переменные изначально double

2 - даже если зашли INT - на выходе всё равно double.

Так что такие варианты были исключены изначально.


Тем более в журнале объёмы указаны корректно

failed instant buy 3.25 EURUSD at 1.08454 [Volume limit reached] Нет. Тут другое.

Догадался. Дело не в лотах или типах.

Всем спасибо.

Документация по MQL5: Математические функции / MathMin
Документация по MQL5: Математические функции / MathMin
  • www.mql5.com
MathMin - Математические функции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Причина обращения: