النتائج 1 إلى 15 من 71
الموضوع: كيف اصنع اكسبيرت ؟
- 10-03-2016, 09:08 PM #1
كيف اصنع اكسبيرت ؟
السلام عليكم ورحمه الله وبركاته
استاذي الفاضل مستر دولار تحياتي لمجهودك العظيم وللاستاذ وضاح العطار ربنا يجعله في ميزان حسناتكم
بفضلكم اتعلمت بعض من دروسكم ولسه المسيرة مستمر في التعلم ..
وحبيت اني اصنع اكسبيرت علي قدر ما تعلمت واستفدت .. فمثلا عن تقاطع خطين موفينج أفريدج
الخصائص
lot
take profit
stop loss
trailing stop
magicnumber
( هل هحتاج اضيف buffers2 )
ٍStart
دالة استدعاء المؤشر
دالة فتح امر شراء (sl , tp)
دالة فتح امر بيع (sl , tp)
دالة التريلينج ستوب
دالة غلق الصفقات لو السعر عكس
دالة لحساب عدد الصفقات
دالة فلترة التوقيت للتحكم بتوفيت بداية ونهاية الاكسبيرت
الدوال كدا تمام وصحيح بالترتيب تدريجيا ولا ليها ترتيب معين , وهل فيه دالة مش محتاج استخدمها واضيف غيرها ؟
- 11-03-2016, 03:49 PM #2انا مُقدر ضغط العمل في المنتدي لتلبية احتياجات الاعضاء .. لكن أرجوا لو تكرمت بإفادة بسيطة ليا لبداية العمل في صنع الاكسبيرت .. وهل نفس الكلام ممكن يطبق علي اي مؤشر مثل الاستوكاستك , البولينغر باندز .. إلخ
- 13-03-2016, 12:07 AM #3
Fx Prof.mq4
انا حاولت بقدر الامكان اني اصنع اكسبيرت
ولكن فيه اخطاء ارجوا تعديلهم وهل الاكسبيرت صحيح ولا فيه اضافات اخري او دوال ليس للحاجة لها ؟
- 13-03-2016, 01:09 PM #4
اخي الكريم .. بداية بما انك تقوم ببرمجة اكسبيرت فلا توجد حاجة لل Buffer فهو يستخدم فقط في برمجة المؤشرات ويتم استدعاء القيمة المخزنة فيه لاستخدامها في الاكسبيرت عوضاً عن وضع كود المؤشر بالكامل داخل الاكسبيرت .. ستجد المزيد ايضاً في هذا الموضوع
- الترتيب بالنسبة للدوال ليس مهم عموماً ولكن يفضل الترتيب حسب الاستدعاء من الاعلى للاسفل .. ستجد في هذا الرابط شرح مفصل للاستاذ اسامة عن طريقة عمل الدوال وبالمناسبة الموضوع عن برمجة اكسبيرت تقاطع 2 موفينج
نعم يا اخي ينطبق على كل المؤشرات مع ملاحظة أن كل مؤشر له طريقة خاصة به عند استدعاؤه
بالنسبة للاخطاء فهي كثيرة يا اخي بصراحة ولا اظن انه يمكنني تغطيتها جميعا ولكن اليك بعض الملاحظات الاساسية ..
- اولا .. لا يمكن عمل كومبيل compile للكود وهذا يعني ان هناك اخطاء هامة يجب اصلاحها اولا والا لن يعمل الاكسبيرت من الاساس
- يجب عليك مراعاة فتح واغلاق الاقواس {} يوجد احياناً قوس اغلاق الدالة بدلا من قوس الفتح واحيانا اقواس زائدة او ناقصة .. هذه تعتبر اخطاء هامة ولن تجعل الاكسبيرت يعمل ..
- منطق هذا الشرط خاطئ فانت تقول له لو كانت قيمة الستوب 0 فضع لها قيمة 0 اي نفس الشيئ
كود PHP:if(StopLoss==0){SL=0}; else {SL=Ask-StopLoss*Point;}
كود PHP:if(StopLoss!=0) { SL=Ask-(StopLoss*Point); }
- اذا كان منصة البروكر 5 ارقام فيجب عليك تحويل قيمة Point راجع هذه المشاركة للمزيد
- قمت بتكرار الحلقة التي تقوم بحساب عدد الصفقات المفتوحة .. ويكفي ان تقوم بكتابتها مرة واحدة في دالة منفصلة ثم تقوم باستدعائها
كود PHP:int CountTrades()
{
//---
int count = 0;
for(int i = OrdersTotal() - 1; i >= 0; i--)
{
if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) break;
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
if((OrderType()==OP_SELL) || (OrderType()==OP_BUY))
count++;
}
//---
return (count);
}
كود PHP:int total=CountTrades();
if(total==0) { ..... }
ملاحظات عامة:
- قيمة متغير الهدف والستوب من نوع double وليس int
- دالة int start() اصبحت void OnTick() في التحديثات الاخيرة ولا تعود بأي قيمة
- يجب عليك يا اخي مراعاة تنسيق وترتيب الكود حتى يسهل عليك اكتشاف الاخطاء بسهولة ويمكن استخدام عمل ذلك ببساطة بالضغط على مفتاح الكنترول مع حرف الواو في الكيبورد او Ctrl+, ... وسيقوم البرنامج بتعديل وتنسيق كل الكود المكتوب تلقائياً، ويمكنك عمل ذلك كل بعد سطر او كما تحب ..
للمزيد حول اختصارات الميتا اديتور في هذا الرابط
- 14-03-2016, 11:41 PM #5تمام .. الله يباركلك اشكرك
وعفوا علي الاخطاء انا لسه جديد في مجال البرمجة
ولسه بحاول اكون مُلم بكل شئ .. حاليا حاسس بأن كل شئ متبعثر
ومتأكد اني هغلط تاني لا محالة ودا كويس بالنسبالي عشان اعرف خطأي واتعلم
هحاول اعيد مذاكرتي للدروس وهبدأ بعمل مؤشر ثم الاكسبيرت
بس عايز اعرف ايه الفرق بين المؤشر والاكسبيرت من حيث الاكواد او الدوال
- 15-03-2016, 07:05 PM #6
العفو يا اخي الكريم وبالعكس تماماً لولا الخطأ لما تعلم احد والسؤال نصف العلم واحساسك هذا مررنا به جميعاً فاحييك اخي على طلبك للعلم والمحاولة فكلنا نتعلم نطلب العلم ولكن فقط تختلف مواقعنا منه ..
لا يوجد فرق كبير في الدوال الاساسية فهي نفس الشيئ باستثناء دالة OnCalculate في المؤشر ويقابلها onTick في الاكسبيرت ولتفهم الفرق يجب اولا ان تعلم الفرق بين المؤشر والاكسبيرت:
- الفارق الاول والجوهري ان المؤشر يمكن أن يستخدام بيانات او حركات الاسعار السابقة والحالية بمعنى انه يمكنك تحليل ووبناء معادلاتك على عدة شهور او حتى اعوام سابقة في حين ان الاكسبيرت يهتم فقط بالحركات الحالية للاسعار ..
- بما انك ستقوم باستخدام بيانات سابقة، يمكنك المؤشر من وضع ما تشاء من رسوم واشكال لتسهل عليك عملية التحليل على الشارت في حين يعني الاكسبيرت فقط بالتنفيذ من فتح واغلاق الصفقات ولا يمكن وضع رسوم الا في حدود صغيرة.
- يمكنك استخدام المؤشر دون اتصال بالانترنت وايام العطل اما الاكسبيرت فلابد من وجود اتصال بالسيرفر وفي ضمن اوقات عمل السوق.
ويمكن ان نلخص هذا في جملة واحدة ان دور المؤشر هو التحليل وعلى الاكسبيرت فقط التنفيذ
ولذلك فإن دالة onTick تعني فقط بحركة السعر الحالية وهي من نوع void اي لا تعود باي قيمة اما OnCalculate فبها العديد من الاستخدامات لتقوم بالدور التحليلي
كود PHP:int OnCalculate (const int rates_total, // size of input time series
const int prev_calculated, // bars handled in previous call
const datetime& time[], // Time
const double& open[], // Open
const double& high[], // High
const double& low[], // Low
const double& close[], // Close
const long& tick_volume[], // Tick Volume
const long& volume[], // Real Volume
const int& spread[] // Spread
);
- rates_total هي عدد الشموع الاجمالي على لشارت الحالي التي يستطيع المؤشر التعامل معها والتحليل عليها
- prev_calculated عندما يبدأ مؤشرك في عمله وبعد اول حركة للسعر تصبح prev_calculated هي القيمة التي تعود عليك عند استدعاء دالة OnCalculate وهي تعنى بمتابعة التحديثات الدائمة لاي حركة سعرية
- باقي البارمترات هي مصفوفات معرفة مسبقاً في لغة mql4 وتحتوي على معلومات اعلى / ادني سعر وقت غلاق وفتح الشموع وما الى ذلك ..
يبقى الاكواد .. تقريباً يمكنك استعمال كل الاكواد كما تشاء على ان تبقى في الاطار الوظيفي لنوع الملف مؤشر، اكسبيرت، سكريبت ..
انصحك يا اخي بمتابعة دروس على اليوتوب فتجد الكثير من الشرح مع التطبيق ما سيطور كثيراً من قدرتك البرمجية وبشكل اسرع مما تتصور.
بالتوفيق ..
- 15-03-2016, 11:13 PM #7تمام بالفعل انا لاحظت هذا الفرق ولما رأيت هذه الوظائف احترت فيما تستخدم وكيف استخدمها ..
الموضوع مش سهل ومحتاج مجهود شديد جدا .. ولكن هحاول مش هخسر حاجه , التعليم مش من يوم وليلة
الله المستعان
- 26-03-2016, 03:52 AM #8ماهو الرقم السحري .. MagicNumber
عبارة عن ايه ؟
او ال Magic وبنديله اي ارقام ؟
- 27-03-2016, 11:14 AM #9
بالعربي رقم تمييز
مثلا لديك صفقات دخلتها لسبب معين تقاطع متوسطات مثلا
ولديك صفقات دخلتها بعد اختراق دبلب توب مثلا
عند الاغلاق او وقف الخسارة لكل صفقة--شروط الاغلاق مختلفة وبالتالي ليس امامك حل للتمييز بين الصفقتين الا من خلال 1) خانة كومنت للناس المحترفة برمجة 2) الماجك نمبر للمبتئدين والمحترفين.
فمثلا تقول للخبير من فضلك هذه الصفقة دخلتها لتقاطع متوسط 20 مع 100 اريدك ان تغلقها اذا حدث تقطاع عكسي!! فيفهم البرنامج انك تتحدث عن هذه الصفقة تحديدا من خلال رقم التمييز لها. الشي اللي ميزها عن غيرها.
طبعا انا من مستخدني كومنت. احب النصوص بدلا من الارقام.
- 27-03-2016, 11:16 AM #10
Mr.Ismail جلس مع نفسه وقرر يدخل
1) صفقة على اليورو دولار لأن خطي الماكد تقاطعو للاعلى ومنها رقم 1098 مثلا
2) صفقة على الكيبل بيع لانه حدث كسر لدعم قوي--ولأنه ليس نفس السبب للصفقة اعلاه فميزها برقم 978434
وبالتالي برمجيا اصبحت تستطيع التمييز بين الاسباب. وبناء عليه تكون القرارات اللاحقة.
- 28-03-2016, 01:50 AM #11ربنا يكرمك وشكرا جزيلا ..
بس هو ايه " طبعا انا من مستخدمي كومنت. احب النصوص بدلا من الارقام. "
عشان انا لسه مبتدأ في مجال البرمجة وبحاول اعمل اكسبيرت ل 3 مؤشرات تقاطع موفينجين واستوكاستك وبولينغر
- 28-03-2016, 08:06 AM #12
انت تبدأ بشكل خاطئ اخي ولن تتعلم ابدا بشكل صحيح--توقف فورا اخي عن تصميم اكسبيرت او مؤشر الخ-ابعدها عن ذهنك فوراً
وابدأ البرمجة الفباء -- كأـنك تدرس كتاب مرتب
فداول التداول TRADING FUNCTIONS--يفترض مستوى رابع او خامس.
- 28-03-2016, 07:24 PM #13سبحان الله
عجباً لهذا الكلام الغريب
لأني سألت عن الجملة اللي قولتها ورديت عليا بكلام انا مستغرب منه
وعفوا هو ايه اللي اتوقف وكمان فورا ؟؟!!!!!!!
انا بتابع لمستر دولار والاستاذ وضاح العطار
وبقدر المستطاع بحاول افهم واتعلم
ايه المشكلة في كدا ؟؟ لما انا بتعلم من اساتذة محترفين !
عذرا انا مش فاهم معني كلامك بتاتاُ
- 01-04-2016, 07:29 AM #14
هي دي استراتيجيتي في المتاجرة
وبحاول اني اعملها اكسبيرت يكون ناجح .. بنسبة كبيرة
بس أرجوا متابعة من الاساتذة محترفي البرمجة وصناعة الاكسبيرتات
ولا غني عن التعريف " مستر دولار " عشان اتعلم وافهم واحده واحده
انا مش عايز كل حاجه علي الجاهز .. ودا للأسف الاغلبية بيعملوه
بدايةً انا كدا هستدعي مؤشرين
الموفينج افريدج والاستوكاستك في الوظيفة start او tick
واكتب الخصائص او المدخلات في المتغيرات الخارجية في القسم الاول او الاعلي
ان شاء الله في اللقاء الثاني هعرض المدخلات
- 01-04-2016, 05:34 PM #15