[Советник] QLT (Quantum)

От Serg33, 15 августа, 2016 в Лаборатория ProfitFX

Автор#1826


Could you please put back TimeMinuteOtlAgr setting as it seems to help reducing drawdown, I've been testing on the nzdusd between 30-90 and it does seem to help.

I ran some optimizations for the last 30 days based on Dimakya set just for testing purposes and see if how it could improve the drawdown from this week. The optimization was made on a Mt4 broker with 10 spread and TimeMinuteOtlAgr=90 setting did seem to help.

This resulting set was loaded on other platform which has 30 spread but in this case profit and drawdown got higher but at least this set made it possible for this account to survive in backtest of this week which it failed live on demo account as it was shown before.


Когда я сделал данную настройку, я просмотрел все сетки по всем парам за весь тестируемый период (с 1.05.2011 по настоящее время). При небольшом значении параметра попадалось много сеток, где обнуление накопленного объема ухудшало результат. Я увеличивал значение параметра, чтобы на эти сетки он не распространялся, и в результате дошел до значения 600 минут. Но и при таком значении хороший результат был лишь у двух сеток: одна по usdcad (уменьшилась просадка), вторая по eurgbp (та самая, недавняя). Причем, по тестам, eurgbp закрылась вполне нормально. К сожалению, в реальности, разные котировки и исполнение привели к тому, что некоторые сетки не смогли закрыться. Использование TimeMinuteOtlAgr дает не предсказуемый результат, может сделать лучше, а может хуже. Сбросив накопленный объем, мы рискуем тем, что сетка может не закрыться в нужном месте, т.к. очередной ордер окажется не достаточного объема. Поэтому для версии 1.60 я и написал предупреждение, что лучше в каждом конкретном случае принимать отдельное решение по использованию сброса накопленного объема. Я пока не вижу варианта автоматического сброса, только в ручную. Мне надо было сразу сделать кнопку, а не добавлять настройку.
30 дней для оптимизации - это очень мало, эти результаты нельзя рассматривать для торговли, только для получения каких-нибудь начальных значений, с которыми уже начинать оптимизацию за гораздо больший период.
Рекомендую присмотреться к использованию ATR. Я не случайно ввел эту настройку, она может заметно уменьшить просадку.
#1827



Could you please put back TimeMinuteOtlAgr setting as it seems to help reducing drawdown, I've been testing on the nzdusd between 30-90 and it does seem to help.

I ran some optimizations for the last 30 days based on Dimakya set just for testing purposes and see if how it could improve the drawdown from this week. The optimization was made on a Mt4 broker with 10 spread and TimeMinuteOtlAgr=90 setting did seem to help.

This resulting set was loaded on other platform which has 30 spread but in this case profit and drawdown got higher but at least this set made it possible for this account to survive in backtest of this week which it failed live on demo account as it was shown before.


Когда я сделал данную настройку, я просмотрел все сетки по всем парам за весь тестируемый период (с 1.05.2011 по настоящее время). При небольшом значении параметра попадалось много сеток, где обнуление накопленного объема ухудшало результат. Я увеличивал значение параметра, чтобы на эти сетки он не распространялся, и в результате дошел до значения 600 минут. Но и при таком значении хороший результат был лишь у двух сеток: одна по usdcad (уменьшилась просадка), вторая по eurgbp (та самая, недавняя). Причем, по тестам, eurgbp закрылась вполне нормально. К сожалению, в реальности, разные котировки и исполнение привели к тому, что некоторые сетки не смогли закрыться. Использование TimeMinuteOtlAgr дает не предсказуемый результат, может сделать лучше, а может хуже. Сбросив накопленный объем, мы рискуем тем, что сетка может не закрыться в нужном месте, т.к. очередной ордер окажется не достаточного объема. Поэтому для версии 1.60 я и написал предупреждение, что лучше в каждом конкретном случае принимать отдельное решение по использованию сброса накопленного объема. Я пока не вижу варианта автоматического сброса, только в ручную. Мне надо было сразу сделать кнопку, а не добавлять настройку.
30 дней для оптимизации - это очень мало, эти результаты нельзя рассматривать для торговли, только для получения каких-нибудь начальных значений, с которыми уже начинать оптимизацию за гораздо больший период.
Рекомендую присмотреться к использованию ATR. Я не случайно ввел эту настройку, она может заметно уменьшить просадку.


I understand that TimeMinuteOtlAgr can give worse results but in this demo I have, using 90minutes prevented from losing 5k$ in the backtest. For what I can see having bigger spreads can lead to a problem and limiting the lot size (which this setting does) can help reduce risk, I think this feature deserves to be there with a warning like you did.

For the little optimization it was used NumOrders, HighLowPoints, NumOrders2 and Wait. What does ATR mean by the way?

Also, how do you recommend doing optimizations, all settings, group of settings, is there a optimization set to be used?

Thanks

Автор#1828


I understand that TimeMinuteOtlAgr can give worse results but in this demo I have, using 90minutes prevented from losing 5k$ in the backtest. For what I can see having bigger spreads can lead to a problem and limiting the lot size (which this setting does) can help reduce risk, I think this feature deserves to be there with a warning like you did.

For the little optimization it was used NumOrders, HighLowPoints, NumOrders2 and Wait. What does ATR mean by the way?


Использование TimeMinuteOtlAgr - это лотерея, если в одной сетке показало хороший результат, то в другой приведет к сливу счета.
ATR (Average True Range) - индикатор в MetaTrader. Значения индикатора зависят от волатильности. В советнике используется для ограничения минимального расстояния между ордерами, т.е. вместо фиксированного HighLowPoints, используется ATR(ATRPeriod)*ATRkoef. Если ATR(ATRPeriod)*ATRkoef
Цитата


Also, how do you recommend doing optimizations, all settings, group of settings, is there a optimization set to be used?


Когда при оптимизации я нахожу подходящие варианты по доходности, просадке, профитфактору, то провожу тест с найденными параметрами. Дальше открываю график и смотрю все большие сетки и ищу варианты как скорректировать параметры советника, чтобы уменьшить эти сетки. Оптимизация - это только для поиска подходящих вариантов, а дальше ручная работа.
#1829

Обнаружил, что настройка минимального кредитного плеча влияет на тестирование, хотя по идее не должна? Хотя в настройках ТДС стоит плечо 500 и в настройках советника выставил 500. При использовании данного параметра в период с 05.2010 по 02.2013 сетки не строятся вообще.

Лог прилагаю. eurjpy, сет default 1.55, версия сова 1.60.

20170529.log15 скач.

Изменено 29 мая, 2017 пользователем WhiteLake

Автор#1830


Обнаружил, что настройка минимального кредитного плеча влияет на тестирование, хотя по идее не должна? Хотя в настройках ТДС стоит плечо 500 и в настройках советника выставил 500. При использовании данного параметра в период с 05.2010 по 02.2013 сетки не строятся вообще.

Лог прилагаю. eurjpy, сет default 1.55, версия сова 1.60.


Вот это да! Даже не думал, что плечо может опускаться до таких значений.
Цитата

2012.07.23 09:41:00 QLT v.1.60 rus EURJPYf,M1: EA25 - Order not open. Leverage = 1:378


Я, конечно, учел возможность небольших отклонений (несколько единиц), но что делать с такими отклонениями даже не знаю.
#1831

Вот это да! Даже не думал, что плечо может опускаться до таких значений.


Не совсем понимаю, как плечо может меняться при тестировании? Его же только брокер может менять.
Автор#1832


Вот это да! Даже не думал, что плечо может опускаться до таких значений.


Не совсем понимаю, как плечо может меняться при тестировании? Его же только брокер может менять.

Формулу для расчета плеча я приводил здесь: /laboratoriya-profitfx/24/sovetnik-qlt-quantum/14413/?do=findComment&comment=356704
Раз плечо меняется, значит меняются исходные данные.
#1833


Вот это да! Даже не думал, что плечо может опускаться до таких значений.


Не совсем понимаю, как плечо может меняться при тестировании? Его же только брокер может менять.

Что-то мне подсказывает, что в реале таких скачков не будет.
Напишите разработчику TDS. Может он предложит другой вариант или исправит очередную ошибку округления.
Прогнал на предпоследней bete - тоже плечо падает до 1:37х
Автор#1834

Разобрался я с этим плечом. Напомню формулу расчета:
Leverage = MarketInfo(Symbol(),MODE_TICKVALUE) * Bid / MarketInfo(Symbol(),MODE_MARGINREQUIRED) / MarketInfo(Symbol(),MODE_POINT),
где
MarketInfo(Symbol(),MODE_TICKVALUE) - размер минимального изменения цены инструмента в валюте депозита,
MarketInfo(Symbol(), MODE_MARGINREQUIRED) - размер свободных средств, необходимых для открытия 1 лота на покупку,
MarketInfo(Symbol(),MODE_POINT) - pазмер пункта в валюте котировки,
Bid - текущая цена продажи финансового инструмента.

Так вот, TICKVALUE и MARGINREQUIRED постоянно меняются вместе с ценой. Тестер берет текущие значения на момент старта и они не меняются до конца теста. Как видно из формулы, остается единственное изменяемое значение, это Bid. Таким образом, если цена падает, то вместе с ней падает плечо. Так что в тестере использовать данную настройку нет смысла.

#1835

Очень странно, у меня меняется в тестере, по крайней мере тиквалуе, правда я использую SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE) а не маркет инфо.

Автор#1836

Был не прав в части TICKVALUE, добавил в вывод знаков после запятой и оказалось, что все-таки меняется. Но вот значение MARGINREQUIRED неизменно. Так что принципиально ничего не поменялось.

#1837

В парах хххusd фиксирован TICKVALUE и плавает от цены MARGINREQUIRED, а в usdxxx наоборот.
В бездолларовых кроссах зависит от того какая валюта первая и вторая.

Автор#1838

Версия 1.62
1. В файле с внешним расписанием можно указывать комментарии к строкам. Комментарий отделяется от расписания знаком «;» (точка с запятой). Если поставить знак в начале строки, то вся строка будет считаться комментарием.
2. После сброса кнопкой накопленного объема, кнопка оставалась в нажатом состоянии. Исправлено.

QLT_1.62.zip165 скач.

#1839

Добрый день!
Занимаюсь оптимизацией советника под конкретный период времени суток.
Столкнулся с такой проблемой, что сделки, открытые, например, с оптимизированными под ночь настройками, не успевают закрыться ночью, начинается другой период - волатильный день, который затягивает QLT существенную просадку.
Можно ли сделать настройку, которая принудительно закроет все открытые сделки при выходе за очерченный в настройках период?

Автор#1840


Добрый день!
Занимаюсь оптимизацией советника под конкретный период времени суток.
Столкнулся с такой проблемой, что сделки, открытые, например, с оптимизированными под ночь настройками, не успевают закрыться ночью, начинается другой период - волатильный день, который затягивает QLT существенную просадку.
Можно ли сделать настройку, которая принудительно закроет все открытые сделки при выходе за очерченный в настройках период?


Довольно сомнительная настройка, крыть сетку в минус только из-за того, что вышло время. Не уверен, что будет польза от этого.
#1841

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


Бывали варианты, когда ручное закрытие сетки в небольшой плюс, спасало от слива на следующий день.
Закрывать сетку в минус действительно очень сомнительно, а вот дать сигнал на закрытие по времени (если в сете стоит ограничение), может и помогло бы. Без тестов не уверен.
Автор#1842

а вот дать сигнал на закрытие по времени (если в сете стоит ограничение), может и помогло бы


Сильно сомневаюсь, что в заданное время некоторые сетки выходят в плюс, тут четкого расписания нет.
#1843

Довольно сомнительная настройка, крыть сетку в минус только из-за того, что вышло время.


Ничего сомнительного в этом нет, в классическом варианте сетки, шаг (индикаторы и т.д) настраиваются на малую волатильность в азиатскую сессию, естественно с началом европейской сессии волатильность значительно возрастает, соответственно и риск "залёта". Вполне себе рабочая схема, не знаю правда, как с данным советником, не прорабатывал.
#1844

@Serg33

Could you please upload the results from your strategy tester for the 1.55 sets?

Автор#1845

Тесты по всем парам. QLT 1.62, сеты 1.55, период с 1.05.2011 по 3.06.2017.

QLT_1.62_set_1.55_audjpy_01.05.2011-03.06.2017.png
QLT_1.62_set_1.55_audusd_01.05.2011-03.06.2017.png
QLT_1.62_set_1.55_eurgbp_01.05.2011-03.06.2017.png
QLT_1.62_set_1.55_eurjpy_01.05.2011-03.06.2017.png
QLT_1.62_set_1.55_eurusd_01.05.2011-03.06.2017.png
QLT_1.62_set_1.55_gbpusd_01.05.2011-03.06.2017.png
QLT_1.62_set_1.55_usdcad_01.05.2011-03.06.2017.png
QLT_1.62_set_1.55_01.05.2011-03.06.2017.zip204 скач.

#1846

Фунтовые пары на завтра в игре кто-ть оставляет?

#1847


Фунтовые пары на завтра в игре кто-ть оставляет?


Думаю, что оставлю часов до 6, а потом остановлю через SchedulerFileName:
2017.06.08 18:00 - 2017.06.10 10:00
Если фунт замрет прямо с утра, то остановлю раньше.
#1848

Цитата: WhiteLake от Июнь 06, 2017, 06:47:02 pm
а вот дать сигнал на закрытие по времени (если в сете стоит ограничение), может и помогло бы
Сильно сомневаюсь, что в заданное время некоторые сетки выходят в плюс, тут четкого расписания нет.


Я ищу на оптимизации параметры в режиме "закрывать сетку в плюс = False". В таком режиме при переходе с ночи в день(более волатильный период), в большинстве случаев сетка закрывается в минус, и на визуализации видно, что если бы это делал QLT, скажем, в 9.00, то убвыток был бы меньше, хотя доказать достоверность этого предположения можно только при оптимизации.
P.S.: Было бы гениально, если бы под каждую сессию QLT выбирал настройки индикаторов для входа и выхода, которые максимально соответствуют волатильности данной сессии, а так приходится оптить параметры под каждый временной интервал и ставить отдельного советника для каждого интервала.
#1849
Serg33, вы периодически обновляйте первый пост топика, хорошо?
Хотя бы ссылки.

Или вот вы провели интересные тесты 1.62 с сэтами 1.55.
я догадываюсь, что сэты 1.55 надо искать в архиве релиза 1.55.
но я не знаю надо ли сэты 1.55 модернизировать под версию 1.62.

Просто учитывайте, что бот очень сложен, разработка длительная и новому человеку со стороны реально сложно устанавливать такие причинно-следственные связи.
Насколько возможно, поддерживайте возможность понимать происходящее в топике вновь приходящим в топик.
Автор#1850


Serg33, вы периодически обновляйте первый пост топика, хорошо?
Хотя бы ссылки.


Обновляю. Про 1.62 видимо забыл.
Цитата


Или вот вы провели интересные тесты 1.62 с сэтами 1.55.
я догадываюсь, что сэты 1.55 надо искать в архиве релиза 1.55.
но я не знаю надо ли сэты 1.55 модернизировать под версию 1.62.


Уже давно новые версии идут полным комплектом (советник, описание, сеты), так что искать ничего не нужно.
Добавил информацию про комплект.

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

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