Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Ах-ха! Я поменял номер билета с 0 на 1, и все заработало как часы. Да, я ошибался, Уильям... Проблема была в функции OrderSelect(). Очевидно, что функция OrderSelect() должна выбрать билет. Если номер билета равен 0, какой билет выберет эксперт? :O "?". Спасибо вам обоим за помощь.
Спасибо.
Пожалуйста, обратитесь к этой теме:https://www.mql5.com/en/forum/142545
Саймон, я понимаю, что 0 не является действительным номером билета, ПОСКОЛЬКУ 0 означает, что нет билетов для выбора. 1 представляет билет И конкретный номер билета, который пытается выбрать функция OrderSelect().
Я прочитаю эту тему. Спасибо, что опубликовали ее.
Спасибо.
Я понимаю, что 0 не является действительным номером билета, ПОСКОЛЬКУ 0 означает, что нет билетов для выбора. 1 представляет билет И конкретный номер билета, который функция OrderSelect() выбирает в данный момент.
Нет, это неправильно. ноль как номер билета ничего не значит, это ИНВАЛИД. OrdersTotal() == 0 означает, что нет ордеров ... очевидно, что вы смешиваете результаты от разных функций и номера билетов против позиций ордеров.
Не делайте то же самое, что делали раньше... ...если не хотите получить точно такой же результат. Вы не можете считать, что у вас есть правильный номер билета... ... вам нужно найти его в пуле заказов, а затем выбрать его...
Если вы хотите научиться, выполните это упражнение:
Нет, это неправильно. ноль как номер билета ничего не значит, это ИНВАЛИД. OrdersTotal() == 0 означает, что нет заказов ... очевидно, что вы смешиваете результаты различных функций и номера билетов.
Если вы хотите научиться, выполните это упражнение:
Вы попробовали это упражнение? Покажите ваш код, когда вы его выполните...
Саймон,
Я буду кодировать этот проект. Это должно быть проще простого. Я уже сделал большую часть работы. ;)
Да, я не против сделать это упражнение, видя вашу последовательную поддержку.
Спасибо.
Саймон,
Готово. Я предположил, что вам нужен файл в формате скрипта, чтобы вы могли просто перетащить его на график, подождать, пока советник прокрутит несколько цифр, а затем посмотреть, как он вытягивает ордер из рынка.
Разница между тем, что я сейчас создаю, и этим проектом заключается в следующем...
Текущий проект:
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)){
Этот проект:
Причина, по которой я использовал "if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES)){", заключается в том, что я имею дело с пулом ордеров, а не с предопределенной специфической переменной тикета.
Моя текущая сборка для тома II использует предопределенные переменные, потому что я должен выбрать определенные тикеты для запуска стратегии тома II. Этот проект был разработан для простого закрытия ордера в мгновение ока.
На самом деле у меня возникла пара вопросительных знаков над головой, когда я кодировал выполнение функции, содержащей Ask/Bid цену. Это потому, что обычно при отправке/закрытии ордеров я просто ввожу "Ask"/"Bid", но я понял, что мне нужно определить переменную, которая могла бы быть либо ценой Ask, либо ценой Bid в зависимости от того, был ли ордер на рынке ордером на продажу или покупку. Затем я просто вставил обычное "if orders total is greater than zero", и все готово. Это должно практически полностью покрыть все.
Спасибо.
Хорошо, это не то, что я хотел, но я должен был быть более ясным с моим требованием. Ваш код не устанавливает SL и TP... но в любом случае позвольте мне пересмотреть мое требование. . .
Используя тот же самый демо-счет ...
затем, когда вы закончите, пожалуйста, покажите ваш код и строку из журнала, показывающую номер билета.
Саймон,
Ах, извините, я не полностью прочитал ваши первые инструкции и не закодировал то, что вы просили. Ну что ж, вы добавили новый список требований, так что я займусь делом.
Прежде чем я это сделаю, я изложу то, что я собираюсь сделать...
1. Найти номер тикета ордера, размещенного на USDJPY.
2. Вывести номер билета в журнал в виде "Номер билета по USDJPY = ".
3. Используйте номер билета для выбора ордера И измените ордер так, чтобы у него были TP и SL, и закройте его.
4. Покажите код и строку из журнала, показывающую номер тикета.
С учетом сказанного, я хочу уточнить, что мы находимся на одной и той же странице.
Да, я могу сделать 1. (очевидно, я не могу использовать "валютные функции" для выделения тикетов, верно?)
Да, я могу сделать 2.
3. Не имеете ли вы в виду, использовать функцию OrderSelect() для выбора ордера И изменить его так, чтобы у него были TP и SL и закрыть его?
4. Очевидно, я покажу код ;)... строка из журнала, показывающая номер тикета (то, что вы могли попросить, это "визуальный снимок" журнала, показывающий номер тикета. Не важно)
Пожалуйста, сначала опубликуйте ответ, прежде чем я приступлю к выполнению задания.
Спасибо.
С учетом сказанного, я хочу уточнить, что мы на одной волне.
Да, я могу сделать 1. (очевидно, я не могу использовать "валютные функции" для выделения тикетов, верно?)
Да, я могу сделать 2.
3. Не имеете ли вы в виду, использовать функцию OrderSelect() для выбора ордера И изменить его так, чтобы у него были TP и SL и закрыть его?
4. Очевидно, я покажу код ;)... строка из журнала, показывающая номер тикета (то, что вы могли попросить, это "визуальный снимок" журнала, показывающий номер тикета. Не важно)