النتائج 1 إلى 3 من 3
الموضوع: اول اكسبيرت
- 10-08-2011, 02:08 PM #1
اول اكسبيرت
ده اول اكسبيرت ليا ومش عارف تقريبا فيه حاجة غلط
كود PHP://+------------------------------------------------------------------+
//| MA.mq4 |
//| MFB |
//| |
//+------------------------------------------------------------------+
#property copyright "MFB"
#property link ""
//--- input parameters
extern double volume;
extern int take_profit;
extern int stop_loss;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
Comment("Programmed by Eng.Mahmoud");
/////////////////////////////////////
double SL,TP;
////////////////////////////////////
color arrow_color;
double SMA1=iMA(NULL,0,50,0,1,1,1);
double SMA2=iMA(NULL,0,50,0,1,1,1);
double FMA1=iMA(NULL,0,14,0,1,1,1);
double FMA2=iMA(NULL,0,14,0,1,1,1);
if (FMA2<SMA2&&FMA1>SMA1){
if (stop_loss==0){SL=Ask;}else{SL=Ask-stop_loss*volume;}
if (take_profit==0){TP=Ask;}else{TP=Ask+take_profit*volume;}
OrderSend(Symbol(),0,volume,Ask,3,SL,TP,"Eng.Mahmoud",0,0);
PlaySound("Alert.wav");
}
if (FMA2>SMA2&&FMA1<SMA1){
if (stop_loss==0){SL=Ask;}else{SL=Ask-stop_loss*volume;}
if (take_profit==0){TP=Ask;}else{TP=Ask+take_profit*volume;}
OrderSend(Symbol(),1,volume,Ask,3,SL,TP,"Eng.Mahmoud",0,0);
PlaySound("alert.wav");
}
//----
//----
return(0);
}
//+------------------------------------------------------------------+
- 10-08-2011, 03:31 PM #2
الخطأ لديك في شروط الدخول للإكسبرت وتعريف المؤشرات
كود PHP:double SMA1=iMA(NULL,0,50,0,1,1,1);
double SMA2=iMA(NULL,0,50,0,1,1,1);
double FMA1=iMA(NULL,0,14,0,1,1,1);
double FMA2=iMA(NULL,0,14,0,1,1,1);
نفس قيمة SMA2 وكذلك قيمة FMA1 هي نفس قيمة FMA2
بالتالي شروط المقارنة لن تتحقق أبدا
كود PHP:if (FMA2<SMA2&&FMA1>SMA1){
لذلك يجب أن تظبط قيم إستدعاء المؤشرات
أولا قيمة الموفينج للشمعه السابقه ستجعلها
كود PHP:double SMA1=iMA(NULL,0,50,0,1,1,1);
double FMA1=iMA(NULL,0,14,0,1,1,1);
كود PHP:double SMA2=iMA(NULL,0,50,0,1,1,2);
double FMA2=iMA(NULL,0,14,0,1,1,2);
وأنصحك بمراجعة الدروس التعليمية المثبتة في القسم ستفيدك
- 10-08-2011, 07:51 PM #3
شكرا على رد حضرتك على فكرة انا عامل الاكسبيرت ده على نموذج تعليمي حضرتك عملته بس انا غلطت في شوية حاجات في حاجة تانية عاوز اسال حضرتك عليها يعني ايه الماجيك نمبر ؟