Ответ
 
Опции темы
Старый 09.09.2016, 16:09   #4981 (permalink)
Местный знаток
 
Аватар для st2050
 
Регистрация: 08.09.2012
Сообщений: 311
Репутация: 577
st2050 - st2050 - st2050 - st2050 - st2050 - st2050 -
Сказал(а) спасибо: 362
Поблагодарили 576 раз(а) в 141 сообщениях
Поинты: 399
Сообщение от _SERG_ Посмотреть сообщение
Я тут, часть разговора пропустил, а шо тут у Вас происходит?

В моЁм понимании, не на панель надо стремиться, а на автомат. В смысле автоматической торговле.
А Вы что подумали?

Происходит обсуждение как легко скрыть/отобразить линии цены и как получить по челчку мышкой на линии ордера его тикет (этот вопрос я еще не решил).
Про автомат я задумываюсь, но пока не собрался с духом, собираюсь я долго. Торговать руками - это что-то вроде мазохизма.
А пока итог недели +18,95%. И Вам не хворать!

Последний раз редактировалось st2050; 09.09.2016 в 16:18.
st2050 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 12.09.2016, 07:41   #4982 (permalink)
Интересующийся
 
Аватар для ref2015
 
Регистрация: 28.03.2015
Сообщений: 8
Репутация: 2
ref2015
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Поинты: 4
Подскажите как дописать (пауза после сигнала в секундах) для советника, при появлении сигнала на покупку или продажу советник выдерживал паузу.
ref2015 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 12.09.2016, 15:01   #4983 (permalink)
 
Аватар для mobidik
 
Регистрация: 09.08.2012
Адрес: Ua_Khm
Сообщений: 1,647
Репутация: 8540
mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik
Сказал(а) спасибо: 633
Поблагодарили 8,536 раз(а) в 1,561 сообщениях
Поинты: 800
Сообщение от ref2015 Посмотреть сообщение
Подскажите как дописать (пауза после сигнала в секундах) для советника, при появлении сигнала на покупку или продажу советник выдерживал паузу.
PHP код:
Sleep(sec 1000); 
mobidik на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
DomovenokBrest (12.09.2016), eevviill2 (12.09.2016)
Старый 12.09.2016, 15:02   #4984 (permalink)
Интересующийся
 
Аватар для ref2015
 
Регистрация: 28.03.2015
Сообщений: 8
Репутация: 2
ref2015
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Поинты: 4
[QUOTE=mobidik;1182595]
PHP код:
Sleep(sec 1000); 
[/QUOспасибо!
ref2015 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 12.09.2016, 16:10   #4985 (permalink)
Почётный гражданин
 
Аватар для eevviill2
 
Регистрация: 13.08.2016
Адрес: Бандерівці
Сообщений: 301
Репутация: 392
eevviill2 - eevviill2 - eevviill2 - eevviill2 -
Сказал(а) спасибо: 231
Поблагодарили 393 раз(а) в 127 сообщениях
Поинты: 34
Отправить сообщение для eevviill2 с помощью Skype™
Сообщение от mobidik Посмотреть сообщение
PHP код:
Sleep(sec 1000); 
Потім
RefreshRates();

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Героям слава!
eevviill2 на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
mobidik (12.09.2016)
Старый 12.09.2016, 16:59   #4986 (permalink)
Интересующийся
 
Аватар для ref2015
 
Регистрация: 28.03.2015
Сообщений: 8
Репутация: 2
ref2015
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Поинты: 4
понятно только в каком блоке это прописать?
ref2015 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 12.09.2016, 19:19   #4987 (permalink)
Почётный гражданин
 
Аватар для eevviill2
 
Регистрация: 13.08.2016
Адрес: Бандерівці
Сообщений: 301
Репутация: 392
eevviill2 - eevviill2 - eevviill2 - eevviill2 -
Сказал(а) спасибо: 231
Поблагодарили 393 раз(а) в 127 сообщениях
Поинты: 34
Отправить сообщение для eevviill2 с помощью Skype™
Сообщение от ref2015 Посмотреть сообщение
понятно только в каком блоке это прописать?
Можеш одразу перед OrderSend(...);

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Героям слава!
eevviill2 на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 12.09.2016, 19:35   #4988 (permalink)
Активный участник
 
Аватар для _SERG_
 
Регистрация: 21.07.2009
Сообщений: 242
Репутация: 75
_SERG_
Сказал(а) спасибо: 7
Поблагодарили 75 раз(а) в 61 сообщениях
Поинты: 284
Сообщение от ref2015 Посмотреть сообщение
Подскажите как дописать (пауза после сигнала в секундах) для советника, при появлении сигнала на покупку или продажу советник выдерживал паузу.
Я бы не паузу Sleep(), а задержку использовал, в виде разницы.
GetTickCount() окончания - GetTickCount() начала= Разница во времни.
Почему?
Потому, что Sleep() Задерживает выполнение эксперта на определенный интервал.
И не факт, что после задержки придёт котировка, и время задержки будет именно "минута".
Да и "минута", тоже понятие относительное.
А может, чуть больше, а может чуть меньше, но это уже вопрос выбора критерия условия.
Поэтому, анализ интервала надо разместить в функции OnTimer(), с частотой дискретизации в 10 раз больше времени анализируемого параметра. (Как минимум.)

Соль, перец, другие рекомендации, по вкусу.

Последний раз редактировалось _SERG_; 12.09.2016 в 19:48.
_SERG_ на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
DomovenokBrest (12.09.2016)
Старый 12.09.2016, 19:53   #4989 (permalink)
 
Аватар для mobidik
 
Регистрация: 09.08.2012
Адрес: Ua_Khm
Сообщений: 1,647
Репутация: 8540
mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik
Сказал(а) спасибо: 633
Поблагодарили 8,536 раз(а) в 1,561 сообщениях
Поинты: 800
Сообщение от _SERG_ Посмотреть сообщение
Я бы не паузу Sleep(), а задержку использовал, в виде разницы.
GetTickCount() окончания - GetTickCount() начала= Разница во времни.
Почему? Потому, что Sleep() Задерживает выполнение эксперта на определенный интервал.
То, что можно с помощью GetTickCount() - согласен, а вот на счет:
Сообщение от _SERG_ Посмотреть сообщение
...И не факт, что после задержки придёт котировка, и время задержки будет именно "минута".
А причем тут: после задержки придёт котировка - произошла задержка на выполнения кода на определенное значение времени, после чего код выполняется дальше и не имеет значения была ли котировка в этот промежуток времени. А вот с GetTickCount() нужно составлять условие, которое выполнится спустя N-е время с приходом нового тика, который может и задержаться. В связи с этим, задержка составит больше установленного времени, если код работает не по таймеру/OnTimer(), имхо.
mobidik на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
DomovenokBrest (12.09.2016), eevviill2 (12.09.2016)
Старый 12.09.2016, 20:10   #4990 (permalink)
Активный участник
 
Аватар для _SERG_
 
Регистрация: 21.07.2009
Сообщений: 242
Репутация: 75
_SERG_
Сказал(а) спасибо: 7
Поблагодарили 75 раз(а) в 61 сообщениях
Поинты: 284
Сообщение от mobidik Посмотреть сообщение
То, что можно с помощью GetTickCount() - согласен, а вот на счет:

А причем тут: после задержки придёт котировка - произошла задержка на выполнения кода на определенное значение времени, после чего код выполняется дальше и не имеет значения была ли котировка в этот промежуток времени. А вот с GetTickCount() нужно составлять условие, которое выполнится спустя N-е время с приходом нового тика, который может и задержаться. В связи с этим, задержка составит больше установленного времени, если код работает не по таймеру/OnTimer(), имхо.
GetTickCount() понятно, что по условию, и вызов чего-то дальше......
"N-е время" Это как? Вопрос больше в обработке "события", которое не связано с приходом котировки. Ну раз "минута".

"А при чем..." А при том, что для выполнения операций с ордерами не требуется приход котировки.

Поправочка: На одном инструменте, или на нескольких.
Методика отличается.

Последний раз редактировалось _SERG_; 12.09.2016 в 20:20.
_SERG_ на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 12.09.2016, 20:26   #4991 (permalink)
 
Аватар для mobidik
 
Регистрация: 09.08.2012
Адрес: Ua_Khm
Сообщений: 1,647
Репутация: 8540
mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik mobidik
Сказал(а) спасибо: 633
Поблагодарили 8,536 раз(а) в 1,561 сообщениях
Поинты: 800
Сообщение от _SERG_ Посмотреть сообщение
GetTickCount() понятно, что по условию, и вызов чего-то дальше......
"N-е время" Это как?
Например, так (не по таймеру):
- выполнилось условие, подняли флаг и ждем "минуту" с помощью GetTickCount()
- последняя котировка была, когда задержка отработала уже 59 сек., ждем...
- следующая котировка пришла спустя 17 сек. и выполнилось условие по GetTickCount.
и что имеем, задержка составила уже "минута" + 16 сек. - вот и N-е время...
Как-то так.

PS.
Нам не известны все нюансы связанные с задержкой по задумке автора, реализовать можно по разному, все зависит от поставленных целей.
mobidik на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill2 (12.09.2016)
Старый 12.09.2016, 20:39   #4992 (permalink)
Почётный гражданин
 
Аватар для eevviill2
 
Регистрация: 13.08.2016
Адрес: Бандерівці
Сообщений: 301
Репутация: 392
eevviill2 - eevviill2 - eevviill2 - eevviill2 -
Сказал(а) спасибо: 231
Поблагодарили 393 раз(а) в 127 сообщениях
Поинты: 34
Отправить сообщение для eevviill2 с помощью Skype™
_SERG_
Ти не правий.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Героям слава!
eevviill2 на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
mobidik (12.09.2016)
Старый 12.09.2016, 20:40   #4993 (permalink)
Активный участник
 
Аватар для _SERG_
 
Регистрация: 21.07.2009
Сообщений: 242
Репутация: 75
_SERG_
Сказал(а) спасибо: 7
Поблагодарили 75 раз(а) в 61 сообщениях
Поинты: 284
Сообщение от mobidik Посмотреть сообщение
Например, так (не по таймеру):
- выполнилось условие, подняли флаг и ждем "минуту" с помощью GetTickCount()
- последняя котировка была, когда задержка отработала уже 59 сек., ждем...
- следующая котировка пришла спустя 17 сек. и выполнилось условие по GetTickCount.
и что имеем, задержка составила уже "минута" + 16 сек. - вот и N-е время...
Как-то так.

PS.
Нам не известны все нюансы связанные с задержкой по задумке автора, реализовать можно по разному, все зависит от поставленных целей.
Вопросы по аффтору понятны, пусть он нас простит.
Яж про частоту дискеризации сказал, и про GetMicrosecondCount(), я в курсе, минута +17 цыфирь ОШИБОЧНАЯ.
Ну и про 59 и 00, тож понятно.
Давай на милисекунды перекинемся, аще тёрка будет конкретная.
Тут простой вопрос обработка события, а как? Это же вопрос результата, устраивающего афффффтора.
_SERG_ на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
mobidik (12.09.2016)
Старый 12.09.2016, 21:24   #4994 (permalink)
Активный участник
 
Аватар для _SERG_
 
Регистрация: 21.07.2009
Сообщений: 242
Репутация: 75
_SERG_
Сказал(а) спасибо: 7
Поблагодарили 75 раз(а) в 61 сообщениях
Поинты: 284
Сообщение от eevviill2 Посмотреть сообщение
_SERG_
Ти не правий.
Да я и не Левый.
По логике - центровой.
Тем не менее, весь внимание.
Напиши, в чём, я закодю и проверю.

Последний раз редактировалось _SERG_; 12.09.2016 в 21:30.
_SERG_ на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 13.09.2016, 08:04   #4995 (permalink)
Почётный гражданин
 
Аватар для eevviill2
 
Регистрация: 13.08.2016
Адрес: Бандерівці
Сообщений: 301
Репутация: 392
eevviill2 - eevviill2 - eevviill2 - eevviill2 -
Сказал(а) спасибо: 231
Поблагодарили 393 раз(а) в 127 сообщениях
Поинты: 34
Отправить сообщение для eevviill2 с помощью Skype™
Сообщение от _SERG_ Посмотреть сообщение
Да я и не Левый.
По логике - центровой.
Тем не менее, весь внимание.
Напиши, в чём, я закодю и проверю.
Sleep затримує, а не зупиняє виконання коду.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Героям слава!
eevviill2 на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 13.09.2016, 12:50   #4996 (permalink)
Активный участник
 
Аватар для _SERG_
 
Регистрация: 21.07.2009
Сообщений: 242
Репутация: 75
_SERG_
Сказал(а) спасибо: 7
Поблагодарили 75 раз(а) в 61 сообщениях
Поинты: 284
Сообщение от eevviill2 Посмотреть сообщение
Sleep затримує, а не зупиняє виконання коду.
Зповагою до співрозмовника.
Так, дійсно, код не виконується, але і життя не зупиняється, мить, коли код продовжить працювати, стан подій вже зміниться, та не тільки ціна, а й наприклад сред, чи своп, чи взагалі зв'язок зникне.
ВИСНОВОК: Призупинений код шкодить загальному аналізу, чи стратегії, а продовження роботи, дозволяе відстежувати ті події, які стануться з моменту призупинення коду, до його відновлення.
"Зайва" додаткова перевірка захиістить від хибних висновків та дій.

Да действительно, код не выполняется, но жизнь продолжается, в момент, когда продолжит работать код, состояние событий измениться, и не только цена, а например спрэд, или своп, или связь пропадёт.
ВЫВОД: Остановленный код вредит общему анализу, или стратегии, а продолжение работы, позволяет отследить те события, которые произойдут с момента приостановки кода, до возобновления его работы.
Одна "лишняя" проверка убережет от неправильных выводов и действий.




Формулировку, я из хєлпа взял, так, что Метаквотовцы написали, то и процитировал.

Последний раз редактировалось _SERG_; 13.09.2016 в 12:59.
_SERG_ на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 13.09.2016, 13:14   #4997 (permalink)
Почётный гражданин
 
Аватар для eevviill2
 
Регистрация: 13.08.2016
Адрес: Бандерівці
Сообщений: 301
Репутация: 392
eevviill2 - eevviill2 - eevviill2 - eevviill2 -
Сказал(а) спасибо: 231
Поблагодарили 393 раз(а) в 127 сообщениях
Поинты: 34
Отправить сообщение для eevviill2 с помощью Skype™
Сообщение от _SERG_ Посмотреть сообщение
Зповагою до співрозмовника.
Так, дійсно, код не виконується, але і життя не зупиняється, мить, коли код продовжить працювати, стан подій вже зміниться, та не тільки ціна, а й наприклад сред, чи своп, чи взагалі зв'язок зникне.
ВИСНОВОК: Призупинений код шкодить загальному аналізу, чи стратегії, а продовження роботи, дозволяе відстежувати ті події, які стануться з моменту призупинення коду, до його відновлення.
"Зайва" додаткова перевірка захиістить від хибних висновків та дій.

Да действительно, код не выполняется, но жизнь продолжается, в момент, когда продолжит работать код, состояние событий измениться, и не только цена, а например спрэд, или своп, или связь пропадёт.
ВЫВОД: Остановленный код вредит общему анализу, или стратегии, а продолжение работы, позволяет отследить те события, которые произойдут с момента приостановки кода, до возобновления его работы.
Одна "лишняя" проверка убережет от неправильных выводов и действий.




Формулировку, я из хєлпа взял, так, что Метаквотовцы написали, то и процитировал.
RefreshRates()
все інше викликається і взнається по ходу коду.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Героям слава!
eevviill2 на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 13.09.2016, 14:23   #4998 (permalink)
Активный участник
 
Аватар для _SERG_
 
Регистрация: 21.07.2009
Сообщений: 242
Репутация: 75
_SERG_
Сказал(а) спасибо: 7
Поблагодарили 75 раз(а) в 61 сообщениях
Поинты: 284
Сообщение от eevviill2 Посмотреть сообщение
RefreshRates()
все інше викликається і взнається по ходу коду.
Яж сказал, тут, как аффтор порешит, я свою точку зрения обозначил.

Может условия заставят её пресмотреть когда то.

Но в текущих условиях (моих) мне приходится укладывать код в некое время , и тратить это время на остановку кода считаю нецелесообразным. ИХМО.

Про RefreshRates(), на одном инструменте, пользоваться можно, а на нескольких, из одного советника, не совсем.
А приобретённые привычки потом сложно менять.

Последний раз редактировалось _SERG_; 13.09.2016 в 14:36.
_SERG_ на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 13.09.2016, 15:57   #4999 (permalink)
Интересующийся
 
Аватар для ref2015
 
Регистрация: 28.03.2015
Сообщений: 8
Репутация: 2
ref2015
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Поинты: 4
нужно еще после задержки дописывать повторную проверку сигнала если нет сигнала и сделки нет
ref2015 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 13.09.2016, 17:56   #5000 (permalink)
Почётный гражданин
 
Аватар для eevviill2
 
Регистрация: 13.08.2016
Адрес: Бандерівці
Сообщений: 301
Репутация: 392
eevviill2 - eevviill2 - eevviill2 - eevviill2 -
Сказал(а) спасибо: 231
Поблагодарили 393 раз(а) в 127 сообщениях
Поинты: 34
Отправить сообщение для eevviill2 с помощью Skype™
Сообщение от _SERG_ Посмотреть сообщение
...
Про RefreshRates(), на одном инструменте, пользоваться можно, а на нескольких, из одного советника, не совсем.
А приобретённые привычки потом сложно менять.

Наприклад шоб взнати бід gbpusd MarketInfo("GBPUSD",MODE_BID) треба.
А це функція, її данні отримуються при виклику.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Героям слава!
eevviill2 на форуме   Ответить с цитированиемОтветить с цитированием  
Ответ

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


Опции темы

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

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



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


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