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

marusya mt4.mq4

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

ea robofibo source v.11.2.mq4MetaTrader 4 · 1 общих теговindicator marketmind for tradingview.txtTradingView · 1 общих теговmarket crusher ea guidlines.txtMQL · 1 общих теговsovetnikov_v5.mqhMetaTrader 4 · 1 общих теговunlocker manual.mq4MetaTrader 4 · 1 общих теговkopirmt4 full.mq4MetaTrader 4 · 1 общих тегов
Вы автор или правообладатель?

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

Получить полный код

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

#property version   "1.14"
#property strict

#include <sovetnikovNET\Orders.mqh>
#include <sovetnikovNET\Time.mqh>
#include <sovetnikovNET\Draw.mqh>
#define ROBOFOREX_API "143138b6b834d9bb"
#include <sovetnikovNET\News.mqh>
CWebRequest m_post;
bool bActivate=false;

TRADEMODE TradeMode = TRADEMODE_ALL; // Trading mode

I slippage = 0; // Slippage

S cmt = ""; //Comment

I Magic = 20200320; // Magic

D Risk = 0.01; // Risk in % (0-off)

D BalanceStep = 1000; // Balance step

D fix_lot = 0.01; // Fixed lot

D order_tp = 20; // Take profit

D Step = 10; // Averaging step
D StepMp = 1.3; // Averaging step multiplier

D LotMultiplicator = 1.6; // Lot multiplier
I MaxOrders = 100; // Maximum number of orders in each direction
B CloseInverse = false; // Close orders at a reversal signal
D MaxDD = 0; // Maximum drawdown

ENUM_TIMEFRAMES tf=PERIOD_H1;

#define LICENSE_OFF

#define LICENSE_DEMO

#define LICENSE_NAME "g?0j74vdwy*p~?c1axj7%e@7wcofgzw2"
#define LICENSE_FILE "club0405"

#define VALID_KEY "The advisor is active"
#define EMPTY_KEY "The advisor must be activated."
#define INVALID_KEY "Invalid license."
#define EXPERIED "License expired"

int signal_bar=SIGNAL_BAR_EVERYTICK;

class CMyOrders: public COrders
  {
protected:

   string            aSymbols[];
   int               hsar0,hsar2,hsarD1;
public:

   virtual bool      OnInitIndicators()
     {
#ifdef __MQL5__
      hsar0=iSAR(_Symbol,tf,0.02,0.2);
      hsar2=iSAR(_Symbol,tf,0.002,0.02);
      hsarD1=iSAR(_Symbol,PERIOD_D1,0.002,0.02);
#endif
      return true;
     }

   virtual bool      OnDeInitIndicators()
     {
#ifdef __MQL5__
      IndicatorRelease(hsar0);
      IndicatorRelease(hsar2);
      IndicatorRelease(hsarD1);
#endif
      return true;
     }

   int               signal(int ibar,ENUM_ORDER_TYPE &iop_aver)
     {

      double dsar0=0,dsar2=0,dsar2D1=0;
      double dclose=0;
      iop_aver=-1;

      dclose=iClose(_Symbol,tf,ibar);
#ifdef __MQL5__
      dsar0=iSAR(hsar0,ibar);
      dsar2=iSAR(hsar2,ibar);
      dsar2D1=iSAR(hsarD1,0);
#else
      dsar0=iSAR(_Symbol,tf,0.02,0.2,ibar);
      dsar2=iSAR(_Symbol,tf,0.002,0.02,ibar);
      dsar2D1=iSAR(_Symbol,PERIOD_D1,0.002,0.02,0);
#endif

      if(dclose>dsar2 && dclose>dsar0 && dsar2D1>dclose)
        {
         iop_aver=OP_SELL;
        }

      if(dclose<dsar2 && dclose<dsar0 && dsar2D1<dclose)
        {
         iop_aver=OP_BUY;
        }

      if(dclose<dsar2 && dclose>dsar0 && dsar2D1>dclose)
        {
         return OP_SELL;
        }

      if(dclose>dsar2 && dclose<dsar0 && dsar2D1<dclose)
        {
         return OP_BUY;
        }

      return -1;
     }
  };

class CMain: public CMainDefault
  {
protected:
   CMyOrders         m_main;
   CNewBar           m_bar,m_barD1;

   CDrawPos          m_pos;
public:
   virtual int       OnInit()
     {
      // код доступен только после оплаты
   }

   virtual void      OnDeinit(const int reason)
     {
      m_main.OnDeinit();
      HideTestIndicators(false);
     }

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

      string sLicense=VALID_KEY;

      bool bcheck=checkAccount(sLicense,LICENSE_NAME);

      if(!bActivate && !bcheck)
        {

         if(TerminalInfoString(TERMINAL_LANGUAGE)=="Russian")
            sLicense="Необходимо открыть счет по ссылке ";
         else
            sLicense ="You must open an account using the link ";
        }

      m_pos.DrawStatus("status",sLicense,bcheck);
      if(!m_main.IsWork(_Symbol))
         return; //отключена торговля

      m_bar.Refresh();
      m_barD1.Refresh(true);

      m_main.OnTick();

      if(MaxDD>0 && AccountBalance()>0)
        {
         double dprofit=m_main.getProfit(ALL);
         if(dprofit*100/AccountBalance()<=-MaxDD)
           {
            m_main.OrderCloseAll(ALL);
            return;
           }
        }

      ENUM_ORDER_TYPE op=-1,iop_aver=-1;

      op=(ENUM_ORDER_TYPE)m_main.signal(signal_bar,iop_aver);

      if(op==OP_BUY || op==OP_SELL)
        {
         if(m_main.Count(op)==0 && bcheck)
           {
            double dLot=fix_lot;

            if(Risk>0)
               dLot=m_main.getLotByProcent(MM_BalanceStep,Risk,BalanceStep);

            if(m_main.IsTester && dLot<=0.0) dLot=m_main.m_symbol.LotsMin();

            ulong tt=m_main.OrderSend(op,dLot,-1,0,order_tp,cmt);
            DEBUG_OrderSend(tt);
           }
        }

      double abuy[][2],asell[][2];
      m_main.getLastOrderTicket(abuy,asell);

      int ib=ArrayRange(abuy,0);
      int is=ArrayRange(asell,0);

      double dStep=Step;

      if(dStep<Step)
         dStep=Step;

      if(ib>0)
        {
         ArraySort(abuy); //сортировка от мин к маск, 0 мин т.е. последний при усренении

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

Что вы получите после оплаты

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

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

Стоимость полного кода: 859 ₽