PrecisionGrid EA
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «precisionflowea.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
PrecisionGrid EA — торговый советник для MetaTrader 5, работающий на языке MQL5. Советник реализует сеточную стратегию с ограниченным числом уровней, управлением корзиной позиций и сопровождением прибыли. Вход в рынок выполняется по сигналам на основе скользящих средних и осциллятора, а также с учётом волатильности инструмента. Дополнительное усреднение позиций выполняется по сетке с шагом, зависящим от волатильности, с увеличением объёма на каждом уровне.
Управление открытой корзиной позиций включает сопровождение прибыли по достижении заданного порога и закрытие всех позиций при откате от максимума прибыли. Также предусмотрено закрытие всей корзины при достижении заданного убытка в денежном выражении. После закрытия корзины советник выдерживает паузу перед возобновлением торговли.
Советник обрабатывает событие поступления нового тика, использует торговые функции MetaTrader 5 и работает в пределах одного символа и одного магического номера. Настройки позволяют управлять параметрами сетки, сигналов входа, сопровождения прибыли, ограничения убытка и системными параметрами.
Настройки программы
| Настройка | Описание |
|---|---|
| BaseLot | Базовый объём первой позиции сетки. |
| LotMultiplier | Коэффициент увеличения объёма для каждого следующего уровня сетки. |
| MaxLevels | Максимальное количество уровней сетки, которое может быть открыто. |
| GridATRMulti | Множитель волатильности, определяющий расстояние между уровнями сетки. |
| ATR_Period | Период расчёта индикатора волатильности, применяемого для оценки рыночной активности. |
| EMA_Fast | Период быстрой скользящей средней, используемой в сигналах входа. |
| EMA_Slow | Период медленной скользящей средней, используемой в сигналах входа. |
| RSI_Period | Период расчёта осциллятора, используемого в сигналах входа. |
| RSI_Oversold | Нижний порог осциллятора, ограничивающий условия входа в короткие позиции. |
| RSI_Overbought | Верхний порог осциллятора, ограничивающий условия входа в длинные позиции. |
| ATR_MinMulti | Минимальный множитель волатильности, используемый при оценке условий входа. |
| BasketTPPips | Зарезервированный параметр целевой прибыли корзины; фактическое закрытие управляется сопровождением прибыли. |
| TrailStepATRMult | Множитель волатильности, определяющий шаг сопровождения прибыли корзины. |
| TrailStartATRMult | Множитель волатильности, определяющий порог прибыли для активации сопровождения корзины. |
| BasketSL_USD | Порог убытка в долларах США для всей корзины позиций, при достижении которого все позиции закрываются. |
| CooldownBars | Количество баров паузы после закрытия сетки, в течение которых новые сделки не открываются. |
| AllowShort | Разрешает открытие коротких позиций. Если выключено, советник работает только в направлении покупки. |
| MagicNumber | Уникальный идентификатор сделок советника для их отличия от других позиций на счёте. |
| TradeComment | Текстовый комментарий, добавляемый к торговым операциям советника. |
| Slippage | Максимально допустимое отклонение цены исполнения в пунктах. |
Поиск по коду файла
#property version "1.30"
#property strict
#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
CTrade trade;
CPositionInfo posInfo;
input group "=== Grid Settings ==="
input double BaseLot = 0.01; // Basis-Lot (Level 1)
input double LotMultiplier = 1.5; // Lot-Multiplikator je Level
input int MaxLevels = 4; // Max Grid-Levels (fest 4)
input double GridATRMulti = 1.2; // Grid-Abstand = ATR × dieser Faktor
input int ATR_Period = 14; // ATR Periode
input group "=== Smart Entry ==="
input int EMA_Fast = 21;
input int EMA_Slow = 55;
input int RSI_Period = 14;
input double RSI_Oversold = 42.0;
input double RSI_Overbought = 58.0;
input double ATR_MinMulti = 0.8;
input group "=== Basket Trailing TP ==="
input double BasketTPPips = 150.0; // (reserviert, Trail steuert den Exit)
input double TrailStepATRMult = 0.35; // Trail-Schritt = ATR × Faktor
input double TrailStartATRMult= 0.5; // Trail aktiviert wenn Profit >= ATR × Faktor × Levels × 10
input group "=== Basket SL ==="
input double BasketSL_USD = 50.0; // Hard SL in USD (alle Positionen zusammen)
input group "=== Recovery ==="
input int CooldownBars = 3; // Pause nach Grid-Close (in Bars)
input bool AllowShort = true;
input group "=== System ==="
input int MagicNumber = 20240601;
input string TradeComment = "PrecisionGrid";
input int Slippage = 30;
enum GRID_DIR { GRID_NONE, GRID_LONG, GRID_SHORT };
GRID_DIR g_dir = GRID_NONE;
int g_level = 0;
double g_gridPrices[5];
datetime g_cooldownEnd = 0;
double g_trailHigh = -DBL_MAX;
bool g_trailing = false;
int h_atr, h_ema_fast, h_ema_slow, h_rsi;
int OnInit()
{
// код доступен только после оплаты
}
void OnDeinit(const int reason)
{
IndicatorRelease(h_atr);
IndicatorRelease(h_ema_fast);
IndicatorRelease(h_ema_slow);
IndicatorRelease(h_rsi);
}
void OnTick()
{
// код доступен только после оплаты
}
void CheckForEntry(double bid, double ask, double atr,
double emaFast, double emaSlow, double rsi)
{
if(emaFast > emaSlow && rsi < RSI_OvПоказано первые 50% кода (символов: 5976)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.