traffic_light_strategy.mq4
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «traffic_light_strategy.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный продукт представляет собой торгового советника для платформы MetaTrader 4, написанный на языке MQL4. Советник анализирует ценовые данные с помощью нескольких скользящих средних (iMA) с различными периодами и методами расчёта, формируя сигналы для открытия и закрытия торговых позиций.
Советник поддерживает два режима управления объёмом сделок: фиксированный размер лота или расчёт на основе процента риска от баланса счёта. Также предусмотрены уровни тейк-профита и стоп-лосса, а также механизм принудительного закрытия позиций на основе условий пересечения индикаторов.
В настройках доступны параметры стиля торговли, временные ограничения на открытие и закрытие ордеров по барам, магический номер для идентификации сделок, а также параметры скользящих средних, используемых в качестве сигналов. Все торговые операции выполняются через стандартные API MetaTrader 4.
Настройки программы
| Настройка | Описание |
|---|---|
| s1 | s1 — Групповой заголовок для параметров управления риском и параметрами ордеров |
| ????? ???? MM (MM_Lots) | MM_Lots — Фиксированный размер лота при торговле |
| 0 MM ???????? 1 ??????? (MM_Mode) | MM_Mode — Режим расчёта лота: фиксированный размер или на основе процента риска от баланса |
| ???????? ??????? 0/1/2 ?????? ????? ??????? (LotsDecimal) | LotsDecimal — Количество знаков после запятой при расчёте размера лота |
| ???? ?? ?????? (RiskPercent) | RiskPercent — Процент риска от баланса счёта, используемый для расчёта размера лота в режиме MM_Mode = 1 |
| ?????????? ????? (MagicNumber) | MagicNumber — Магический номер для идентификации ордеров, созданных советником |
| s2 | s2 — Групповой заголовок для параметров торговли |
| ????? ???????? 0 ?????????????? 1 ??????????? (StyleTrade) | StyleTrade — Стиль торговли, определяющий способ формирования условий входа в позицию |
| ???????? ??????? 0 ??????? ??? 1 ????? ??? (TimeOpenBar) | TimeOpenBar — Флаг ограничения открытия ордеров: 0 — открытие разрешено в любое время, 1 — только в определённый бар |
| ?????????? ? ??????? (TakeProfit) | TakeProfit — Уровень тейк-профита для ордеров |
| ???????? ? ??????? (StopLoss) | StopLoss — Уровень стоп-лосса для ордеров |
| ???????? ??????? ?? iMA 1 ???. (CloseProfit) | CloseProfit — Условие закрытия позиции на основе сравнения значений индикатора iMA |
| ???????? ??????? 1 ????? ??? 0 ??????? ??? (TimeCloseBar) | TimeCloseBar — Флаг ограничения закрытия ордеров: 0 — закрытие разрешено в любое время, 1 — только в определённый бар |
| s3 | s3 — Групповой заголовок для параметров индикаторов сигналов |
| ??????? iMA (RedMA) | RedMA — Период красной скользящей средней iMA, используемой в качестве одного из сигналов для торговых решений |
| ?????? iMA (YellowMA) | YellowMA — Период жёлтой скользящей средней iMA, используемой в качестве одного из сигналов для торговых решений |
| ??????? iMA (GreenMA) | GreenMA — Период зелёной скользящей средней iMA, используемой в качестве одного из сигналов для торговых решений |
| ????? iMA (BlueMA) | BlueMA — Период синей скользящей средней iMA, используемой в качестве одного из сигналов для торговых решений |
Поиск по коду файла
#property version "1.0"
#property strict
extern string s1="Risk MM and parameters orders";
extern double MM_Lots = 0.1; // ????? ???? MM
extern int MM_Mode = 1; // 0 MM ???????? 1 ???????
extern int LotsDecimal = 1; // ???????? ??????? 0/1/2 ?????? ????? ???????
extern double RiskPercent = 1; // ???? ?? ??????
extern int MagicNumber = 134201; // ?????????? ?????
extern string s2="Trading options";
extern int StyleTrade = 0; // ????? ???????? 0 ?????????????? 1 ???????????
extern int TimeOpenBar = 0; // ???????? ??????? 0 ??????? ??? 1 ????? ???
extern double TakeProfit = 120; // ?????????? ? ???????
extern double StopLoss = 60; // ???????? ? ???????
extern int CloseProfit = 1; // ???????? ??????? ?? iMA 1 ???.
extern int TimeCloseBar = 1; // ???????? ??????? 1 ????? ??? 0 ??????? ???
extern string s3="Signals Indicators";
extern int RedMA = 120; // ??????? iMA
extern int YellowMA = 55; // ?????? iMA
extern int GreenMA = 5; // ??????? iMA
extern int BlueMA = 24; // ????? iMA
bool Sg_IMA_Buy=False,Sg_IMA_Sell=False;
bool OrderBuy=False,OrderSell=False;
bool Sg_Init=False;
bool TradeBuy,TradeSell;
double Lots,MaxLots,MinLots;
double PunktSize;
int Slip=3.0;
int total,ticket,Order_id;
datetime TimeNewOpenBar=0,TimeNewCloseBar=0;
string s="Traffic light_m00012 capsule : ";
int OnInit()
{
// код доступен только после оплаты
}
void OnTick()
{
// код доступен только после оплаты
}
double TP=0;
double SL=0;
double Spread=MarketInfo(Symbol(),MODE_SPREAD)*Point;
double StopLevel=MarketInfo(Symbol(),MODE_STOPLEVEL);
double SignalBlueiMAHigh=iMA(Symbol(),NULL,BlueMA,0,MODE_EMA,PRICE_HIGH,0);
double SignalBlueiMALow=iMA(Symbol(),NULL,BlueMA,0,MODE_EMA,PRICE_LOW,0);
double SignalYellowiMA=iMA(Symbol(),NULL,YellowMA,0,MODE_SMA,PRICE_CLOSE,0);
double SignalRediMA=iMA(Symbol(),NULL,RedMA,0,MODE_SMA,PRICE_CLOSE,0);
double SignalGreeniMA=iMA(Symbol(),NULL,GreenMA,0,MODE_EMA,PRICE_CLOSE,0);
TradeBuy=False;
TradeSell=False;
total=CountTrades();
if(total==0)
{
if(StyleTrade == 0 && Bid < SignalRediMA && Bid > SignalYellowiMA) Sg_Init=TRUE;
if(StyleTrade == 0 && Bid < SignalYellowiMA && Bid > SignalRediMA) Sg_Init=TRUE;
if(StyleTrade!=0 && Bid<SignalBlueiMAHigh && Bid>SignalBlueiMALow) Sg_Init=TRUE;
}
if(Sg_Init)
{
if(MM_Mode==0 || StopLoss==0) Lots=MM_Lots;
else
{
Lots=NormalizeDouble((AccountBalance()*RiskPercent/100.0)/(PunktSize*StopLoss),LotsDecimal);
if(Lots < MinLots) Lots = MinLots;
if(Lots > MaxLots) Lots = MaxLots;
}
}
if(total==0)
{
if(TakeProfit==0 && StopLoss==0 && CloseProfit==0) return;
if(SignalGreeniMA>SignalBlueiMAHigh && SПоказано первые 50% кода (символов: 4561)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.