← К каталогу
Исходный код · ID 559

smc trader 2 mas 12 26 ema basic.mq4

Похожие материалы по тегам

#1.mtf_collider_h4_close_13_v18bar.mq4MQL4 / MetaTrader 4 · 1 общих теговea robofibo source v.11.2.mq4MQL4 / MetaTrader 4 · 1 общих теговsma crossover scalper ea for mt4.mq4MQL4 / MetaTrader 4 · 1 общих теговr15 pivot points expert advisor by @fundedmillionairess.mq4MQL4 / MetaTrader 4 · 1 общих теговnewstrader.mq5MQL5 / MetaTrader 5 · 1 общих теговmm3.0_flip_codepro_v3.1_with_cooldown@lifeindreamsworld.mq5MQL5 / MetaTrader 5 · 1 общих тегов
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Данный код представляет собой советник для платформы MetaTrader 4 на языке MQL4, который автоматизирует торговлю на основе анализа скользящих средних. Программа рассчитывает экспоненциальные скользящие средние с разными периодами и формирует торговые сигналы на основе их пересечений для открытия позиций.

Советник управляет открытыми позициями: при развороте соотношения скользящих средних он закрывает действующие ордера. Также реализован механизм трейлинг-стопа, который периодически подтягивает уровень стоп-лосса вслед за движением цены в прибыльную сторону.

Система включает проверку свободного маржинального баланса перед открытием новых позиций и предотвращает одновременное наличие нескольких ордеров на одном символе. Уведомления отправляются по электронной почте и через встроенные оповещения при открытии и закрытии позиций.

Настройки программы

НастройкаОписание
TakeProfit Тейк-профит — Уровень фиксации прибыли для позиций
Lots Объём лота — Объём торговой позиции
InitialStop Начальный стоп-лосс — Начальный уровень стоп-лосса для новых позиций
TrailingStop Трейлинг-стоп — Расстояние для активации трейлинг-стопа
Получить полный код

Поиск по коду файла

extern double TakeProfit = 50;
 extern double Lots = 0.1;
 extern double InitialStop = 30;
 extern double TrailingStop = 20;

 datetime BarTime;

int init()
{
      // код доступен только после оплаты
   }

int start()
  {
      // код доступен только после оплаты
   }
   int cnt,total,ticket,MinDist,tmp;
   double Spread, SL;
   bool Buy;
   bool Sell;
   bool CloseLong;
   bool CloseShort;

  if(Bars<100){
     Print("bars less than 100");
     return(0);  
  }

  double OpenTrendValm1 = ObjectGetValueByShift("Trend",1);
  double OpenTrendValm2 = ObjectGetValueByShift("Trend",2);
  if(OpenTrendValm1 != 0 && OpenTrendValm2 != 0)
  {ObjectMove("Trend",1,Time[0],OpenTrendValm1+(OpenTrendValm1-OpenTrendValm2));}

 MinDist=MarketInfo(Symbol(),MODE_STOPLEVEL);
 Spread=(Ask-Bid);

double SMAP1,SMAP2,MMAP1,MMAP2,LMA1P1,LMA1P2,LMA2P1,LMA2P2;

 int SMAVal = 12;
 int MMAVal = 26;
 int LMA1Val = 40;  //Determine Trend
 int LMA2Val = 60;

SMAP1=iMA(NULL,0,SMAVal,0,MODE_EMA,PRICE_CLOSE,1);
SMAP2=iMA(NULL,0,SMAVal,0,MODE_EMA,PRICE_CLOSE,2);
MMAP1=iMA(NULL,0,MMAVal,0,MODE_EMA,PRICE_CLOSE,1);
MMAP2=iMA(NULL,0,MMAVal,0,MODE_EMA,PRICE_CLOSE,2);
/*LMA1P1=iMA(NULL,0,LMA1Val,0,MODE_EMA,PRICE_CLOSE,1);
LMA1P2=iMA(NULL,0,LMA1Val,0,MODE_EMA,PRICE_CLOSE,2);
LMA2P1=iMA(NULL,0,LMA2Val,0,MODE_EMA,PRICE_CLOSE,1);
LMA2P2=iMA(NULL,0,LMA2Val,0,MODE_EMA,PRICE_CLOSE,2);
*/

Buy= false;
Sell=false;
if(SMAP2 < MMAP2 && SMAP1 > MMAP1 
   ) 
   {Buy=true;}

if(SMAP2 > MMAP2 && SMAP1 < MMAP1 
   )
   {Sell=true;}

CloseLong=false;
if(SMAP2 > MMAP2 && SMAP1 < MMAP1) CloseLong = true;

CloseShort=false;
if(SMAP2 < MMAP2 && SMAP1 > MMAP1) CloseShort = true;

  total=OrdersTotal();
  if(total>0)
   { 
   for(cnt=0;cnt<total;cnt++)
   {
    OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
    if(OrderType()==OP_BUY && OrderSymbol()==Symbol())
     {
     if(CloseLong == true)
      {SendMail("EA Message Long Order Closed ",Symbol() + " " +Bid);                                 
       OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close LONG position
     }}

    OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); 
    if(OrderType()==OP_SELL && OrderSymbol()==Symbol()) // check for symbol
     {
     if(CloseShort == true)
      {SendMail("EA Message Short Order Closed ",Symbol() + " " +Ask);   
       OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close SHORT position
     }}
    }  // for loop return
    }   // close 1st if 

if(0==0)  //This is used to turn the trailing stop on & off
 {
  total=OrdersTotal();
  if(total>0)
   { 
   for(cnt=0;cnt<total;cnt++)
    {
     OrderSelect(cnt, SELECT

Показано первые 50% кода (символов: 4460)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
446₽ ≈ $5.45