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

TRUE_SCALPER

truescalper_ron_mt4_v02a ts.mq4

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

ea robofibo source v.11.2.mq4MQL4 / MetaTrader 4 · 2 общих тегов2 to 1 strategy with signals.pineTradingView · 2 общих теговfresh algo signals & overlays v25_6334471093901859175.pineTradingView · 2 общих теговbago ea_5391011682577321359.mq4MQL4 / MetaTrader 4 · 2 общих теговfresh algo v24 tradingview indicator_5918156155804195406.pineTradingView · 2 общих теговea_rsi_stocho_ma.mq4MQL4 / MetaTrader 4 · 2 общих тегов
Вы автор или правообладатель?

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

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

О программе

TRUE_SCALPER — это торговый советник для платформы MetaTrader 4, написанный на языке MQL4. Советник предназначен для автоматической торговли на основе технических индикаторов и управления ордерами.

Логика открытия позиций основана на сравнении двух экспоненциальных скользящих средних (EMA с периодами 3 и 7) и индикатора RSI с периодом 2. При условии, что короткая EMA выше длинной и RSI находится ниже 50, советник открывает покупку; при обратных условиях — продажу.

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

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

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

НастройкаОписание
start time (HourSetOrder) Час установки ордера — Время начала торговой сессии, используемое для определения дневных экстремумов цен.
Lots Объём лота — Размер торгового лота для открытия позиций.
TakeProfit Тейк-профит — Уровень тейк-профита в пунктах для фиксации прибыли.
StopLoss Стоп-лосс — Уровень стоп-лосса в пунктах для ограничения убытков.
TrailingStop Трейлинг-стоп — Расстояние трейлинг-стопа в пунктах для отслеживания прибыльных позиций.
Slippage Проскальзывание — Допустимое проскальзывание цены при исполнении ордеров в пунктах.
ProfitMade Целевая прибыль — Целевая прибыль в пунктах, при достижении которой открытые ордера закрываются.
Получить полный код

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

#define   MAGIC     20050817
extern int    HourSetOrder = 9;    // start time
extern double Lots=1;
extern int    TakeProfit=50;
extern int    StopLoss=25;
extern int    TrailingStop=15;

extern int    Slippage=2;
extern int    ProfitMade=25;
double dHigh, dLow;     // day extrema 
int    WidthChannel;    // width of channel

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

int DefineDayExtremums() {
  int CurrentDay=Day(), sb=0;

  dHigh=0; dLow=500;
  while (TimeDay(Time[sb])==CurrentDay && sb<1500) {
    if (TimeHour(Time[sb])<=HourSetOrder) {
      dHigh = MathMax(dHigh, High[sb]);
      dLow  = MathMin(dLow, Low[sb]);
    }
    sb++;
  }
  WidthChannel = (dHigh - dLow) / Point;
  Comment("Width of channel: " + WidthChannel);
}

int DrawDayChannel() {
  if (!IsTesting()) {
    ObjectSet("HDayBorder", OBJPROP_TIME1, StrToTime(TimeToStr(Time[0], TIME_DATE)+" 00:00"));
    ObjectSet("HDayBorder", OBJPROP_TIME2, Time[0]);
    ObjectSet("HDayBorder", OBJPROP_PRICE1, dHigh);
    ObjectSet("HDayBorder", OBJPROP_PRICE2, dHigh);
    ObjectSet("HDayBorder", OBJPROP_COLOR, Blue);
    ObjectSet("HDayBorder", OBJPROP_STYLE, STYLE_DASH);

    ObjectSet("LDayBorder", OBJPROP_TIME1, StrToTime(TimeToStr(Time[0], TIME_DATE)+" 00:00"));
    ObjectSet("LDayBorder", OBJPROP_TIME2, Time[0]);
    ObjectSet("LDayBorder", OBJPROP_PRICE1, dLow);
    ObjectSet("LDayBorder", OBJPROP_PRICE2, dLow);
    ObjectSet("LDayBorder", OBJPROP_COLOR, Red);
    ObjectSet("LDayBorder", OBJPROP_STYLE, STYLE_DASH);
  }
}

int deinit()
  {

    ObjectDelete("HDayBorder");
    ObjectDelete("LDayBorder");
  }
  Comment("");

   return(0);

int start()
  {
      // код доступен только после оплаты
   }
DefineDayExtremums();
  DrawDayChannel();
   double p=Point();
   int      cnt=0;
   int      OrdersPerSymbol=0;

   double  bull=0;
   double  bear=0;
   double  RSI=0;
   bool    RSIPOS=0;
   bool    RSINEG=0;
   double  lobar=0;
   double  hibar=0; 
   double  slBUY=0,tpBUY=0;
   double  slSEL=0,tpSEL=0;

   if(AccountFreeMargin()<(1000*Lots))        {Print("-----NO MONEY"); return(0);}
   if(Bars<100)                               {Print("-----NO BARS "); return(0);}

   bull=iMA(Symbol(),0,3,0,MODE_EMA,PRICE_CLOSE,1);

   bear=iMA(Symbol(),0,7,0,MODE_EMA,PRICE_CLOSE,1);

   RSI=iRSI(Symbol(),0,2,PRICE_CLOSE,2);

   if(RSI>50) RSIPOS=true;  else RSINEG=false;
   if(RSI<50) RSIPOS=false; else RSINEG=true;

   OrdersPerSymbol=0;
   for(cnt=OrdersTotal();cnt>=0;cnt--)
     {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      if( OrderSymbol

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

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

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

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

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

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

Стоимость полного кода
360,80₽ ≈ $4.41