Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1264
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
вот
Нет тика - нет цен, значит время не торговое.
Такое бывает на праздники, во время ролловера и ещё некоторых факторах, к примеру форс-мажор, когда в спецификации инструмента стоит котировочное время и торговое 00:01 -> 23:59, но реально тики начинают поступать в 00:03.
Что делать эти 2 минуты? Торговать? Как вы будете торговать, если время торговое, но нет котировок и нет торговли!
SYMBOL_START_TIME
Нет тика - нет цен, значит время не торговое.
Такое бывает на праздники, во время ролловера и ещё некоторых факторах, к примеру форс-мажор, когда в спецификации инструмента стоит котировочное время и торговое 00:01 -> 23:59, но реально тики начинают поступать в 00:03.
Что делать эти 2 минуты? Торговать? Как вы будете торговать, если время торговое, но нет котировок и нет торговли!
SYMBOL_START_TIME
Я так понял это для текущей сессии, время и дата начала и окончания торговой сессии.
Для торгового времени кстати, если время внутри, можно использовать как идентификатор. А вот можно ли использовать их в не торговое время, не понял. Надо пробовать.)
Я так понял это для текущей сессии, время и дата начала и окончания торговой сессии.
Для торгового времени кстати, если время внутри, можно использовать как идентификатор. А вот можно ли использовать их в не торговое время, не понял. Надо пробовать.)
не работало - пробовал. Всё работает только от тика и его времени
Нет тика - нет цен, значит время не торговое.
Такое бывает на праздники, во время ролловера и ещё некоторых факторах, к примеру форс-мажор, когда в спецификации инструмента стоит котировочное время и торговое 00:01 -> 23:59, но реально тики начинают поступать в 00:03.
Что делать эти 2 минуты? Торговать? Как вы будете торговать, если время торговое, но нет котировок и нет торговли!
SYMBOL_START_TIME
Тики есть и во время котировочной сессии, советчик даже отправляет ордера но в ответ -> рынок закрыт. не нашёл идентификатор сессии, но проще можно ограничить время торговли как сказал выше Валерий
Всем доброго времени!
У меня есть вопрос по работе функции ResultDeal() в классе CTrade.
Дело в том, что в Тестере стратегий данная функция возвращает тикет сделки без проблем, а когда бросаешь советник на График она всегда возвращает "ноль", несмотря на то, что функция ResultRetcode() всегда возвращает "TRADE_RETCODE_DONE".
Пример кода:
Лог выполнения в Тестере:
Лог выполнения на Графике:
Что я делаю не так? Как получить тикет сделки в режиме реального времени?
И второй вопрос (менее важный) почему сразу после совершения сделки на Графике функция PositionsTotal() возвращает "ноль"? А с приходом следующего тика показывает достоверные данные. Можно эту информацию получить как то сразу?
Всем доброго времени!
У меня есть вопрос по работе функции ResultDeal() в классе CTrade.
Дело в том, что в Тестере стратегий данная функция возвращает тикет сделки без проблем, а когда бросаешь советник на График она всегда возвращает "ноль", несмотря на то, что функция ResultRetcode() всегда возвращает "TRADE_RETCODE_DONE".
Пример кода:
Лог выполнения в Тестере:
Лог выполнения на Графике:
Что я делаю не так? Как получить тикет сделки в режиме реального времени?
И второй вопрос (менее важный) почему сразу после совершения сделки на Графике функция PositionsTotal() возвращает "ноль"? А с приходом следующего тика показывает достоверные данные. Можно эту информацию получить как то сразу?
Хмм.. Внезапно нужные мне данные в реалтайме возвращает функция ResultOrder() того же класса CTrade, хотя отложенными ордерами я не пользовался...
Вопрос тот же: Что я делаю не так?
Есть вот такой макрос.
Я его использую вот так.
Warning"Warnig сработал. ");Вопрос: Что нужно поправить в определении макроса, чтобы можно использовать его вот так ?
Warning("Warnig сработал. ");т.е со скобкой между Warning и "Warnig сработал. " Пытался в определении макроса использовать скобку
но компилятор не разрешает использовать скобку.
Хмм.. Внезапно нужные мне данные в реалтайме возвращает функция ResultOrder() того же класса CTrade, хотя отложенными ордерами я не пользовался...
Вопрос тот же: Что я делаю не так?
Просто разберитесь с системой ордеров МТ5, ордер- сделка- позиция.
ResultOrder - открывающий ордер. Позиция будет с POSITION_IDENTIFIER равным тикету этого ордера.
Все сделки можно будет найти в истории по идентификатору позиции. Не путать с тикетом позиции, он может меняться, а идентификатор постоянен.
з.ы. тестер отличается тем, что там без задержек исполняется ордер и сразу рождается сделка. В реале проходит время и на момент успешного создания ордера сделки еще нет, её нужно отлавливать в OnTrade событияхЕсть вот такой макрос.
Я его использую вот так.
Вопрос: Что нужно поправить в определении макроса, чтобы можно использовать его вот так ?
т.е со скобкой между Warning и "Warnig сработал. " Пытался в определении макроса использовать скобку
но компилятор не разрешает использовать скобку.
вы хотите использовать параметрическую форму, хотя прописали безпараметрическую. надо как то так
Я плохо объяснил. Давайте сначала. Сейчас я использую макрос вот так:
Warning,"Warnig сработал. i=",i);Вот сам макрос:
В вызове макроса между "Warning," и ");" Произвольное количество параметров произвольных типов. Это все достигается за счет много кратной перезагрузки функции Write.
Вопрос. Что нужно поправить в макросе чтобы его можно было вызывать вот так:
Warning("Warnig сработал. i=",i);