Исходный код · ID 2658
mov_macd_ea_ar1.mq4
Похожие материалы по тегам
xauusd_gold_perfect.mq4MetaTrader 4 · 1 общих теговtm sniper pro.txtTradingView · 1 общих теговsource code of grid with 100 pips stop loss.mq4MetaTrader 4 · 1 общих теговsniper pro.mq5MetaTrader 5 · 1 общих теговpro +.txtTradingView · 1 общих теговofada_gold_trader_v230.mq5MetaTrader 5 · 1 общих тегов
Вы автор или правообладатель?
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «mov_macd_ea_ar1.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
Поиск по коду файла
#property version "1.00"
#property strict
extern string M="Moving Average";
extern int EMA1 = 50;
extern int shift1=0;
input ENUM_MA_METHOD MODE_MA1 = 0;
input ENUM_APPLIED_PRICE apply1=PRICE_CLOSE;
input string MA="MACD";
input int Fast_Macd1=12;
input int Slow_Macd1=26;
input int Signal_Macd1=9;
extern double Lot1=0.1;
extern bool Auto_Lots=false;
extern double MaxRisk = 0.01;
extern int TakeProfit=30;
extern int StopLoss=0;
extern int win_USD=0;
input double Max_SPREAD=5;
extern string Time_Start="00:00";
extern string Time_End="23:59";
extern bool Multiplication=true;
input string Multiplication_info = "0=1,1,1,1.... 1=1,2,3,4,5.... 2=1,2,4,8,16.... 3=1,3,9,27....";
extern int Multiplication_Mode = 2;
input int Step=20;
input int Max_Open=20;
extern int MagicNumber=452;
double ST;
double pt,pr;
string nam_B,nam_S,nam_B1,nam_S1;
double Price_S,openprice,LB1,lotall,lota2;
color color_pofet,clr,color_pofet2,color_pofet3,color_pofet4;
int OP,Type;string T;
double Profit;
datetime TB,TS,TA1,TA2,TB2,TS2;
double P;
double lotaB,lotaS,LS1;
double openpriceb,openprices;
double DD;
datetime TIMx,TIM,TIMXW,TIMXW2,TSC,TBC;
int BB,SS,BBX,SSX,QQ;
double Step1,ST1,ST2,ST3,ST4,ST5,ST6,ST7,ST8,ST9,ST10,ST11,ST12,ST13,ST14,ST15,ST16,ST17,ST18,ST19,ST20;
double Buy_Line,Sell_Line;
double buy_Take,sell_Take;
double Price_buy,Price_sell,slx,tpx;
int Ticket_b,Ticket_s,GG;
double EMA1_M1,EMA1_M0;
int OnInit()
{
// код доступен только после оплаты
}
void OnDeinit(const int reason)
{
Comment("");
for(int i=ObjectsTotal()-1;i>=0;i--)
{
string name=ObjectName(0,i);
if(StringSubstr(name,0,6)=="Panel_")
{
ObjectDelete(0,name);
}
}
}
void OnTick()
{
// код доступен только после оплаты
}
int open(int ty,double lott,double prc,int pof,int sll)
{
double sl=0,tp=0;
bool modi;
if(ty==OP_BUY || ty==OP_BUYSTOP || ty==OP_BUYLIMIT)
{
if(sll>0){sl=prc-(sll*pt);}else{sl=0;}
if(pof>0){tp=prc+(pof*pt);}else{tp=0;}
clr=Green;
T="Ask ";
pr=NormalizeDouble(Ask,Digits);
}
if(ty==OP_SELL || ty==OP_SELLSTOP || ty==OP_SELLLIMIT)
{
if(sll>0){sl=prc+(sll*pt);}else{sl=0;}
if(pof>0){tp=prc-(pof*pt);}else{tp=0;}
clr=Red;
T="Bid";
pr=NormalizeDouble(Bid,Digits);
}
int tik=OrderSend(Symbol()
,ty
,lott
,NormalizeDouble(prc,Digits)
,10
,0
,0
,""
,MagicNumber
,0
,clr);
string t;
if(ty==OP_BUY)t="BUY";if(ty==OP_SELL)t="SELL";if(ty==OP_BUYSTOP)t="BUY STOP";if(ty==OP_SELLSTOP)t="SELL STOP";if(ty==OP_BUYLIMIT)t="BUY LIMIT";if(ty==OP_SELLLIMIT)t="SELL LIMIT";
if(tik>0&&OrderModifyCheck(tik,prc,sl,tp)&&(CheckStopLoss_Takeprofit(ORDER_TYPE_BUY,sl,tp)||CheckStopLoss_Takeprofit(ORDER_TYPE_SELL,sl,tp)))
{
if(tp>0 || sl>0)modi=OrderModify(tik,prc,NormalizeDouble(sl,Digits),NormalizeDouble(tp,Digits),0,CLR_NONE); else modi=true;
if(!modi){Print("Modify Err#= ",GetLastError()," ",Symbol()," ",Period()," Open Price= ",DoubleToStr(prc,Digits)," SL= ",DoubleToStr(sl,Digits)," Tp= ",DoubleToStr(tp,Digits));}
Print("Order Opened successfully " ,"Type ",t," LotSize ",lott," Price ",DoubleToStr(prc,Digits)," TP ",DoubleToStr(tp,Digits)," SL ",DoubleToStr(sl,Digits));
}
else
{
Print("OrderSend failed with error #",GetLastError(), " Type ",t," LotSize= ",lott," ",T,"Now= ",DoubleToStr(pr,Digits)," Price= ",DoubleToStr(prc,Digits)," TP= ",DoubleToStr(tp,Digits)," SL= ",DoubleToStr(sl,Digits)," Spread= ",MarketInfo(Symbol(),MODE_SPREAD));
}
return(tik);
}
int ordestotal1_2(int type)//دالة التحكم فى عدد الصفقات
{
int total_2=0;
for(int b=0;b<OrdersTotal();b++){
if(OrderSelect(b,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol()&&MagicNumber==OrderMagicNumber()&&OrderType()==type){
total_2++;
}
}
return(total_2);
}
int ordestotal1()
{
int total_2=0;
for(int b=0;b<OrdersTotal();b++){
if(OrderSelect(b,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol()&&MagicNumber==OrderMagicNumber()){
total_2++;
}
}
return(total_2);
}
int ordestotal1_3()
{
int total_2=0;
for(int b=0;b<OrdersTotal();b++){
if(OrderSelect(b,SELECT_BY_POS,MODE_TRADES))
if(MagicNumber==OrderMagicNumber()){
total_2++;
}
}
return(total_2);
}
bool CloseDeleteAll()//دالة اغلاق الصفقات معا
{
int total = OrdersTotal();
for (int cnt = total-1 ; cnt >=0 ; cnt--)
{
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
{
if(OrderSymbol()==Symbol()&&MagicNumber==OrderMagicNumber()){
switch(OrderType())
{
case OP_BUY :
{
if(!OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),0,Violet))
return(false);
}break;
case OP_SELL :
{
if(!OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),0,Violet))
return(false);
}break;
}
if(OrderType()==OP_BUYSTOP || OrderType()==OP_SELLSTOP || OrderType()==OP_BUYLIMIT || OrderType()==OP_SELLLIMIT)
if(!OrderDelete(OrderTicket()))
{
Print("Error deleting " + (string)OrderType() + " order : ",GetLastError());
return (false);
} }
}
}
return (true);
}
void line(string name, double pr1,color clrr, int style)
{
if(ObjectFind(name) != 0)
{
ObjectCreate(name, OBJ_HLINE, 0, 0,pr1);
ObjectSet(name, OBJPROP_COLOR, clrr);
ObjectSet(name, OBJPROP_STYLE, style);
}
else{if(ObjectGet(name,OBJPROP_PRICE1)!=pr1)
{ObjectDelete(name);}}
}
bool CloseDeleteAll2(int Typez)//دالة اغلاق الصفقات معا
{
int total = OrdersTotal();
for (int cnt = total-1 ; cnt >=0 ; cnt--)
{
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
{
if(OrderSymbol()==Symbol()&&MagicNumber==OrderMagicNumber()&&OrderType()==Typez){
switch(OrderType())
{
case OP_BUY :
{
if(!OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),0,Violet))
return(false);
}break;
case OP_SELL :
{
if(!OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),0,Violet))
return(false);
}break;
}
if(OrderType()==OP_BUYSTOP || OrderType()==OP_SELLSTOP || OrderType()==OP_BUYLIMIT || OrderType()==OP_SELLLIMIT)
if(!OrderDelete(OrderTicket()))
{
Print("Error deleting " + (string)OrderType() + " order : ",GetLastError());
return (false);
} }
}
}
return (true);
}
double Lots(double risk)
{
double Lot;
if(Auto_Lots)
{
if(risk>1)risk=1;
double Min_Lot = MarketInfo(Symbol(), MODE_MINLOT);
double Max_Lot = MarketInfo(Symbol(), MODE_MAXLOT);
double lot_step= MarketInfo(Symbol(), MODE_LOTSTEP);
Lot=NormalizeDouble(AccountBalance()*risk/100/10,2);
Lot=NormalizeDouble(Lot,2);
Lot=NormalizeDouble(Lot/lot_step,0)*lot_step;
if (Lot < Min_Lot) Lot = Min_Lot;
if (Lot > Max_Lot) Lot = Max_Lot;
}
else
{
if(Lot1>MarketInfo(Symbol(),MODE_MAXLOT))
{Lot=MarketInfo(Symbol(),MODE_MAXLOT);}
else if(Lot1<MarketInfo(Symbol(),MODE_MINLOT))
{Lot=MarketInfo(Symbol(),MODE_MINLOT);}
else if(MathMod(Lot1,MarketInfo(Symbol(),MODE_LOTSTEP))>0)
{
double R=MathMod(Lot1,MarketInfo(Symbol(),MODE_LOTSTEP))/100 ;
Lot=NormalizeDouble(Lot1-R,2) ;
}
else
{
Lot=Lot1;
}
}
return(Lot);
}
double pofet(){ //دالة معرفة حجم ربح الصفقات المفتوحه
double pr_2=0;
for(int p=0;p<OrdersTotal();p++){
if(OrderSelect(p,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol()&&MagicNumber==OrderMagicNumber()){
pr_2+=(OrderProfit()+OrderCommission()+OrderSwap());
}
}return(pr_2);
}
void samir(string a_name_0, double a_corner_8, int a_y_16, int a_x_20, string a_text_24, int a_fontsize_32, string a_fontname_36, color a_color_44) {
ObjectCreate(a_name_0, OBJ_LABEL, 0, 0, 0);
ObjectSetText(a_name_0, a_text_24, a_fontsize_32, a_fontname_36, a_color_44);
ObjectSet(a_name_0, OBJPROP_CORNER, a_corner_8);
ObjectSet(a_name_0, OBJPROP_XDISTANCE, a_x_20);
ObjectSet(a_name_0, OBJPROP_YDISTANCE, a_yПоказано первые 50% кода (символов: 24364)
Что вы получите после оплаты
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? Адрес передаётся вместе с заказом в магазин и сохраняется для связи заказа с оплатой. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.
Стоимость полного кода
2 436₽