Lavoro terminato
Tempo di esecuzione 16 giorni
Specifiche
У меня есть простая стратегия, я хочу получать алерты о смене цвета индикаторов, и нужен простой торговый робот. У меня есть два доработанных индикатора 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.
Индикатор будет усложняться и дописываться в дальнейшем, поэтому развивать его с вами дальше, начинаем с простого функционала.
Могу записать видео, где подробно расскажу.
Con risposta
1
Valutazioni
Progetti
246
20%
Arbitraggio
22
50%
/
18%
In ritardo
0
Caricato
2
Valutazioni
Progetti
7
0%
Arbitraggio
8
13%
/
75%
In ritardo
3
43%
Gratuito
Ordini simili
Need an advisor that works on the retest of the first five-minute New York candle. Entry is on the breakout of the M1 candle testing the range of the first five M1 candles. Automatic and adjustable GMT. Adjustable take profit in PP. Stop loss is per M1 candle. The M1 candle should test the range and close with a body outside it. The ability to customize stop-loss orders by RR and points. Add the ability to trail
Нужен советник для торговли на золоте с большой прибылью в день от 5%-50% и выше. Необходима проверка советника перед покупкой, триал или демо, а также подтвержденная статистика торговли, прозрачные отчеты и желательно но не обязательно реальные отзывы пользователей
MT5 Indicator Developer Needed (Breakout Zones & FVG)
100 - 400 USD
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
Нужен советник на основе индикатора Heiken Ashi
40 - 50 USD
Советник нужен полноценный, хотя он нужен для поиска закономерностей. Так как я в первый раз заказываю советник, то нужен опытный человек, который сможет направить (подсказать) по составлению грамотного ТЗ. Желательно чтобы исполнитель был русскоязычным, так как я с России. Всем благ
Нужен советник на золото
30 - 200 USD
Нужен советник на золото , закинул скрин каком принципе . На 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 (обычный и
Informazioni sul progetto
Budget
50 - 150 USD