Полииндикаторы - Polyindicators

Несколько Франкенштейнов могут быть обьединены в сеть: часть агентов будут создавать торговые сигналы,
и другие('lead' агенты) будут использовать эти сигналы для анализа рынка и принятия торгового решения.

Этот подход создаёт Hive-Mind(Разум-Улей) тип интеллектуальной торговой системы.

Для настройки группы Франкенштейнов для торговли в роевой манере - используйте страницу Polyindicators.

На странице вы найдете последнюю конфигурацию Полииндикаторов в использовании системой(серверами) TS_DayTrader на данный момент.

Чтобы узнать, как установить свой собственный рой советников с другими настройками - смотрите главу "Local Installation"(Локальная Установка).


Настройка Полииндикатора

Внимание: Только пользователи с правами администратора могут вносить изменения на этой странице!

Для настройки нового роя Франкенштейнов, создайте новый Полииндикатор, добавив новую строчку в таблицу:

Polyindicators

После изменения настроек, нажмите на 'save changes' для сохранения.


Схема

"Полииндикатор" - абстракция, связывающая несколько Франкенштейнов вместе.
Настройки полииндикатора хранятся в конфигурационном файле PI.conf.
Этот файл скачивается указанными в нём советниками.(или он устанавливается вручную, при Локальной Установке FrankPro.ex5)
Советники потом перенастраивают сами себя в соответствии с полученным PI.conf file.

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

Каждый Полииндикатор получает сигналы(EA signals), обрабатывает их, и передаёт результат(PI signal)
тем Советникам, которые используют полииндикатор как "входной"(Input) полииндикатор(всё в рамках локального окружения Терминала).

Схематически, подобная организация советников выглядит так:
PI_arch1


InputEAs

Чтобы установить, какие советники являются провайдерами сигнала, используйте текстовое поле "InputEAs".
Ввод должен соответствовать следующему формату: "EURUSD-3,EURUSD-4,GBPUSD-13,GBPUSD-122-R".
Это список вида "Символ-Маджик,"(Symbol-Magic,), с разделением запятой ",".
Присутствие постфикса(окончания) "-R" означает, что сигнал "развёрнут" - BUY становится SELL, и наоборот.

Формат ввода "InputEAs": "SYMBOL-MAGIC(-R),SYMBOL-MAGIC(-R),SYMBOL-MAGIC(-R)".


InputPIs

Полииндикатор может также использовать другие Полииндикаторы как входные сигналы.
Чтобы настроить, какие Полииндикаторы используются как провайдеры сигнала - используйте текстовое поле "InputPIs".
Ввод должен соответствовать следующему формату: "123,4,512,54-R,51".
Формат ввода "InputPIs": "PI_ID(-R),PI_ID(-R),PI_ID(-R)".
Постфикс -R работает также: он разворачивает сигнал с покупки на продажу(BUY на SELL), и наоборот.

Схематично, такая организация выглядит так:
PI_arch2


Триггер Сигнала

Используйте параметры 'MinimalSignalsNum' и 'MaximalOppSignalsNum', чтобы установить
чувствительность триггера Полииндикатора.

MinimalSignalsNum устанавливает минимальное количество сигналов, сигнализирующих в одном направлении, необходимое для "Lead" советника,
чтобы разрешить открытие сделки.
Например, если "Lead" Советник торгует BUY позиции, он ждёт от других советников также сигнала BUY.

MaximalOppSignalsNum устанавливает максимальное разрешенное количество противоположных сигналов.
Например, если "Lead" Советник торгует BUY позиции, и обнаружено большое количество сигналов SELL
от других советников, превышающее MaximalOppSignalsNum, торговля будет запрещена, пока
противоположные SELL сигналы не "умрут".


Рой - The Swarm

Рассмотрим, как настроить Рой советников в Терминале.

Когда настройка Полииндикатора завершена, настраивается "Lead" советник(советник-лидер) и советники-спутники(провайдеры сигнала).
Необходимый блок параметров расположен в секции DATABASE в настройках советника:
Polyindicators_params

Сигналы распространяются локально. Это означает, что все Франкенштейны, являющиеся частью Роя, должны работать на одной и той же машине в одном Терминале MetaTrader5.

Взглянем на пример настройки...
Используя значения InputEAs="EURUSD-3,EURUSD-4,GBPUSD-13,GBPUSD-122-R" и InputPIs="123,4":


Провайдеры сигнала(InputEAs)

Запустите 4 Советника с Symbol-Magic парами: EURUSD-3,EURUSD-4,GBPUSD-13,GBPUSD-122-R

Для каждого, установите параметр 'PolyIndicator: provide PI signal locally for other Frankies' как true.
Теперь, советники транслируют сигнал локально.(для "lead" Франкенштейна).

Установите параметр 'PolyIndicator: Lifetime, seconds' в 300 секунд(на выбор, возможны другие значения).
Это означает, что жизнь сигнала составляет 5 минут, после которых сигнал деактивируется.

Установите 'PI: Deviation Type: 0 = % of TP/SL, 1 = ticks' либо в ticks, либо в %(относительно SL/TP).
Выбор зависит от торговой стратегии.

Границы разрешенного отклонения ограничивают движение цены.
Это необходимо для того, чтобы убедиться, что рыночная ситуация не изменилась, и цена всё еще находится в желанном диапазоне
для всех провайдеров сигнала.
'PI: Deviation Negative' и 'PI: Deviation Positive' устанаваливают ценовые лимиты, при достижении которых сигнал умирает.
Цена, движущуяся в направлении SL, считается ведущей к потенциально более прибыльной позиции(Positive Deviation), потому что увеличивает потенциальную
прибыль.
Обратная логика применима к Negative Deviation(отрицательное отклонение). Если цена приближается слишком близко к TP,
вероятность цены развернуться является максимальной, а разница в цене и потенциальная прибыль - минимальной.
Поэтому движение в сторону TP - Отрицательное Отклонение(Negative Deviation).

Советники-провайдеры сигнала можно запускать в Виртуальном Режиме(virtual mode).
Таким образом они не торгуют, лишь только транслируют сигнал.


The AUX PIs(InputPIs)

Ранее уже упоминалось, Полииндикаторы могут использовать другие Полииндикаторы в качестве провайдеров сигнала(input).
Эти сигналы обрабатываются с одинаковым приоритетом как и сигналы от советников.

Возможно создавать многоуровневые структуры Полииндикаторов, но будьте осторожны, чтобы не создать бесконечные рекурсии,
в которых Полииндикатор-потомок является также и своим родителем(это приведёт к перегрузке CPU и остановке агента).

Основной сигнал Полииндикатора и все подчинённые ему сигналы вычисляются "Lead" советником каждый раз перед открытием сделки.


"Lead" Советник(получатель сигнала)

"Главный, Ведущий" Lead Франкенштейн открывает сделки на рынке, работая в Реальном режиме(или Виртуальном).
Он получает сигналы от других "подчинённых" агентов.

Одновременно может быть несколько агентов с одним и тем же PI_ID.

Главный Франки сам анализирует рыночную ситуацию,
но назначенный Полииндикатор фильтрует все его решения.

Таким образом, Советник использует коллективноый способ принятия решения, полагаясь на
прогнозирующую функцию других агентов.

Для установки Ведущего Франкенштейна нужно просто установить параметр 'PolyIndicator: BUS3: use Frankenstein.pro PI input' в зн. true(не требуется в Локальной Установке!),
и установить параметр 'PolyIndicator: P_ID input' - PI_ID Полииндикатора, использующегося для анализа рынка.

Ведущий Советник теперь прочитает конфигурацию с Frankenstein.pro(или прочитает её локально из файловой системы, для Локальной Установки)
и создаст сигнал Полииндикатора, на основе всех локально собранных сигналов от советников и других полииндикаторов.

Текущий статус сигналов периодически загружается на страницу Polyindicators.
(для Локальной Установки, нажмите кнопку 'State', чтобы увидеть текущее состоянии сигнала Полииндикатора)

Одновременно можно настраивать несколько Ведущих(главных) Советников с одним и тем же входным PI_ID(тот же полииндикатор).
Рациональным является использование 4-20 ведомых советников на каждого ведущего(главного) советника.
Возможно придумать стратегии с до 90+ советников обьединённых в единую сеть.

Рой теперь готов обрабатывать рыночные данные, торговать, открывать сделки.


Состояние - State

Для наблюдения за состоянием сигналов Полииндикатора, исользуйте окно State:
PI_state

Если открыть позицию BUY, вы сможете наблюдать за состоянием сигнала Советника напротив индикатора EA_BUY:
PI_state2
(0 или "-" означает OFF, 1 или "+" означает ON).
Этот сигнал теперь доступен другим агентам.


Распространенные Практики

Полииндикаторы могут принести выгоду множественными способами.

Пользователь пожет "связывать" разные символы вместе, или использовать несколько таймфреймов для анализа одного инструмента.
Другой путь - измерять силу 1 символа в сравнении с несколькими другими символами.

Разнообразие методов применения технологии ограничивается только воображением.