Обучение языку MQL4 под MetaTrader 4📌

От xbms, 13 апреля, 2013 в Уголок Программиста

#2576


Sany2912, смотря как вы устанавливаете отложки. Если это сетка, то можно искать с наименьшей (наибольшей) ценой и удалять. Т.е. если, ордеров больше чем макс_ордер, то ищем среди наших отложек самый первый по низшей-высшей цене и удаляем. Ну это как один из вариантов, можно комментировать и по комменту искать, можно и по другому, смотря какая у вас задача.



Вот вопрос, как раз и состоит в том, как искать среди наших отложек самый первый, например по тикету????? Если ордеров больше трех...
#2577

Добрый день :)
О гуру этого форума, явите чудо смертному :) подскажите, как извлечь инфу из базы данных MySQL в советника.
Библиотека есть, всё есть, но оно не работает. Кто может поделиться рабочим примером? Уже месяц копаемся, ищем способ, но бесполезно.
Буду весьма признателен.


Добавлено: 01-10-2015 06:54:49

что, гуру нет? или никто никогда этим не занимался?

Изменено 1 октября, 2015 пользователем chadaevr

#2578
Sany2912 можно и по минимальному тикету. Делаете цикл перебора ордеров, фильтруете отложки по типу ордера, сравниваете тикет с переменной минТикет (которая изначально = 9999999999999) если текущий тикет меньше присваиваете минТикету. После цикла, если ордеров 4 - удаляете ордер по минТикету.
#2579

Ребята, а как можно с нуля изучить HTML верстку сайта? Дайте, пожалуйста, какие-нибудь действенные советы по этому поводу! С чего начать? Как развиваться в этом направлении? Книги, курсы, онлайн...? 8->

#2580


Ребята, а как можно с нуля изучить HTML верстку сайта? Дайте, пожалуйста, какие-нибудь действенные советы по этому поводу! С чего начать? Как развиваться в этом направлении? Книги, курсы, онлайн...? 8->


Оффтоп конечно дикий, но вроде гугл еще не запретили. Миллионы сайтов про основы HTML. А если нужно быстро свой сайт поднять - одним HTML не обойдетесь, хотя основы нужно знать. Смотрите в сторону бесплатных CMS - движков для сайта, разбирайтесь с HTML, немного PHP, немного как работать c БД - понадобится для установки движка на хостинг. Не так сложно как кажется, было бы желание.
#2581


Sany2912 можно и по минимальному тикету. Делаете цикл перебора ордеров, фильтруете отложки по типу ордера, сравниваете тикет с переменной минТикет (которая изначально = 9999999999999) если текущий тикет меньше присваиваете минТикету. После цикла, если ордеров 4 - удаляете ордер по минТикету.



Нет же, это не правильное решение, я уже так делал. Потому что одер удалится только один раз, программа регулярно удалять нужные ордера не будет! Вот самое лучшее решение, но оно работает только по отдельности (я имею ввиду если мы работаем только с ордерами байстоп или только с ордерами селстоп, а вместе покупка и продажа, как единый алгоритм, работать не будет). Сможете подсказать, почему код работает только с одним видом ордера???

int mas_tic_b[4];
int mas_tic_s[4];

if(BayStop() > 3) Delete();

void Delete()
{
for(int i = OrdersTotal()-1; i >= 0; i --)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if(OrderSymbol() == Symbol() && OrderMagicNumber() == mag)
{
if(OrderType() == OP_BUYSTOP)
{
mas_tic_b = OrderTicket(); //заполняю массив тикетами
int index_min_ticeta_bay = ArrayMinimum(mas_tic_b, WHOLE_ARRAY, 0);//сортирую по минимальным значениям, получая индекс
int min_tic_bay = mas_tic_b[index_min_ticeta_bay];//подставляем индекс мин.значен. в массив, чтоб получить мин.тикет
bool del_bay = OrderDelete(min_tic_bay, clrNONE);//удал.нужный ордер.
}
if(OrderType() == OP_SELLSTOP)
{
mas_tic_s = OrderTicket();
int index_min_ticeta_sell = ArrayMinimum(mas_tic_s, WHOLE_ARRAY, 0);
int min_tic_sell = mas_tic_s[index_min_ticeta_sell];
bool del_sell = OrderDelete(min_tic_sell, clrNONE);
}
}
}
}
}

Изменено 1 октября, 2015 пользователем Sany2912

#2582

Всем привет.
Решил освоить MQl по видео курсу.
Вопрос по уроку 3. При тестировании советника, сделки не открываются. Не могу понять в чем причина?

LES_3.mq49 скач.

#2583


Нет же, это не правильное решение, я уже так делал...

Вы уверены, что так делали?
В Вашем коде заполнение массива данными, сортировка и удаление отложки производится в одном цикле! Вы-бы сортировку и удаление из цикла выненесли.
Вам виднее как делать, но мои рекомендации остаются.
#2584

Вы-бы сортировку и удаление из цикла выненесли.



не помогает...
#2585

Разобрался в чем была причина.
#:-s


if (Bid >=PriceHigh && CountBuy() ==0) // >0
{
for(i=OrdersTotal()-1; i >=0; i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)
{
if (OrderMagicNumber() == Magic && OrderType() == OP_BUY)
OrderClose(OrderTicket(),OrderLots(), Bid, Slippage, clrBlack);
#2586


Добрый день :)
О гуру этого форума, явите чудо смертному :) подскажите, как извлечь инфу из базы данных MySQL в советника.
Библиотека есть, всё есть, но оно не работает. Кто может поделиться рабочим примером? Уже месяц копаемся, ищем способ, но бесполезно.
Буду весьма признателен.



Добавлено: 01-10-2015 06:54:49


что, гуру нет? или никто никогда этим не занимался?


  • Какую библиотеку используете?

  • Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?

  • Вы пример своего года предоставить можете?

#2587

всё что я использую не работает, смысл скидывать? неужели ни у кого нет работающей системы?




Добрый день :)
О гуру этого форума, явите чудо смертному :) подскажите, как извлечь инфу из базы данных MySQL в советника.
Библиотека есть, всё есть, но оно не работает. Кто может поделиться рабочим примером? Уже месяц копаемся, ищем способ, но бесполезно.
Буду весьма признателен.



Добавлено: 01-10-2015 06:54:49


что, гуру нет? или никто никогда этим не занимался?


  • Какую библиотеку используете?

  • Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?

  • Вы пример своего года предоставить можете?


#2588


всё что я использую не работает, смысл скидывать? неужели ни у кого нет работающей системы?




Добрый день :)
О гуру этого форума, явите чудо смертному :) подскажите, как извлечь инфу из базы данных MySQL в советника.
Библиотека есть, всё есть, но оно не работает. Кто может поделиться рабочим примером? Уже месяц копаемся, ищем способ, но бесполезно.
Буду весьма признателен.



Добавлено: 01-10-2015 06:54:49


что, гуру нет? или никто никогда этим не занимался?


  • Какую библиотеку используете?

  • Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?

  • Вы пример своего года предоставить можете?



Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?
#2589

второй вариант. база MySQL localhost на денвере.




всё что я использую не работает, смысл скидывать? неужели ни у кого нет работающей системы?




Добрый день :)
О гуру этого форума, явите чудо смертному :) подскажите, как извлечь инфу из базы данных MySQL в советника.
Библиотека есть, всё есть, но оно не работает. Кто может поделиться рабочим примером? Уже месяц копаемся, ищем способ, но бесполезно.
Буду весьма признателен.



Добавлено: 01-10-2015 06:54:49


что, гуру нет? или никто никогда этим не занимался?


  • Какую библиотеку используете?

  • Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?

  • Вы пример своего года предоставить можете?



Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?
#2590
Спойлер


второй вариант. база MySQL localhost на денвере.




всё что я использую не работает, смысл скидывать? неужели ни у кого нет работающей системы?




Добрый день :)
О гуру этого форума, явите чудо смертному :) подскажите, как извлечь инфу из базы данных MySQL в советника.
Библиотека есть, всё есть, но оно не работает. Кто может поделиться рабочим примером? Уже месяц копаемся, ищем способ, но бесполезно.
Буду весьма признателен.



Добавлено: 01-10-2015 06:54:49


что, гуру нет? или никто никогда этим не занимался?


  • Какую библиотеку используете?

  • Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?

  • Вы пример своего года предоставить можете?



Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?


Вы к ней нормально подключаетесь и извлекаете информацию?
Вообще самый простой вариант - берете Microsoft Visual Studio пишите либу на С, которая будет делать все операции с БД, а затем подключаете к MQL.

Изменено 2 октября, 2015 пользователем Qj

#2591

подключение нормальное. извлечение - вопросительные знаки.
рекомендаций в интернете валом, включая и это. ничего не помогает в решении проблемы. можно увидеть работающий вариант?



Спойлер


второй вариант. база MySQL localhost на денвере.




всё что я использую не работает, смысл скидывать? неужели ни у кого нет работающей системы?




Добрый день :)
О гуру этого форума, явите чудо смертному :) подскажите, как извлечь инфу из базы данных MySQL в советника.
Библиотека есть, всё есть, но оно не работает. Кто может поделиться рабочим примером? Уже месяц копаемся, ищем способ, но бесполезно.
Буду весьма признателен.



Добавлено: 01-10-2015 06:54:49


что, гуру нет? или никто никогда этим не занимался?


  • Какую библиотеку используете?

  • Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?

  • Вы пример своего года предоставить можете?



Есть ли связь с базой данных из какой-нибудь IDE с того же компьютера на котором вы пробуете писать на mql?


Вы к ней нормально подключаетесь и извлекаете информацию?
Вообще самый простой вариант - берете Microsoft Visual Studio пишите либу на С, которая будет делать все операции с БД, а затем подключаете к MQL.
#2592

Вопросительные знаки это 99 из 100 что у вас кривизна в выбранной кодовой странице. Скорее всего выгружается нормально а вот отображение делаете как попало в уникоде и т.д.
p.s. описание проблемы как "не работает" ничего не говорит, вспомните такой постулат как в правильно заданном вопросе содержится половина ответа

Изменено 3 октября, 2015 пользователем nixxer

#2593

правильно заданный вопрос: хоть у кого нибудь есть работающий вариант?
до сих пор тишина :) неужели совсем никто не использует MySQL в настоящее время.



Вопросительные знаки это 99 из 100 что у вас кривизна в выбранной кодовой странице. Скорее всего выгружается нормально а вот отображение делаете как попало в уникоде и т.д.
p.s. описание проблемы как "не работает" ничего не говорит, вспомните такой постулат как в правильно заданном вопросе содержится половина ответа

#2594

Плохо искали
https://github.com/sergeylukin/mql4-mysql

#2595

Настройки индикаторов стандартные.CCI период 14.MACD 12,26,9.Таймфрейм от H1 и выше.Валютные пары любые.Условия входа в позицию.Если у индикатора CCI Красная линия ниже уровня -100 а у индикатора MACD столбики ниже нуля,ждем появления бычьей свечи и открываем позицию BUY.Если у индикатора CCI Красная линия выше уровня 100 а у индикатора MACD столбики выше нуля,ждем появления медвежьей свечи и открываем позицию SELL.Желательно добавить трейлинг стоп.Заранее благодарен.

Пример_покупки.jpg

Изменено 3 октября, 2015 пользователем kashmarik

#2596

Привет. Идея забавная. Ее бы только немного подкорректировать, что бы ловить не откаты, а основное движение, но это уже другая история...

Nightmare.mq418 скач.

#2597

Спасибо огромное!Идея не моя!Сов не много ни так открывает позиции

12.jpg

Изменено 3 октября, 2015 пользователем kashmarik

#2598

Да нет, именно так как показано у тебя на картинке.
CCI ниже -100
MACD ниже 0
Выжидается закрытие бычьей свечи и на открытие следующей выставляется ордер.

Какая здесь ошибка?


Добавлено: 03-10-2015 15:54:21

Никакой ошибки нет, прочитал твои условия еще раз все правильно.
#2599


Да нет, именно так как показано у тебя на картинке.
CCI ниже -100
MACD ниже 0
Выжидается закрытие бычьей свечи и на открытие следующей выставляется ордер.

Какая здесь ошибка?


Добавлено: 03-10-2015 15:54:21

Никакой ошибки нет, прочитал твои условия еще раз все правильно.

Ну незнаю,например тут открытие происходит на второй бычьей свече,может попробовать убрать выжидание закрытия свечи?

2.jpg

#2600

Ну так все по правилам. Мы ждем закрытия первой бычьей и на ОТКРЫТИИ следующей после бычьей входим.

П.С. если не ждать закрытия бычьей свечи, то ты еще не знаешь, что она бычья =)))


Добавлено: 03-10-2015 20:25:49

kashmarik, покажи на скрине место открытия позиции по твоим правилам, которое ты считаешь вовремя.

Изменено 3 октября, 2015 пользователем ASugler

Для публикации сообщений создайте учётную запись или авторизуйтесь

Перейти к списку тем
Форум · 2.0.20260627.0025