Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 996
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
То что вы пытаетесь распечатать не правильно. Правильно так.
Вот разобрался:
42 это числовой идентификатор: ACCOUNT_MARGIN_FREE
т.е. мы можем получить свободную маржу по константе
Либо по ее числовому идентификатору:
AccountInfoDouble(42)
Спасибо!
Вот разобрался:
42 это числовой идентификатор: ACCOUNT_MARGIN_FREE
т.е. мы можем получить свободную маржу по константе
Либо по ее числовому идентификатору:
Спасибо!
Первый-то вариант написания более информативен.
https://www.mql5.com/ru/docs/constants/environment_state/marketinfoconstants
Скорее всего вопрос глупый, но можно ли использовать данные функции в MQL4? Просто инструменты MQL4 - более ограниченны.
Как в MQL4 получить данные:
SYMBOL_SESSION_DEALS
Количество сделок в текущей сессии
SYMBOL_SESSION_BUY_ORDERS
Общее число ордеров на покупку в текущий момент
long
SYMBOL_SESSION_SELL_ORDERS
Общее число ордеров на продажу в текущий момент
long
SYMBOL_VOLUME
Volume - объем в последней сделке
long
SYMBOL_VOLUMEHIGH
Максимальный Volume за день
long
SYMBOL_VOLUMELOW
Минимальный Volume за день
SYMBOL_BID
Bid - лучшее предложение на продажу
double
SYMBOL_BIDHIGH
Максимальный Bid за день
double
SYMBOL_BIDLOW
Минимальный Bid за день
double
SYMBOL_ASK
Ask - лучшее предложение на покупку
double
SYMBOL_ASKHIGH
Максимальный Ask за день
double
SYMBOL_ASKLOW
Минимальный Ask за день
SYMBOL_SESSION_VOLUME
Cуммарный объём сделок в текущую сессию
double
SYMBOL_SESSION_TURNOVER
Cуммарный оборот в текущую сессию
double
SYMBOL_SESSION_INTEREST
Cуммарный объём открытых позиций
double
SYMBOL_SESSION_BUY_ORDERS_VOLUME
Общий объём ордеров на покупку в текущий момент
double
SYMBOL_SESSION_SELL_ORDERS_VOLUME
Общий объём ордеров на продажу в текущий момент
double
SYMBOL_SESSION_OPEN
Цена открытия сессии
double
SYMBOL_SESSION_CLOSE
Цена закрытия сессии
double
Да тут просто кладезень, как можно одним движением получить данные которые могут пригодиться. Вот только как эту же инфу получить на MQL4. Возможно у кого-то появится логичный вопрос, почему же я не изучаю MQL5, ведь его возможности шире. Все просто. Не все брокеры его поддерживают. На текущий момент наиболее актуальным и востребованным все еще является MQL4.
https://www.mql5.com/ru/docs/constants/environment_state/marketinfoconstants
Скорее всего вопрос глупый, но можно ли использовать данные функции в MQL4? Просто инструменты MQL4 - более ограниченны.
Как в MQL4 получить данные:
Да тут просто кладезень, как можно одним движением получить данные которые могут пригодиться. Вот только как эту же инфу получить на MQL4. Возможно у кого-то появится логичный вопрос, почему же я не изучаю MQL5, ведь его возможности шире. Все просто. Не все брокеры его поддерживают. На текущий момент наиболее актуальным и востребованным все еще является MQL4.
В документации по mql4 все которые не работают помечены.
SYMBOL_BID
Bid - лучшее предложение на продажу
double
SYMBOL_BIDHIGH
Не поддерживается
double
SYMBOL_BIDLOW
Не поддерживается
double
SYMBOL_ASK
Ask - лучшее предложение на покупку
double
SYMBOL_ASKHIGH
Не поддерживается
double
SYMBOL_ASKLOW
Не поддерживается
double
SYMBOL_LAST
Не поддерживается
double
SYMBOL_LASTHIGH
Не поддерживается
double
SYMBOL_LASTLOW
Не поддерживается
double
SYMBOL_POINT
Значение одного пункта
double
Это не вся таблица. Да и не одна такая есть в документации, просто надо нажать F1 и почитать.
В документации по mql4 все которые не работают помечены.
Строки из журнала:
2019.11.16 12:38:40.660 2019.01.02 02:35:00 Для расчета стопов, принимаем значение от брокера = 30
2019.11.16 13:20:18.791 2019.01.02 02:03:00 Открываем ордер: Цена = 1.14595, Стоп-лосс = 1.14565, Тейк-профит = 1.14625
2019.11.16 13:20:18.791 2019.01.02 02:03:00 failed instant buy 0.01 EURUSD at 1.14595 sl: 1.14565 tp: 1.14625 [Invalid stops]
2019.11.16 13:20:18.792 2019.01.02 02:03:00 CTrade::OrderSend: instant buy 0.01 EURUSD at 1.14595 sl: 1.14565 tp: 1.14625 [invalid stops]
А теперь немного ясности для данного случая:
В коде перед открытием ордера я рассчитываю:
price = лучшая рыночная цена на покупку, в зависимости от ордера, в данном случае покупка.
SL = расчитываем правильный стоп (брокер допускает стопы не менее чем на 30 единиц от цены) т.е.
price (1.14595) - 0.0003 = SL (1.14565)
TP = расчитываем правильный стоп (брокер допускает стопы не менее чем на 30 единиц от цены) т.е.
price (1.14595) + 0.0003 = TP (1.14625)
Ну вроде как все верно, 30 пунктов удерживаю, но получаю ошибку установки.
Ставим SL = 0, то все ОК, ордер и тейк ставятся.
Получается ошибка в расчете на SL, где ошибка?
Помогите разобраться, не удается корректно установить стоп-лосс.
Строки из журнала:
2019.11.16 12:38:40.660 2019.01.02 02:35:00 Для расчета стопов, принимаем значение от брокера = 30
2019.11.16 13:20:18.791 2019.01.02 02:03:00 Открываем ордер: Цена = 1.14595, Стоп-лосс = 1.14565, Тейк-профит = 1.14625
2019.11.16 13:20:18.791 2019.01.02 02:03:00 failed instant buy 0.01 EURUSD at 1.14595 sl: 1.14565 tp: 1.14625 [Invalid stops]
2019.11.16 13:20:18.792 2019.01.02 02:03:00 CTrade::OrderSend: instant buy 0.01 EURUSD at 1.14595 sl: 1.14565 tp: 1.14625 [invalid stops]
А теперь немного ясности для данного случая:
В коде перед открытием ордера я рассчитываю:
price = лучшая рыночная цена на покупку, в зависимости от ордера, в данном случае покупка.
SL = расчитываем правильный стоп (брокер допускает стопы не менее чем на 30 единиц от цены) т.е.
price (1.14595) - 0.0003 = SL (1.14565)
TP = расчитываем правильный стоп (брокер допускает стопы не менее чем на 30 единиц от цены) т.е.
price (1.14595) + 0.0003 = TP (1.14625)
Ну вроде как все верно, 30 пунктов удерживаю, но получаю ошибку установки.
Ставим SL = 0, то все ОК, ордер и тейк ставятся.
Получается ошибка в расчете на SL, где ошибка?
какой тип цены ?
какой тип цены ?
При покупке Price = SYMBOL_ASK
При продаже Price = SYMBOL_BID
При покупке Price = SYMBOL_ASK
При продаже Price = SYMBOL_BID
спрэд добавлять пробовали ?
спрэд добавлять пробовали ?
Исправил таким образом: