Сортировка ордеров не гарантируется. Нужно сохранять в массив, и сортировать по дате.
Здесь есть пример: https://www.mql5.com/en/forum/138127
Обучение языку MQL4 под MetaTrader 4📌
От xbms, 13 апреля, 2013 в Уголок Программиста
В коде сделки закрываются по Стопу или Тейку.
В комментарии к ордеру, закрытому по Стопу, сервер добавляет приставку [sl]: "expertname[sl]". Соотетственно, для подсчета ордеров, закрытых по Стопам, надо после функции OrderSelect для истории ордеров, организовать проверку ордера по признаку "expertname[sl]"
Если же возможно ручное закрытие убыточного ордера, то тогда можно использовать параметр "OrderProfit
Открытые ордера сортируются по времени открытия и тикету, закрытые по времени закрытия!Я пробовала перебирать закрытые одера функцей OrderSelect(trade,SELECT_BY_POS,MODE_HISTORY) и отбирать убыточные, но поняла, что данная функция перебирает ордера в случайном порядке.
Не факт. В описание функции Select в справочнике написано:
При последовательном выборе ордеров с помощью параметра SELECT_BY_POS информация отдаётся в том порядке, в котором она поступила с торгового сервера. Никакая сортировка полученного списка ордеров не гарантируется.
Добавлено: 14-12-2018 07:54:48
Сортировка ордеров не гарантируется. Нужно сохранять в массив, и сортировать по дате.
Спасибо ) Буду разбираться
Добавлено: 14-12-2018 08:04:59
В коде сделки закрываются по Стопу или Тейку.
В комментарии к ордеру, закрытому по Стопу, сервер добавляет приставку [sl]: "expertname[sl]". Соотетственно, для подсчета ордеров, закрытых по Стопам, надо после функции OrderSelect для истории ордеров, организовать проверку ордера по признаку "expertname[sl]"
Если же возможно ручное закрытие убыточного ордера, то тогда можно использовать параметр "OrderProfit
Спасибо. Про приставку не знала, отбирала с помощь OrderProfitПросто посчитать все закрытые в убыток ордера я могу, пока не получается закрытые подряд, так как OrderSelect перебирает их не подряд.
Изменено 14 декабря, 2018 пользователем Larcher
Я знаю, что написано в справочнике - на то он и справочник... Я пишу о своём личном фактическом опыте. Для решения Вашей задачи этого было-бы достаточно, но если хотите сортировать, то я только ЗА - получите бесценный опыт.
Не факт. В описание функции Select в справочнике написано:
Открытые ордера сортируются по времени открытия и тикету, закрытые по времени закрытия!Я пробовала перебирать закрытые одера функцей OrderSelect(trade,SELECT_BY_POS,MODE_HISTORY) и отбирать убыточные, но поняла, что данная функция перебирает ордера в случайном порядке.
При последовательном выборе ордеров с помощью параметра SELECT_BY_POS информация отдаётся в том порядке, в котором она поступила с торгового сервера. Никакая сортировка полученного списка ордеров не гарантируется.
ПС: не забудьте ограничить каким-то условием выгрузку исторических ордеров в массив для сортировки и анализа, иначе в длительных тестах, при большом кол-ве закрытых ордеров, столкнётесь с зависающим терминалом.
Подскажите, пожалуйста, новичку, как посчитать количество закрытых подряд убыточнх сделок.
Вот накидал код с сортировкой и проверкой на 3 последний убыточных по профиту.
Естественно история должна быть обновлена правой кнопкой в терминале.
Народ, как заново скачать курсы по кодингу? Электронку вписал в поле. Но, т.к. я уже подписан на рыссылку, то письмо с ссылкой для скачки не приходит.
Мне тоже не пришла ссылка.. Я в Ютубе нашел и оттуда скачивал.
https://www.youtube.com/watch?reload=9&v=s69mnJjq8tE&index=2&t=56s&list=PLBTFLv4NSBStaPQ5SGM9llMq5qrbU57sQ
Там , справа от видео, все уроки есть... Если не знаешь, как качать с Ютуба , скачай прогу GetVideo.
Но, т.к. я уже подписан на рыссылку, то письмо с ссылкой для скачки не приходит.
Мне тоже не пришла ссылка.
В таких случаях и не только помогают сервисы "Почта на 10 минут". Вот что я получил!
Ссылки на онлайн и оффлайн версии курса курса
Здравствуйте, дорогой друг! Посмотреть видеокурс "MQL4 Программирование" вы можете двумя способами:
1) Онлайн версия Доступна по ссылке:
http://tradelikeapro.ru/wppage/videokurs-mql4-programmirovanie/
2) Оффлайн версия
Если вы предпочитаете более старомодный способ просмотра, вы можете скачать курс в виде отдельных видео-уроков в комплекте с оболочкой для запуска и наслаждаться просмотром, даже без участия интернета. Например где-то на даче, долгими зимними вечерами...)
Вот ваша ссылка на скачивание архива с видеокурсом "MQL4 Программирование" :
https://s3.amazonaws.com/tradelikeapro-blog-files/courses/MQL.rar
P.S. Также вы можете скачать этот курс с торрент-трекера:
https://rutracker.net/forum/viewtopic.php?t=4718091
С уважением, Власов Павел
TradeLikeaPro.ru
Да и не забываем про сам сайт http://tradelikeapro.ru/category/uroki-po-mql/
Изменено 14 декабря, 2018 пользователем MikR0ReR
Народ, есть у кого декомпиляторы ex4?
после 600 билда нет, даже не слышал...Народ, есть у кого декомпиляторы ex4?
Приветствую!
Есть ли возможность рассчитывать уровень безубытка с учетом комиссии и свопов? Как для отдельного ордера так и для группы ордеров как в одну сторону, так и для всех вообче.
Если есть такой способ опишите плз алгоритм или кусок кода.
Спасибо!
У Эзопа красноречию учились? :dЕсть ли возможность рассчитывать уровень безубытка с учетом комиссии и свопов? Как для отдельного ордера так и для группы ордеров как в одну сторону, так и для всех вообче.
Я уже написал в Вашей ветке:
дист БУ = текущий PL с комис+своп / ( суммЛот * MarketInfo( NULL, MODE_TICKVALUE ) )
ПС: только со знаком разберитесь... - имеется в виду если тип ордеров бай и они в просадке (может быть наоборот), то направление БУ положительное от текущей цены.
0ll, я увидел твой ответ уже после того как здесь написал, спасибо еще раз :)
А почему именно у Эзопа? говорунов в истории и без оного было в достатке :))
дист БУ = текущий PL с комис+своп / ( суммЛот * MarketInfo( NULL, MODE_TICKVALUE ) )
Что значит PL
Народ, новые уроки по кодингу будут?)))
Хотелось бы что-то про обработчика событий OnChartEvent(...). Пример панельки какой-нибудь. 8-> 8->
Изменено 19 декабря, 2018 пользователем geugene
Что значит PL
Текущие Профит/Лосс.
Вот только использование MarketInfo( NULL, MODE_TICKVALUE ) ИМХО, не всегда дает точный результат (кроме мажоров с обратным котированием)- безубыток будет актуален на момент его расчета. Когда же цена дойдет до ТП/СЛ, TICKVALUE изменит свое значение..
В тестере же вообще TICKVALUE берется на момент поступления последней котировки в терминал :(( .
Это все про МТ4
Изменено 19 декабря, 2018 пользователем usver73
Уважаемые комрады, есть ли функция быстрого вызова окна необходимого символа, еси нет, то есть ли возможность быстро прокручивать символы внизу терминала без утомительного нахождение онного символа и тыканья в него кликом + если символов много надо еще тыкать стрелку так так много символов на графике не умещаются, а у меня их 36(тестирую сигнальный советник собирающий все сигналы с других советников в один график).
Alt+W. Ещё, расположить мозаикой - при двойном клике на название вкладки, окно переходит из полноэкранного вида в оконный, и обратно.
Если принципиально - можно и самому на каждом тике корректировать ;) , но думаю в большинстве случаев не потребуется.В тестере же вообще TICKVALUE берется на момент поступления последней котировки в терминал.
Откуда пошло обозначать текущий фин. результат группы ордеров через PL - я не знаю, только после Вашего вопроса, да и то не сразу, дошло, что в МТ такого понятия нет, а я привык - даже в коде переменные так обозначаю...
Что значит "Лосс"Текущие Профит/Лосс.
В итоге я понял, что PL обозначает сумму прибыли и убытка группы ордеров.Я называю просто "профит". И в следствии этого формула расчета Без Убытка такова:
уровень без убытка =профит(PL)+комиссия+своп/(сумма лотов*MarketInfo(NULL,MODE_TICKVALUE))
В старом скрипте нашел такие операторы:
while(t>0)
{
t>>=1;
period|=t;
}
Если меняю t>>=1 на t>=1 то получаю предупреждение "expression has no effect". По логике, такой цикл не имеет смысла.
Сочетание "|=" мне вообще непонятно.
Прикол в том, сам скрипт работает и выполняет свою функцию.
Изменено 21 декабря, 2018 пользователем geugene
Для публикации сообщений создайте учётную запись или авторизуйтесь
Перейти к списку тем