# Торговый робот на базе уровней поддержки и сопротивления

Раздел: Советники, эксперты, форекс роботы
Автор темы: instantt
Создана: 2025-11-13 14:32
Ответов: 21 | Просмотров: 2463
Страница 1 из 2
Источник: https://forexsystemru.com/threads/96719/

---

## instantt — 2025-11-13 14:32

Добрый день. пишу робота на базе уровней поддержки и сопротивления. За основу взят индикатор. Это так понимаю его последняя версия. Из многих индикаторов которые рисуют поддержки и сопротивление, что я встречал, это лично мое мнение, он самый лучший. Его преимущество то что он рисует не линию а зону. Что в планах: 
 - робот торгует по тренду, на отскок от зон при откате.
Вопрос к знатокам, какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать? может у кого есть опыт ручной торговли. Давайте начнем обсуждение и я позже выложу заготовку, сырую но рабочую.

## VNIK — 2025-11-13 15:07

> Цитата (instantt):
> Вопрос к знатокам, какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать?

Если Вам важен совет из зала, то давайте немного поговорим на эту тему...
Что такое линия сопротивления ( поддержки ) ?...
Трейдер выбирает на графике ТОЧКУ...
Через эту точку рисует горизонтальную линеечку..., которую обзывает "линией сопротивления"...
Зона отличается от линии тем, что эту линеечку расширяют..., **но смысл то не меняется**... !
Теперь про индикатор....
Индикатор рисует ТОЛЬКО то, что видит Трейдер, который разработал этот индикатор...
А что видит Трейдер?...  Правильно, точку на графике, через которую нужно ему нарисовать горизонтальную линеечку...

Надеюсь понятно, что все эти линии или зоны - субъективное мнение отдельного Трейдера, т.е. "что вижу, то и пою! "...

А теперь вопрос: Нужно ли тратить свое время и ресурсы на СУБЪЕКТИВНОЕ мнение отдельного Трейдера ?

Выводы каждый Трейдер должен делать самостоятельно!...

Каждый Трейдер - кузнец СВОЕГО счастья!

## instantt — 2025-11-13 15:20

> Цитата (VNIK):
> Если Вам важен совет из зала, то давайте немного поговорим на эту тему...
> Что такое линия сопротивления ( поддержки ) ?...
> Трейдер выбирает на графике ТОЧКУ...
> Через эту точку рисует горизонтальную линеечку..., которую обзывает "линией сопротивления"...
> Зона отличается от линии тем, что эту линеечку расширяют..., **но смысл то не меняется**... !
> Теперь про индикатор....
> Индикатор рисует ТОЛЬКО то, что видит Трейдер, который разработал этот индикатор...
> А что видит Трейдер?...  Правильно, точку на графике, через которую нужно ему нарисовать горизонтальную линеечку...
>
> Надеюсь понятно, что все эти линии или зоны - субъективное мнение отдельного Трейдера, т.е. "что вижу, то и пою! "...
>
> А теперь вопрос: Нужно ли тратить свое время и ресурсы на СУБЪЕКТИВНОЕ мнение отдельного Трейдера ?
>
> Выводы каждый Трейдер должен делать самостоятельно!...
>
> Каждый Трейдер - кузнец СВОЕГО счастья!

Ну философских сообщений я могу тоже уйму написать, но стараюсь всегда общаться по существу темы или заданного вопроса, по этому у меня их за 14 лет не 2000 а 200. А вопрос был к аудитории форума следующий "какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать?"

## VNIK — 2025-11-13 15:31

> Цитата (instantt):
> Ну философских сообщений я могу тоже уйму написать, но стараюсь всегда общаться по существу темы или заданного вопроса, по этому у меня их за 14 лет не 2000 а 200. А вопрос был к аудитории форума следующий "какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать?"

Вот это и удивило!  За 14 лет уже можно было определиться с темами, на которые не стоит тратить свое время...

## кукурузник — 2025-11-13 15:40

> Цитата (VNIK):
> За 14 лет уже можно было определиться

Ты на ветку золота заглядывай , 
народ не может направление тренда определить....

## Werhaman — 2025-11-13 15:45

> Цитата (instantt):
> А вопрос был к аудитории форума следующий "какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать?"

Я вообщем-то тоже согласен с **VNIK**-ом. Ответ на Ваш вопрос - никакую. Не серьёзно всё это !
Вы бы ещё спросили какую стратегию для двух пересекающихся "машек" вы посоветуете реализовать.

## instantt — 2025-11-13 16:14

> Цитата (Werhaman):
> Я вообщем-то тоже согласен с **VNIK**-ом. Ответ на Ваш вопрос - никакую. Не серьёзно всё это !
> Вы бы ещё спросили какую стратегию для двух пересекающихся "машек" вы посоветуете реализовать.

А что серьезно? я не в шутку, интересно Ваше мнение!

## Werhaman — 2025-11-13 17:17

> Цитата (instantt):
> А что серьезно? я не в шутку, интересно Ваше мнение!

Что-то не такое заезженное, как уровни, мувинги, объёмы и т.п.
Что-то новенькое малоисследованное, может авторский взгляд на рынок. То, что вызовет интерес у местной публики, а это не торговля от уровней по индикатору !

## good cat — 2025-11-13 23:56

> Цитата (Werhaman):
> Что-то не такое заезженное, как уровни, мувинги, объёмы и т.п.
> Что-то новенькое малоисследованное, может авторский взгляд на рынок. То, что вызовет интерес у местной публики, а это не торговля от уровней по индикатору !

а что можно придумать нового из 4-х значений цены и проторгованного объема?

## Werhaman — 2025-11-14 10:00

Ну, во-первых, не обязательно зацикливаться только на цене и объёме, а во-вторых, как видите никто в этой ветке не сыплет идеями, что было предсказуемо !

## Billy Kid — 2025-11-14 10:22

> Цитата (instantt):
> Добрый день. пишу робота на базе уровней поддержки и сопротивления. За основу взят индикатор. Это так понимаю его последняя версия. Из многих индикаторов которые рисуют поддержки и сопротивление, что я встречал, это лично мое мнение, он самый лучший. Его преимущество то что он рисует не линию а зону. Что в планах:
>  - робот торгует по тренду, на отскок от зон при откате.
> Вопрос к знатокам, какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать? может у кого есть опыт ручной торговли. Давайте начнем обсуждение и я позже выложу заготовку, сырую но рабочую.

Этот supdem и все ему подобные сделан на стандартном зигзаге. 
Почему бы просто не взять обычный зигзаг вместо него?

## MonohroM — 2025-11-14 13:10

> Цитата (good cat):
> как вижу идеями не сыпет никто вообще,даже самые идейные)),это тоже было предсказуемо

Ха-ха :ROFLMAO::ROFLMAO:
приведу реалистичную, реализуемую в MT5 архитектуру гибридного скальп-советника для XAUUSD на M1, где ИИ — не трейдер, а «умный фильтр», а человек (или простой алгоритм) — принимает решение о входе/выходе. 

Это не фантастика: такой подход уже используется в проп-фирмах и хедж-фондах, и он намного надёжнее full-autonomous ИИ. 
 
🧠 Архитектура: Hybrid Scalp Filter — «ScalpGuard AI» 

    Название условное. Суть — ограничить ИИ узкой, контролируемой ролью. 
     

📌 Общая идея: 

    На графике М1 — базовый скальп-сигнал (например, от PrizmaL Scalper, или простой Price Action + Order Block breakout).  
    Перед исполнением — ИИ проверяет: «Можно ли сейчас входить?»
    → Да/Нет + доверительный балл (0.0–1.0).  
    Только при «Да» и score ≥ 0.75 — открываем позицию.

Структура системы (MT5 + внешний ИИ)

┌──────────────────────────────────────────────┐
│            MT5: ScalpGuard AI EA             │
├──────────────────────────────────────────────┤
│ 1. Базовый скальп-триггер (локальный)        │
│    → Например:                              │
│       • Пробой 1-минутного Order Block       │
│       • Подтверждение по Volume Delta (+)   │
│       • Цена выше TMA_M1 (центрированной,    │
│         но без перерисовки — Extreme TMA,    │
│         InpRedraw=No)                        │
├──────────────────────────────────────────────┤
│ 2. Формирование контекста для ИИ (в RAM)     │
│    → Export в JSON / передача через HTTP:    │
│       {                                      │
│         "symbol": "XAUUSD",                  │
│         "timeframe": "M1",                   │
│         "signal_type": "long_breakout",      │
│         "price": 2345.67,                    │
│         "volume_delta_5min": +1240,          │
│         "spread": 0.21,                      │
│         "ATR_M5": 3.82,                      │
│         "trend_M5": "bullish",               │  ← ← ← ← ← ← ← ←
│         "news_risk": 0.15,                   │  ← внешние данные
│         "liquidation_zone": [2342.5, 2343.1]│
│       }                                      │
└──────────────────────────────────────────────┘
                         │
                         ▼
           ┌─────────────────────────────┐
           │   Внешний ИИ-фильтр (API)   │
           │   — напр. запущен на VPS    │
           │   — или через OpenRouter /  │
           │     DeepSeek API / локальную│
           │     Llama-3.1-8B-Q4_K_M     │
           └─────────────────────────────┘
                         │
                         ▼
         ┌───────────────────────────────────────┐
         │ Ответ ИИ (в течение 50–200 мс):       │
         │ {                                     │
         │   "allow_trade": true,                │
         │   "confidence": 0.83,                 │
         │   "reason": "High-volume breakout"    │
         │            + "within M5-TMA channel", │
         │   "risk_warning": null                │
         │ }                                     │
         └───────────────────────────────────────┘
                         │
                         ▼
       ┌───────────────────────────────────────────┐
       │ MT5 EA: Принятие решения                  │
       │   if (allow_trade && confidence ≥ 0.75)   │
       │      → OpenPosition() + SL/TP + Trailing │
       │   else → Skip signal                      │
       └───────────────────────────────────────────┘

## MonohroM — 2025-11-14 13:11

Что делает ИИ? (ограниченные, контролируемые задачи) 

ИИ не предсказывает цену, а выполняет 3 узкие функции:

1. Контекстная валидация сигнала
    
Проверяет: не противоречит ли сигнал старшему тренду (M5/M15), не в зоне ли высокой ликвидности (CME/ICE futures roll), не в «тихий час» (Asia session, low vol)?
    
Отсекает 60% ложных пробоев на М1
2. Оценка рыночного режима
    
Классифицирует:
trend
,
range
,
breakout
,
mean-reversion
,
flash-crash
— на основе ATR, spread, volume profile за последние 15 мин
    
Подстраивает SL/TP: например, при «breakout» → TP = 2.5×ATR, при «mean-rev» → TP = 0.8×ATR
3. Детекция аномалий
    
Выявляет: необычный спред (>1.5×med), резкий рост volume без движения цены (накопление?), дивергенция RSI + price на M5
    
Блокирует вход при
anomaly_score > 0.6
 

→ Обучается на размеченных данных скальп-торговли:   

    «Хороший вход» = TP ≥ 1.5×SL, время удержания ≤ 4 мин  
    «Плохой вход» = SL сработал или TP не достигнут за 6 мин
    → Объём выборки: 10–20 тыс. реальных сделок (можно собрать за 2–4 недели тестирования).

## MonohroM — 2025-11-14 13:12

🛠 Техническая реализация (MT5 + Python) 
// Буферы
double bufferOB[];
double volumeDelta[];

// Хендлы
int hVolumeDelta = iCustom(_Symbol, PERIOD_M1, "Volume_Delta");
int hTMA_M1 = iCustom(_Symbol, PERIOD_M1, "Extreme_TMA_Line", 8, 100, 1.5, 0.4, 0); // InpRedraw=No!

// ИИ-фильтр
bool CheckWithAI(double price, string signalType)
{
   // Собираем контекст
   double atrM5 = iATR(_Symbol, PERIOD_M5, 50, 0);
   double maM5 = iMA(_Symbol, PERIOD_M5, 20, 0, MODE_SMA, PRICE_CLOSE, 0);
   double spread = SymbolInfoDouble(_Symbol, SYMBOL_SPREAD);
   
   string trendM5 = (price > maM5) ? "bullish" : "bearish";

   // Формируем JSON
   string json = StringFormat(
     "{\"symbol\":\"%s\",\"signal_type\":\"%s\",\"price\":%.5f,\"spread\":%.3f,\"ATR_M5\":%.3f,\"trend_M5\":\"%s\"}",
     _Symbol, signalType, price, spread, atrM5, trendM5
   );

   // HTTP POST → ваш VPS с ИИ
   string response = HTTPPost("http://your-vps:8000/filter", json);
   
   // Парсим ответ
   string allow = StringSubstr(response, StringFind(response, "\"allow_trade\":")+15, 4);
   double conf = StringToDouble( StringSubstr(response, StringFind(response, "\"confidence\":")+13, 4) );

   return (allow == "true" && conf >= 0.75);

ИИ-сервер (Python, FastAPI + Llama.cpp или API)
from fastapi import FastAPI
from pydantic import BaseModel
import torch
from transformers import pipeline

app = FastAPI()

# Лёгкая модель (например, TinyLlama или Phi-3-mini-Q4)
classifier = pipeline("text-classification", model="cardiffnlp/twitter-roberta-base-sentiment-latest")

class SignalContext(BaseModel):
    symbol: str
    signal_type: str
    price: float
    spread: float
    ATR_M5: float
    trend_M5: str

@app.post("/filter")
def ai_filter(ctx: SignalContext):
    # 1. Формируем промпт
    prompt = f"""
    XAUUSD M1 scalp signal: {ctx.signal_type} at {ctx.price}.
    Spread: {ctx.spread:.3f}, ATR_M5: {ctx.ATR_M5:.2f}, M5 trend: {ctx.trend_M5}.
    Is this a HIGH-PROBABILITY scalp setup for next 2-4 minutes? 
    Answer ONLY in JSON: {{"allow_trade": true/false, "confidence": 0.0-1.0, "reason": "..."}}
    """
    
    # 2. Запрос к локальной LLM (через llama-cpp-python) или API
    response = llm(prompt, max_tokens=100, stop=["\n"])
    
    # 3. Парсим и валидируем
    try:
        result = json.loads(fix_json(response))
        return result
    except:
        return {"allow_trade": False, "confidence": 0.0, "reason": "AI error"}

# → Запускается на VPS с 4+ GB RAM (CPU-only достаточно для tiny LLM)

}
Преимущества такой архитектуры

Нет перерисовки
    
Базовый сигнал — каузальный (M1), ИИ работает только с
уже сформировавшимися
данными
⚡
Низкая латентность
    
Ответ ИИ — <200 мс (достаточно для M1)
🛡
Защита от переобучения
    
ИИ не оптимизирует по прибыли — только фильтрует. Основа — статистически устойчивый скальп-алгоритм

## MonohroM — 2025-11-14 13:12

Модульность
    
Можно заменить ИИ-фильтр на:
 
 

    простой SVM-классификатор (scikit-learn),  
    rule-based систему («если spread > 0.5 и ATR < 2.0 → skip»),  
    даже — на ручной фильтр (человек жмёт «+» в Telegram-боте) |

 Как это работает в бою (пример) 
09:47:23
    
Цена пробивает OB вверх, volume delta +920
    
Генерируется сигнал «long»
09:47:23.150
    
EA формирует JSON и отправляет в ИИ
    
→ ожидание 80 мс
09:47:23.230
    
Ответ:
{"allow":true, "conf":0.81}
    
Открывается BUY 0.1 лот, SL=2342.5, TP=2346.8
09:49:11
    
Цена достигает TP
    
Закрытие +3.1 USD
    
    
14:12:05
    
Пробой OB вниз, но spread=0.87 (высокий), ATR_M5 упал до 1.9
    
ИИ отвечает:
{"allow":false, "conf":0.32, "reason":"low vol + wide spread"}
14:12:30
    
Цена возвращается — ложный пробой
    
✅ Защита сработала
Заключение 

Такой подход: 

    Сохраняет скорость и простоту скальпинга,  
    Добавляет ИИ-фильтрацию без риска полного слива,  
    Позволяет постепенно обучать ИИ на реальных данных,  
    И главное — остаётся под контролем человека.

## MonohroM — 2025-11-14 13:18

Ну да, чуть  посложнее  конечно, чем  провести  линии  от  экстремумов или  кросса  двух машек :ROFLMAO: , в мире же все до  сих пор на миллиметровой бумаге свечи считают и график рисуют, а тут автор раз, и отрисовал зоны от вершинок и низинок, ну и сразу преимущество , дальше только  - БОГАТЕТЬ:ROFLMAO:

## S.McDuck — 2025-11-14 13:51

> Цитата (instantt):
> Вопрос к знатокам, какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать?

## instantt — 2025-11-14 14:00

Путного особо ничего не получилось. Реализовано 2 стратегии на отскок по тренду и на пробой по тренду. Может если будет у кого желание привнести свои идеи то пишите.

## instantt — 2025-11-14 14:47

> Цитата (MonohroM):
> Ну да, чуть  посложнее  конечно, чем  провести  линии  от  экстремумов или  кросса  двух машек :ROFLMAO: , в мире же все до  сих пор на миллиметровой бумаге свечи считают и график рисуют, а тут автор раз, и отрисовал зоны от вершинок и низинок, ну и сразу преимущество , дальше только  - БОГАТЕТЬ:ROFLMAO:

Есть какие то наработки? или начинать с нуля?

## Milord — 2025-11-16 13:02

> Цитата (MonohroM):
> Как это работает в бою (пример)
> 09:47:23
>
> Цена пробивает OB вверх, volume delta +920
>
> Генерируется сигнал «long»
> 09:47:23.150
>
> EA формирует JSON и отправляет в ИИ
>
> → ожидание 80 мс
> 09:47:23.230
>
> Ответ:
> {"allow":true, "conf":0.81}
>
> Открывается BUY 0.1 лот, SL=2342.5, TP=2346.8
> 09:49:11
>
> Цена достигает TP
>
> Закрытие +3.1 USD
>
>
> 14:12:05
>
> Пробой OB вниз, но spread=0.87 (высокий), ATR_M5 упал до 1.9
>
> ИИ отвечает:
> {"allow":false, "conf":0.32, "reason":"low vol + wide spread"}
> 14:12:30
>
> Цена возвращается — ложный пробой
>
> ✅ Защита сработала
> Заключение
>
> Такой подход:
>
>     Сохраняет скорость и простоту скальпинга,
>     Добавляет ИИ-фильтрацию без риска полного слива,
>     Позволяет постепенно обучать ИИ на реальных данных,
>     И главное — остаётся под контролем человека.

У меня вопрос возник, зачем нужно так усложнять работу робота, если все эти условия можно прописать прямо на языке MQL4 и MQL5?
Ваш фильтр ИИ, легко заменят простые условия в коде, без привлечения Python и библиотек построения нейронок или внешних LLM...

---

Следующая страница: https://forexsystemru.com/threads/96719/page-2
