[Советник] [Мартингейл] Generic v.14📌

От Rever27, 7 апреля, 2017 в Лаборатория ProfitFX

#804

"Generic v.14.01.45 Martingale USDSGD,M15: OrdersClose: Не удалось закрыть существующий ордер №482556087. Ошибка №: 129 - Неправильная цена bid или ask, возможно, ненормализованная цена. Необходимо после задержки от 5 секунд обновить данные при помощи" (дальше текст обрывается).



Это ошибка брокера, нет цены по которой советник пытается закрыть ордер.
У меня пару раз тоже выдавалась подобная ошибка, когда сетка закрывалась на новостях.
#805
В продолжение моего предыдущего сообщения
Та же самая ошибка (№129), но от 02.05.18 и на реальном счете (Стандарт, Альпари).
За этот день ошибка проявилась сразу на двух парах AUDNZD с версией советника 14.01.45 и USDSGD с версией советника 14.01.55 (ниже приложу скрины вкладки "Эксперты" за полные сутки 02.05.18), но подробнее распишу ситуацию с USDSGD, последствия которой я наблюдаю сейчас.
События развивались в таком порядке:
1) Сетка на продажу по USDSGD начала строиться 30.04.18 и на 02.05.18 состояла из 7 ордеров.
2) 02.05.18 в 21:15:19 советник закрывает последний (самый крупный) ордер. И в эту же самую секунду он начинает пытаться закрыть следующий по порядку ордер, но вылазит ошибка. Советник делает 10 попыток закрыть этот ордер до 21:15:50, и каждый раз во вкладке "Эксперты" вылазит одинаковое сообщение об ошибке. С одиннадцатой попытки в 21:15:54 он все-таки успешно закрывает следующий ордер (файл - вкладка Эксперты 4).
3) В эту же секунду (21:15:54-21:15-55) советник успешно закрывает следующие по порядку 3 ордера (итого остается 2 незакрытых).
4) Дальше он с помощью этой ошибки упирается в предпоследний ордер и делает по 11 последовательных безуспешных попыток закрыть сначала предпоследний оставшийся ордер (21:15:55-21:16:29), а затем и последний (21:16:33-21:17:07).
В итоге, не сумев их закрыть, в 21:17:14 и 21:17:16 советник выставляет для двух незакрытых ордеров новый TP, который находится на значительном расстоянии от текущей цены. (файл - вкладка Эксперты 5)
5) 2 ордера остаются висеть в рынке с уровнем TP и безубытком, который находится очень далеко от текущей цены. И непонятно, что с ними теперь делать:
- Закрыть их руками в минус (то, что должен был сделать советник в момент закрытия остальных ордеров)? С таким раскладом вся закрытая сетка (даже с учетом этих незакрытых ордеров) до сих пор будет у меня в плюсе.
- Либо ждать дальнейшего развития ситуации с этими "брошенными" советником ордерами?

скрин_AUDNZD.png
скрин_USDSGD.png
Вкладка_Эксперты_1.png
Вкладка_Эксперты_2.png
Вкладка_Эксперты_3.png
Вкладка_Эксперты_4.png
Вкладка_Эксперты_5.png
Вкладка_Эксперты_6.png

Изменено 3 мая, 2018 пользователем Karnag777

#806

Пожалуйста, торгуйте на ecn-счетах. И не будет подобных ошибок |3=3

#807

А это ожидаемое построение сетки? Не закрывшись, открыл ордер в другую сторону.

Знімок_екрана_2018-05-07_о_11.33.33.png

#808


А это ожидаемое построение сетки? Не закрывшись, открыл ордер в другую сторону.


Да это нормально.
#809

Еще соображения по поводу частичного закрытия. Если мы просто закрываем по тейку последний ордер, это не особо приближает закрытие сетки, скорее отдаляет.

Закрывать два последних "в ноль" тоже нехорошо, есть вариант закрывать последний и первый, в ноль или в определенный плюс.

На обычной сетке такое опробовал, выглядит на первый взгляд неплохо. Как будет на безоткатной - неясно.

Вариант- накапливать закрытый профит, то есть проверять сумму, закрытую по последним ордерам сетки, и если в какой - то момент накопленный профит превысит плавающий убыток или определенную его часть, закрыть сетку.

#810

В версии советника v.14.01.49 в настройках стоит StopByMaxDD=3, просадка под 4% и новый ордер открывается.
Раньше стояла более старая версия и фильтр по просадке работал четко. Только у меня такая проблема на версии v.14.01.49?

#811

Хотелось бы уточнить у тех кто торгует в реале,один я такой попал,или у кого то тоже сильные отличия от мониторингов?

Безымянный111.png

#812

Хотелось бы уточнить у тех кто торгует в реале,один я такой попал,или у кого то тоже сильные отличия от мониторингов?


А что у Вас с каналом? Его трехлетний ребенок рисовал? Из-за этого нарушена вся геометрия сетки. Каждый раз, когда в канале при рабочей сетке пробоина или его края уходят в небеса, советник пропускает открытия ордеров. Меняя таймфрейм, перезагружая терминал очень легко словить такое западло (хоть и не всегда), и ничем его нельзя исправить. С какой версии началось, не знаю. Вопрос задавал 10 постов назад. Но автор молчит. Нету ответов ни на предложения по доработке, ни на замеченные баги в работе советника.
Даже, если эти ответы просты или негативны, хотелось бы все равно видеть некую реакцию...
#813

Хотелось бы уточнить у тех кто торгует в реале,один я такой попал,или у кого то тоже сильные отличия от мониторингов?


В случае наличия открытого ордера по инструменту, на графике этого инструмента нежелательно менять ТФ.

Если очень хочется посмотреть на ситуацию на иных ТФ - просто откройте лишний график рядом и смотрите.
Автор#814

Даже, если эти ответы просты или негативны, хотелось бы все равно видеть некую реакцию...


Нововведений не будет, мне предложения не интересны. Те, что были интересны - тралл, один лот на несколько ордеров были благополучно похерены форумом. Я реализую только то, то меня хоть как то цепляет.
Сейчас меня полностью устраивает работа советника. Он стоит на ПАММе и сигналах, и ошибок не сыпет никаких. Альпари Pro.ECN. Кто не хочет разбираться в настройках - уже давно присоединились к моему счету.

просадка под 4% и новый ордер открывается.


Не должен открываться только новый ордер по другой паре, если у вас уже началась строиться сетка - ордера будут продолжаться строиться. Так и задумано.
Если сов открывает дополнительные ордера по другим парам, то вот формула советника:
Drawdown = AccountProfit() * 100 / (AccountBalance()-AccountCredit());
if(Max_DrawDown > 0 && Drawdown

Попробуйте найти ошибку.



Хотелось бы уточнить у тех кто торгует в реале,один я такой попал,или у кого то тоже сильные отличия от мониторингов?


Почему канал рисуется криво - не могу знать. Косяк данных индикатора. ТФ естественно не нужно переключать, когда на нем идет торговля.



"Generic v.14.01.45 Martingale USDSGD,M15: OrdersClose: Не удалось закрыть существующий ордер


Советник пытается 10 раз закрыть ордер с паузой 3 секунды. Если не выходит - он забивает на них. Возможно проблема была в том, что проскальзывание по умолчанию установлено слишком маленькое для данного типа счета. Сделал в новой версии 30 попыток закрытия и 5 секунд паузы. Рекомендую использовать ECN счета.

Версия в тестере идентична старой 46 версии, тралл оставил.

Generic_v.14.01.58_Martingale.ex449 скач.

#815

Не должен открываться только новый ордер по другой паре, если у вас уже началась строиться сетка - ордера будут продолжаться строиться. Так и задумано.
Если сов открывает дополнительные ордера по другим парам, то вот формула советника:


Советник открывает новые ордера по другим парам. В версии v.14.01.46 всё работало как часики, а поставил версию v.14.01.49 и фильтр по просадке немного хромает. В описании к версии v.14.01.49 (– Добавлен дополнительный перерасчет просадки перед работой фильтра запрета торговли по просадке StopByMaxDD.), может здесь что-то не так?
#816

Почему канал рисуется криво - не могу знать. Косяк данных индикатора.


Данный советник - индикаторный. Если ключевым условием открытия ордеров является касание цены канала или нахождение ее за каналом, то бот ни в коем случае не должен терять этот канал. Будь это смена таймфрейма, перезагрузка терминала или ВПС, будь то с вины трейдера, брокера или ВПС. И все чаще на скринах участников ветки появляются корявые каналы (раньше такого не было). Лично никогда не переключаю ничего и не перезагружаю, но от перезагрузки ВПС никак не застрахован. К сожалению, сам пострадал именно от такой же ситуации.

В ветке разработки дженерика мельком тема также затронулась - /laboratoriya-profitfx/24/open-source-sovetnik-generic-a-tlp/13593/?do=findComment&comment=397743
Насколько я понял, после некоторых ситуаций советник может быстрее построить канал, чем терминал загрузит все свечи. Если такое нельзя исправить, то пусть форум посоветует, как с этим бороться. Нельзя просто замалчивать проблемы или не обращать на них внимания, ведь у каждого может подобное случится.
Со своего опыта делюсь - проблемы нет, когда терминал перегружается вручную или советник на графике переинициализируется. Видимо стрессом является внезапное выключение ВПС или смена таймфрейма, и то не всегда. И если период канала Боллинджера небольшой - то и фиг с ним. А вот если в настройках забито много свечей в периоде канала, а нарушение его границ совпало с движухой против трейдера, как у с max01, то выпутаться уже сложнее.

Повторю незыблемый постулат многих отписавшихся здесь ранее, из-за которого куча идей по доработке не взялась во внимание - "вмешиваться в построение советником сетки категорически нельзя"...
Автор#817

В версии v.14.01.46 всё работало как часики, а поставил версию v.14.01.49 и фильтр по просадке немного хромает.


Пробуйте, отписывайтесь.

Generic_v.14.01.59_Martingale.ex447 скач.

#818

Удалено.

Изменено 22 мая, 2018 пользователем altiveus

#819


В версии советника v.14.01.49 в настройках стоит StopByMaxDD=3, просадка под 4% и новый ордер открывается.
Раньше стояла более старая версия и фильтр по просадке работал четко. Только у меня такая проблема на версии v.14.01.49?


то же самое. Но 49 версия не будет развиваться, надо ставить последнюю версию, или руками править лишнее.



Добавлено: 17-05-2018 06:52:21


Почему канал рисуется криво - не могу знать. Косяк данных индикатора.


Данный советник - индикаторный. Если ключевым условием открытия ордеров является касание цены канала или нахождение ее за каналом, то бот ни в коем случае не должен терять этот канал. Будь это смена таймфрейма, перезагрузка терминала или ВПС, будь то с вины трейдера, брокера или ВПС. И все чаще на скринах участников ветки появляются корявые каналы (раньше такого не было). Лично никогда не переключаю ничего и не перезагружаю, но от перезагрузки ВПС никак не застрахован. К сожалению, сам пострадал именно от такой же ситуации.

В ветке разработки дженерика мельком тема также затронулась - /laboratoriya-profitfx/24/open-source-sovetnik-generic-a-tlp/13593/?do=findComment&comment=397743
Насколько я понял, после некоторых ситуаций советник может быстрее построить канал, чем терминал загрузит все свечи. Если такое нельзя исправить, то пусть форум посоветует, как с этим бороться. Нельзя просто замалчивать проблемы или не обращать на них внимания, ведь у каждого может подобное случится.
Со своего опыта делюсь - проблемы нет, когда терминал перегружается вручную или советник на графике переинициализируется. Видимо стрессом является внезапное выключение ВПС или смена таймфрейма, и то не всегда. И если период канала Боллинджера небольшой - то и фиг с ним. А вот если в настройках забито много свечей в периоде канала, а нарушение его границ совпало с движухой против трейдера, как у с max01, то выпутаться уже сложнее.

Повторю незыблемый постулат многих отписавшихся здесь ранее, из-за которого куча идей по доработке не взялась во внимание - "вмешиваться в построение советником сетки категорически нельзя"...



Пока вроде такого глюка не было, терминалы перезагружаю часто, таймфреймы меняю вроде. Единственно, ВПС не перезагружаю. Возможно стоит его не перезагружать с открытыми ордерами. Насчет таймфреймов не знаю

Добавлено: 17-05-2018 06:58:29


Даже, если эти ответы просты или негативны, хотелось бы все равно видеть некую реакцию...


Нововведений не будет, мне предложения не интересны. Те, что были интересны - тралл, один лот на несколько ордеров были благополучно похерены форумом. Я реализую только то, то меня хоть как то цепляет.



Я бы не сказал, что похерены. Попытки были, в итоге пока не удалось насколько вижу придумать что-то стоящее. Тема популярная, сов хороший - может еще будут идеи от которых сложно будет отказаться

Изменено 17 мая, 2018 пользователем nevvermind

#820

Идея. Добавить лок вместо открытия сетки ордеров или стопа, как в оригинальном генерике. То есть. Если цена против открытого ордера доходит до величины стопа, открывается ордер тем же размером в противоположную сторону. Лок сохраняется до поступления следующего сигнала по алгоритму советника. Когда советник дает следующий сигнал, то противоположный сигналу ордер закрывается. Когда приходит сигнал на закрытие по логике советника, то если ордер оставшийся от лока оказывается в прибыли, то он просто закрывается. А если нет, то ставится новый локирующий ордер уже на новом значении. Кроме того, когда есть лок и приходит новый сигнал можно не только раскрывать лок, но и открывать дополнительный ордер, чтобы быстрее компенсировать плавающий убыток от лока. То есть добавляется элемент мартина.
С помощью лока можно пережидать всю дневную волатильность и разруливать все в ночное время.

#821

Цитата: DmSitif от Май 15, 2018, 07:38:46 pm
В версии v.14.01.46 всё работало как часики, а поставил версию v.14.01.49 и фильтр по просадке немного хромает.
Пробуйте, отписывайтесь.



Поставил версию Generic v.14.01.59, StopByMaxDD=3. Просадка по паре GBPAUD больше 4% и снова открывается первый ордер на другой паре USDSGD. Что-то не работает фильтр StopByMaxDD.
Автор#822

Что-то не работает фильтр StopByMaxDD.


Ведь можно приложить логи, скрины и другую информацию? Я Ванговать не умею. В коде ошибки я не вижу, 10 раз уже пересмотрел.

StopByMaxDD должен писаться в процентах без знака минус в настройке совы.
Расшифровываю код, что выкладывал выше:
Советник берет текущую прибыль, которая высчитывается как: Текущий профит * 100 / (Баланс аккаунта - кредиты аккаунта).
Если есть просадка, то значение будет со знаком минус. Далее подставляет его для сравнения: если -StopByMaxDD > прибыль, значит:
Идет сравнение направления текущей сделки и возможных сделок в рынке по этой же паре. Сделано это по предложению автоматического разрешения открытия противоположного направления по той же паре ранее в этой ветке. Т.е. если у нас сейчас sell, а в рынке есть buy по USDSGD, то мы все равно входим, не зависимо от просадки.
Если же нет по паре противоположных ордеров - идет блокировка.

Нужно проверить график на наличие надписи: "Filter ON: MaxDD" оранжевого цвета в период открытия ордера по USDSGD. Возможно, именно в момент открытия просадка была 2,99%, позже уже стала ниже.
Проверить статус в панели, возможно он сохранил надпись: "Filter ON: MaxDD".
Проверить лог, который раз в 15 минут должен был выдавать сообщение о блокировки, а именно:
"Open | Просадка по счету превышает максимально допустимую. Ордер " + _OrderType + " не был открыт.";
Проверить лог на надпись: "Open | Разрешен вход на " + _OrderType + " для пары, уже находящейся в рынке при просадке больше " + DoubleToStr(Drawdown) + "%";

Если нигде ничего нет, значит я вообще не разбираюсь в программировании MQL, гнать меня из этой ветки, продолжать работать без фильтра по просадке.
#823


Цитата: DmSitif от Май 15, 2018, 07:38:46 pm
В версии v.14.01.46 всё работало как часики, а поставил версию v.14.01.49 и фильтр по просадке немного хромает.
Пробуйте, отписывайтесь.



Поставил версию Generic v.14.01.59, StopByMaxDD=3. Просадка по паре GBPAUD больше 4% и снова открывается первый ордер на другой паре USDSGD. Что-то не работает фильтр StopByMaxDD.

/laboratoriya-profitfx/24/razrabotka-metodologii-testirovaniya-i-dovodki-botov-na-forume/14426/?do=findComment&comment=301616
Пункт "Рекомендации о том, как надо информировать программиста о возможной ошибке в боте или непонятках в тестах"
http://tradelikeapro.ru/logi-terminala-metatrader4/

Ну а вообще-то разница в 1% в просадке на любом депозите ничтожно мала.
и, если вы глянете в терминал через 10 секунд после открытия ордера и увидите там 4%, то это абсолютно не значит, что в момент открытия ордера было >3%.

Коллеги, я никого не хочу обижать, но должен как-то предельно внятно объяснить...
Вы или предоставляете логи и скрины, объективно подтверждающие наличие проблемы и что вам не кажется - или не предоставляете.
Если НЕ предоставляете и "на пальцах" включаете режим сказочницы Шехерезады из "Сказок 1001 ночи", то программисту не с чем работать, ваша проблема не решается и существует очень высокий шанс быть посланным программистом нахер.
Если вы предоставляете логи и скрины, то программист видит и решает проблему и все счастливы.
И только вы определяете как будет: ваша проблема будет быстро и качественно устранена - или вас пошлют нахер.
#824

Ведь можно приложить логи, скрины и другую информацию? Я Ванговать не умею. В коде ошибки я не вижу, 10 раз уже пересмотре


Извините но скрин не сделал, следующий раз приложу. Просадка по паре росла и росла, вроде меньше 3% не могла быть. Глянул логи, когда стояла старая версия, то ограничение по просадке писались. С более новыми версиями такого нет. Может я что-то затупил в настройках. :-o Логи и настройка двух пар в архиве.
Ещё небольшой нюанс, поставил в виде эксперимента параметр TP: Include Swap and Comission=true и на первых секундах нового дня советник пытается изменить тейк, но получает от сервера, что рынок закрыт. В логах это отражено. И всё, больше советник не делает попыток изменить тейк. Может стоит это делать после 0:05 серверного времени, тогда точно у большинства брокеров рынок открыт.

logs.rar6 скач.

Изменено 22 мая, 2018 пользователем DmSitif

Автор#825

В логе по USDSGD вообще нет информации об открытии этого ордера. Собирайте нормальную информацию, логи торговли хранятся в двух местах: отчетах и журнале. Ищите надписи на графике, в журнале. Логи также должны быть включены в настройках Logging Mode = ALL.

Может стоит это делать после 0:05 серверного времени, тогда точно у большинства брокеров рынок открыт.


У большинства НОРМАЛЬНЫХ брокеров рынок НЕ закрывается на ночь.
Добавил 5 минут к пересчету БУ каждый день, для сетки это абсолютно не смертельно.

Generic_v.14.01.60_Martingale.ex4288 скач.

#826

В логе по USDSGD вообще нет информации об открытии этого ордера. Собирайте нормальную информацию, логи торговли хранятся в двух местах: отчетах и журнале. Ищите надписи на графике, в журнале. Логи также должны быть включены в настройках Logging Mode = ALL.


В настройках Logging Mode = ALL.
Как нет, вот открывается первый ордер:
21.5.2018 22:50 OpenTrade: ордер на BUY открыт по цене 1.34087. Ширина канала: 20.4 пунктов. Спред: 0.2
а затем уже строится сетка USDSGD:
22.5.2018 3:22 OpenTrade: ордер на BUY открыт по цене 1.33915. Ширина канала: 11.1 пунктов. Спред: 0.3


У большинства НОРМАЛЬНЫХ брокеров рынок НЕ закрывается на ночь.
Добавил 5 минут к пересчету БУ каждый день, для сетки это абсолютно не смертельно.



Спасибо. IC Markets вроде нормальный брокер. Но сигнал на пересчет БУ посылается в первых 2 секундах дня и получается такая петрушка.

Добавил в архив ещё один журнал. Ничего не пишется на графике и надпись, что просадка превышена не выводится. На старых версиях всё работало как часики, что-то сломалось в новых версиях, а может я затупил в настройках. Вот в этом бы и хотелось разобраться.

logs.rar12 скач.

#827

Поставил версию Generic v.14.01.60. Пересчет ТП в начале дня теперь работает. Спасибо. ^:)^
Теперь ждем просадки для теста фильтра StopByMaxDD.

#828

Уважаемый Rever27, снова идеи два вопроса. :d

Первый. Можете отреагировать на пост /laboratoriya-profitfx/24/sovetnik-martingeyl-generic-v-14/16148/?do=findComment&comment=397480 Собрано 15 лайков.

Второй распишу подробнее.
Пришла идея кинуть на опт параметры CCI не в пару свечей, а равные дням-неделям. Вот скрины, полученные с последним сетом по AUDCAD (ver.56), период ССI почти 1000 (10 дней):

Спойлер


Спойлер


Спойлер


Я изменил буквально несколько параметров. По хорошему, надо делать полный опт, но целью было получить не сет, а результат. У меня он вышел не сразу и не на первой паре.

Плюсы:
- входы получились только в периоды сильной перекупленности на sell и сильной перепроданности на buy - на периоде, равном 10 дням
- все старты разворотов трендов были пропущены, первые коленья открывались с хорошим запасом в 150-200 п от хая/лоу предыдущего тренда (на втором скрине видна сетка, которая у многих просела или слилась месяц назад)
- максимум 6 колен, сетки минимальные, onTester почти 8 за 6,5 лет
- возможность увеличения времени торговли (открытие не только ночью, при полной переоптимизации)

Минусы:
- существенное обрезание количества сделок, что уменьшает выборку (здесь оговорка - полный опт всех параметров не проводился по причине, указанной выше)
- были пропущены все "вкусные" периоды флета
- торговля ведется не по среднесрочному тренду
- неделями, а то и месяцами в одну из сторон (на buy или sell) сделки не будут открываться
- то, что у меня получилось, далеко не на всех парах можно повторить (пробовал)

Чтобы получился результат, пришлось ставить довольно большое значение уровней CCI, мне не нравится малое количество сделок в итоге. Вот и вопрос следующий - можно ли дополнительно хакнуть настройки CCI, чтобы была возможность торговать между уровнями
- на прорыв уровня снизу вверх (only buy)
- на прорыв уровня сверху вниз (only sell)
Или же просто выставить реверс CCI - выйдет торговля по тренду при пробое уровня. Может, понадобятся для этого еще два дополнительных уровня или "0", как константа.
Цель - увеличить количество сделок, чтобы подгонка под историю вышла меньшей.

Также, в єтом случае хорошо бы помог стоп-лосс по последнему ордеру (первый вопрос).

Изменено 27 мая, 2018 пользователем tolyayugan

Для публикации сообщений создайте учётную запись или авторизуйтесь

Перейти к списку тем
Форум · 2.0.20260627.0025