:d посмотрим кто что сварганит, надо незабыть и про свои поиски прибыльных сетов
[open source] [Советник] Mix Scalper: сконструируй свой Грааль!
От Archmagister, 16 сентября, 2013 в Лаборатория ProfitFX
Что ж, я разместил темы с совом на МТ5 и ФорексСистемс - посмотрим, будет ли отклик.
А ссылки на тему на тех ресурсах можешь засветить, хоть в личку?
Добрый день.
Подскажите, что я не так делаю.
Выдается такое сообщение на вкладке експерты. "ZWinnerColorSignals GBPUSD,H1: cannot resize the array"
На подобные ошибки нестоит обращать внимание, ввиду того что они ориентированны на ручную торговлю и немогут создать сигнализирующие графические объекты возникает эта и подобные ошибки у разных индикаторов
Добавлено: 24-10-2013 12:30:19
При этом использование индикаторов в советнике полностью корректна
Добрый день.
Подскажите, что я не так делаю.
Выдается такое сообщение на вкладке експерты. "ZWinnerColorSignals GBPUSD,H1: cannot resize the array"
Izmenjaj na etot v podvale i nebudet pisat osibky :)
Замечено, что направление ССРЦ на М5 не работает.
Как и было рекомендовано, поставил число баров 9:
SSRCBarsNap_High=9;
Сделок по сету не было. Отключил сигналы направления ССРЦ - сделки пошли.
ты неправильно используешь этот индикатор!!!!! SSRCBarsNap_High Это параметр обозначает сколько последних баров цена движется в нужном направлении!!!! Тоесть 9 баров цена должна была опускаться или подниматься!!! чтобы индикатор дал сигнал к покупке или продаже!!!!
В том-то и дело, что 5 баров всегда параллельны - то есть ни опускаются ни поднимаются. Тогда чтобы зафиксировать подъём или спуск надо установить число баров больше 5 и меньше 10.
Или мне не смотреть на линию, которую он отрисовывает?
Ты неправильно понял логику работу. Бары движения в одном направлении уже считаются с учетом разности количества баров между текущим и настроенным тайфреймом, а вот чтобы определить не текущий а предыдущий бар на старшем ТФ нужно изменять параметр SSRCLookBac_High !!!Я недедлал их подстройку потому что это вызвало бы ошибку при установке индикаторов расчитанных для старшего тф на текущий ТФ.
То есть чтобы мне заставить брать полноценные сигналы направления ССРЦ с М5, мне достаточно поставить
SSRCBarsNap_High=2
Так?
И ещё вопрос - какие оптимальные периоды МА для реверса?
Впринципе оптимальными по тестам для Н1 являлись Медленная 60 Быстрая 15, Причем замечено что лучшие результаты для частичного реверса давали настройки МА Метод 3 и Цена 4,5,6. Также порог проверяй для себя сам, у меня он был выбран 300 новых пунктов, у тебя какой то маленький должен быть.
Для взятия устоявшегося сигнала вполне нормально будет указать SSRCBarsNap_High=1 (ну или 2) и SSRCLookBac_High=5 (для 5 минутого ТФ)
Подредактировал логику ожидающего своего времени режима локера. Теперь она выглядит так:
ЕСЛИ получен сигнал на бай, ТО закрыть все прибыльные ордера селл + открыть 1 ордер бай лотом, равным сумме лотов всех убыточных, но ещё не залокированных ордеров селл и одного стандартного лота.
ЕСЛИ получен сигнал на селл, ТО закрыть все прибыльные ордера бай + открыть 1 ордер селл лотом, равным сумме лотов всех убыточных, но ещё не залокированных ордеров бай и одного стандартного лота.
ЕСЛИ получен сигнал разворота вверх, ТО закрыть все прибыльные ордера селл + открыть 1 ордер бай лотом, равным сумме лотов всех убыточных, но ещё не залокированных ордеров селл. То есть мы входим в полный лок.
ЕСЛИ получен сигнал разворота вниз, ТО закрыть все прибыльные ордера бай + открыть 1 ордер селл лотом, равным сумме лотов всех убыточных, но ещё не залокированных ордеров бай. То есть мы входим в полный лок.
Также заметим, что разворотный сигнал может быть взят тогда и только тогда, когда у нас имеется открытый незалокированный ордер.
Впринципе если взглянуть простым взглядом то твоя система лока что ты описал очень проста. Распиши ка что ты считаешь Сигналами. Это понятно что сигналы сел и Бай это инициализирующие сигналы. А вот разворотные это сигналы закрытия по системе весов?
ЦитатаА вот разворотные это сигналы закрытия по системе весов?
Они самые. И браться они, соответственно, будут только тогда, когда у нас есть 1 висячий незалокированный ордер - и вычисляться они будут относительно этого ордера. То есть если висячий ордер бай, то советник готов реагировать на сигнал разворота вниз. А если селл - то на сигнал разворота вверх.
Здравствуйте! Огромная просьба, добавьте в настройки советника для открываемых ордеров возможность прописывания строчки (поле) "Комментарий" , которая будет прописывать в открываемые ордера соотв. запись. Это стандартная функция метарейдера для ордера.
Очень нужно! Спасибо заранее.
Ладненько, когда закончу со своими делами попробую нечто подобное сделать, но с достаточно большими ограничениями. Режим локера изначально сложное алгоритмическое решение на которое накладываются дополнительные расходы на спред и комиссию. Первый вариант который я экспериментально продумаю будет работать со всеми ордерами по текущей паре с ограничением общего объема на текущую пару, наверное без возможности открывать инициализирующие ордера в стандартном режиме при превышении установленного лимита, Если логически посудить то посути мы будем мусолить все ордера открытые для одной пары в попытке расшить локи в плюс, но по факту получится заработать только на ордерах которые сработали по ТП а минусовые будут постоянно перекрыты до их расшития, причем даже после того как потенциальный лось будет расшит он может принести нам убыток но только в размере затраченных расходов на комиссию и спред при локировании ордера, целесообразность функции можно будет предварительно эмпирически проверить и тогда уже по результатам судить о необходимости ее доработки (причем если нормальных сдвигов в пользу прибыльности это непринесет я откажусь от работ в данном направлении как от тупикового с очень маловероятным шансом вернуться к нему в будущем, покрайней мере скором)
Подобное алгоритмическое решение также предъявляет определенные требования к качеству ордеров. Все ордера должны иметь целесообразный размер ТП это первое, и размер этот должен быть не 9 новых пунктов, а хотябы с 30 а то и больше (это можно достичь Увеличением нижнего порога ширины канала ТМА, верхний оставьте побольше если ненужно ограничивать). Второе - порог локирования должен быть изначально меньше размера лосей( это могут определить опять же эмпирически только люди непосредственно следящие за работой советника) Иначе ордера просто не будут перекрываться. Оследить это можно только включив закрытие при реверсе сигнала и по системе закрытия весов а дальше наблюдая движением цены визуально. Незабываем про соотношение размеров лосей и профитов если оно критично для системы то вводить режим сразу станет неактуально (решить об актуальности можно подсчитав средний процент отношения минусовых сделок к плюсовым и соотнести его с отношением размеров убытков к размерам прибыли. например Если лоси к профитам относятся как 20 к 80 то среднеарифметический размер лося должен быть больше где-то в 4 раза среднеарифметического размера профита, ввиду того что советник льет это отношение явно нарушено, но ненастолько же все страшно :) в 5 раз тоже терпимо, просто сделайте подборку сетов и отношений, пусть небольших, но с реала )
Если есть необходимость для подобного анализа могу добавить отрисовку стрелок открытия и закрытия ордеров (но времени у меня неособо много, поэтому кто-нить вытяните из Базы кодов MQL5 или MQL4 советник который востанавливает стрелочки от ордеров из истории терминала)
А стандартный коментарий неустраивает? ладно добавлю но несколько позже, сейчас занят.
Хм, чё-то до меня не доходит, зачем усложнять код, прописывая в него дополнительные ограничения? Какой-то учёт копеечных комиссий, какие-то лоси (у ордеров в режиме локера не должно быть СЛ), какой-то порог локирования... :)
Ограниченный объём открытых позиций на 1 пару? Ну пусть будет - это не принципиально, если его можно установить в настройках каким угодно.
Я сейчас нигде не указал что эти параметры имеются, я думаю что будет также 2 внешние переменные. Включение и Максимальный объем ордеров. Меня интересуют статистические показатели поведения такие как порог локирования - среднее расстояние в пунктах на котором срабатывает противоположный сигнал и сигнал закрытия по системе весов. Если все ордера как показано в картинках будут срабатывать по СЛ то ниокаком локере речи идти не может(по крайней мере решающем проблему), поэтому и прошу просчитать в среднем где да как локироваться должно.
ЦитатаЯ сейчас нигде не указал что эти параметры имеются, я думаю что будет также 2 внешние переменные.
Ок. Если остальное будет сделано по инструкции, то по моим рассчётом должна появиться прибыльность.
ЦитатаМеня интересуют статистические показатели поведения такие как порог локирования - среднее расстояние в пунктах на котором срабатывает противоположный сигнал и сигнал закрытия по системе весов
Помните, ещё давно я выкладывал результаты работы сетов с включённым закрытием ордера по 3 квадратам матрицы. Так вот - примерно так всё и будет, только вместо закрытия будет выставляться полный лок.
ЦитатаЕсли все ордера как показано в картинках будут срабатывать по СЛ то ниокаком локере речи идти не может
Повторяю: в режиме локера не должно быть никаких СЛ. Только ТП.
Не будем особо полагаться на расчеты(которые как то нираз неоправдались даже после почти полной реализации изначального ТЗ)
СЛ конечно небудет, иначе смысл потеряется, а вот какой средний уровень закрытия замка по противоположным и разворотным сигналам? если у нас небудет СЛ то при быстротечном тренде Мы можем Закрыть убыток порядка 3-4 Размеров СЛ и разруливать его придется достаточно долго. Поэтому я и прошу подобрать такие настройки сета, чтоб закрытия происходило не по лосю а по развороту\реверсивному сигналу с приемлимым размером, чтоб непришлось неделями таскать багаж из замков с шансом наращивания запертых убытков
ЦитатаНе будем особо полагаться на расчеты(которые как то нираз неоправдались даже после почти полной реализации изначального ТЗ)
Вся моя деятельность на Форексе основана лишь только на вере в расчёты :))
Цитатаа вот какой средний уровень закрытия замка по противоположным и разворотным сигналам?
Какие настройки выставим - так и будет. Да хоть 3 пункта в противоположную сторону - при перекрашивании пары квадратов ускоренной матрицы.
Добавлено: 25-10-2013 15:50:47
Да, кстати - надо ж будет добавить ещё и третью переменную - в новых пунктах или % ТМА - для определения того, какие ордера считать прибыльными, а какие убыточными ;)
Изменено 25 октября, 2013 пользователем Archmagister
Буду делать в своем темпе, по своим взглядам с учетом твоих предложений. Прибыль будет определяться минимальным фиксированным количеством пунктов по отдельному ордеру, ордер-лок будет закрываться также по прибыли или принудительно человеком. будет весело таскать целую бороду ордеров по холмам ценовых графиков v:)
Цитатаордер-лок будет закрываться также по прибыли
Это как так?
Добавлено: 25-10-2013 16:00:52
По инструкции он раскрывается при получении сигнала на бай или селл.
Допустим у нес имеется такая ситуация. был открыт ордер сел, а движение пошло вверх мы закрылись в лок(открылись ордер Бай) разность между ордерами 30 новых пунктов. Тренд вверх закончился и к нам пришел сигнал сел мы закрываем Ордер бай(так как цена прошла вверх) вприбыли. цена идет согласно сигнала вниз проходит расстояние в 20 пунктов и приходи сигнал бай (так как ордер сел в минусе мы его незакрываем) мы открываем ордер бай и между нашими ордерами расстояние 10 новых пунктов. цена спустилась вниз потом опять вверх и прошла еще расстояние выше ордера Бай( на нем плюс) и поступил сигнал сел мы закрываем сигнал бай и цена прошла еще 15 пунктов вниз итог у нас было закрыто 2 бай ордера с каким-то плюсом и висит ордер сел с 5 пунктами прибыли.
Если бы расстояние на которое гуляла цена достигла ТП ордеров бай, то ордер бы закрылся и ввиду отсутствия лока советник открыл бы еще один ордер бай.
Вы перемудрили а я запутался :d
ЦитатаДопустим у нес имеется такая ситуация. был открыт ордер сел, а движение пошло вверх мы закрылись в лок(открылись ордер Бай) разность между ордерами 30 новых пунктов. Тренд вверх закончился и к нам пришел сигнал сел мы закрываем Ордер бай(так как цена прошла вверх) вприбыли.
Упустили деталь. Поскольку мы получили сигнал селл, то мы не только закрываем прибыльный бай, но и открываем 1 селл х1 лотом и с ТейкПрофитом. Итого у нас 2 открытых селла.
Цитатацена идет согласно сигнала вниз проходит расстояние в 20 пунктов и приходи сигнал бай
Нет. Сигнал бай не может прийти так сразу. Сначала приходит разворотный сигнал вверх и своетник это замечает, так как у него висит открытый ордер селл без (даже целых два селла).
Цитата(так как ордер сел в минусе мы его незакрываем) мы открываем ордер бай и между нашими ордерами расстояние 10 новых пунктов.
Теперь если верхний ордер селл у нас в прибыли, то мы его закрываем и входим в полный лок, открыв 1 бай без ТП. Если же верхний ордер селл не в прибыли, то мы открыааем 1 бай х2 лотом. Допустим у нас случился первый вариант - мы закрыли 1 селл в +, а второй селл залокировали баем.
Цитатацена спустилась вниз потом опять вверх и прошла еще расстояние выше ордера Бай( на нем плюс) и поступил сигнал сел мы закрываем сигнал бай
Опять упустили. Да, закрываем бай с прибылью. Но у нас сигнал селл - значит открываем ещё 1 ордер селл с ТП. Теперь у нас висит 2 ордера селл. Конец.
ЦитатаЕсли бы расстояние на которое гуляла цена достигла ТП ордеров бай, то ордер бы закрылся и ввиду отсутствия лока советник открыл бы еще один ордер бай.
Я понял в чём причина непонимания. У ордеров, входящих в лок ТейкПрофит НЕ выставляется.
Если мы открываем локирующий ордер - ТП ему НЕ выставляется.
ТП выставляется только для дополнительных ордеров, открытых по сигналам бай или селл.
Если был открыт обычный ордер с ТП, а потом его залокировали, то ясен пень, этот ТП должен удалиться (я забыл об этом упомянуть).
В идеале стоит восстанавливать ТП ордерам при расшивке лока. И снова удалять при восстановлении лока. Но если это слишком сложно сделать, можно обойтись и без этого, просто удаляя ТП всем залокированным ордерам.
Я сейчас внесу уточнение в описание логики локера.
Добавлено: 25-10-2013 17:08:02
Итак, вот очень подробная логика локера со всеми уточнениями:
ЕСЛИ получен сигнал на бай, ТО:
1) закрыть все прибыльные ордера селл;
2) открыть 1 ордер бай лотом, равным сумме лотов всех убыточных, но ещё не залокированных ордеров селл БЕЗ выставления ТП.
3) открыть 1 ордер бай стандартным лотом и с ТП.
ЕСЛИ получен сигнал на селл, ТО:
1) закрыть все прибыльные ордера бай;
2) открыть 1 ордер селл лотом, равным сумме лотов всех убыточных, но ещё не залокированных ордеров бай БЕЗ выставления ТП;
3) открыть 1 ордер селл стандартным лотом и с ТП.
ЕСЛИ получен сигнал разворота вверх, ТО:
1) закрыть все прибыльные ордера селл;
2) открыть 1 ордер бай лотом, равным сумме лотов всех убыточных, но ещё не залокированных ордеров селл БЕЗ выставления ТП. То есть мы входим в полный лок.
ЕСЛИ получен сигнал разворота вниз, ТО:
1) закрыть все прибыльные ордера бай;
2) открыть 1 ордер селл лотом, равным сумме лотов всех убыточных, но ещё не залокированных ордеров бай БЕЗ выставления ТП. То есть мы входим в полный лок.
Также заметим, что разворотный сигнал может быть взят тогда и только тогда, когда у нас имеется открытый незалокированный ордер.
Что касается ТП – то он выставляется только для тех ордеров, которые открываются по обычному алгоритму открытия – если получен сигнал на селл или бай.
ТП не выставляется для ордеров, открытых по алгоритму локирования.
Если ордер, имеющий ТП, залокирован, то этот ТП удаляется.
Добавлено: 25-10-2013 17:13:41
Я думаю, программисту не трудно при становлении в полный лок прописать функцию: "удалить ТП у всех ордеров"
Изменено 25 октября, 2013 пользователем Archmagister
Для публикации сообщений создайте учётную запись или авторизуйтесь
Перейти к списку тем