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

TrueBald

truebald.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 общих тегов
Вы автор или правообладатель?

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

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

О программе

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

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

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

В качестве дополнительных настроек доступны уровни зон стохастика для сигналов покупки и продажи, а также параметры замедления и периодов индикатора. Все торговые операции выполняются через стандартные функции торгового API MetaTrader 4.

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

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

double Lots             =  0.1;
bool UseMM              =  true;
double PercentMM        =  2;
double  DeltaMM         =  10;
int     InitialBalance  =  10000;

double TakeProfit       =  80;
double TrailingStop     =  18;
double MaxLots          =   7;
double pips             =  23;
double per_K            =  3;
double per_D            =  7;
double slow             =  2;
double zoneBUY          =  15;
double zoneSELL         =  90;

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

int deinit()
  {
   return(0);
  }

double FirstLots()
   {
      double volume,TempVolume;      
      TempVolume=Lots;

      if (UseMM) TempVolume =0.00001*(AccountBalance()*(PercentMM+DeltaMM)-InitialBalance*DeltaMM); 

      volume=NormalizeDouble(TempVolume,1);

      if (volume>MarketInfo(Symbol(),MODE_MAXLOT)/4) volume=1.2;
      if (volume<MarketInfo(Symbol(),MODE_MINLOT)) volume=MarketInfo(Symbol(),MODE_MINLOT);

      return (volume);
   }

bool CheckForEnoughMargin(double LotsNumber)
  {
    if (GetOneLotMargin(Symbol())*LotsNumber<AccountFreeMargin()) return(true); 
    else return(false);
  }

double GetOneLotMargin(string s)
  {
   double p;
   if ((StringSubstr(s, 0, 3) == "EUR")||(StringSubstr(s, 0, 3) == "GBP"))     
     {
      if (!IsTesting()) 
        return(MarketInfo(s, MODE_LOTSIZE)*MarketInfo(StringSubstr(s, 0, 3)+"USD",
                   MODE_BID)/AccountLeverage());
      else 
        {
         p = iClose(StringSubstr(s, 0, 3)+"USD", Period(), 
         iBarShift(StringSubstr(s, 0, 3)+"USD", Period(), CurTime(), true));         
         return(MarketInfo(s, MODE_LOTSIZE)*p/AccountLeverage());
        }     
     }

   if (StringSubstr(s, 0, 3) == "USD") 
     return(MarketInfo(s, MODE_LOTSIZE)/AccountLeverage());     

   return(77777777777777777777777777.0);   
  }

int start()
  {
      // код доступен только после оплаты
   }
  double total,cnt,lot;
  double cenaoppos,l,sl;

  total=OrdersTotal();
    if(total<1)
    {  
    if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,0,1)>iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)
      && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)<zoneBUY)
      {
        sl=NormalizeDouble(MaxLots*TrailingStop*Point+20*Point,Digits);
         OrderSend(Symbol(),OP_BUY,FirstLots(),Ask,3,Bid-sl,Ask+TakeProfit*Point,0,Green);
         }
     if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,0,1)<iStochastic(NULL,0,per_K,per_D,slow,MODE_LWM

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

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

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

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

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

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

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