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

intraday scalper v.1.030.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. Советник размещает отложенные ордера BuyStop и SellStop в определённые часы, ориентируясь на экстремумы цен на часовом графике с заданным смещением в пунктах.

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

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

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

НастройкаОписание
Start1 Час первого размещения — Час размещения первого набора отложенных ордеров.
Start2 Час второго размещения — Час размещения второго набора отложенных ордеров.
EOD Час закрытия дня — Час закрытия всех управляемых позиций в конце торгового дня.
FridayClosing Час закрытия пятницы — Час закрытия позиций в пятницу.
FirstSessionOnly Только первая сессия — Логический переключатель: при активации второй набор ордеров размещается только в первой торговой сессии.
Length Длина периода (баров) — Количество баров на часовом графике, используемых для определения экстремумов цен при расчёте уровней ордеров.
Pips Смещение уровней (пункты) — Смещение уровней отложенных ордеров от экстремумов цен на часовом графике, измеряемое в пунктах.
StopLoss Стоп-лосс (пункты) — Расстояние от уровня ордера до стоп-лосса, измеряемое в пунктах.
BreakEven Безубыток (пункты) — Расстояние от цены открытия до уровня переноса стоп-лосса в безубыток, измеряемое в пунктах.
TrailingStop Трейлинг-стоп (пункты) — Расстояние трейлинг-стопа от стоп-лосса, измеряемое в пунктах. При значении 0 трейлинг-стоп отключён.
LossPips Убыток для модификации (пункты) — Размер убытка в пунктах, при достижении которого позиция модифицируется путём установки стоп-лосса на уровне цены открытия.
TakeProfit Тейк-профит (пункты) — Расстояние от уровня ордера до тейк-профита, измеряемое в пунктах.
Lots Размер лота — Фиксированный размер лота для открытия позиций.
MM Менеджмент капитала — Логический переключатель, включающий или выключающий автоматический расчёт размера лота на основе свободного маржи.
LotsPercent Процент маржи для лота — Процент свободного маржи, используемый при расчёте размера лота в режиме менеджмента капитала.
Получить полный код

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

extern int Start1 = 10;
extern int Start2 = 14;
extern int EOD = 24;
extern int FridayClosing = 23;
extern bool FirstSessionOnly = FALSE;
extern int Length = 4;
extern int Pips = 5;
extern int StopLoss = 50;
extern int BreakEven = 30;
extern int TrailingStop = 0;
extern int LossPips = 0;
extern int TakeProfit = 80;
extern double Lots = 0.1;
extern bool MM = TRUE;
extern int LotsPercent = 10;
int gi_140;
int gi_unused_144;
bool gi_148 = TRUE;
double g_stoplevel_152;
double g_spread_160;
double g_maxlot_168;
double g_minlot_176;
double g_lotstep_184;

double setpoint() {
   double l_point_0;
   if (Digits == 3) l_point_0 = 0.01;
   else {
      if (Digits == 5) l_point_0 = 0.0001;
      else l_point_0 = Point;
   }
   return (l_point_0);
}

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

int start() {
      // код доступен только после оплаты
   }
   double ld_0;
   string ls_8;

   if (AccountFreeMargin() < 1500.0 * ld_0) return (0);
   if (MM) {
      if (LotsPercent > 0) Lots = NormalizeDouble(MathCeil(AccountFreeMargin() / 10000.0 * LotsPercent) / 10.0, 1);
      else Lots = ld_0;
   }
   if (gi_148) {
      ls_8 = "(c)2006 ????????.?? HTTP://WWW.SCALPER.RU";
      Comment(ls_8);
   }
   if (EOD >= 24) EOD = 0;
   if (FridayClosing == 0) FridayClosing = 24;
   string ls_16 = "IDS_" + Symbol();
   if (Hour() == Start1 && Minute() < 10) SetOrders(ls_16, 1);
   if (Hour() == Start2 && Minute() < 10 && !FirstSessionOnly) SetOrders(ls_16, 2);
   for (int l_pos_24 = OrdersTotal() - 1; l_pos_24 >= 0; l_pos_24--) {
      OrderSelect(l_pos_24, SELECT_BY_POS);
      if (OrderComment() == ls_16) {
         if (Hour() == EOD || (DayOfWeek() >= 5 && Hour() == FridayClosing - 1 && Minute() >= 50)) {
            switch (OrderType()) {
            case OP_BUY:
               OrderClose(OrderTicket(), OrderLots(), Bid, 3, Red);
               break;
            case OP_SELL:
               OrderClose(OrderTicket(), OrderLots(), Ask, 3, Red);
               break;
            default:
               OrderDelete(OrderTicket());
            }
         } else {
            if (LossPips > 0) {
               if (OrderType() == OP_BUY)
                  if (OrderOpenPrice() - Bid >= LossPips * setpoint()) OrderModify(OrderTicket(), OrderOpenPrice(), OrderStopLoss(), OrderOpenPrice(), 0, Green);
               if (OrderType() == OP_SELL)
                  if (Ask - OrderOpenPrice() >= LossPips * setpo

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

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

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

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

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

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

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