Ответ
 
Опции темы
Старый 08.11.2013, 09:20   #1921 (permalink)
Новичок форума
 
Аватар для Andy200577
 
Регистрация: 20.06.2012
Сообщений: 57
Репутация: 9
Andy200577
Сказал(а) спасибо: 3
Поблагодарили 8 раз(а) в 6 сообщениях
Поинты: 90
День добрый всем!
Подскажите пожалуйста, как можно передать в код MQL4 общую сумму прибыли или убытка по всем открытым ордерам, которую терминал в списке ордеров всегда показывает жирным шрифтом в самом низу справа? Есть ли специальная функция для этого или нужно отдельную процедуру писать?
Спасибо.
Andy200577 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 08.11.2013, 09:43   #1922 (permalink)
Новичок форума
 
Аватар для Andy200577
 
Регистрация: 20.06.2012
Сообщений: 57
Репутация: 9
Andy200577
Сказал(а) спасибо: 3
Поблагодарили 8 раз(а) в 6 сообщениях
Поинты: 90
Сообщение от Andy200577 Посмотреть сообщение
День добрый всем!
Подскажите пожалуйста, как можно передать в код MQL4 общую сумму прибыли или убытка по всем открытым ордерам, которую терминал в списке ордеров всегда показывает жирным шрифтом в самом низу справа? Есть ли специальная функция для этого или нужно отдельную процедуру писать?
Спасибо.
Извиняюсь, сам нашёл ответ, всё оказалось элементарно:
AccountEquity() - AccountBalance()
Andy200577 вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (08.11.2013)
Старый 08.11.2013, 10:05   #1923 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от Andy200577 Посмотреть сообщение
Извиняюсь, сам нашёл ответ, всё оказалось элементарно:
AccountEquity() - AccountBalance()
Гы. Не, это ещё елементарней.
PHP код:
AccountProfit() 
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 08.11.2013, 10:30   #1924 (permalink)
Новичок форума
 
Аватар для Andy200577
 
Регистрация: 20.06.2012
Сообщений: 57
Репутация: 9
Andy200577
Сказал(а) спасибо: 3
Поблагодарили 8 раз(а) в 6 сообщениях
Поинты: 90
Сообщение от eevviill Посмотреть сообщение
Гы. Не, это ещё елементарней.
PHP код:
AccountProfit() 
Спасибо. Только тогда ещё один вопрос.
А есть ли подобная функция, только не в валюте депозита, отображение, а в пунктах?
Andy200577 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 08.11.2013, 10:35   #1925 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от Andy200577 Посмотреть сообщение
Спасибо. Только тогда ещё один вопрос.
А есть ли подобная функция, только не в валюте депозита, отображение, а в пунктах?
Нету.

Надо отдельно функцию делать.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 08.11.2013, 10:36   #1926 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
iTime[],iOpen[]...
Являются ли эти переменные предопределёнными?
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 08.11.2013, 10:54   #1927 (permalink)
Почётный гражданин
 
Аватар для qqmber
 
Регистрация: 20.01.2013
Сообщений: 530
Репутация: 386
qqmber - qqmber - qqmber - qqmber -
Сказал(а) спасибо: 57
Поблагодарили 386 раз(а) в 254 сообщениях
Поинты: 439
Сообщение от Andy200577 Посмотреть сообщение
Спасибо. Только тогда ещё один вопрос.
А есть ли подобная функция, только не в валюте депозита, отображение, а в пунктах?
Пункты разные у разных пар бывают. Есть ли смысл?
qqmber вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (08.11.2013)
Старый 08.11.2013, 10:55   #1928 (permalink)
Почётный гражданин
 
Аватар для qqmber
 
Регистрация: 20.01.2013
Сообщений: 530
Репутация: 386
qqmber - qqmber - qqmber - qqmber -
Сказал(а) спасибо: 57
Поблагодарили 386 раз(а) в 254 сообщениях
Поинты: 439
Сообщение от eevviill Посмотреть сообщение
iTime[],iOpen[]...
Являются ли эти переменные предопределёнными?
Нет, но они совпадают с предопределенными функциями. Синтаксическая ошибка.
qqmber вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (08.11.2013)
Старый 08.11.2013, 10:57   #1929 (permalink)
Новичок форума
 
Аватар для Andy200577
 
Регистрация: 20.06.2012
Сообщений: 57
Репутация: 9
Andy200577
Сказал(а) спасибо: 3
Поблагодарили 8 раз(а) в 6 сообщениях
Поинты: 90
Сообщение от eevviill Посмотреть сообщение
iTime[],iOpen[]...
Являются ли эти переменные предопределёнными?
Все предопределённые переменные, насколько я понимаю, вот в этом списке- _http://docs.mql4.com/ru/predefined/variables

Последний раз редактировалось NSerega; 08.11.2013 в 13:24.
Andy200577 вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (08.11.2013)
Старый 08.11.2013, 11:01   #1930 (permalink)
Новичок форума
 
Аватар для Andy200577
 
Регистрация: 20.06.2012
Сообщений: 57
Репутация: 9
Andy200577
Сказал(а) спасибо: 3
Поблагодарили 8 раз(а) в 6 сообщениях
Поинты: 90
Сообщение от qqmber Посмотреть сообщение
Пункты разные у разных пар бывают. Есть ли смысл?
Ну например, хеджирование по разным парам, стоят ордера на обеих парах, как только суммарно по пунктам достигается определенное значение, совершается какое-либо определённое действие.
Andy200577 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 08.11.2013, 13:59   #1931 (permalink)
Местный знаток
За призовое место в конкурсе 

 
Аватар для ansol
 
Регистрация: 22.04.2010
Сообщений: 2,009
Репутация: 829
ansol - ansol - ansol - ansol - ansol - ansol - ansol -
Сказал(а) спасибо: 236
Поблагодарили 843 раз(а) в 554 сообщениях
Поинты: 1308
Сообщение от Andy200577 Посмотреть сообщение
Ну например, хеджирование по разным парам, стоят ордера на обеих парах, как только суммарно по пунктам достигается определенное значение, совершается какое-либо определённое действие.
1 пункт на разных парах стОит по-разному - см. MarketInfo(Symbol(), MODE_TICKVALUE)
Так что придется либо суммировать сделки по парам(OrderProfit()) в цикле, либо пункты в валюту депозита переводить/
Имхо, логичнее прибыль считать, а не пункты - ну это от вашей стратегии зависит, конечно.
ansol на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
Dobryj (08.11.2013), eevviill (08.11.2013)
Старый 08.11.2013, 15:50   #1932 (permalink)
Прохожий
 
Аватар для moisei
 
Регистрация: 08.11.2013
Сообщений: 1
Репутация: 2
moisei
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Поинты: 0

По умолчанию Подскажите плиииз!


Здравствуйте.Подскажите пожалуйста как можно установить на индикаторе отправку на почту или на ID. Спасибо
moisei вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
alexshell (08.11.2013)
Старый 08.11.2013, 19:36   #1933 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,252
Репутация: 1963
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 347
Поблагодарили 1,892 раз(а) в 1,069 сообщениях
Поинты: 1270
Отправить сообщение для Ugar с помощью ICQ
В справочнике есть SendMail() SendNotification()

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (11.11.2013)
Старый 11.11.2013, 18:29   #1934 (permalink)
Активный участник
 
Аватар для perajok
 
Регистрация: 17.10.2013
Сообщений: 219
Репутация: 130
perajok perajok
Сказал(а) спасибо: 18
Поблагодарили 129 раз(а) в 70 сообщениях
Поинты: 112
можно ли средствами mql4 читать алерты от других индюков и тд? но не на прямую. советник просто должен мониторить алерты.. и читать их, регулярными выражениями находить там определенные слова и должным образом реагировать. есть ли регулярки в mql4 это второй вопрос хотя я смогу и без них. в общем есть ли функции для мониторинга алертов?
perajok вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 11.11.2013, 18:43   #1935 (permalink)
Местный знаток
За призовое место в конкурсе 

 
Аватар для ansol
 
Регистрация: 22.04.2010
Сообщений: 2,009
Репутация: 829
ansol - ansol - ansol - ansol - ansol - ansol - ansol -
Сказал(а) спасибо: 236
Поблагодарили 843 раз(а) в 554 сообщениях
Поинты: 1308
Пытаюсь "обрезать" лишние тики при тестировании:
PHP код:
int start()
  {
// Для теста
         
if(IsTesting() || IsOptimization()) 
            {
             
int spread Point*MarketInfo(Symbol(), MODE_SPREAD)/2;
               if(
Volume[0] == 1) { Rhigh Bid spreadRlow Bid spread; }
                  if(
Bid >= Rlow && Bid <= Rhigh) return(0);
                     if(
Rhigh BidRhigh Bid spread;
                     if(
Rlow BidRlow Bid spread;
             }
...
код совы...
return(
0);

Rhigh и Rlow объявлены "до того как".
Т.е. болтание цены внутри уже пройденного диапазона не должно обрабатываться.
Например, спред в тесте ставим 10, тогда цена внутри ±5 тиков просто завершает обработку по return(0)
Эффекта не вижу, очень долго тестирует, может ошибка вкралась где-то у меня?

Последний раз редактировалось ansol; 11.11.2013 в 18:48.
ansol на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 11.11.2013, 18:55   #1936 (permalink)
Активный участник
 
Аватар для _SERG_
 
Регистрация: 21.07.2009
Сообщений: 242
Репутация: 74
_SERG_
Сказал(а) спасибо: 7
Поблагодарили 74 раз(а) в 60 сообщениях
Поинты: 284
Сообщение от perajok Посмотреть сообщение
можно ли средствами mql4 читать алерты от других индюков и тд? но не на прямую. советник просто должен мониторить алерты.. и читать их, регулярными выражениями находить там определенные слова и должным образом реагировать. есть ли регулярки в mql4 это второй вопрос хотя я смогу и без них. в общем есть ли функции для мониторинга алертов?

Читать алерты можно через глобальные переменные, если другие индикаторы или советники, эти переменные обновляют при работе. Но есть одна проблемка, считывать эти переменные индикатор или советник будет, при поступлении только котировки на тот график на котором установлен советник(индикатор).
Иными словами советник придётся зацикливать.

В общем решаемый вопрос.

А вот про "регулярные выражения" я чегото не понял.
_SERG_ на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 11.11.2013, 19:09   #1937 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от ansol Посмотреть сообщение
Пытаюсь "обрезать" лишние тики при тестировании:
PHP код:
int start()
  {
// Для теста
         
if(IsTesting() || IsOptimization()) 
            {
             
int spread Point*MarketInfo(Symbol(), MODE_SPREAD)/2;
               if(
Volume[0] == 1) { Rhigh Bid spreadRlow Bid spread; }
                  if(
Bid >= Rlow && Bid <= Rhigh) return(0);
                     if(
Rhigh BidRhigh Bid spread;
                     if(
Rlow BidRlow Bid spread;
             }
...
код совы...
return(
0);

Rhigh и Rlow объявлены "до того как".
Т.е. болтание цены внутри уже пройденного диапазона не должно обрабатываться.
Например, спред в тесте ставим 10, тогда цена внутри ±5 тиков просто завершает обработку по return(0)
Эффекта не вижу, очень долго тестирует, может ошибка вкралась где-то у меня?
PHP код:
Rhigh Bid spreadRlow Bid spread; }
                  if(
Bid >= Rlow && Bid <= Rhigh) return(0); 
допустим бид==4, спред 2
rh=4+2=6
rl=4-2=2
если(4>=2 && 4<=6) return

Вот тебе и ретурнает.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 11.11.2013, 19:17   #1938 (permalink)
Местный знаток
За призовое место в конкурсе 

 
Аватар для ansol
 
Регистрация: 22.04.2010
Сообщений: 2,009
Репутация: 829
ansol - ansol - ansol - ansol - ansol - ansol - ansol -
Сказал(а) спасибо: 236
Поблагодарили 843 раз(а) в 554 сообщениях
Поинты: 1308
Сообщение от eevviill Посмотреть сообщение
PHP код:
Rhigh Bid spreadRlow Bid spread; }
                  if(
Bid >= Rlow && Bid <= Rhigh) return(0); 
допустим бид==4, спред 2
rh=4+2=6
rl=4-2=2
если(4>=2 && 4<=6) return

Вот тебе и ретурнает.
Не понял, пардон.
EURUSD Bid=1.30040
Spread я ставлю в тесте 10, половинка от него = 5
имеем rh=1.30045 и rh=1.30035
пока Bid за эти пределы не выползет на текущей свече, то должно пропускать тик по return
Или как? У меня-то похоже не пропускает, а обрабатывает все тики.

Может как-то по другому ускорить обработку? Оптимизация очень долго идет, даже если по часу 1 проход, то всего 24 комбинации в сутки проверяются.
ansol на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 11.11.2013, 19:38   #1939 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от ansol Посмотреть сообщение
Не понял, пардон.
EURUSD Bid=1.30040
Spread я ставлю в тесте 10, половинка от него = 5
имеем rh=1.30045 и rh=1.30035
пока Bid за эти пределы не выползет на текущей свече, то должно пропускать тик по return
Или как? У меня-то похоже не пропускает, а обрабатывает все тики.

Может как-то по другому ускорить обработку? Оптимизация очень долго идет, даже если по часу 1 проход, то всего 24 комбинации в сутки проверяются.
Может в этих строках проблема(я не уверен)?
PHP код:
if(Rhigh BidRhigh Bid spread
                     if(
Rlow BidRlow Bid spread
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 11.11.2013, 19:45   #1940 (permalink)
Местный знаток
За призовое место в конкурсе 

 
Аватар для ansol
 
Регистрация: 22.04.2010
Сообщений: 2,009
Репутация: 829
ansol - ansol - ansol - ansol - ansol - ansol - ansol -
Сказал(а) спасибо: 236
Поблагодарили 843 раз(а) в 554 сообщениях
Поинты: 1308
Сообщение от eevviill Посмотреть сообщение
Может в этих строках проблема(я не уверен)?
PHP код:
if(Rhigh BidRhigh Bid spread
                     if(
Rlow BidRlow Bid spread
В смысле? Фигурными скобками обточить? Счас попробую.
Так-то смысл в том, чтобы "полоса возврата" расширялась до размера всей свечи, т.е. изменение цены внутри свечи сову не интересует. Если цена такая на этой свече уже была, то ее повторно обрабатывать не надо.
На реале-то пофиг, а на тесте как-то надо ускорить процесс, вот я и выдумываю.
Там вот еще:
PHP код:
if(Volume[0] == 1) { Rhigh Bid spreadRlow Bid spread; } 
Я правильно понимаю, что в тесте все тики обрабатываются всегда, т.е. Volume[0] == 1 - это первый тик текущей свечи?
ansol на форуме   Ответить с цитированиемОтветить с цитированием  
Ответ

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


Опции темы

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

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



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


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