...да и ко всем, кто может подсказать по этому поводу
при разработке советника столкнулся с ошибкой в отчете тестера
иногда, очень редко, не выставлялся ордер BuyStop
в учебнике Сергея Ковалева есть раздел "Требования и ограничения при проведении торговых операций" https://book.mql4.com/ru/appendix/limits
во второй таблице описаны требования к данной операции
в соответствии с данными требованиями я и пытался выставить ордер, но иногда это не получалось и заканчивалось ошибкой
написал примитивного эксперта, имитирующего данную ситуацию
вот его код:
вот что получил в журнале:
2008.01.31 23:59 test 2 GBPUSD,M1: выставлено ордеров 8268
2008.01.31 23:59 test 2 GBPUSD,M1: возвращено ошибок 5025
результаты на другом инструменте:
2008.01.31 23:59 test 2 EURUSD,M1: выставлено ордеров 13288
2008.01.31 23:59 test 2 EURUSD,M1: возвращено ошибок 0
т.о. ордер выставляется не всегда, а только когда этого пожелает тестер
хотелось бы узнать, чем он руководствуется в данной ситуации?
тестил на терминале от Альпари, ошибок рассогласования - 0
при тестах в терминале от MQ ситуация иная, но абсолютно схожая по своей сути
я понимаю, что в реале все происходит несколько иначе, чем в данном советнике
но это же тестер...
А логи тестера не смотрел?
Может и вопросы бы исчезли.
Ошибка ошибке рознь.
да, логи изучал
хотя, изучать там особо нечего
задача вышеприведенного кода - просто выставлять ордер байстоп, в соответствии с торговыми требованиями
с чем он справляется не систематически
вот я и пытаюсь выяснить в чем тут причина
- я не прав в своих рассуждениях;
- ошибка в учебнике Сергея Ковалева, торговые требования не верны;
- ошибка в работе тестера;
да, логи изучал
хотя, изучать там особо нечего
задача вышеприведенного кода - просто выставлять ордер байстоп, в соответствии с торговыми требованиями
с чем он справляется не систематически
вот я и пытаюсь выяснить в чем тут причина
- я не прав в своих рассуждениях;
- ошибка в учебнике Сергея Ковалева, торговые требования не верны;
- ошибка в работе тестера;
Для начало неплохо было бы получить представление, а какаие ошибки формируются.
Надо добавить обработку ошибок
int Err; if ( OrderSend( Symbol(), OP_BUYSTOP, 1, price_OP_BUYSTOP, 3, sl, 0, NULL, 0, 0, Blue) > 0 ) yes ++; else { Err=GetLastError(); Print("Ошибка № ",Err); no ++; }
Для начало неплохо было бы получить представление, а какаие ошибки формируются.
Надо добавить обработку ошибок
если добавить обработку ошибки, то лишь раздуется отчет
было так:
GBPUSD,M5: Ask = 2.049
GBPUSD,M5: stoplevel = 3
GBPUSD,M5: price_OP_BUYSTOP = 2.0493
GBPUSD,M5: sl = 2.0484
GBPUSD,M5: OrderSend error 130
а стало так:
GBPUSD,M5: Ask = 2.049
GBPUSD,M5: stoplevel = 3
GBPUSD,M5: price_OP_BUYSTOP = 2.0493
GBPUSD,M5: sl = 2.0484
GBPUSD,M5: OrderSend error 130
GBPUSD,M5: Ошибка № 130
а что Вы, уважаемый, скажете по сути проблемы?
почему тут возникает эта ошибка?
в чем я ошибся, при написании этого кода?
интересная у вас цена ордера, не нормированная к количеству пойнтов.
Пока видна ошибка 130 - Неправильные стопы. Пост выше. Предложение как исправить ситуацию.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
...да и ко всем, кто может подсказать по этому поводу
при разработке советника столкнулся с ошибкой в отчете тестера
иногда, очень редко, не выставлялся ордер BuyStop
в учебнике Сергея Ковалева есть раздел "Требования и ограничения при проведении торговых операций" https://book.mql4.com/ru/appendix/limits
во второй таблице описаны требования к данной операции
в соответствии с данными требованиями я и пытался выставить ордер, но иногда это не получалось и заканчивалось ошибкой
написал примитивного эксперта, имитирующего данную ситуацию
вот его код:
вот что получил в журнале:
2008.01.31 23:59 test 2 GBPUSD,M1: выставлено ордеров 8268
2008.01.31 23:59 test 2 GBPUSD,M1: возвращено ошибок 5025
результаты на другом инструменте:
2008.01.31 23:59 test 2 EURUSD,M1: выставлено ордеров 13288
2008.01.31 23:59 test 2 EURUSD,M1: возвращено ошибок 0
т.о. ордер выставляется не всегда, а только когда этого пожелает тестер
хотелось бы узнать, чем он руководствуется в данной ситуации?
тестил на терминале от Альпари, ошибок рассогласования - 0
при тестах в терминале от MQ ситуация иная, но абсолютно схожая по своей сути
я понимаю, что в реале все происходит несколько иначе, чем в данном советнике
но это же тестер...