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

criptobot ea - new version 8.5.7.mq4

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

2 to 1 strategy with signals.pineTradingView · 2 общих теговmulti_lot_scalper_a.mq4MQL4 / MetaTrader 4 · 2 общих теговfresh algo signals & overlays v25_6334471093901859175.pineTradingView · 2 общих теговfresh algo v24 tradingview indicator_5918156155804195406.pineTradingView · 2 общих теговlinear regression channel.mq4MQL4 / MetaTrader 4 · 2 общих теговtrading criteria.mq4MQL4 / MetaTrader 4 · 2 общих тегов
Вы автор или правообладатель?

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

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

О программе

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

Советник автоматически открывает позиции BUY и SELL при совпадении условий нескольких технических индикаторов. В его функционал входят управление рисками: стоп-лосс, тейк-профит, трейлинг-стоп, перевод в безубыток и стратегия выхода из позиций. Расчёт оптимального объёма лота учитывает свободный баланс и историю убытков.

На графике отображаются фрактальные уровни в виде горизонтальных линий. Советник поддерживает работу на множестве таймфреймов от M1 до MN1 и отправляет уведомления через встроенные средства MetaTrader: алерты, push-уведомления и электронную почту.

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

НастройкаОписание
Enable Exit strategy (Exit) Exit — Переключатель стратегии выхода из позиций
Enable "no loss" (USEMOVETOBREAKEVEN) USEMOVETOBREAKEVEN — Переключатель функции перевода позиции в безубыток
When to move break even (WHENTOMOVETOBE) WHENTOMOVETOBE — Число, количество пунктов прибыли для активации перевода в безубыток
How much pips to move sl (PIPSTOMOVESL) PIPSTOMOVESL — Число, количество пунктов для сдвига стоп-лосса при переводе в безубыток
Lots size (Lots) Lots — Число, размер лота для открытия сделок
MaximumRisk MaximumRisk — Число, максимальный риск в процентах от свободного баланса для расчёта лота
DecreaseFactor DecreaseFactor — Число, определяющее коэффициент уменьшения лота при наличии убыточных сделок в истории
TrailingStop (TrailingStop) TrailingStop — Число, расстояние для трейлинг-стопа в пунктах
Stop Loss (Stop_Loss) Stop_Loss — Число, значение стоп-лосса в пунктах
MagicNumber (MagicNumber) MagicNumber — Целое число, магический номер для идентификации сделок советника
TakeProfit (Take_Profit) Take_Profit — Число, значение тейк-профита в пунктах
FastMA (FastMA) FastMA — Целое число, период быстрой скользящей средней
SlowMA (SlowMA) SlowMA — Целое число, период медленной скользящей средней
Momentum_Sell (Mom_Sell) Mom_Sell — Число, пороговое значение импульса для открытия продажи
Momentum_Buy (Mom_Buy) Mom_Buy — Число, пороговое значение импульса для открытия покупки
Number Of High And Low (FractalNum) FractalNum — Целое число, количество фрактальных уровней для отображения на графике
Получить полный код

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

#property version     "1.00"
#property strict

extern bool         Exit=true;//Enable Exit strategy
extern bool         USEMOVETOBREAKEVEN=true;//Enable "no loss"
extern double       WHENTOMOVETOBE=10;      //When to move break even
extern double       PIPSTOMOVESL=5;         //How much pips to move sl
extern double       Lots=0.01;              //Lots size
input  double       MaximumRisk   =0;
input  double       DecreaseFactor=0;
extern double       TrailingStop=40;        //TrailingStop
extern double       Stop_Loss=200;           //Stop Loss
extern int          MagicNumber=1234;       //MagicNumber
input  double       Take_Profit=200;          //TakeProfit
extern int          FastMA=1;               //FastMA
extern int          SlowMA=5;              //SlowMA
extern double       Mom_Sell=0.3;           //Momentum_Sell
extern double       Mom_Buy=0.3;            //Momentum_Buy
extern int          FractalNum=10;  // Number Of High And Low
int           err;

int total=0;
double
Lot,Dmax,Dmin,// Amount of lots in a selected order
    Lts,                             // Amount of lots in an opened order
    Min_Lot,                         // Minimal amount of lots
    Step,                            // Step of lot size change
    Free,                            // Current free margin
    One_Lot,                         // Price of one lot
    Price,                           // Price of a selected order,
    pips,
    MA_1,MA_2,MACD_SIGNAL;
int Type,freeze_level,Spread;

double priceopen,stoploss,takeprofit;

int orderticket;

double  Linenow=0;
double  Lineprev=0;
double  Linenow1=0;
double  Lineprev1=0;

int
Period_MA_2,  Period_MA_3,       // Calculation periods of MA for other timefr.
              Period_MA_02, Period_MA_03,      // Calculation periods of supp. MAs
              K2,K3,T,L;

datetime dt=0;
datetime dt1=0;
datetime dt2=0;
datetime dt12=0;

int  First_Low_Candel=0,Secund_Low_Candel=3,First_High_Candel=0,Secund_High_Candel=3,FractalHCandel[],FractalLCandel[];
double FractalHigh[],FractalLow[],LineValLow=0,LineValHigh=0;
int  First_Low_Candel1=0,Secund_Low_Candel1=3,First_High_Candel1=0,Secund_High_Candel1=3,FractalHCandel1[],FractalLCandel1[];
double FractalHigh1[],FractalLow1[],LineValLow1=0,LineValHigh1=0;

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

void OnDeinit(const int reason)
  {
    del(); 
  }

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

int stop()
  {
   total=0;
   HideTestIndicators(true);
   double MA_1_t=iMA(NULL,L,FastMA,0,MODE_LWMA,PRICE_TYPICAL,0); // МА_1
   double MA_2_t=iMA(NULL,L,SlowMA,0,MODE_LWMA,PRICE_TYPICAL,0); // МА_2

   double middleBB=iBands(Symbol(),0,20, 2,0,0,MODE_MAIN,1);//middle
   double lowerBB=iBands(Symbol(),0,20, 2,0,0,MODE_LOWER,1);//lower
   double upperBB=iBands(Symbol(),0,20, 2,0,0,MODE_UPPER,1);//upper

   double  MacdMAIN=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1);
   double  MacdSIGNAL=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);
   double  MacdMAIN0=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1);
   double  MacdSIGNAL0=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);

   double  MA_3=iMA(NULL,L,3,0,MODE_EMA,PRICE_TYPICAL,0); // МА_3    DALYN GUPPY MMA
   double  MA_5=iMA(NULL,L,5,0,MODE_EMA,PRICE_TYPICAL,0); // МА_5    DALYN GUPPY MMA
   double  MA_8=iMA(NULL,L,8,0,MODE_EMA,PRICE_TYPICAL,0); // МА_8    DALYN GUPPY MMA
   double  MA_10=iMA(NULL,L,10,0,MODE_EMA,PRICE_TYPICAL,0); // МА_10 DALYN GUPPY MMA
   double  MA_12=iMA(NULL,L,12,0,MODE_EMA,PRICE_TYPICAL,0); // МА_12 DALYN GUPPY MMA
   double  MA_15=iMA(NULL,L,15,0,MODE_EMA,PRICE_TYPICAL,0); // МА_15 DALYN GUPPY MMA
   double  MA_30=iMA(NULL,L,30,0,MODE_EMA,PRICE_TYPICAL,0); // МА_30 DALYN GUPPY MMA
   double  MA_35=iMA(NULL,L,35,0,MODE_EMA,PRICE_TYPICAL,0); // МА_35 DALYN GUPPY MMA
   double  MA_40=iMA(NULL,L,40,0,MODE_EMA,PRICE_TYPICAL,0); // МА_40 DALYN GUPPY MMA
   double  MA_45=iMA(NULL,L,45,0,MODE_EMA,PRICE_TYPICAL,0); // МА_45 DALYN GUPPY MMA
   double  MA_50=iMA(NULL,L,50,0,MODE_EMA,PRICE_TYPICAL,0); // МА_50 DALYN GUPPY MMA
   double  MA_60=iMA(NULL,L,60,0,MODE_EMA,PRICE_TYPICAL,0); // МА_60 DALYN GUPPY MMA

   HideTestIndicators(false);
   for(int trade=OrdersTotal()-1; trade>=0; trade--)
     {
      if(OrderSelect(trade,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=MagicNumber)
            continue;
         if(OrderSymbol()==Symbol() || OrderMagicNumber()==MagicNumber)
           {
            if(OrderType()==OP_BUY)
              {

               if(((MA_3==MA_5 && MA_5==MA_8 && MA_8==MA_10 && MA_10==MA_12 && MA_12==MA_15)
                   ||(MA_30==MA_35 && MA_35==MA_40 && MA_40==MA_45 && MA_45==MA_50 && MA_50==MA_60))
                  ||(Close[1]<=lowerBB))
                  if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),3,Red))
                     Print("Did not close");
               break;
               Print(" CLOSE BY EXIT STRATEGY ");

              }
            else // go to short position
              {

               if(((MA_3==MA_5 && MA_5==MA_8 && MA_8==MA_10 && MA_10==MA_12 && MA_12==MA_15)
                   ||(MA_30==MA_35 && MA_35==MA_40 && MA_40==MA_45 && MA_45==MA_50 && MA_50==MA_60))
                  ||(Close[1]<=lowerBB))
                  if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),3,Red))
                     Print("Did not close");
               break;
               Print(" CLOSE BY EXIT STRATEGY ");

              }
           }
        }
     }
   return(0);
  }

void Trail1()
  {
   total=OrdersTotal();

   for(int cnt=0; cnt<total; cnt++)
     {
      if(!OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
         continue;
      if(OrderType()<=OP_SELL &&   // check for opened position
         OrderSymbol()==Symbol())  // check for symbol
        {

         if(OrderType()==OP_BUY)
           {

            if(TrailingStop>0)
              {
               if(Bid-OrderOpenPrice()>pips*TrailingStop)
                 {
                  if(OrderStopLoss()<Bid-pips*TrailingStop)
                    {

                     RefreshRates();
                     stoploss=Bid-(pips*TrailingStop);
                     takeprofit=OrderTakeProfit();
                     double StopLevel=MarketInfo(Symbol(),MODE_STOPLEVEL)+MarketInfo(Symbol(),MODE_SPREAD);
                     if(stoploss<StopLevel*pips)
                        stoploss=StopLevel*pips;
                     string symbol=OrderSymbol();
                     double point=SymbolInfoDouble(symbol,SYMBOL

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

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

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

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

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

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

Стоимость полного кода
2 151,10₽ ≈ $26.29