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

ea scalping asia.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. Советник автоматизирует процесс открытия и управления торговыми позициями на валютном рынке.

Основной сигнал для входа в позицию формируется на основе индикатора Envelopes с периодом 15. При пересечении ценой нижней полосы индикатора открывается покупка, при пересечении верхней полосы — продажа. Советник отслеживает текущие позиции и корректирует их параметры в соответствии с настроенным трейлинг-стопом.

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

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

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

НастройкаОписание
OptionsEA Текстовый параметр для хранения имени или описания набора настроек по умолчанию.
TakeProfit Уровень фиксации прибыли в пунктах, задаваемый при открытии позиции. При значении 0 фиксация прибыли не применяется.
mm Переключатель автоматического расчёта размера лота на основе процента от баланса счёта. При значении 0 используется фиксированный лот.
risk Процент от баланса счёта, используемый для расчёта размера лота при включённом параметре mm.
Lots Фиксированный размер лота, используемый при отключённом расчёте лота автоматически по балансу счёта.
InitialStop Начальный стоп-лосс в пунктах, устанавливаемый при открытии новой позиции. При значении 0 стоп-лосс не задаётся.
TrailingStop Значение трейлинг-стопа в пунктах, определяющее расстояние от текущей цены, при котором стоп-лосс перемещается в прибыльную сторону.
DeviasiEnvelope Отклонение индикатора Envelopes, определяющее ширину полос и условия пересечения ценой для генерации торговых сигналов.
MaxTrades Максимальное количество одновременных открытых позиций. При достижении лимита открытие новых сделок приостанавливается.
Pips Расстояние в пунктах, необходимое для открытия дополнительной позиции при уже имеющихся открытых ордерах.
SecureProfit Минимальный уровень прибыли в пунктах, при достижении которого происходит автоматическое закрытие позиций для защиты счёта.
OrderstoProtect Количество одновременных ордеров, при достижении которого вместе с включённой защитой счёта активируется проверка уровня прибыли и закрытие позиций.
Получить полный код

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

extern string OptionsEA="settingan Default Tanpa MM";
extern double TakeProfit = 40;
extern int AccountisNormal=0;
extern int mm=0;
extern int risk=3;
extern double Lots = 0.1;
extern double InitialStop = 0;
extern double TrailingStop = 11;
extern double DeviasiEnvelope = 0.07;
extern int MaxTrades=11;
extern int Pips=15;
extern int SecureProfit=11;
extern int AccountProtection=1;
extern int OrderstoProtect=3;
 double EURUSDPipValue=10;
 double GBPUSDPipValue=10;
 double USDCHFPipValue=10;
 double USDJPYPipValue=9.715;
int  OpenOrders=0, cnt=0;
int  slippage=5;
double sl=0, tp=0;
double BuyPrice=0, SellPrice=0;
double lotsi=0, mylotsi=0;
int mode=0, myOrderType=0;
bool ContinueOpening=True;
double LastPrice=0;
int  PreviousOpenOrders=0;
double Profit=0;
int LastTicket=0, LastType=0;
double LastClosePrice=0, LastLots=0;
double Pivot=0;
double PipValue=0;
string text="", text2="";

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

   if (AccountisNormal==1)
   {
	  if (mm!=0) { lotsi=MathCeil(AccountBalance()*risk/10000); }
		else { lotsi=Lots; }
   } else {  // then is mini
    if (mm!=0) { lotsi=MathCeil(AccountBalance()*risk/10000)/10; }
		else { lotsi=Lots; }
   }

   if (lotsi>100){ lotsi=100; }

   OpenOrders=0;
   for(cnt=0;cnt<OrdersTotal();cnt++)   
   {
     OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
	  if (OrderSymbol()==Symbol())
	  {				
	  	  OpenOrders++;
	  }
   }     

   if (Symbol()=="EURUSD") { PipValue=EURUSDPipValue; }
   if (Symbol()=="GBPUSD") { PipValue=GBPUSDPipValue; }
   if (Symbol()=="USDJPY") { PipValue=USDJPYPipValue; }
   if (Symbol()=="USDCHF") { PipValue=USDCHFPipValue; }
   if (PipValue==0) { PipValue=5; }

   if (PreviousOpenOrders>OpenOrders) 
   {	  
	  for(cnt=OrdersTotal();cnt>=0;cnt--)
	  {
	     OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
	  	  mode=OrderType();
		  if (OrderSymbol()==Symbol()) 
		  {
			if (mode==OP_BUY) { OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Blue); }
			if (mode==OP_SELL) { OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Red); }
			return(0);
		 }
	  }
   }

   PreviousOpenOrders=OpenOrders;
   if (OpenOrders>=MaxTrades) 
   {
	  ContinueOpening=False;
   } else {
	  ContinueOpening=True;
   }

   if (LastPrice==0) 
   {
	  for(cnt=0;cnt<OrdersTotal();cnt++)
	  {	
	    OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
		 mode=OrderType();	
		 if (OrderSymbol()==Symbol()) 
		 {
			LastPrice=OrderOpenPrice();
			if (mode==OP_BUY) { myOrderType=2; }
			if (mode==OP_SELL) { myOrderType=1;	}
		 }
	  }
   }

   if (OpenOrders<1) 
   {
	  myOrderType=3;

	  if ((iEnvelopes(NULL, NULL,15,MODE_SMA,0,PRICE_CLOSE,DeviasiEnvelope,MODE_LOWER,0) > Open[0]) && (iEnvelopes(NULL, NULL,15,MODE_SMA,0,PRICE_CLOSE,DeviasiEnvelope,MODE_LOWER,0) < Bid)) { myOrderType=2; }

	  if ((iEnvelopes(NULL, NULL,15,MODE_SMA,0,PRICE_CLOSE,DeviasiEnvelope,MODE_UPPER,0) < Open[0]) && (iEnvelopes(NULL, NULL,15,MODE_SMA,0,PRICE_CLOSE,DeviasiEnvelope,MODE_UPPER,0) > Bid)) { myOrderType=1; }

   }

   for(cnt=OrdersTotal();cnt>=0;cnt--)
   {
     OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
	  if (OrderSymbol() == Symbol()) 
	  {	
	  	  if (OrderType()==OP_SELL) 
	  	  {			
	  	  	  if (TrailingStop>0) 
			  {
				  if (OrderOpenPrice()-Ask>=(TrailingStop+Pips)*Point) 
				  {						
					 if (OrderStopLoss()>(Ask+Point*TrailingStop))
					 {			
					    OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderClosePrice()-TakeProfit*Point-TrailingStop*Point,800,Purple);
	  					 return(0);	  					
	  				 }
	  			  }
			  }
	  	  }

	  	  if (OrderType()==OP_BUY)
	  	  {

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

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

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

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

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

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

Стоимость полного кода
554,10₽ ≈ $6.77