Ответить
18.04.2014, 12:00
Аватар для ansol
ansol ansol вне форума Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,059
Поблагодарили 891 раз(а) / Репутация: 877
Когда выставляешь - запоминай время. Потом сравнивай со временем текущей свечи.
Это очень печально, потому что ордеров может быть не один, тогда придется объявить массив и в нем хранить время ордеров, причем, удаленные ордера придется "выкуривать" из массива. Т.е. все как-то сложно получается.
18.04.2014, 12:03
Аватар для matro3
matro3 matro3 вне форума Почётный гражданин
Регистрация: 18.07.2013 / Сообщений: 349
Поблагодарили 340 раз(а) / Репутация: 344
Наверняка можно по тикету все это сделать
18.04.2014, 12:09
Аватар для ansol
ansol ansol вне форума Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,059
Поблагодарили 891 раз(а) / Репутация: 877
Наверняка можно по тикету все это сделать
По тикету - это как? Он же OrderOpenTime() не показывает, а номера тикетов произвольно назначаются. Я, конечно, вижу, что номера растут по времени выставления, но... В тестере оно сработает, а в реале?
18.04.2014, 12:30
Аватар для AlexeyVik
AlexeyVik AlexeyVik на форуме Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,624
Поблагодарили 3,758 раз(а) / Репутация: 3750
Как узнать время выставления отложенного ордера?
OrderOpenTime() для отложенника не работает. Или я что-то не понял?
Задача - удалять ордер по открытию новой свечи, а у всех ДЦ, с которыми я имел дело, меньше 10 минут отложенники не дает ставить.
Как это не работает??? Такого быть не может...
А время экспирации 10 минут это примочки МТ, а не ДЦ. Или совместно принятое решение.
18.04.2014, 12:50
Аватар для matro3
matro3 matro3 вне форума Почётный гражданин
Регистрация: 18.07.2013 / Сообщений: 349
Поблагодарили 340 раз(а) / Репутация: 344
OrderSend
Цитата:
Возвращаемое значение
Возвращает номер тикета, который назначен ордеру торговым сервером или -1 в случае неудачи. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().
18.04.2014, 12:53
Аватар для AlexeyVik
AlexeyVik AlexeyVik на форуме Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,624
Поблагодарили 3,758 раз(а) / Репутация: 3750
OrderSend
Ну зачем ты сбиваешь человека с пути истинного? Если не определяется время открытия ордера, значит в коде где-то ошибка... функция работает.
18.04.2014, 12:54
Регистрация: 13.03.2009 / Сообщений: 2,394
Поблагодарили 1,974 раз(а) / Репутация: 2051
Как узнать время выставления отложенного ордера?
OrderOpenTime() для отложенника не работает. Или я что-то не понял?
Что то не понял!
Решил проверить, мало ли вдуг косяк в новом языке. Проверил, работает.
Точно как в старых билдах.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
22.04.2014, 08:51
Аватар для ctmcn
ctmcn ctmcn вне форума Новичок форума
Регистрация: 02.04.2011 / Сообщений: 35
Поблагодарили 6 раз(а) / Репутация: 7
Здравствуйте !
Подскажите пожалуйста, есть ли возможность добавить блок построений для минутных таймфреймов, что бы было так:

if(Period()<=PERIOD_M30){WriteGM();} (добавить)
if(Period()==PERIOD_H1){WriteGH1();}
if(Period()==PERIOD_H4){WriteGH4();}
if(Period()==PERIOD_D1){WriteGD1();}
if(Period()>=PERIOD_W1){WriteGW1();}

надо, чтобы на минутных таймфреймах расчет выполнялся для 4-х часовых свечей по аналогии с расчетом для таймфрейма Н1 (где расчет выполняется для дней).
И как это сделать (прописать 4-х часовые свечи) ?
С уважением.
22.04.2014, 09:19
Аватар для ansol
ansol ansol вне форума Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,059
Поблагодарили 891 раз(а) / Репутация: 877
Что то не понял!
Решил проверить, мало ли вдуг косяк в новом языке. Проверил, работает.
Точно как в старых билдах.
Вот так заработало:
PHP код:
if(OrderType() == OP_BUYLIMIT && fOpenBuy && iTime(sSymboliTF0) < OrderOpenTime()) return(false); 
А до этого было всегда "true" и ордера шпарили в тестере каждым тиком.
Ну, бывает, что-то не так написал наверное.
Ну, т.е. время открытия ордера больше времени открытия текущей свечи может быть только до ее окончания, а на новой свече уже можно новый ордер ставить с удалением старого(или без оного)
23.04.2014, 22:09
Аватар для hoz
hoz hoz вне форума Активный участник
Регистрация: 01.04.2011 / Сообщений: 532
Поблагодарили 112 раз(а) / Репутация: 111
  • Отправить сообщение для hoz с помощью ICQ
Вот так заработало:
PHP код:
if(OrderType() == OP_BUYLIMIT && fOpenBuy && iTime(sSymboliTF0) < OrderOpenTime()) return(false); 
А до этого было всегда "true" и ордера шпарили в тестере каждым тиком.
Ну, бывает, что-то не так написал наверное.
Ну, т.е. время открытия ордера больше времени открытия текущей свечи может быть только до ее окончания, а на новой свече уже можно новый ордер ставить с удалением старого(или без оного)
Чё та слишком замудрено. Думайте проще
23.04.2014, 22:17
Аватар для hoz
hoz hoz вне форума Активный участник
Регистрация: 01.04.2011 / Сообщений: 532
Поблагодарили 112 раз(а) / Репутация: 111
  • Отправить сообщение для hoz с помощью ICQ
Читаю тут _http://docs.mql4.com/ru/basis/oop/staticmembers
"Метод с модификатором const называется постоянным и не может модифицировать неявные члены своего класса."
Как понять не может модифицировать неявные члены ? Чё та у меня мозг не сразу воспринимает в последнее время теорию.
И вообще, если переменная с модификатором const тут всё понятно. Переменной получено значение один раз, и больше значение данной переменной не изменится в будущем. Но хотя б один раз переменная получит значение. Тут всё понятно.
А как понять метод с модификтором const ?
Ведь в методе то может быть несколько функций. Есть у кого-нить примеры из практики употребления?

Последний раз редактировалось NSerega; 23.04.2014 в 23:06.
24.04.2014, 18:54
Аватар для sergey1989
sergey1989 sergey1989 вне форума Интересующийся
Регистрация: 16.02.2014 / Сообщений: 31
Поблагодарили 2 раз(а) / Репутация: 3
Добрый вечер, подскажите пожалуйста, как прописать функцию по очистке истории от ордеров, допустим у меня закрылась сетка по профиту и вся история стерлась, а то моя функция открывает последний ордер с предыдущей сетки) и еще добавить паузу, чтобы успел очистить, заранее спасибо
24.04.2014, 19:00
Аватар для sergey1989
sergey1989 sergey1989 вне форума Интересующийся
Регистрация: 16.02.2014 / Сообщений: 31
Поблагодарили 2 раз(а) / Репутация: 3
парни, или может можно прописать в советнике, чтобы он записывал историю своих закрытых и открытых ордеров в каком нибудь фаиле, например ТХТ, и пользовался только этим фаилом для поиска ордеров в истории, а при определенных условиях очищал его, такое возможно?
24.04.2014, 19:08
Аватар для ansol
ansol ansol вне форума Местный знаток
За призовое место в конкурсе 

Регистрация: 22.04.2010 / Сообщений: 2,059
Поблагодарили 891 раз(а) / Репутация: 877
Что то не понял!
Решил проверить, мало ли вдуг косяк в новом языке. Проверил, работает.
Точно как в старых билдах.
Теперь у меня ерунда с OrderOpenPrice() для отложенников.
Пытаюсь его сравнить с Bid на предмет, если ушел далеко, то открыть новый.
P.S. А я ХЗ, чё там в старых билдах, я только счас маркеты на лимитники стал менять с целью заюзать полезности ECN.
25.04.2014, 08:35
Аватар для AlexeyVik
AlexeyVik AlexeyVik на форуме Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,624
Поблагодарили 3,758 раз(а) / Репутация: 3750
Теперь у меня ерунда с OrderOpenPrice() для отложенников.
Пытаюсь его сравнить с Bid на предмет, если ушел далеко, то открыть новый.
P.S. А я ХЗ, чё там в старых билдах, я только счас маркеты на лимитники стал менять с целью заюзать полезности ECN.
Может ты забываешь выбрать ордер перед определением цены открытия ордера?
25.04.2014, 10:45
Аватар для hoz
hoz hoz вне форума Активный участник
Регистрация: 01.04.2011 / Сообщений: 532
Поблагодарили 112 раз(а) / Репутация: 111
  • Отправить сообщение для hoz с помощью ICQ
Добрый вечер, подскажите пожалуйста, как прописать функцию по очистке истории от ордеров, допустим у меня закрылась сетка по профиту и вся история стерлась, а то моя функция открывает последний ордер с предыдущей сетки) и еще добавить паузу, чтобы успел очистить, заранее спасибо
Моя твоя не понимать.
25.04.2014, 11:13
Аватар для hoz
hoz hoz вне форума Активный участник
Регистрация: 01.04.2011 / Сообщений: 532
Поблагодарили 112 раз(а) / Репутация: 111
  • Отправить сообщение для hoz с помощью ICQ
Теперь у меня ерунда с OrderOpenPrice() для отложенников.
Пытаюсь его сравнить с Bid на предмет, если ушел далеко, то открыть новый.
P.S. А я ХЗ, чё там в старых билдах, я только счас маркеты на лимитники стал менять с целью заюзать полезности ECN.
А чё там может не получаться? Пробегаете в цикле по всем ордерам рыночным, в нём же при определённых условиях сравниваете OrderOpenPrice() каждого выбранного ордера в БИДОМ и если разница между ними больше некоторого значения.. посылаете новый..
25.04.2014, 11:14
Аватар для hoz
hoz hoz вне форума Активный участник
Регистрация: 01.04.2011 / Сообщений: 532
Поблагодарили 112 раз(а) / Репутация: 111
  • Отправить сообщение для hoz с помощью ICQ
Неужели этот вопрос неподъёмный такой и никто не сталкивался с подобными модификаторами?
25.04.2014, 16:37
Аватар для sergey1989
sergey1989 sergey1989 вне форума Интересующийся
Регистрация: 16.02.2014 / Сообщений: 31
Поблагодарили 2 раз(а) / Репутация: 3
Добрый вечер, я наверное не правильно выразился, возможно ли удалять из истории закрытые ордера, допустим при каких-то условиях история по данному символу стирается, если да, то как это прописать?
25.04.2014, 17:07
Аватар для Олег75
Олег75 Олег75 на форуме Активный участник
Регистрация: 15.06.2013 / Сообщений: 56
Поблагодарили 36 раз(а) / Репутация: 37
Всем доброго дня ,подскажите как вернуть время открытия открытого ордера и время закрытия предыдущего ордера, а затем сравнить это время между собой?
Ответить

Метки
mql4, mql4 помощь, вопросы mql4


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.



Текущее время: 23:54. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO