Liquidity Entry Signals
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «liquidity_entry_signals.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Информативная панель в углу графика показывает текущее направление старшего таймфрейма, направление последнего сигнала, расстояние до него в барах, текущие уровни, процент риска и награды, коэффициенты R:R, состояние фильтров и соотношение объёма к его средней. Система оповещений поддерживает всплывающие уведомления, push, email и звуковой сигнал с возможностью добавления JSON-полезной нагрузки для интеграции с внешними системами.
Настройки программы
| Настройка | Описание |
|---|---|
| Show Liquidity Sweeps (i_showLiq) | Показать ликвидностные сдвиги — Включает или выключает отображение сигналов ликвидностных сдвигов на графике |
| Sweep Lookback (3-50) (i_liqLen) | Длина поиска сдвига — Количество баров для поиска ближайшего экстремума при определении сдвига ликвидности (3-50) |
| Trend Filter (SMA Bias) (i_useTrendFilter) | Фильтр тренда — Включает фильтр направления тренда на основе скользящей средней |
| Trend SMA Len (i_trendLen) | Длина SMA тренда — Период скользящей средней для определения направления тренда |
| Volatility Filter (ATR%) (i_useVolFilter) | Фильтр волатильности — Включает фильтр на основе процентного соотношения ATR к цене |
| Vol ATR Len (i_volAtrLen) | Период ATR волатильности — Период индикатора ATR для расчёта волатильности |
| Vol Min % of Price (i_volMinPct) | Минимум волатильности % — Минимальный процент ATR от цены для прохождения фильтра волатильности |
| Volume Filter (i_useVolumeFilter) | Фильтр объёма — Включает фильтр на основе сравнения текущего объёма с его скользящей средней |
| Volume MA Len (i_volumeMALen) | Период MA объёма — Период скользящей средней объёма для фильтра |
| Volume Min x MA (i_volumeMinMult) | Минимум объёма x MA — Минимальное кратное текущего объёма его скользящей средней для прохождения фильтра |
| Signal Cooldown (i_useCooldown) | Задержка сигналов — Включает минимальный интервал между последовательными сигналами в барах |
| Min Bars Between Signals (i_cooldownBars) | Минимум баров между сигналами — Минимальное количество баров между последовательными сигналами |
| HTF Trend Alignment (i_useHtfFilter) | Фильтр старшего таймфрейма — Включает проверку направления тренда на выбранном старшем таймфрейме |
| HTF Timeframe (i_htfTimeframe) | Таймфрейм старшего TF — Таймфрейм для анализа направления тренда на старшем графике |
| HTF SMA Len (i_htfEmaLen) | Длина SMA старшего TF — Период скользящей средней на старшем таймфрейме для определения его направления |
| ATR Len (i_atrLen) | Период ATR — Период индикатора ATR для расчёта стоп-лосса и смещения стрелок сигналов |
| SL ATR Mult (i_slMult) | Множитель ATR для SL — Множитель ATR для расчёта расстояния стоп-лосса от точки входа |
| TP1 RR (i_tp1RR) | RR для TP1 — Коэффициент отношения риск/прибыль для первой цели по прибыли |
| TP2 RR (i_tp2RR) | RR для TP2 — Коэффициент отношения риск/прибыль для второй цели по прибыли |
| TP3 RR (i_tp3RR) | RR для TP3 — Коэффициент отношения риск/прибыль для третьей цели по прибыли |
| Extend levels (bars) (i_extendBars) | Продление уровней (бары) — Количество баров для горизонтального продления линий уровней вправо от сигнала |
| Bull arrow (Wingdings) (i_bullArrowCode) | Код стрелки бычьей — Код символа Wingdings для отображения бычьей стрелки (сигнала LONG) |
| Bear arrow (Wingdings) (i_bearArrowCode) | Код стрелки медвежьей — Код символа Wingdings для отображения медвежьей стрелки (сигнала SHORT) |
| Arrow offset (x ATR) (i_arrowOffAtr) | Смещение стрелок (x ATR) — Множитель ATR для вертикального смещения стрелок сигналов от экстремума бара |
| Popup alerts (InpAlertPopup) | Всплывающие уведомления — Включает отправку всплывающих алертов на график |
| Push notifications (InpAlertPush) | Push-уведомления — Включает отправку push-уведомлений на мобильное устройство |
| Email alerts (InpAlertEmail) | Email-уведомления — Включает отправку email-уведомлений |
| Play sound (InpAlertSound) | Звуковой сигнал — Включает воспроизведение звукового файла при срабатывании алерта |
| Sound file (InpSoundFile) | Файл звука — Путь к звуковому файлу для воспроизведения при алертах |
| Alert on TP hits (i_alertOnTP) | Алерты при достижении TP — Включает отправку уведомлений при достижении целей по прибыли |
| Alert prefix (InpAlertPrefix) | Префикс алерта — Текстовый префикс в заголовке и теле алертов |
| Append JSON payload to alert (i_emitJSON) | JSON в алерте — Добавляет JSON-полезную нагрузку к тексту алерта для интеграции с внешними системами |
| Long action (i_actionLong) | Действие LONG — Текстовый идентификатор действия для бычьего сигнала в JSON-полезной нагрузке |
| Short action (i_actionShort) | Действие SHORT — Текстовый идентификатор действия для медвежьего сигнала в JSON-полезной нагрузке |
| Close-long action (i_actionCloseLong) | Действие закрытия LONG — Текстовый идентификатор действия для закрытия длинной позиции в JSON-полезной нагрузке |
| Close-short action (i_actionCloseShort) | Действие закрытия SHORT — Текстовый идентификатор действия для закрытия короткой позиции в JSON-полезной нагрузке |
| TP1 hit action (i_actionTP1) | Действие TP1 — Текстовый идентификатор действия при достижении первой цели по прибыли в JSON-полезной нагрузке |
| TP2 hit action (i_actionTP2) | Действие TP2 — Текстовый идентификатор действия при достижении второй цели по прибыли в JSON-полезной нагрузке |
| TP3 hit action (i_actionTP3) | Действие TP3 — Текстовый идентификатор действия при достижении третьей цели по прибыли в JSON-полезной нагрузке |
| Show Dashboard (i_showDash) | Показать панель — Включает отображение информационной панели на графике |
| Position (i_dashPos) | Позиция панели — Угол экрана для привязки информационной панели |
| X offset (px) (i_dashX) | Смещение X панели — Горизонтальное смещение панели в пикселях от выбранного угла |
| Y offset (px) (i_dashY) | Смещение Y панели — Вертикальное смещение панели в пикселях от выбранного угла |
| Liq Sweep Bull (i_cLiqB) | Цвет бычьего сдвига — Цвет отображения бычьего ликвидностного сдвига (стрелка и метка) |
| Liq Sweep Bear (i_cLiqS) | Цвет медвежьего сдвига — Цвет отображения медвежьего ликвидностного сдвига (стрелка и метка) |
| SL Color (i_cSL) | Цвет стоп-лосса — Цвет линии и метки стоп-лосса |
| Entry Color (i_cEntry) | Цвет входа — Цвет линии и метки входа в позицию |
| TP1 Color (i_cTP1) | Цвет TP1 — Цвет линии и метки первой цели по прибыли |
| TP2 Color (i_cTP2) | Цвет TP2 — Цвет линии и метки второй цели по прибыли |
| TP3 Color (i_cTP3) | Цвет TP3 — Цвет линии и метки третьей цели по прибыли |
| Risk Zone Fill (i_cRisk) | Цвет зоны риска — Цвет заливки зоны риска от входа до стоп-лосса |
| Reward Zone Fill (i_cReward) | Цвет зоны прибыли — Цвет заливки зоны прибыли от входа до TP3 |
| Dash BG (i_cDashBg) | Фон панели — Цвет фона информационной панели |
| Dash Header BG (i_cDashHead) | Заголовок панели — Цвет заголовка информационной панели |
| Dash Label Text (i_cDashLabel) | Текст меток панели — Цвет текста подписей (меток) в информационной панели |
| Dash Value Text (i_cDashValue) | Текст значений панели — Цвет текста значений в информационной панели |
Поиск по коду файла
#property version "1.00"
#property description "Liquidity Entry Signals (SMC sweeps) - MarkitTick port."
#property description "ATR SL + 3 RR TPs, smart filters, dashboard, JSON alerts."
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_plots 2
#property indicator_label1 "Bull Sweep (Long)"
#property indicator_type1 DRAW_ARROW
#property indicator_color1 clrLimeGreen
#property indicator_width1 2
#property indicator_label2 "Bear Sweep (Short)"
#property indicator_type2 DRAW_ARROW
#property indicator_color2 clrTomato
#property indicator_width2 2
enum ENUM_DASH_CORNER { DASH_TOP_RIGHT, DASH_TOP_LEFT, DASH_BOTTOM_RIGHT, DASH_BOTTOM_LEFT };
input group "=== SMC (Liquidity Sweeps) ==="
input bool i_showLiq = true; // Show Liquidity Sweeps
input int i_liqLen = 10; // Sweep Lookback (3-50)
input group "=== Smart Filters ==="
input bool i_useTrendFilter = false; // Trend Filter (SMA Bias)
input int i_trendLen = 50; // Trend SMA Len
input bool i_useVolFilter = false; // Volatility Filter (ATR%)
input int i_volAtrLen = 14; // Vol ATR Len
input double i_volMinPct = 0.0; // Vol Min % of Price
input bool i_useVolumeFilter = false; // Volume Filter
input int i_volumeMALen = 20; // Volume MA Len
input double i_volumeMinMult = 1.0; // Volume Min x MA
input bool i_useCooldown = true; // Signal Cooldown
input int i_cooldownBars = 5; // Min Bars Between Signals
input bool i_useHtfFilter = false; // HTF Trend Alignment
input ENUM_TIMEFRAMES i_htfTimeframe = PERIOD_H4; // HTF Timeframe
input int i_htfEmaLen = 50; // HTF SMA Len
input group "=== Trade Tools ==="
input int i_atrLen = 14; // ATR Len
input double i_slMult = 0.50; // SL ATR Mult
input double i_tp1RR = 1.0; // TP1 RR
input double i_tp2RR = 2.0; // TP2 RR
input double i_tp3RR = 3.0; // TP3 RR
input int i_extendBars = 50; // Extend levels (bars)
input group "=== Signal Markers ==="
input int i_bullArrowCode = 233; // Bull arrow (Wingdings)
input int i_bearArrowCode = 234; // Bear arrow (Wingdings)
input double i_arrowOffAtr = 0.50; // Arrow offset (x ATR)
input group "=== Alerts (channels) ==="
input bool InpAlertPopup = true; // Popup alerts
input bool InpAlertPush = false; // Push notifications
input bool InpAlertEmail = false; // Email alerts
input bool InpAlertSound = false; // Play sound
input string InpSoundFile = "alert.wav"; // Sound file
input bool i_alertOnTP = true; // Alert on TP hits
input string InpAlertPrefix = "MarkitTick SMC"; // Alert prefix
input group "=== Alerts (JSON payload) ==="
input bool i_emitJSON = true; // Append JSON payload to alert
input string i_actionLong = "long"; // Long action
input string i_actionShort = "short"; // Short action
input string i_actionCloseLong = "closelong"; // Close-long action
input string i_actionCloseShort = "closeshort"; // Close-short action
input string i_actionTP1 = "tp1hit"; // TP1 hit action
input string i_actionTP2 = "tp2hit"; // TP2 hit action
input string i_actionTP3 = "tp3hit"; // TP3 hit action
input group "=== Dashboard ==="
input bool i_showDash = true; // Show Dashboard
input ENUM_DASH_CORNER i_dashPos = DASH_TOP_RIGHT; // Position
input int i_dashX = 12; // X offset (px)
input int i_dashY = 18; // Y offset (px)
input group "=== Colors ==="
input color i_cLiqB = C'0,200,100'; // Liq Sweep Bull
input color i_cLiqS = C'220,50,80'; // Liq Sweep Bear
input color i_cSL = C'239,83,80'; // SL Color
input color i_cEntry = C'33,150,243'; // Entry Color
input color i_cTP1 = C'38,166,154'; // TP1 Color
input color i_cTP2 = C'38,166,154'; // TP2 Color
input color i_cTP3 = C'38,166,154'; // TP3 Color
input color i_cRisk = C'70,30,32'; // Risk Zone Fill
input color i_cReward = C'22,48,44'; // Reward Zone Fill
input color i_cDashBg = C'10,15,26'; // Dash BG
input color i_cDashHead = C'20,181,203';// Dash Header BG
input color i_cDashLabel = C'200,200,200';// Dash Label Text
input color i_cDashValue = C'255,255,255';// Dash Value Text
double BullArrowBuf[];
double BearArrowBuf[];
int h_trendSMA = INVALID_HANDLE;
int h_atrTrade = INVALID_HANDLE;
int h_volATR = INVALID_HANDLE;
int h_volMA = INVALID_HANDLE;
int h_htfSMA = INVALID_HANDLE;
int g_lastSignalBar = -1;
datetime g_lastSignalTime = 0;
bool g_lastWasLong = false;
double g_lastEntry = 0.0, g_lastSL = 0.0, g_lastTP1 = 0.0, g_lastTP2 = 0.0, g_lastTP3 = 0.0;
bool g_tp1done = false, g_tp2done = false, g_tp3done = false;
double g_lastAtr = 0.0, g_lastVolAtr = 0.0, g_lastVolume = 0.0, g_lastVolMA = 0.0;
bool g_trendOkL = false, g_trendOkS = false, g_volOkCur = false, g_volumeOkCur = false;
bool g_firstRun = true;
datetime g_lastAlertBar = 0;
double g_point = 0.0;
string PFX = "LES_";
int OnInit()
{
// код доступен только после оплаты
}
void OnDeinit(const int reason)
{
if(h_trendSMA!=INVALID_HANDLE) IndicatorRelease(h_trendSMA);
if(h_atrTrade!=INVALID_HANDLE) IndicatorRelease(h_atrTrade);
if(h_volATR!=INVALID_HANDLE) IndicatorRelease(h_volATR);
if(h_volMA!=INVALID_HANDLE) IndicatorRelease(h_volMA);
if(h_htfSMA!=INVALID_HANDLE) IndicatorRelease(h_htfSMA);
DeleteTradeLevels();
DeleteDashboard();
}
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
// код доступен только после оплаты
}
bool HtfBias(datetime t, bool &up, bool &dn)
{
int hs = iBarShift(_Показано первые 50% кода (символов: 21957)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.