Разработать индикатор, который будет агрегировать данные из нескольких других индикаторов (двух или трех экземпляров) (Ozymandias_Extended_HTF и HeikenAshi)

Auftrag beendet

Ausführungszeit 16 Tage

Spezifikation


У меня есть простая стратегия, я хочу получать алерты о смене цвета индикаторов, и нужен простой торговый робот. У меня есть два доработанных индикатора Ozymandias и HeikenAshi.  https://www.mql5.com/ru/code/12604  вышлю доработанную версию.   https://www.mql5.com/ru/code/481

Общее описание
Разработать индикатор, который будет агрегировать данные из нескольких других индикаторов (двух или трех экземпляров) (Ozymandias_Extended_HTF и HeikenAshi) и реализовывать простейший торговый алгоритм на основе данных из этих массивов.
Индикатор должен предоставлять возможность настройки параметров для каждого подключаемого индикатора, а также гибкие правила для открытия позиций.
В массивах должны быть только "текущие данные", история баров не нужна. Поэтому можно использовать и структуру, что лично мне более понятно, но можно и классы. 
Цвета индикаторов: синий = лонг, желтый = шорт.

Пример: такое мне привычнее и понятнее, но если будут классы, то наверное это лучше.
struct OziData {
    double upperBoundary;
    double lowerBoundary;
    double median;
    bool isBlue; // Цвет индикатора (синий или нет)
};

struct HeikenAshiData {
    double hiPrev;
    double lowPrev;
    bool isBlue; // Цвет свечи (синий или нет)
};

// Пример использования
ozi_m5.upperBoundary = CalculateUpperBoundary(M5);
ozi_m5.lowerBoundary = CalculateLowerBoundary(M5);
ozi_m5.isBlue = IsColorBlue(M5);

heiken_ashi_m1.hiPrev = GetHiPrev(M1);
heiken_ashi_m1.lowPrev = GetLowPrev(M1);
heiken_ashi_m1.isBlue = IsCandleBlue(M1);



Параметры агрегируемых индикаторов (новых параметров нет, только те, которые присутствуют в самих индикаторах), т.е. нужно получить хэндл и записать данные в массив\структуру. Если таймфрейм задан как 5 минут, то получать данные раз в 5 минут, если 1 час, то раз в час, чтобы не нагружать.
Настройки Ozymandias_Extended_HTF:
TimeFrame: Таймфрейм, на котором работает индикатор.
Length: Период для расчета основной линии индикатора.
MAType: Метод скользящей средней (например, SMMA).
ChannelKoef: Коэффициент для расчета "двойных" границ канала.
Настройки HeikenAshi:
Timeframe: Таймфрейм для анализа свечей Heiken Ashi.

Пример
ozymandias_htf_extended1
    TimeFrame: M30
    Length: 2
    MAType: SMMA
    ChannelKoef: 1.5

ozymandias_htf_extended2
    TimeFrame: H1
    Length: 2
    MAType: SMMA
    ChannelKoef: 1.5

ozymandias_htf_extended3
    TimeFrame: H4
    Length: 2
    MAType: SMMA
    ChannelKoef: 2.0
HeikenAshi_1
    Timeframe: M15
HeikenAshi_2
    Timeframe: M30


Структура данных и массивы
Массивы для хранения данных. Какие данные я хочу видеть в массиве.
Для Ozymandias_Extended_HTF:
ЗначениеВерхнейГраницы: Текущее значение верхней границы канала.
ЗначениеНижнейГраницы: Текущее значение нижней границы канала.
ТекущийЦвет: Цвет индикатора (синий или желтый). Можно через булево реализовывать.

ЗначениеМедианы: Значение центральной линии индикатора.

Некоторые еще производные значения.

Для HeikenAshi:
ЦенаHi_Prev: Максимальная цена предыдущего бара.
ЦенаLow_Prev: Минимальная цена предыдущего бара.
ЦенаHi_Prev_Prev: Максимальная цена предпредыдущего бара.
ЦенаLow_Prev_Prev: Минимальная цена предпредыдущего бара.
color_Prev: Цвет текущей свечи.
color_Prev_Prev: Цвет предыдущей свечи.
color_Prev_Prev_Prev: Цвет предпредыдущей свечи.
СменаЦвета: Булево значение, указывающее, была ли смена цвета между предыдущими свечами. Если color_Prev не равен color_Prev_Prev, то результат является истинным. Проверка выполняется в соответствии с выбранным таймфреймом индикатора, например, если таймфрейм составляет 5 минут, то сравнение происходит раз в 5 минут на новом баре, а не на каждом тике внутри этого периода.
ThreeCandleColorChange: Булево значение, указывающее, является ли текущая комбинация свечей "третий бар от текущего отличается по цвету от двух других". Истина, если выполняется одно из следующих условий:
color_Prev_Prev_Prev синий, а оба color_Prev_Prev и color_Prev красные и ЦенаHi_Prev > ЦенаHi_Prev_Prev;
color_Prev_Prev_Prev красный, а оба color_Prev_Prev и color_Prev синие и ЦенаLow_Prev < ЦенаLow_Prev_Prev

Настройки основного торгового индикатора, который использует данные массивов:
input bool TradeOnColorMatchChannele = true; Открывать позиции в лонг, если цена находится между нижней границей канала и медианой, а цвет индикатора Ozymandias синий. Соответственно, открывать позиции в шорт, если цена расположена между верхней границей канала и медианой, а цвет индикатора Ozymandias желтый.
input double OrderPriceShift = 5; // Размер в пунктах, для расчета цены устанавливаемой заявки. Вычитается из цены Low_Prev если цвет синий, или прибавляется к Hi_Prev если цвет красный. По умолчанию 100.
Stoploss: // Размер в пунктах, для расчета цены Stoploss устанавливаемой заявки. Вычитается из цены Hi_Prev если цвет синий, или прибавляется к Low_Prev если цвет красный. По умолчанию 100. Аналогично OrderPriceShift, только наоборот.
ContractCount: Количество контрактов для входа.
AlertTelegram: Булево значение, указывающее, отправлять ли уведомления в Telegram.
TakeProfit: Перечисление, определяющее способ расчета Take Profit.
enum TakeProfitMethod
{
    RATIO_1_TO_1 = 1,   // Соотношение 1:1 (тейк-профит равен стоп-лоссу)
    RATIO_1_TO_2 = 2,   // Соотношение 1:2 (прибыль в два раза больше риска)
    RATIO_1_TO_3 = 3,   // Соотношение 1:3 (прибыль в три раза больше риска)
    RATIO_1_TO_4 = 4,   // Соотношение 1:4 (прибыль в четыре раза больше риска)
    RATIO_1_TO_5 = 5,   // Соотношение 1:5 (прибыль в пять раз больше риска)
    RATIO_1_TO_6 = 6,   // Соотношение 1:6 (прибыль в шесть раз больше риска)
    RATIO_1_TO_7 = 7,   // Соотношение 1:7 (прибыль в семь раз больше риска)
    RATIO_1_TO_10 = 10, // Соотношение 1:10 (прибыль в десять раз больше риска)
    REVERS_SIGNAL,      // Обратный сигнал (тейк-профит ждет когда появится обратный сигнал. Если была лонговая позиция открыта, то ожидает шортовый сигнал)
    NONE                // Тейк-профит не используется
};

Торговая стратегия:
Если произошла смена цвета индикатора ozymandias_htf_extended1 и цвет ozymandias_htf_extended1 синий, и цвет ozymandias_htf_extended2 синий, и цвет ozymandias_htf_extended3 синий, и HeikenAshi_1 синий, и HeikenAshi_2 синий тогда установить заявку на покупку, рассчитать цену её установки, и размер стоп лосса. И установить её. Выдать алерт в телеграмм.
Если цвет ozymandias_htf_extended1 стал синий,то отправить алерт в телеграм.

Блок-схема алгоритма
Инициализация:
Получить рассчитать параметры индикаторов.
Создать, заполнить массивы данными индикаторов
Расчет данных:
Для каждого Ozymandias_Extended_HTF:
Рассчитать границы, медиану, цвет, первое касание ценой, и другие данные
Для каждого HeikenAshi:
Рассчитать цены и цвета свечей.
Проверить смену цвета и условие "звезды".
По данным массивов  принять решение об открытии сделки:
Проверить условия для открытия позиций.
Рассчитать цену входа, Take Profit и Stop Loss.
Установить заявку на открытие позиции со своим ID
Управление позициями:
Установить заявку тейкпрофита для заданного ID.
Удалить заявку тейкпрофита если позиция исчезал по стоплосс.
Перевести стоп-лосс в безубыток.
Закрыть позиции при смене цвета.
Оповещения:
Отправить уведомления в Telegram.

Индикатор будет усложняться и дописываться в дальнейшем, поэтому развивать его с вами дальше, начинаем с простого функционала. 

Могу записать видео, где подробно расскажу.

Bewerbungen

1
Entwickler 1
Bewertung
(190)
Projekte
246
20%
Schlichtung
22
50% / 18%
Frist nicht eingehalten
0
Beschäftigt
2
Entwickler 2
Bewertung
(5)
Projekte
7
0%
Schlichtung
8
13% / 75%
Frist nicht eingehalten
3
43%
Frei
Ähnliche Aufträge
Нужен советник для торговли на золоте с большой прибылью в день от 5%-50% и выше. Необходима проверка советника перед покупкой, триал или демо, а также подтвержденная статистика торговли, прозрачные отчеты и желательно но не обязательно реальные отзывы пользователей
Description: Hello! We are looking for a developer to create a custom MT5 indicator. Requirements: — Detection of breakout zones — Detection of FVG (fair value gap) zones — Clean logic, non-repainting Preferred: — Experience with MT5 indicator development — Understanding of market structure / price action (SMC is a plus) Please include: — Examples of similar work (if available) We are ready to discuss details and
Советник нужен полноценный, хотя он нужен для поиска закономерностей. Так как я в первый раз заказываю советник, то нужен опытный человек, который сможет направить (подсказать) по составлению грамотного ТЗ. Желательно чтобы исполнитель был русскоязычным, так как я с России. Всем благ
Нужен советник на золото , закинул скрин каком принципе . На mt5, и что бы код был бы свободный , смогбы его доработать . Встроенный стоп лосс, тайк профит , интерфейс .что бы автоматически открывал и закрывал позиции
# ТЕХНИЧЕСКОЕ ЗАДАНИЕ (TOR) ## На разработку алгоритмической торговой системы «QuantumFractalMatrix v16.5 NEXUS ULTIMATE» **Версия документа:** 1.0 **Платформа:** MetaTrader 5 (MQL5) **Статус:** Для реализации (Portfolio Project) **Уровень сложности:** High (Enterprise Grade) --- ## 1. ОБЩИЕ СВЕДЕНИЯ О ПРОЕКТЕ ### 1.1. Цель проекта Разработка высоконагруженного, модульного торгового советника (Expert Advisor) для
Нужно разработать торгового советника для MetaTrader 5. Логика стратегии: работа на M1 (таймфрейм изменяемый) уровни Fibonacci задаются вручную (0 и 100) вход осуществляется в зоне 0–38.2 Fibonacci используется RSI BUY — RSI ≤ 30 SELL — RSI ≥ 70 дополнительный сигнал — пересечение RSI и его скользящей средней Функции управления позицией: Stop Loss за сигнальной свечой Break Even два типа Trailing Stop (обычный и

Projektdetails

Budget
50 - 150 USD