Urain: Да заморозка, хотя СтопЛевел маркетинфо тоже возвращает 0.
ERR_TRADE_MODIFY_DENIED
145
Модификация запрещена, так как ордер слишком близок к рынку и заблокирован из-за возможного скорого исполнения. Можно не ранее, чем через 15 секунд, обновить данные при помощи функцииRefreshRates и повторить попытку.
Модификация запрещена, так как ордер слишком близок к рынку и заблокирован из-за возможного скорого исполнения. Можно не ранее, чем через 15 секунд, обновить данные при помощи функцииRefreshRates и повторить попытку.
Такая ошибка возникает с отложенниками. Их нельзя модифицировать в зоне FREEZE. Ждите 15 секунд и пробуйте снова.
Если ошибка идет от рыночного ордера, то это только из-за нарушения условия StopLevel.
Тут, как я понял, другой вопрос - то, что нули возвращаются после запроса уровня заморозки, и как следствие, неправильная модификация и снова реквота или ошибка.
2Urain - А вообще были случаи, что возвращаются не нули после запроса значений этих уровней?
Да, так и делал. Проверял строку через принт и потом ещё руками через cmd. Через cmd все проходит, а через терминал почему-то нет. И сейчас смотрю, что работает почему-то только одна команда - xcopy, что странно. К сожалению, не могу найти подробную информацию по синтаксису и функционалу shell32.dll. Сейчас попробую через MoveFileA.
Я уже не новичёк, но давно не писал под четвёрку, поэтому парюсь.
Как узнать уровень заморозки если MarketInfo(Symbol(),MODE_FREEZELEVEL)) всегда равен нулю,
а реквоты (о заморозке ордера) при этом регулярно идут?
Опытным путём установил, что ошибка модификации ТП иногда появляется на уровне 8пп иногда 11пп, но проскакивает и 5пп (но очень редко).
в результате не ясно как сделать проверку чтоб не нарываться на реквот.
Я уже не новичёк, но давно не писал под четвёрку, поэтому парюсь.
Как узнать уровень заморозки если MarketInfo(Symbol(),MODE_FREEZELEVEL)) всегда равен нулю,
а реквоты (о заморозке ордера) при этом регулярно идут?
Опытным путём установил, что ошибка модификации ТП иногда появляется на уровне 8пп иногда 11пп, но проскакивает и 5пп (но очень редко).
в результате не ясно как сделать проверку чтоб не нарываться на реквот.
Именно о заморозке? Может быть всё-таки СтопЛевел? Сейчас у многих ДЦ заморозка не используется (=0)
Ошибка именно эта?
Именно о заморозке? Может быть всё-таки СтопЛевел? Сейчас у многих ДЦ заморозка не используется (=0)
Ошибка именно эта?
Да заморозка, хотя СтопЛевел маркетинфо тоже возвращает 0.
См. здесь.
Народ, я уже почти до белого колена дошел.... Как переименовать файл через shell32.dll????
Так:
не работает. Хотя вручную через cmd проходит.
Делаю по аналогии, где
проходит на ура.См. здесь.
Ну так это если уже ошибку получил, а как избежать ошибки?, как описать проверку чтоб не вляпаться в реквот?
Такая ошибка возникает с отложенниками. Их нельзя модифицировать в зоне FREEZE. Ждите 15 секунд и пробуйте снова.
Если ошибка идет от рыночного ордера (что маловероятно), то это только из-за нарушения условия StopLevel.
Народ, я уже почти до белого колена дошел.... Как переименовать файл через shell32.dll????
Вначале сформируйте строку, принтом посмотрите что копируете, потом передавайте, скорее всего проблема с путями. Если нет опять сюда.
Возможно проблема в бэкслешах. \ -- управляющий символ, поэтому надо записывать так -- "C:\\Program Files\\..."
Если что есть еще такой вариант -- MoveFileA
Такая ошибка возникает с отложенниками. Их нельзя модифицировать в зоне FREEZE. Ждите 15 секунд и пробуйте снова.
Если ошибка идет от рыночного ордера, то это только из-за нарушения условия StopLevel.
Тут, как я понял, другой вопрос - то, что нули возвращаются после запроса уровня заморозки, и как следствие, неправильная модификация и снова реквота или ошибка.
2Urain - А вообще были случаи, что возвращаются не нули после запроса значений этих уровней?
Вначале сформируйте строку, принтом посмотрите что копируете, потом передавайте, скорее всего проблема с путями. Если нет опять сюда.
Возможно проблема в бэкслешах. \ -- управляющий символ, поэтому надо записывать так -- "C:\\Program Files\\..."
Если что есть еще такой вариант -- MoveFileA