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

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

#1801

Хорошо...раз уж Вы сказали что можно спрашивать...я никогда не делал "только определение мин/мах нужно делать однократно - подумайте, может флаг или по времени..." вот эту вещь...не понимаю что это значит...
Насчет флага я так понял нужно ввести какую-то переменную, которая будет ограничивать определение мах/мин(так, как Вы мне показывали в примере с переменной new_Day). А насчет сдаваться и не думайте, я не из таких :d рано или поздно, все равно докопаюсь до истины)))

#1802

Решение с помощью флага:
(глобальный или статик)bool flsingle = false;
в блоке "начало дня" flsingle = true;
в блоке "рабочее время" if (flsingle) { определяем_экстремумы; flsingle = false; }

#1803

Написал советник по тикам без индикаторов. В тестере на любом инструменте и за любой период показывает отличные результаты. Работает со 100 долларов и делает миллионы. На реале практически не открывает ордера. Может кто подскажет возможные дальнейшие пути. Закачал на яндекс диск но ссылку внешнюю не разрешают размещать. Подскажите как скинуть файл советника для общего доступа.

#1804

Если пока не можете к посту приаттачить, то ссылку можно выложить через _
т.е. так: _/ugolok-programmista/13

#1805

Oll Вы волшебник!!! =d> =d> =d> сделал все как Вы сказали, из условий оставил только покупка выше хая , продажа ниже лоу...все работает как часы))))Спасибо Вам большое <:-p>

#1806



и тишина в ветке...
либо всё понятно и погнали дальше, либо тема нафиг не нужна и желание научиться чему-то было сиюминутным?


Погнали дальше, конечно.


Очень нужна. только так теоретически мне трудно это доходит. а если разобрать на примере советника? мне лично так будет хоть немного доступнее. на пример скальп инвестор. много там ошибок и можно ли из этого дерьма сделать конфетку?
#1807
Tatisha, создатель довольно давно не посещает ветку, так что цитировать его высказывания и обращаться к нему не имеет смысла.

Для меня программирование ассоциируется с шахматами, точно так же необходимо знать какая часть кода что делает и где они находятся, чтобы сыграть из них хорошую партию. Вы же хотите сразу сыграть с гроссмейстером, не разобравшись еще в том, как вообще фигуры ходят. Смотрите уроки (http://tradelikeapro.ru/category/uroki-po-mql/), там всё хорошо по кусочкам разбирается, на примере небольших кодов, а уж потом сможете самостоятельно просматривать чужие коды выложенные в открытом доступе и возможно перенимать оттуда что-то полезное для себя.
#1808

Доброго времени суток Сергей. Я новичок в программировании, но у меня огромное желание имеется. Конечно же спасибо за ваши курсы. Но у меня есть к вам огромная просьба, я столкнулся с трудностями, (какими) дело в том что в первых уроках мы изучаем язык на старых билдах а в последних уроках на обновленных билдах, к вам конечно претензий нет, вы же не институт что бы все подробно рассказывать и показывать. А просьба такая, не могли бы вы перезаписать урок №5 Трелинг стоп на обновленных билдах , в любом формате главное что бы код советника был из пятого урока конечно же кроме изменений, теперь поясню для чего у меня такая просьба. Когда я смотрел курсы я переписывал то что вы писали шаг за шагом но столкнулся с огромным количеством ошибок, то что я переписал 5 урок эта копия осталась код написан верно но на обновленных билдах и там ошибки, вот я вас и решил попросить переписать код пятого урока, если вы перепишете то я сопоставлю что я переписал и сравню. таким образом я узнаю какие изменения что здесь написано и что здесь написано таким образом мне будет понятней изменения. За ранние благодарю жду от вас любого ответа. Спасибо.

#1809

Доброго времени,подскажите пожалуйта как посчитать количество пунктов от цены открытия до стоп лосса. Я хочу сделать так, стоп лосс устанавливается по индикатору Фрактал,посчитать количество пунктов и умножить на Х число для профита. Не как , не сооброжу как это сделать.Заранее спасибо !

#1810
denis77515, а стоп ставится сразу при открытии ордера и не меняется?
#1811


denis77515, а стоп ставится сразу при открытии ордера и не меняется?


Ставится отложка, модифицируется, я так понимаю ставится сначала лось,потом тейк. да не меняется.если только потом тралить по фракталам.
#1812
denis77515, ну я думаю, делаем перебор через for, при этом если у ордера нет профита, используем две переменных. В одну сохраняем цену открытия, в другую уровень стопа и делаем вычисление между ними в зависимости от направления ордера. Функцию делаем возвращающую значение и получаем из неё результат вычисления, а затем это значение умножаем и прибавляем к цене открытия при установке профита. Надеюсь понятно.
#1813


denis77515, ну я думаю, делаем перебор через for, при этом если у ордера нет профита, используем две переменных. В одну сохраняем цену открытия, в другую уровень стопа и делаем вычисление между ними в зависимости от направления ордера. Функцию делаем возвращающую значение и получаем из неё результат вычисления, а затем это значение умножаем и прибавляем к цене открытия при установке профита. Надеюсь понятно.


я пробовал,нечто такое, у меня не получилось.но правда через встроенные функции ордер профит и ордер стоп лосс.
попробовал вот так.
Спойлер

double Punkt(int otype)
{
double punkt = 0;
datetime time = 0;
for(int i=OrdersTotal()-1; i>=0; i--)
{
if (OrderSelect (i, SELECT_BY_POS, MODE_TRADES))
{
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderType() == otype)
{
if ((otype == OP_BUYSTOP || otype == OP_SELLSTOP) || (otype == OP_BUY || otype == OP_SELL))
{
if(time {
time = OrderOpenTime();
punkt = NormalizeDouble((OrderOpenPrice() - OrderStopLoss()) / _Point,_Digits);
}
}

}
}
}
return(punkt);
}]
Но явно сдесь ошибка,как посчитать я не знаю.

#1814

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

#1815


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


Пробовал уже вот эту строчку
punkt = NormalizeDouble((OrderOpenPrice() - OrderStopLoss()) / _Point,_Digits);
делил,умножал,вычитал и складывал. Не получается ! Я почему спрашиваю у людей,потому как сам не знаю.Чего делать. А задуманно от цены открытия узнаем расстояние до стоп лосса, и это растояние умнажаем допустим на 2 для тейк профита.вот и все.
#1816

Что-то не пойму ещё, в вычислении получаешь целое число, а сама функция и переменная объявлены как double.

#1817


Что-то не пойму ещё, в вычислении получаешь целое число, а сама функция и переменная объявлены как double.


Сам запутался уже, с экперементами. функция изначально int стояла. я поменял на double потому как подумал что, может получить цену лося, и цену открытия. получили,а вот как посчитать растояние между ними я всал в ступор.
#1818

Что если такой вариант:

double PipsToStop() // количество пунктов до стопа
{
double pips,
stop,
open;

for(int i=OrdersTotal()-1; i>=0; i--)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
{
if (OrderType() == OP_SELLLIMIT || OrderType() == OP_SELLSTOP)
{
open = OrderOpenPrice();
stop = OrderStopLoss();
pips = NormalizeDouble(stop - open, Digits);
}
if (OrderType() == OP_BUYLIMIT || OrderType() == OP_BUYSTOP)
{
open = OrderOpenPrice();
stop = OrderStopLoss();
pips = NormalizeDouble(open - stop, Digits);
}
}
}
}
return(pips);
}

#1819

Спасибо сейчас попробую !

#1820

Привет всем, кто подскажет сова есть в терминале, а в идиторе не видно как увидеть код. подскажите.

#1821
роман7777, не во всех чужих совах можно порыться, если файл имеет формат mq4, то он будет доступен для просмотра и изменения, а если ex4, то не получится.
#1822

все пытаюсь найти хороший трендовый советник , все чушь какая то попадается.

#1823

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

#1824
Tatisha, ну Вы тогда хотя бы ссылку дали, а то не понятно про что говорите.
#1825

Уважаемые программисты!
Помогите, пожалуйста, доработать данный индикатор. Какие изменения требуются:
1. Что бы считался полностью размер свечи с хвостами, а не только само тело.
2. Можно ли вставить фильтр на выбор размера свечей.(показывать размер только тех свечек,
которые соответствуют выбранному параметру. например от 6 пунктов и выше).
3. Alert при появлении такой свечи.

candleBodySize.mq47 скач.

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

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