• 12:03 صباحاً




تبادل الخبرات في برمجة MQL

إضافة رد
Like Tree32Likes

أدوات الموضوع
الصورة الرمزية سمير محمد ارمان
مشرف سابق
الصورة الرمزية سمير محمد ارمان
 
تاريخ التسجيل: Nov 2009
المشاركات: 33,660
معدل تقييم المستوى: 48
سمير محمد ارمان will become famous soon enough
افتراضي رد: تبادل الخبرات في برمجة MQL
141#
23 - 09 - 2018, 12:36 PM
اقتباس:
المشاركة الأصلية كتبت بواسطة kazamadrid مشاهدة المشاركة
اين يتم وضع هاذا الكود
//+------------------------------------------------------------------+
//| Check the correctness of the order volume |
//+------------------------------------------------------------------+
bool CheckVolumeValue(double volume,string &description)
{
//--- minimal allowed volume for trade operations
double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME _MIN);
if(volume<min_volume)
{
description=StringFormat("Volume is less than the minimal allowed SYMBOL_VOLUME_MIN=%.2f",min_volume);
return(false);
}

//--- maximal allowed volume of trade operations
double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME _MAX);
if(volume>max_volume)
{
description=StringFormat("Volume is greater than the maximal allowed SYMBOL_VOLUME_MAX=%.2f",max_volume);
return(false);
}

//--- get minimal step of volume changing
double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUM E_STEP);

int ratio=(int)MathRound(volume/volume_step);
if(MathAbs(ratio*volume_step-volume)>0.0000001)
{
description=StringFormat("Volume is not a multiple of the minimal step SYMBOL_VOLUME_STEP=%.2f, the closest correct volume is %.2f",
volume_step,ratio*volume_step);
return(false);
}
description="Correct volume value";
return(true);
}
السلام عليكم
يتم وضعه خارج كل الدوال
مع وضع المتحكم فيه CheckVolumeValue فى دالة OnTick
كود:
 bool CheckVolumeValue(double volume,string &description)
{
//--- minimal allowed volume for trade operations
double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN);
if(volume<min_volume)
{
description=StringFormat("Volume is less than the minimal allowed SYMBOL_VOLUME_MIN=%.2f",min_volume);
return(false);
}

//--- maximal allowed volume of trade operations
double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MAX);
if(volume>max_volume)
{
description=StringFormat("Volume is greater than the maximal allowed SYMBOL_VOLUME_MAX=%.2f",max_volume);
return(false);
}

//--- get minimal step of volume changing
double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP);

int ratio=(int)MathRound(volume/volume_step);
if(MathAbs(ratio*volume_step-volume)>0.0000001)
{
description=StringFormat("Volume is not a multiple of the minimal step SYMBOL_VOLUME_STEP=%.2f, the closest correct volume is %.2f",
volume_step,ratio*volume_step);
return(false);
}
description="Correct volume value";
return(true);
}
لو ممكن شرح طريقة عمله وماهى الاستفادة منه
تحياتى
سمير محمد ارمان غير متواجد حالياً  
رد مع اقتباس

عضو جديد
 
تاريخ التسجيل: Apr 2017
المشاركات: 67
معدل تقييم المستوى: 8
kazamadrid is on a distinguished road
افتراضي رد: تبادل الخبرات في برمجة MQL
142#
23 - 09 - 2018, 05:41 PM
اقتباس:
المشاركة الأصلية كتبت بواسطة سمير محمد ارمان مشاهدة المشاركة
السلام عليكم
يتم وضعه خارج كل الدوال
مع وضع المتحكم فيه CheckVolumeValue فى دالة OnTick
كود:
 bool CheckVolumeValue(double volume,string &description)
{
//--- minimal allowed volume for trade operations
double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN);
if(volume<min_volume)
{
description=StringFormat("Volume is less than the minimal allowed SYMBOL_VOLUME_MIN=%.2f",min_volume);
return(false);
}

//--- maximal allowed volume of trade operations
double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MAX);
if(volume>max_volume)
{
description=StringFormat("Volume is greater than the maximal allowed SYMBOL_VOLUME_MAX=%.2f",max_volume);
return(false);
}

//--- get minimal step of volume changing
double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP);

int ratio=(int)MathRound(volume/volume_step);
if(MathAbs(ratio*volume_step-volume)>0.0000001)
{
description=StringFormat("Volume is not a multiple of the minimal step SYMBOL_VOLUME_STEP=%.2f, the closest correct volume is %.2f",
volume_step,ratio*volume_step);
return(false);
}
description="Correct volume value";
return(true);
}
لو ممكن شرح طريقة عمله وماهى الاستفادة منه
تحياتى
حسب ما وجدت انه قبل إرسال أوامر التداول ، من الضروري التحقق من صحة الأحجام المحددة في الطلبات اي انه يجب التحقق من عدد الحصص التي على وشك تعيين الاكسبرت ، قبل استدعاء الدالة OrderSend (). الحد الأدنى والحد الأقصى المسموح به لحجم التداول ، بالإضافة إلى الحجم .اين انه من المفروض الكود يوضع قبل الدالة OrderSend ()
لم افهم قصدك خارج كل الدوال
kazamadrid غير متواجد حالياً  
رد مع اقتباس
الصورة الرمزية سمير محمد ارمان
مشرف سابق
الصورة الرمزية سمير محمد ارمان
 
تاريخ التسجيل: Nov 2009
المشاركات: 33,660
معدل تقييم المستوى: 48
سمير محمد ارمان will become famous soon enough
افتراضي رد: تبادل الخبرات في برمجة MQL
143#
24 - 09 - 2018, 01:11 PM
اقتباس:
المشاركة الأصلية كتبت بواسطة kazamadrid مشاهدة المشاركة
حسب ما وجدت انه قبل إرسال أوامر التداول ، من الضروري التحقق من صحة الأحجام المحددة في الطلبات اي انه يجب التحقق من عدد الحصص التي على وشك تعيين الاكسبرت ، قبل استدعاء الدالة OrderSend (). الحد الأدنى والحد الأقصى المسموح به لحجم التداول ، بالإضافة إلى الحجم .اين انه من المفروض الكود يوضع قبل الدالة OrderSend ()
لم افهم قصدك خارج كل الدوال
كما هو موجود فى الاكسبيرت
يتم وضع الدالة خارج الدوال كله
والعمل بيه فى دالة OnTick
يتم وضع اسم الدالة
مع الموجود فى داخله
CheckVolumeValue
تحياتى
الملفات المرفقة
نوع الملف: mq4 test.mq4‏ (4.9 كيلوبايت, المشاهدات 3)
سمير محمد ارمان غير متواجد حالياً  
رد مع اقتباس
عضو جديد
 
تاريخ التسجيل: Apr 2017
المشاركات: 67
معدل تقييم المستوى: 8
kazamadrid is on a distinguished road
افتراضي رد: تبادل الخبرات في برمجة MQL
144#
24 - 09 - 2018, 03:08 PM
اقتباس:
المشاركة الأصلية كتبت بواسطة سمير محمد ارمان مشاهدة المشاركة
كما هو موجود فى الاكسبيرت
يتم وضع الدالة خارج الدوال كله
والعمل بيه فى دالة OnTick
يتم وضع اسم الدالة
مع الموجود فى داخله
CheckVolumeValue
تحياتى
ممكن مثال بسيط حتى افهم اكثر و بارك الله فيك
kazamadrid غير متواجد حالياً  
رد مع اقتباس
الصورة الرمزية سمير محمد ارمان
مشرف سابق
الصورة الرمزية سمير محمد ارمان
 
تاريخ التسجيل: Nov 2009
المشاركات: 33,660
معدل تقييم المستوى: 48
سمير محمد ارمان will become famous soon enough
افتراضي رد: تبادل الخبرات في برمجة MQL
145#
24 - 09 - 2018, 03:47 PM
اقتباس:
المشاركة الأصلية كتبت بواسطة kazamadrid مشاهدة المشاركة
ممكن مثال بسيط حتى افهم اكثر و بارك الله فيك
لو ممكن تضع لى كود التحكم فى الدالة
او بمعنى
ممكن تكتب لى اسم الدالة
CheckVolumeValue
انا لا اعرف ماهو المطلوب من description
سمير محمد ارمان غير متواجد حالياً  
رد مع اقتباس
عضو جديد
 
تاريخ التسجيل: Apr 2017
المشاركات: 67
معدل تقييم المستوى: 8
kazamadrid is on a distinguished road
افتراضي رد: تبادل الخبرات في برمجة MQL
146#
24 - 09 - 2018, 03:54 PM
اقتباس:
المشاركة الأصلية كتبت بواسطة سمير محمد ارمان مشاهدة المشاركة
لو ممكن تضع لى كود التحكم فى الدالة
او بمعنى
ممكن تكتب لى اسم الدالة
CheckVolumeValue
انا لا اعرف ماهو المطلوب من description
kazamadrid غير متواجد حالياً  
رد مع اقتباس
عضو جديد
 
تاريخ التسجيل: Jan 2013
المشاركات: 139
معدل تقييم المستوى: 12
روكاا is on a distinguished road
افتراضي رد: تبادل الخبرات في برمجة MQL
147#
25 - 09 - 2018, 01:31 AM
السلام عليكم
عاوز اعرف ازاي اضيف علي اكسبيرت شرط دخول
وهو اغلاق الشمعه الاولي في كل يوم فقط بصرف النظر عن الوقت
يعني عند اغلاق الشمعه الاول لليوم صاعده شراء والعكس دون النظر الي الساعه
ولا يقوم بفتح صفقات اخري
روكاا غير متواجد حالياً  
رد مع اقتباس
الصورة الرمزية سمير محمد ارمان
مشرف سابق
الصورة الرمزية سمير محمد ارمان
 
تاريخ التسجيل: Nov 2009
المشاركات: 33,660
معدل تقييم المستوى: 48
سمير محمد ارمان will become famous soon enough
افتراضي رد: تبادل الخبرات في برمجة MQL
148#
25 - 09 - 2018, 12:43 PM
اقتباس:
المشاركة الأصلية كتبت بواسطة روكاا مشاهدة المشاركة
السلام عليكم
عاوز اعرف ازاي اضيف علي اكسبيرت شرط دخول
وهو اغلاق الشمعه الاولي في كل يوم فقط بصرف النظر عن الوقت
يعني عند اغلاق الشمعه الاول لليوم صاعده شراء والعكس دون النظر الي الساعه
ولا يقوم بفتح صفقات اخري
الافضل فتح موضوع جديد
مع شرح المطلوب عمله مع التوضيح من على الشارت
تحياتى
روكاا likes this.
سمير محمد ارمان غير متواجد حالياً  
رد مع اقتباس
عضو جديد
 
تاريخ التسجيل: Jan 2013
المشاركات: 139
معدل تقييم المستوى: 12
روكاا is on a distinguished road
افتراضي رد: تبادل الخبرات في برمجة MQL
149#
26 - 09 - 2018, 12:34 AM
تم عمل موضوع جديد
روكاا غير متواجد حالياً  
رد مع اقتباس
عضو جديد
 
تاريخ التسجيل: Apr 2017
المشاركات: 67
معدل تقييم المستوى: 8
kazamadrid is on a distinguished road
افتراضي رد: تبادل الخبرات في برمجة MQL
150#
26 - 09 - 2018, 01:24 PM
كود:
void DoAlert(string UD)
{
   if (!NewBar() || !Use_Sound)
      return;
     PlaySound ("Alert2");
     Alert (Symbol()," ",Period(),"m  Boll Touch at ",UD);
}




  bool NewBar()
{
   static datetime dt  = 0;
   if (dt != Time[0])
   {
      dt = Time[0];
      return(true);
   }
  }
يظهر الخطا التالي
"Not all control paths return a value" error
ما هو الحل
kazamadrid غير متواجد حالياً  
رد مع اقتباس


إضافة رد



جديد مواضيع منتدى المؤشرات و الاكسبرتات

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
مجموعة كتب في برمجة الاندرويد - كتب تعلم برمجة الإندرويد - Android Books ليالي دمشق استراحة بورصات 1 11 - 07 - 2015 03:54 AM
أبحث عن أستراتيجية لربح 4 نقاط (لنتادل الخبرات) العيد سفيان منتدى تداول العملات العام 1 06 - 02 - 2013 09:04 PM
ارجووو الرد من اصحاب الخبرات ....... alaa366 منتدى المؤشرات و الاكسبرتات 6 20 - 07 - 2010 03:18 AM


12:03 AM