Безиндикаторная мечта, или советник Tribunal

  • Автор темы Автор темы senchakv
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

genro

Активный участник
В данной ветке я преследую несколько целей:
- ведение и запись наблюдений, связанных с работой советника Tribunal;
- обсуждение с участниками форума алгоритма работы;
- ну и, конечно, продажа советника Tribunal, с целью увеличить свой оборотный капитал на рынке Форекс.

Принято.
Тогда подробнее про алгоритм работы, обсуждение которого является одной из Ваших целей. Буду благодарен если объясните параметры советника:
1. Что за уменьшитель риска в параметрах советника?
2. Как считается %лота?
3. поподробнее про каждый Dynamic parameters.
4. Как применяется Fibonacci в советнике?
5. Что за параметр прибыль за день (Percent profit per day).
 

senchakv

VIP-участник
Принято.
Тогда подробнее про алгоритм работы, обсуждение которого является одной из Ваших целей. Буду благодарен если объясните параметры советника:
1. Что за уменьшитель риска в параметрах советника?
2. Как считается %лота?
3. поподробнее про каждый Dynamic parameters.
4. Как применяется Fibonacci в советнике?
5. Что за параметр прибыль за день (Percent profit per day).

Алгоритм робота следующий.
Вначале выставляются два ордера buy и sell с одинаковым объемом - т.е. сразу лок.
Затем робот выставляет позиции по движению рынка. Когда одно из направлений закрывается по тралу, идет проверка на суммарный профит, если он больше 0, то закрываются все позиции. Эта ситуация случается чаще всего.
Если суммарный профит меньше 0, тогда:
- закрываем прибыльное направление;
- закрываем за счет этого профита часть противоположного направления, начиная с наибольшего убытка (если после этой процедуры остаётся один ордер противоположного направления, то он тоже закроется в минус, итог будет суммарный минус около -1% и робот снова запустит серию, случается тоже редко).

Этот блок работы называется "Отдельное закрытие направлений".

Далее, если у нас остаётся одно направление в работе после вышенаписанного, робот сам выставляет виртуальный SL в % от депозита с учетом зафиксированного профита.
Снова два варианта:
- если цена возвращается, закрываем в прибыль противоположное направление;
- если просадка доходит до SL, включается второй блок обработки, который называется "Суммарное закрытие направления".

При включении второго блока работы выставляется локирующий ордер + один обратный ордер. Объем обратного ордера зависит от параметра "(регулятор) лот обратного", который берётся в процентах от суммарного лока. По умолчанию 0.1, т.е. 10% от суммарного лока.
Таким образом, мы намеренно создаем перевес из расчета на то, что 70% - это флет, мат ожидание на нашей стороне.
После этого шага, ещё два варианта:
- если цена после SL идет на разворот, алгоритм через какое-то время выставит положительный лок, т.е. залокирует обратный ордер, и тогда возвращаемся к первому блоку работы.
- если цена идет по тренду, то робот будет выставлять ордера в сторону движения рынка, объем этих ордеров зависит от параметра "(регулятор) лот доливки", который рассчитывается как: фактический лот обратного * (регулятор) = лот доливки.

Если у нас в режиме второго блока происходит доливка по тренду, то включается дополнительный, третий блок работы "Обработка тренда".
При возврате цены против тренда, робот смотрит профит направления после Nой доливки, в параметрах это "порог для закрытия в ноль...", по умолчанию после второй доливки. Если профит направления равен 0, происходит локирование всех позиций и возвращаемся к первому блоку.
Трендовые ордера второго блока робот будет закрывать только в случае превышения параметра "разрешение закрытия...", и закрываться они будут тоже только по тралу. При этом варианте событий, профит колоссален.

Трал профита происходит по числам Фибоначчи с привязкой к % профита от депозита, а значения соответствующих параметров в настройках робота - это порядковые значения этих чисел, с которых начнётся трал. Если что-то непонятно, читайте Википедию про числа Фибоначчи.
 

senchakv

VIP-участник
Принято.
Тогда подробнее про алгоритм работы, обсуждение которого является одной из Ваших целей. Буду благодарен если объясните параметры советника:
1. Что за уменьшитель риска в параметрах советника?
2. Как считается %лота?
3. поподробнее про каждый Dynamic parameters.
4. Как применяется Fibonacci в советнике?
5. Что за параметр прибыль за день (Percent profit per day).

Про параметры.
1. делитель депозита, который будет видеть робот
2. Вот так:
Код:
Expand Collapse Copy
     double necessary_=(percent_lot/100)*GlobalVariableGet(identifier+"_balance");
     double lot;
     double minlot=MarketInfo(Symbol(),MODE_MINLOT);
     double sumlot=0;
     double tmp_profit=0;
     double range;
     double _dot=ask+30*pp;
   
     while(tmp_profit<necessary_)
     {  
       tmp_profit=0;
       sumlot+=minlot;
       range=ask;
       tmp_profit+=(_dot-range)*dd*cost(Symbol(),digits,sumlot);
     }
     lot=sumlot;

3. Большинство уже описал выше, остальное - догадывайтесь.
4. Уже описал.
5. Это параметр суточного профита. Если после закрытия всех позиций суточный профит был достигнут, робот перестанет открывать позиции.
 

senchakv

VIP-участник
Где задается шаг через который открываются ордера по тренду?

Параметр "(регулятор) шаг доливки после лока". Выражен в процентах.

За набор начальных позиций отвечает параметр "exponent_reverse_grid". Порядок числа Фибоначчи.
 

senchakv

VIP-участник
Разберём текущую ситуацию на рынке с учетом открытых позиций (скриншот прикрепляю к сообщению).
На данный момент имеется существенный перевес по направлению sell.
Тут может быть два варианта:
- если будет откат вверх, то роботы закроют свои sell'ы, а затем зафиксируют свои позиции buy;
- если продолжится тренд вниз, роботы будут и дальше накапливать позиции sell и выйдут в профит там.

Я это называю "цена в ловушке".

Текущая рыночная ситуация.
Цена ушла в откат. Все роботы закрыли свои sell'ы.
Большинство роботов закрыли свои серии и начали работу заново.

Остался один робот, который держит позиции.
Варианты следующие:
- цена откатывается наверх и он закрывает все свои позиции;
- цена уходит вниз до отметки 1.0730 и робот снова локирует позиции.

Всё работает в штатном режиме.
 

backlagan

Новичок форума
После движения в пятницу по EUR закрыл серию, но "борода" больше, чем закрытый профит.


Еще вопрос к автору. Чем принципиально ваш робот отличается от Integra 2.8.20? По описанному алгоритму все довольно похоже.
 

Вложения

  • Снимок экрана (1).png
    Снимок экрана (1).png
    445,3 КБ · Просмотры: 77
Последнее редактирование:

SW111

Гуру форума
хмм...а если в трибунал посадить магик ноль, сможет ли он выписать люлей просевшему ручному ордеру?
 

senchakv

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


Еще вопрос к автору. Чем принципиально ваш робот отличается от Integra 2.8.20? По описанному алгоритму все довольно похоже.

Закроет позже значит.

Ну как минимум кодом. Аналогов у Трибунала нет.
Если хотите - используйте Интегру.
 

SW111

Гуру форума
пора помериться трибуналами :not-bad:
как мы видим просадка у меня почти никакая, а профит даже больше или равно трибунальному профиту какого-то левого чувака справа :laugh:
 

Вложения

  • мой трибунал.png
    мой трибунал.png
    25,6 КБ · Просмотры: 69
  • трибунал какого-то чувака ).png
    трибунал какого-то чувака ).png
    27,9 КБ · Просмотры: 64

senchakv

VIP-участник
Как не печально признавать, счет слит.

Но причина кроется НЕ в советнике Tribunal v.1.
Более того, я уверен на 99%, что у всех, кто запускал Трибунал, всё в порядке.

Почему так получилось?
Это случилось из-за тестирования разруливателя на счёте.

На данном счёте я запускал различные модификации советника FG.
В частности, данный советник был запущен на парах: GBPUSD, WTI, GBPNZD, USDJPY и это при работающем Трибунале.
Произошел достаточно серьёзный перегруз маржи.
Но счёт слился даже не из-за этого. Я совершенно забыл, что у брокера ForexStart на центовых счетах имеется ограничение по количеству одновременно открытых позиций, а именно 50 штук.
Сегодня разруливатель FG дошел до максимального количества ордеров и более он ничего не смог сделать. Из-за этого просадка резко подскочила, что и привело к маржин колу.

Далее я расскажу детально про советник FG.
 

backlagan

Новичок форума
У меня не слит, правда, чего-то он сегодня серию с минусом закрыл (-25.19). "Борода" не уменьшается и составляет - 366 на настоящий момент.
 

backlagan

Новичок форума
Сегодня разруливатель FG дошел до максимального количества ордеров и более он ничего не смог сделать. Из-за этого просадка резко подскочила, что и привело к маржин колу.
Похоже на аптекаря из "Неуловимых мстителей", который бильярдным шаром подорвал свою аптеку. :)
 

senchakv

VIP-участник
FG (разруливатель)

FG - это робот полуавтомат. В его основе лежит сеточная технология, ордера устанавливаются от рынка.

Его особенности:
- выход в заданный профит через N пунктов (величина профита и пункты задаются в настройках);
- он способен подхватывать ордера других роботов и разруливать их;
- он способен разруливать ручные ордера;
- советника можно использовать отдельно по вашим сигналам, например: если вы хотите сейчас продавать, ставите советник и задаёте ему нужным вам профит.

Его минусы:
- необходимо вручную задавать точку старта для сетки (по умолчанию - 0, необходимо всегда задавать точку старта);
- робот не предназначен для мультивалюты, поэтому если на счету позиции на нескольких валютах с одним магиком, тогда этот робот не подойдёт;
- для ручных ордеров тоже самое.

Замечание:
- точку старта лучше всего устанавливать на ближайших экстремумах цены (как и для любой стоповой сетки), но не слишком далеко от текущей цены, иначе при малом шаге сетки ордера могут установиться все в одном месте.

Тестировать его не имеет смысла, потому что это полуавтомат.

Параметры:
Код:
Expand Collapse Copy
extern string identifier = "_1";

extern string _tm = "Working hours";
extern int    hour_start = 4;
extern int    hour_end = 20;

extern string v_    ="Virtual deposit. (to disable - 0)";
extern double virt_dep = 0;

extern string v__    ="Dynamic virtual deposit. (to disable - 0)";
extern double virt_coef = 0;

extern string din = "Dynamic parameters";
extern double percent_profit   = 1.0;

extern string pppd = "Percent profit per day";
extern double percent_day = 1;

extern double coef3 = 0.4;//регулятор сетки(kol)
extern double coef4 = 0.1;//регулятор сетки(step)
extern int    _range = 100;//диапазон
extern double _price = 0;//стартовая цена

extern string fr = "The prohibition of work on Friday";
extern bool   on_friday_work = false;

extern string _magic = "Unique number";
extern int    magic = 1;

По порядку опишу.
1) При каждой новой установке разруливателя необходимо менять идентификатор! Чтобы роботы в одном терминале не мешали друг другу.

2) Начало и конец работы (если нет позиций под его магиком).
3) Ограничители рисков идентичны, как в Трибунале.
4) percent_profit - профит в % от депо, который вы хотите заработать
5) percent_day - если позиций нет и текущий зафиксированный профит больше этого параметра, советник не будет ставить ордера. Это некий стопор.
6) coef3 = 0.4;//регулятор сетки(kol) - математическая формула такая: _range * coef3 = количество пунктов, через которые будет заданный профит (по умолчанию 40 пипсов)
7) coef4 = 0.1;//регулятор сетки(step) - формула: _range * coef4 = шаг сетки (по умолчанию 10 пипсов)
8) _range = 100;//диапазон - описал в 7. и в 8. пункте зачем он нужен.
9) _price = 0;//стартовая цена - здесь всё понятно.
10) флаг работа в пятницу
11) Магик либо ставим свой - работаем отдельно, либо чужой - разруливаем чужие позиции.

Выкладываю DEMO версию.
 

Вложения

Статус
Закрыто для дальнейших ответов.
Верх