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

  • Автор темы Автор темы instantt
  • Дата начала Дата начала

instantt

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

Вложения

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

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

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

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

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

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

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

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

Каждый Трейдер - кузнец СВОЕГО счастья!
Ну философских сообщений я могу тоже уйму написать, но стараюсь всегда общаться по существу темы или заданного вопроса, по этому у меня их за 14 лет не 2000 а 200. А вопрос был к аудитории форума следующий "какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать?"
 
Ну философских сообщений я могу тоже уйму написать, но стараюсь всегда общаться по существу темы или заданного вопроса, по этому у меня их за 14 лет не 2000 а 200. А вопрос был к аудитории форума следующий "какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать?"
Вот это и удивило! За 14 лет уже можно было определиться с темами, на которые не стоит тратить свое время...
 
А вопрос был к аудитории форума следующий "какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать?"
Я вообщем-то тоже согласен с VNIK-ом. Ответ на Ваш вопрос - никакую. Не серьёзно всё это !
Вы бы ещё спросили какую стратегию для двух пересекающихся "машек" вы посоветуете реализовать.
 
Я вообщем-то тоже согласен с VNIK-ом. Ответ на Ваш вопрос - никакую. Не серьёзно всё это !
Вы бы ещё спросили какую стратегию для двух пересекающихся "машек" вы посоветуете реализовать.
А что серьезно? я не в шутку, интересно Ваше мнение!
 
А что серьезно? я не в шутку, интересно Ваше мнение!
Что-то не такое заезженное, как уровни, мувинги, объёмы и т.п.
Что-то новенькое малоисследованное, может авторский взгляд на рынок. То, что вызовет интерес у местной публики, а это не торговля от уровней по индикатору !
 
Что-то не такое заезженное, как уровни, мувинги, объёмы и т.п.
Что-то новенькое малоисследованное, может авторский взгляд на рынок. То, что вызовет интерес у местной публики, а это не торговля от уровней по индикатору !
а что можно придумать нового из 4-х значений цены и проторгованного объема?
 
Ну, во-первых, не обязательно зацикливаться только на цене и объёме, а во-вторых, как видите никто в этой ветке не сыплет идеями, что было предсказуемо !
 
Добрый день. пишу робота на базе уровней поддержки и сопротивления. За основу взят индикатор. Это так понимаю его последняя версия. Из многих индикаторов которые рисуют поддержки и сопротивление, что я встречал, это лично мое мнение, он самый лучший. Его преимущество то что он рисует не линию а зону. Что в планах:
- робот торгует по тренду, на отскок от зон при откате.
Вопрос к знатокам, какую стратегию с использованием зон поддержки и сопротивления вы по советуете реализовать? может у кого есть опыт ручной торговли. Давайте начнем обсуждение и я позже выложу заготовку, сырую но рабочую.
Этот supdem и все ему подобные сделан на стандартном зигзаге.
Почему бы просто не взять обычный зигзаг вместо него?

Screenshot_320.png
 
как вижу идеями не сыпет никто вообще,даже самые идейные)),это тоже было предсказуемо
Ха-ха :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 │
└───────────────────────────────────────────┘
 
Что делает ИИ? (ограниченные, контролируемые задачи)

ИИ не предсказывает цену, а выполняет 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 недели тестирования).
 
🛠 Техническая реализация (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)
🛡
Защита от переобучения

ИИ не оптимизирует по прибыли — только фильтрует. Основа — статистически устойчивый скальп-алгоритм
 
Модульность

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



простой 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

Цена возвращается — ложный пробой

✅ Защита сработала
Заключение

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

Сохраняет скорость и простоту скальпинга,
Добавляет ИИ-фильтрацию без риска полного слива,
Позволяет постепенно обучать ИИ на реальных данных,
И главное — остаётся под контролем человека.
 
Ну да, чуть посложнее конечно, чем провести линии от экстремумов или кросса двух машек :ROFLMAO: , в мире же все до сих пор на миллиметровой бумаге свечи считают и график рисуют, а тут автор раз, и отрисовал зоны от вершинок и низинок, ну и сразу преимущество , дальше только - БОГАТЕТЬ:ROFLMAO:
 
Путного особо ничего не получилось. Реализовано 2 стратегии на отскок по тренду и на пробой по тренду. Может если будет у кого желание привнести свои идеи то пишите.
 

Вложения

Ну да, чуть посложнее конечно, чем провести линии от экстремумов или кросса двух машек :ROFLMAO: , в мире же все до сих пор на миллиметровой бумаге свечи считают и график рисуют, а тут автор раз, и отрисовал зоны от вершинок и низинок, ну и сразу преимущество , дальше только - БОГАТЕТЬ:ROFLMAO:
Есть какие то наработки? или начинать с нуля?
 
Как это работает в бою (пример)
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...
 

Посмотрели (180) Посмотреть

Отслеживают (2) Посмотреть

Назад
Верх