Ваши вопросы по языку MQL4

strannik-ps

VIP-участник
Находишь временные границы. Можно с помощью iTime на W1.
Дальше с помощью iBarShift найди номера баров на нужном тайм фрейме.
Дальше находишь бар с минимумом с помошью iLowest
Разница между этим баром и баром временной границы начала текущей недели и есть то что хочешь.

Спасибо! как это по формуле выглядит? А если можно на примере. просто все возможные варианты перебрал значение количества баров не соответствует тому что я хочу получить именно допустим минимум (прошлой недели) и от него сколько баров до начало текущей недели. У меня выходят не реальные значения.
Заранее Спасибо!
 

alex1978

Местный знаток
Почитай регламент или позвони в тех поддержку. Отложенный ордер находится на сервере ДЦ и когда его цена цепляет он срабатывает без участия терминала клиента и советника.
То есть это 100процентное "кривое "исполнение ДЦ?
Но с другой стороны, другой эксперт(практически аналогичного алгоритма), работающий также отложками в том же ДЦ и на том же типе счета, ни разу не выдавал такую ошибку а этот уже 2-ую за 8 дней.
Вот и не знаю на что думать..:oops:
 

Ugar

Гуру форума
Спасибо! как это по формуле выглядит? А если можно на примере. просто все возможные варианты перебрал значение количества баров не соответствует тому что я хочу получить именно допустим минимум (прошлой недели) и от него сколько баров до начало текущей недели. У меня выходят не реальные значения.
Заранее Спасибо!
Разбери код
datetime TimeW0, TimeW1;
int BarW0, BarW1, BarLow, Bar;
TimeW0=iTime(NULL,PERIOD_W1,0);
TimeW1=iTime(NULL,PERIOD_W1,1);
BarW0=iBarShift(NULL,0,TimeW0,false);
BarW1=iBarShift(NULL,0,TimeW1,false);
BarLow=iLowest(NULL,0,MODE_LOW,BarW1-BarW0,BarW0+1);
Bar=BarLow-BarW0;
 

Allis Amazing

Интересующийся
Последнее редактирование:

qqmber

Почетный гражданин
То есть это 100процентное "кривое "исполнение ДЦ?
Но с другой стороны, другой эксперт(практически аналогичного алгоритма), работающий также отложками в том же ДЦ и на том же типе счета, ни разу не выдавал такую ошибку а этот уже 2-ую за 8 дней.
Вот и не знаю на что думать..:oops:
Если это NDD счет и отложка была лимитная, то все нормально. Они имеют право исполняться частями. Это не "кривое" исполнение, это значит, что вашу позицию открыли матчингом с другим клиентом того же брокера.
Посмотрите в регламенте, эта ситуация должна быть описана. На ECN Альпари точно есть.
 

Алекc1234

Местный житель
Всем привет. Подскажите, пожалуйста, как написать "Если свеча закрылась, то..." Как ни делаю, нормально не работает. Спасибо.
 

ale002

::: __,,,^._.^,,,__ :::
Всем привет. Подскажите, пожалуйста, как написать "Если свеча закрылась, то..." Как ни делаю, нормально не работает. Спасибо.

Например

PHP:
	datetime static Время_последней_обработанной_свечи = 0;
	if(Время_последней_обработанной_свечи < Time[0]) {
		Время_последней_обработанной_свечи = Time[0];
		// предыдущая свеча потухла наконец
	}
 

Алекc1234

Местный житель
покажи как делаешь.

Делаю по разному. Вот так например
PHP:
for (int j = OrdersTotal()-1; j >= 0; j--)
  {
    if (OrderSelect(j, SELECT_BY_POS,MODE_TRADES))
  {
       if ( (OrderSymbol() == Symbol()) && (OrderMagicNumber() == Magic) )
   {
int i = iBarShift(NULL,0,OrderOpenTime());
if (Bid >= Close[i]  || Bid <= Close[i]) выполнение
  break;
   }
   }
   }
Проблема в том, что в одном случае работает, в другом нет...
 

expforex

Программиров
Делаю по разному. Вот так например
PHP:
for (int j = OrdersTotal()-1; j >= 0; j--)
  {
    if (OrderSelect(j, SELECT_BY_POS,MODE_TRADES))
  {
       if ( (OrderSymbol() == Symbol()) && (OrderMagicNumber() == Magic) )
   {
int i = iBarShift(NULL,0,OrderOpenTime());
if (Bid >= Close[i]  || Bid <= Close[i]) выполнение
  break;
   }
   }
   }
Проблема в том, что в одном случае работает, в другом нет...

если ордер открылся на текущем баре, то у тебя всегда будет происходить "Выполнение"

сделай так:
if (Bid > Close || Bid < Close) выполнение
 

Алекc1234

Местный житель
если ордер открылся на текущем баре, то у тебя всегда будет происходить "Выполнение"

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

expforex

Программиров
Ордер открывается на свече и при закрытии этой же свечи иногда условие срабатывает, а иногда "выполнения" и не происходит... Вот и ломаю голову, почему...

потому что клозе бара = Биду, т.е. Клоз строится по Биду, при закрытии свечи баор откатывается назад и становится не 0 а 1, Бид уже другой, происходит закрытие.

ну и самый главный отчет - а условие то выполнилось? Бид больше Клоза?
 
Последнее редактирование:

Алекc1234

Местный житель
потому что клозе бара = Биду, т.е. Клоз строится по Биду, при закрытии свечи баор откатывается назад и становится не 0 а 1, Бид уже другой, происходит закрытие.

ну и самый главный отчет - а условие то выполнилось? Бид больше Клоза?

Огромное спасибо. Сделал, как ты и написал, и вроде заработало как и хотел.
 

gold_traid

Новичок форума
инфо о балансе

доброго времени суток господа подскажите как в сове вывести на график инфо о заработке вчера сегодня балансе и свободных средствах
 

Алекc1234

Местный житель
Привет всем. Подскажите, как обозначить следующую свечу после той, на которой открылся ордер? Вот так обозначаю свечу, на которой ордер открылся int i = iBarShift(NULL,0,OrderOpenTime()); А как написать, чтоб действие происходило на следующей свече после открытия?
 

Ugar

Гуру форума
Привет всем. Подскажите, как обозначить следующую свечу после той, на которой открылся ордер? Вот так обозначаю свечу, на которой ордер открылся int i = iBarShift(NULL,0,OrderOpenTime()); А как написать, чтоб действие происходило на следующей свече после открытия?
Ну и в принципе, с пивом потянет. А следующая i-1
if(i==1)
{
//Действие на следующей свече.
}
 

digimatrix

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

http://forexsystemsru.com/yazyk-programmirovaniya-mql4/69143-video-uroki-po-forex-ea-generator-4-a.html
 

vetallic

Местный знаток
...вот играюсь с одним индюком "коробочником"

принцип работы:
- определяет макс. и мин. с 00:00-08:00 и рисует фибо


чет не получается прописать свои значения,
чтоб например работал с 11:00-16:00 и обновлялся не в 0:00 а в начало определения (11:00)

либо не работает, либо перекручено все выходит :facepalm: уже запарился...
хелп плз ! )
 

Вложения

  • !day breacker!.mq4
    9,1 КБ · Просмотры: 23
Верх