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

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

#654

При проведении тестирования обратил внимание на некорректную работу. (Возможно в реале эта ситуация и не повторится).


Invictus, спасибо за отзывчивость и участие в совместной работе по поиску багов и улучшений советника.
По открытии завышенного лота - у меня также была такая ситуация в декабре месяце. На демосчету все отработало корректно, а в тестере советник на сильном движении закрывал 9-е или 10-е колено по ТП, а следующее открывал с гигантским начальным лотом. Если удастся воссоздать ситуацию в тестере, прикреплю к этому сообщению. Повторюсь на реальных торгах на демо-счету все отработало верно.
Автор#655

При наличии просадки большей, чем указано в параметре StopByMaxDD, советник всё равно продолжает открывать первую позицию на другой паре.


Формула супер простая и проверяется каждый тик: Drawdown = AccountProfit() * 100 / (AccountBalance()-AccountCredit());
где AccountProfit() - текущий профит всех пар. AccountCredit() - бонусы брокера, которые я не учитываю в просадке, потому что они не учитываются при расчете маржи.
Перед открытие ордера проверяется условие: если(Max_DrawDown > 0 и -Max_DrawDown > Drawdown) - запрет открытия ордера.
Я понятия не имею в чем тут может быть ошибка. Возможно у вас есть бонус, возможно терминал на долго подвис после подсчета просадки и взял старое значение, которое было уже не актуально. Но расчет идет каждый тик...

По приложенным скринам нихрена не видно. В коде ошибки не нашел. Каждый тик обновляются данные о сетке, после чего снова ищется сигнал. Добавлю дополнительную проверку на сумму открытых ордеров.

#656

К сожалению в логах тоже никакой дополнительной информации нет, кроме как открытия ордера. :(

Автор#657
Версия v.14.01.49
- добавил дополнительный перерасчет просадки перед работой фильтра запрета торговли по просадке StopByMaxDD (надеюсь ошибка в этом была, других мыслей просто нет)
- добавлена дополнительная проверка перед открытием нового ордера на наличие предыдущих в рынке (надеюсь теперь лот в тестере будет нормальным, просьба прогнать заново проблемный участок)
- добавлен параметр Level_for_LastOrderTP. Параметр отвечает за установку отдельного ТП для последнего ордера сетки. Параметр равен колену, с которого начинать выставлять отдельный ТП, значение не может быть меньше 3. ТП выставляется равным цене предпоследнего открытого ордера.
Т.е. когда мы открываем минимум 3 колено и параметр = 3 у нас все ордера высчитывают свой общий ТП. Далее 3й ордер считает и выставляет свой ТП. При закрытии третьего ордера в профит - тп оставшейся сетки пересчитывается. ТП 3его ордера не будет выставлен, если он выше общего ТП для покупок и ниже общего ТП для продаж.
ТейкПрофит поставил равным предыдущему колену, потому что это вполне логично - тем самым мы закрываем колено, как будто его и не было и надеемся, что сетка и дальше откатит. Менять на значение в пунктах не буду.
Имхо - этот параметр бессмысленный и только затормозит закрытие нашей сетки, когда наша главная цель - не дать сетке разрастись, а если уж дали - быстрее ее закрыть, пусть даже в БУ. Тут же мы будем ее кастрировать постоянно. Погоняете на визуале - поймете.

Вообще думаю добавить тралл. При включенном значении будет увеличение ТП в 2 раза, и активироваться тралл, когда он достигнет ТП/2 (т.е. того, что в настройках). Шаг тралла высчитывать от цены Безубытка. Т.е. при достижении тейка из настроек у нас появляется тралл с фиксированным шагом и заведомо в плюсе. Т.е. мы самое плохое закроемся в бу, самое лучшее - в увеличенный в 2 раза тп. Но это пока только мысли...

Generic_v.14.01.49_Martingale.ex474 скач.

#658

добавлен параметр Level_for_LastOrderTP


Вообще думаю добавить тралл.


Вот это очень круто. Rever27, спасибо большое вам за то, что прислушиваетесь к нашим мнениям и предложениям. =d>

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

tolyayugan будет очень рад. <:-p>
#659

Обещал скинуть скрины по ошибкам в предыдущем посту, но так, как вышло настолько важное обновление, делаю это отдельно.
Вижу причины возникновения ошибки не пересчитывания лота вновь открывшейся сетки:
- в закрытии старой и открытии новой в ту же секунду
- в закрытии старой сетки ВНЕ канала (что происходит крайне редко, только на больших выносах, новостях и т.п.) и открытии новой сетки там же и в том же направлении, так как цена же за каналом
- оба нюанса вместе.
На демо эта сетка у меня закрылась нормально за те же 10 колен, но на следующий день. Видимо, там при такой волатильности все по другому отыгралось. Скрины делал после прогонки в тестере на 44-й версии советника.
Но...
Проверил на новой 49-й - всё отработало исправно!
Rever27 - благодарность за потраченный труд и за обновление. ^:)^ Теперь есть над чем пошаманить)
P.S. Кстати тралл тоже в свое время обсуждался. Думаю, будет совсем не лишним с обязательной функцией вкл/выкл.

CADJPYграфик.jpg
CADJPYтестер_14.01.44.jpg
CADJPYтестер_14.01.49.jpg

#660

Вообще думаю добавить тралл. При включенном значении будет увеличение ТП в 2 раза, и активироваться тралл, когда он достигнет ТП/2 (т.е. того, что в настройках). Шаг тралла высчитывать от цены Безубытка. Т.е. при достижении тейка из настроек у нас появляется тралл с фиксированным шагом и заведомо в плюсе. Т.е. мы самое плохое закроемся в бу, самое лучшее - в увеличенный в 2 раза тп. Но это пока только мысли...


Это не часто, но точно будет работать.
#661

Имхо - этот параметр бессмысленный и только затормозит закрытие нашей сетки, когда наша главная цель - не дать сетке разрастись, а если уж дали - быстрее ее закрыть, пусть даже в БУ. Тут же мы будем ее кастрировать постоянно. Погоняете на визуале - поймете.


Прогнал несчастный EURCHF в TDS-2 с визуализацией от начала марта на новой версии советника. Понятное дело, активировал Level_for_LastOrderTP. На 6-м колене. Скрин внизу. Есть несколько замечаний.

1. Если время работы сета оригинальное (с 20 часов), то вся эта сетка даже бы и не родилась. Откорректированное время старта от 18.00 как раз и добавило несколько страниц на нашей ветке.

2. На ранних коленьях новый параметр не нужен. Оптимальный старт - за 2-3 колена от их максимального количества на истории тестирования.

3. ОЧЕНЬ ВАЖНО. Если советник не будет учитывать добытую прибыль от последних ордеров при подсчете общего ТП сетки, то от этого не будет пользы. Так мы действительно можем не закрыться автоматом. Только ручками, хотя и с хорошим наваром. Если успеем.... Как перевести прибыль, полученную от похода 8-го колена к 7-му, на сетке уже с 9 колен (представим, что сетка не закрылась и разрослась), не знаю... Здесь нужны идеи (как перевести профит на меньшем лоте в "икс", а потом от общего лота сетки, когда добавится еще ордер постарше, этот "икс" отнять; а может быть еще и "игрек" в промежутке, да так, чтобы в минусе не закрыться).
Сейчас советник это не учитывает. Тест показал, что, дойдя до максимального колена, и, спустившись вниз на несколько колен (собирая по дороге прибыль), ТП оставался на уровне, который выставился на максимальном колене.

4. Также, сейчас советник помнит только последнее колено. То есть, ТП 8-го колена закрылось на 7-м, цена пошла дальше, но ТП 7-го не закрылось на 6-м. Тоже самое произошло после 8 марта (см.скрин), когда цена откатилась от максимального колена и перестала закрывать профиты, которые были на 2-3 этажах ниже. Советник снова заснул на полторы недели до позавчера, когда залез на верхние этажи (на скрине этот участок не поместился, но он не важен - сетка все равно не закрылась).

На глаз могу прикинуть, что, чем большим будет множитель ATR (шаг между ордерами) и общий ТП, тем меньше надо будет срабатываний профитов по последнему ордеру для достижения общей прибыли.

EURCHFM15.png
EURCHFM15-2.png

Изменено 21 марта, 2018 пользователем tolyayugan

Автор#662

4. Также, сейчас советник помнит только последнее колено.


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

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

Спустя 17 дней и 13 колен сетка по EURCHF закрыта (сет Generic v.14.01.44 - EURCHF M15 - PaErshov v2).
Надо отметить, что закрытие произошло в пределах допустимого кол-ва колен и просадки согласно результатов тестов.

На мониторинге сет по EURCHF заменен на сет Generic v.14.01.44 - EURCHF M15 - Mr. Joker&tolyayugan v2.

Также стоит отметить, что в последний раз сетка по этому сету была закрыта с превышением кол-ва колен и, соответственно, просадки. l-)

Автор#664
Версия 14.01.50 (Тестовая)
- Добавлен параметр TrailingStartPercent - равен проценту до ТП, на котором начнется тралл сетки. При тралле отключается преждевременное закрытие сетки по фильтрам.

Тралл работает с первого ордера (так и задумано), на работу не влияет присутствие в рынке двух ордеров на бай и селл.
К примеру, если ТП = 30пп, а TrailingStartPercent = 50, то после прохождения ценой 15 пунктов от уровня безубытка до ТП выставляется СтопЛосс на уровне БУ. Далее каждый пункт прохождения в сторону ТП Стоп-Лосс передвигается на 1 пункт. Т.е. наша сетка находиться зажатой между тейком и СЛ, который не меньше Безубытка, и когда активируется тралл мы уже будем уверены, что сетка закроется в плюс и не будет больше разрастаться.

Параметр сделан чисто для проверки идеи. Его работу обязательно нужно проверить на визуале и в тестере на наличие ошибок.
На визуализации глазами посмотрел, он себя неплохо показал. Если его работа будет положительной, то будем совместными усилиями делать второй набор сетов с траллом, чтобы увеличить прибыль.
Имхо торговать 2 наборами сетов на 2х счетах более интересно. Диверсификация однако l-)

з.ы. Прогнал сет GBPCAD за год, результат лучше, если увеличить тп, но это на скорую руку.

Generic_v.14.01.50_Martingale.ex453 скач.
GBPCAD_M15_+_Trall.gif
GBPCAD_M15.gif

#665

Добрый день!Благодарю за труд,с интересом разбираюсь все выходные с советником.Очень любопытный.В связи с тем что forex4you по какой-то причине недоступен для резидентов моей страны,а запустить хотелось бы для начала на центовом, остановился на fоrextime однако у них на центовом запрещен скальпинг.


Скажите пожалуйста, кто нибудь имел дело с этим брокером?

Как считаете могут ли такую торговлю расценить как скальпинг и какие могут быть последствия?

Какого брокера с центовыми счетами посоветуете?

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

#666

Какого брокера с центовыми счетами посоветуете?


Робофорекс тоже у вас запрещен?
#667

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

Скажите, а у робо можно на обоих центовых пробовать торговать? потому что который fix он с ''моментальным исполнением''такой же как fоrextime, и я так понял что скальпить у них именно на таких счетах нельзя.(наверно потому что они не выводят их на рынок )

Автор#668
Версия v.14.01.51
Увидел идею в другом советнике и чисто ради эксперимента реализовал на ваш суд альтернативный метод расчета лота:
- добавлен параметр Same Grid Orders Lot Size - количество ордеров подряд, у которых лот будет одинаковым. При значении меньше, чем 2 - выкл и расчет идет как раньше.
пример:
Multiplier>3 level = 2, Same Grid Orders Lot Size = 2: 0.01-0.01-0.02-0.02-0.04-0.04-0.08-0.08-...
Multiplier>3 level = 2, Same Grid Orders Lot Size = 3: 0.01-0.01-0.01-0.02-0.02-0.02-0.04-0.04-0.04-0.08-0.08-0.08-...
и т.д.

Generic_v.14.01.51_Martingale.ex460 скач.

#669

Всем привет. Что то у меня последнее время много зависонов стало по парам чередуются. Поставил время минус 2 на фою думаю может сделки не по времени входят поэтому это и происходит, до этого вроде бы все шло ровно, дальше посмотрим!!! За сову автору спасибо!!!

#670

Что то у меня последнее время много зависонов стало по парам чередуются.


Да, обсуждали уже это. Было.
#671


Версия v.14.01.51
Увидел идею в другом советнике и чисто ради эксперимента реализовал на ваш суд альтернативный метод расчета лота:
- добавлен параметр Same Grid Orders Lot Size - количество ордеров подряд, у которых лот будет одинаковым. При значении меньше, чем 2 - выкл и расчет идет как раньше.
пример:
Multiplier>3 level = 2, Same Grid Orders Lot Size = 2: 0.01-0.01-0.02-0.02-0.04-0.04-0.08-0.08-...
Multiplier>3 level = 2, Same Grid Orders Lot Size = 3: 0.01-0.01-0.01-0.02-0.02-0.02-0.04-0.04-0.04-0.08-0.08-0.08-...
и т.д.



спасибо, бот неплохой, но на длительном отрезке сливает, прогнал с 2008 с вашим сетом, деп 1000, кухня альпари :(
#673

Уважаемый Старик, вы будете удивлены наверное, но есть мартышки которые проходят тест с 2008 и раньше >^-^

Изменено 27 марта, 2018 пользователем Grail555

Автор#674

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

#675

Я никакого сета к этому посту не прикладывал.



речь про Generic v14.01.44 - EURUSD M15 - Rever27.set, с ним на дальнем отрезке увы льет, котиры альпари >^-^
#676

речь про Generic v14.01.44 - EURUSD M15 - Rever27.set, с ним на дальнем отрезке увы льет


Ну так вы, как говорится, "Приз в студию!".

Выкладывайте результаты вашего тестирования в электронном виде, чтобы можно было увидеть на каких условиях оно было произведено и что не так с этим сетом. А то так зайти в тему и ляпнуть с порога, что навроде как бот ваш ничего, но по сути г***о - каждый может.
#677

Сетка по AUDCAD закрылась с минусом, так должно быть? Ветку перечитал ничего об этом не нашел.

#678

Сетка по AUDCAD закрылась с минусом, так должно быть? Ветку перечитал ничего об этом не нашел.


Значит плохо читал! Такая проблема была в ранних версиях бота, когда при перезагрузке терминала терялись ордера
В этой ветке проблема уже обсуждалась и была устранена
Ну или как вариант используешь свои сеты в которых такие настройки)))

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

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