Автор Тема: Обучение языку MQL4 под MetaTrader 4  (Прочитано 707665 раз)

Оффлайн 0ll

  • Модератор
  • Финансовый махинатор
  • *****
  • Сообщений: 2465
  • Вес голоса: 14553581
  • 0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума
    • Share Post
  • Награды Слежу за порядком на форуме овер 1к сообщений на форуме Программист MQL Торговля советниками
    • Просмотр профиля
    • Награды
  • Опыт торговли: Нет
  • Рейтинг: 3663
Обучение языку MQL4 под MetaTrader 4
« Ответ #5085 : Май 13, 2018, 11:55:32 pm »
  • 2
Chuchundra кнопка должна отсылать евент (событие нажатия) графику и сове, сова должна ловить событие и проверять статус кнопки и делать некое действие. Читайте справку по функциям EventChartCustom и  OnChartEvent.

lordsamven Нужно находить ордер и запоминать цену и тикет в одном цикле, Зная тикет можно (и нужно!) выбрать ордер по тикету (читайте справку OrderSelect), при закрытии ордера Бай используйте цену Бид - это же продажа
Сообщение понравилось: machine, Chuchundra

Trade Like A Pro

Обучение языку MQL4 под MetaTrader 4
« Ответ #5085 : Май 13, 2018, 11:55:32 pm »


Оффлайн Chuchundra

  • Новичок
  • *
  • Сообщений: 2
  • Вес голоса: 0
  • Chuchundra Новенький
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: 1-3 года
  • Рейтинг: 0
Обучение языку MQL4 под MetaTrader 4
« Ответ #5086 : Май 14, 2018, 12:38:11 am »
  • 0
Спасибо за наводку, буду морщить лоб и разбираться.. А нет ли постов на форуме, где это разжевывается для нубов ?

Оффлайн sleturin

  • Постоялец
  • ***
  • Сообщений: 152
  • Вес голоса: 383483
  • sleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форума
  • In the sweat of thy face shalt thou eat bread.
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: 1-3 года
  • Рейтинг: 117
Обучение языку MQL4 под MetaTrader 4
« Ответ #5087 : Май 14, 2018, 07:44:29 am »
  • 0

после гэпа цена без отката проходит нужное количество пунктов
(click to show/hide)

Оффлайн 0ll

  • Модератор
  • Финансовый махинатор
  • *****
  • Сообщений: 2465
  • Вес голоса: 14553581
  • 0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума
    • Share Post
  • Награды Слежу за порядком на форуме овер 1к сообщений на форуме Программист MQL Торговля советниками
    • Просмотр профиля
    • Награды
  • Опыт торговли: Нет
  • Рейтинг: 3663
Обучение языку MQL4 под MetaTrader 4
« Ответ #5088 : Май 14, 2018, 09:09:58 am »
  • 2
Читайте здесь

sleturin Ваша задача решается так:
1. Обнаружили гэп. Сохраняем направление, цену открытия и закрытия гэпа и вычисляем цену входа.
2. на каждом тике определяем положение цены, их может быть 3: за гэпом сверху(цена закрыла дырку), внутри от начала гэпа до цены входа, и за ценой входа.
3. Реакция совы на положение цены, их тоже 3: ждём следующий гэп, ждём входа, вход.
Справитесь?
Сообщение понравилось: sleturin, Chuchundra

Оффлайн sleturin

  • Постоялец
  • ***
  • Сообщений: 152
  • Вес голоса: 383483
  • sleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форумаsleturin Ключевая фигура форума
  • In the sweat of thy face shalt thou eat bread.
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: 1-3 года
  • Рейтинг: 117
Обучение языку MQL4 под MetaTrader 4
« Ответ #5089 : Май 18, 2018, 05:55:22 pm »
  • 0
(click to show/hide)

Это даже работает.
Но только тогда, когда проход в X пунктов  был на нулевой свече. Сохранить гэп   и контролировать ход цены относительно него на последующих свечках хз как. >:d<

Оффлайн usver73

  • Финансовый махинатор
  • *****
  • Сообщений: 527
  • Вес голоса: 2931930
  • usver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форума
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: Нет
  • Рейтинг: 779
Обучение языку MQL4 под MetaTrader 4
« Ответ #5090 : Май 18, 2018, 06:50:06 pm »
  • 1
Извиняюсь, код не разбирал.... Но если про предложение на предыдущей странице:
Зачем сохранять информацию о гэпе?
Она (информация о гэпе) актуальна сколько-то времени( Х свечей)...
Смотрите Х свечей назад (в цикле проверяя MathAbs(Close[Х+1]-Open[Х]) )- был ли гэп...
Сообщение понравилось: sleturin

Оффлайн Alexfouly

  • Интересующийся
  • **
  • Сообщений: 58
  • Вес голоса: 0
  • Alexfouly Новенький
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: 1-3 года
  • Рейтинг: 0
Обучение языку MQL4 под MetaTrader 4
« Ответ #5091 : Май 18, 2018, 07:54:29 pm »
  • 0
Как будет выглядеть команда нарисовать стрелку над N свечой от текущей?

Оффлайн 0ll

  • Модератор
  • Финансовый махинатор
  • *****
  • Сообщений: 2465
  • Вес голоса: 14553581
  • 0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума
    • Share Post
  • Награды Слежу за порядком на форуме овер 1к сообщений на форуме Программист MQL Торговля советниками
    • Просмотр профиля
    • Награды
  • Опыт торговли: Нет
  • Рейтинг: 3663
Обучение языку MQL4 под MetaTrader 4
« Ответ #5092 : Май 18, 2018, 08:59:00 pm »
  • 1
Нужно просто объявить переменные на глобальном уровне (вне функции ОнТик)
Логика такая: если в переменных записано -1, то ждём гэп, если записаны уровни гэпа, значит ждём отход цены, если цена закрыла гэп или тайм-оут - записываем в переменные -1, и цикл повторяется. На каждой свече переписывать переменные или пытаться найти гэп - ненужно!
Стрелочки рисуются по времени - просто передайте в функцию Time[X_bar]
ПС: вместо iOpen(Symbol(), 0, 0) можно использовать Open[0] - будет быстрее работать.
Сообщение понравилось: sleturin

Оффлайн usver73

  • Финансовый махинатор
  • *****
  • Сообщений: 527
  • Вес голоса: 2931930
  • usver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форума
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: Нет
  • Рейтинг: 779
Обучение языку MQL4 под MetaTrader 4
« Ответ #5093 : Май 18, 2018, 09:20:47 pm »
  • 0
0ll, а если рабочий ТФ >H1, то наверно надо озаботиться о восстановлении переменной после reboot?

Оффлайн djnet

  • Интересующийся
  • **
  • Сообщений: 60
  • Вес голоса: 0
  • djnet Новенький
  • Страх, гнев, жадность,на темную сторону путь.
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: 1-3 года
  • Рейтинг: 26
Обучение языку MQL4 под MetaTrader 4
« Ответ #5094 : Май 18, 2018, 09:22:18 pm »
  • 0
 - будет быстрее работать.Вот кстати интересная тема - время, особенно при тестировании. Есть много дублирующих функций в языке, какие лучше использовать для ускорения работы советника?
Может создать табличку?

Оффлайн 0ll

  • Модератор
  • Финансовый махинатор
  • *****
  • Сообщений: 2465
  • Вес голоса: 14553581
  • 0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума
    • Share Post
  • Награды Слежу за порядком на форуме овер 1к сообщений на форуме Программист MQL Торговля советниками
    • Просмотр профиля
    • Награды
  • Опыт торговли: Нет
  • Рейтинг: 3663
Обучение языку MQL4 под MetaTrader 4
« Ответ #5095 : Май 18, 2018, 10:49:58 pm »
  • 0
Нужно просто объявить переменные на глобальном уровне (вне функции ОнТик)0ll, а если рабочий ТФ >H1, то наверно надо озаботиться о восстановлении переменной после reboot?[/quote]Ну это следующий этап, сначала делаем тестерный вариант, а потом, если будет результат, будем заморачиваться ребутами  :d

Там, где круглые скобки, работать будет медленне в сравнении с квадратными  ;)
Круглые скобки - это вызов функции, создание стеков, выделение памяти - куча тактов процессора, а квадратные скобки это просто чтение ячейки массива из памяти. Кстати _Symbol будет быстрее, чем Symbol(). Всё имхо, я внутрь МТ не заглядывал...

Оффлайн Sacred70

  • Новичок
  • *
  • Сообщений: 19
  • Вес голоса: 0
  • Sacred70 Новенький
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: < 1 года
  • Рейтинг: 0
Обучение языку MQL4 под MetaTrader 4
« Ответ #5096 : Май 19, 2018, 06:43:09 am »
  • 0
Добрый день. Пожалуйста, подскажите по такому моменту: нужно привязать к советнику индикатор зигзаг, он вроде стандартный, но в документации его нет. Получается его цеплять через iCustom? И еще подскажите как в условии прописать направление движения зигзага(например: пересечение МА сверху вниз)?
« Последнее редактирование: Май 19, 2018, 07:47:04 am от Sacred70 »

Оффлайн 0ll

  • Модератор
  • Финансовый махинатор
  • *****
  • Сообщений: 2465
  • Вес голоса: 14553581
  • 0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума0ll Ключевая фигура форума
    • Share Post
  • Награды Слежу за порядком на форуме овер 1к сообщений на форуме Программист MQL Торговля советниками
    • Просмотр профиля
    • Награды
  • Опыт торговли: Нет
  • Рейтинг: 3663
Обучение языку MQL4 под MetaTrader 4
« Ответ #5097 : Май 19, 2018, 09:08:42 am »
  • 0
Sacred70 в зигзагах может быть 1 или 2 буфера. В буфер записываются цена вершины или 0 для каждого бара.
Нужно искать ближайшие вершины и вычислять пересечения, или ждать появления новой вершины, но она появляется не на 0 баре! а на каком не известно - придётся на каждом баре смотреть вглубь циклом...

Оффлайн Sam123456789

  • Новичок
  • *
  • Сообщений: 5
  • Вес голоса: 0
  • Sam123456789 Новенький
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: < 1 года
  • Рейтинг: 1
Обучение языку MQL4 под MetaTrader 4
« Ответ #5098 : Май 21, 2018, 10:48:38 am »
  • 0
Добрый день.
Перечитал ветку на предмет обсуждения урока 9 по теме"Введение в объекто ориентированное програмирование" (массивы начало можн осказать)
Домашние задание выполнил кроме п.п.3 в котором надо: Создайте отдельно структуру и массив, в котором будет содержаться информация об отложенных ордерах. Выведите информацию(номер тикета,тип ордера, цена) в виде комментария на экран, однако это нужно через функцию, с передачей адреса массива в функцию(аналог ShowInfo).
- итого при выполнении это пункта сделал. Но криво=) почему то при переборе ордеров не выбираться ТОЛЬКО отложные, а фигачит все что есть и те что в рынке. понять не могу в чем проблема. Знаний не хватает.
Если кто от делал этот урок, либо есть готовый пример функции по выбору ОТЛОЖНЫХ ордеров, выведение их в comment и все это в массивах (массив конечно задан в глобальном) поделитесь для изучения самостоятельного.
Свой вариант не выкладываю, потому что не хочу сторонних исправлений, хочу начать доходить своей головой, изучая учебник и примеры..
Спасибо вам за материал=) интересно! и полезно-)

Оффлайн usver73

  • Финансовый махинатор
  • *****
  • Сообщений: 527
  • Вес голоса: 2931930
  • usver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форумаusver73 Ключевая фигура форума
    • Share Post
    • Просмотр профиля
    • Награды
  • Опыт торговли: Нет
  • Рейтинг: 779
Обучение языку MQL4 под MetaTrader 4
« Ответ #5099 : Май 21, 2018, 11:43:16 am »
  • 1
Когда Вы в цикле перебираете ордера, то нужно делать проверку OrderType() >1.т.е. если тип ордера от 2 до 5, значит он отложенный.
 
Сообщение понравилось: 0ll


Share via twitter

xx
Обучение языку MQL5 под MetaTrader 5

Автор pavlus777 Уголок Программиста

114 Ответов
18358 Просмотров
Последний ответ Январь 21, 2018, 01:58:26 pm
от ZelTrad
xx
MetaTrader 4 и JForex

Автор Madjesty Уголок Программиста

15 Ответов
7719 Просмотров
Последний ответ Февраль 22, 2017, 07:52:45 pm
от milyavochka
 

Форекс блог

Стратегии Индикаторы Советники Аналитика

Мы в соцсетях

Группа Вконтакте Facebook Twitter Instagram Телеграмм

Ссылки

Рекомендуемый брокер Инвестиции Форекс Вики Бинарные Опционы

InstaForex
forex4you-C exness D ????_????? Tickmill_small AMarkets FortFS200 forex4you-C