Добрый день, господа разработчики!
Дайте возможность людям оставаться на текущем билде!
Так как исправляя старые ошибки, вы приносите в новый билд новые!
Последнее:
в 975 периодически не удаляются лимитные ордера, а
в 965 было всё нормально.
А что пишется в логах?
Лимитные ордера, находящиеся близко к исполнению, могут не удаляться - это решают настройки сервера.
Новый билд - новые грабли (((
Неужели так сложно написать тестовый скрипт (перед выпуском нового билда), чтобы тестировал ВСЕ-Е-Е-Е существующие функции?
Каждый раз, как терминал пишет "обновления загружены, перезагрузить?" - нажимаю позже, и у меня начинается депрессия и истерия,)
Согласен с лимитниками, пришлось делать перепроверку. Сперва думал что может из-за брокера или связи мобильной, на другом счете также оказалось.
А обновляться считаю все равно надо, только нам программистам еще пол беды. Раз и подстроились. Главное вовремя заметить. Уже привыкать начал после обновления все проверять:).
А как люди которые к примеру купили сова в том-же маркете. Туговато наверное.
Согласен с лимитниками, пришлось делать перепроверку. Сперва думал что может из-за брокера или связи мобильной, на другом счете также оказалось.
А обновляться считаю все равно надо, только нам программистам еще пол беды. Раз и подстроились. Главное вовремя заметить. Уже привыкать начал после обновления все проверять:).
А как люди которые к примеру купили сова в том-же маркете. Туговато наверное.
Дело в том, что этот режим работает в МТ4 и МТ5 минимум 10 лет.
Не всегда можно выдернуть ордер из под исполнения.
А что именно не работает?
А что именно не работает?
На сегодняшний день меня такая проблема беспокоит:
DK 0 16:02:03.239 Network : terminal synchronized with ОАО ''Брокерский дом ''ОТКРЫТИЕ''
FO 0 16:04:07.942 Trades : buy limit 1.00 SBPR-9.14 at 5000
QD 0 16:04:08.004 Trades : accepted buy limit 1.00 SBPR-9.14 at 5000
GI 2 16:04:08.020 Trades : failed buy limit 1.00 SBPR-9.14 at 5000 [Invalid price]
А в общем с новым билдом новые сюрпризы (
На прошлом билде стакан перестал работать ...
Заметил что первый всегда удаляется, а последующие... Неизвестно на каком, то на 3, то на 7 или 10 хаотично как-то класс CTrade.OrderDelete(ticket) к примеру возвращает false. А в логах тишина.
В логах не может быть тишины.
Проверьте их внимательно, не забывая самостоятельно распринтовать все данные перед вызовом торговых функций. Вполне вероятно, что ticket совершенно ошибочный и неправильно вычисляется без учета того, что при удалении предыдущих ордеров количество ордеров уменьшается и вы неправильно обращаетесь к индексам. Это обычная ситуация при массовом удалении - авторы часто забывают, что индексы плывут.
Кто-нибудь код приведёт, который перестал работать ?
tol64, ясно же написано, что в 965 ВСЁ РАБОТАЛО, как и в 930!
Но если хочется посмотреть, то пожалуйста:
void COrder::Remove() { if ( ticket > 0 ) { if ( OrderSelect( ticket ) ) { mem_magic = ulong( OrderGetInteger( ORDER_MAGIC ) ); mem_time = TimeCurrent(); req_id = 0; MqlTradeRequest request = {0}; MqlTradeResult result = {0}; request.action = TRADE_ACTION_REMOVE; request.magic = mem_magic; request.symbol = a_symbol; request.order = ticket; if ( OrderSendAsync( request, result ) ) { if ( result.retcode == TRADE_RETCODE_PLACED ) { req_id = result.request_id; } } else { mem_magic = 0; mem_time = 0; Print( "Ордер не удалён! Билет = ", ticket, "; Код возврата = ", GetRetCode( result.retcode ) ); } } } }
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Добрый день, господа разработчики!
Дайте возможность людям оставаться на текущем билде!
Так как исправляя старые ошибки, вы приносите в новый билд новые!
Последнее:
в 975 периодически не удаляются лимитные ордера, а
в 965 было всё нормально.