موضوع مخصص للأسئلة البرمجية - الصفحة 2
صفحة 2 من 628 الأولىالأولى 123456781252102502 ... الأخيرةالأخيرة
النتائج 16 إلى 30 من 9417
  1. #16
    تاريخ التسجيل
    Dec 2007
    المشاركات
    35

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    إجابات أكثر من رائعة أستاذ وضاح..

    بارك الله فيك..

    هل يُسمح في هذا الموضوع أن نعرض ما قمنا ببرمجته للبحث والنقاش.. أم نفتح موضوعا آخر لذلك..؟

  2. #17
    تاريخ التسجيل
    Dec 2007
    المشاركات
    35

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة وضاح عطار مشاهدة المشاركة
    شكرا لك أخي العزيز على هذه الإجابة .

    وتوضيح أكثر

    فإن الشراء دائما هو على سعر Ask والبيع يكون على سعر Bid

    في حال عكست الموضوع فإن احتمال عدم تنفيذ الأمر من قبل البروكر عالي جدا .

    لأنك طلبت أن تشتري ماركت بسعر مغاير لسعر Ask ولن يقبل تنفيذ الصفقة إلا إذا كان السبريد أقل أو مساوي لقيمة Slipage التي عادة تكون 3 .

    وهذا يعني أنك موافق على تنفيذ الصفقة بفارق لا يزيد عن ثلاثة نقاط عن السعر الحالي .

    يعني تصور لو كان سعر Ask يساوي 1.2220 وأنت طلبت منه أن يشتري لك ماركت بسعر 1.2215 .

    لن يقبل البروكر ذلك وسيرفض لك طلبك أو طلب الاكسبيرت .

    لذلك خذها قاعدة وهي أن الشراء على Ask والبيع على Bid . والإغلاق يكون بالعكس .
    جزاك الله خيرا..

    يعني نفهم من هذا أن صفقة الشراء تبدأ ب Ask وتُغلق ب Bid..؟

    وصفقة البيع تبدأ ب Bid وتغلق ب Ask..؟

  3. #18
    تاريخ التسجيل
    Mar 2007
    الإقامة
    سيول - كوريا الجنوبية
    المشاركات
    631

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة وضاح عطار مشاهدة المشاركة
    [/CENTER]




    تعديل بسيط على الكود الذي أضفته أخي أبو أيمن وهو أن الكود التالي لا يعمل بشكل صحيح :

    كود PHP:
    double floatprofit AccountEquity()-AccountBalance(); 

    if (
    floatprofit==100Close_All(); 
    والصحيح هو

    كود PHP:
    double floatprofit AccountEquity()-AccountBalance(); 

    if (
    floatprofit>=100Close_All(); 
    لأن الربح قد يكون 90 مثلا ثم يصبح 99 ثم يصبح 105 ولن يمر على القيمة 100 وبذلك لن تنفذ عملية الإغلاق .

    أما لو وضعنا اشارة أكبر من أو يساوي فإن الكود عندها سيعمل بشكل صحيح .
    نعم أخي الحبيب وضاح

    أنا فعلاً أكتبها في أكوادي كما ذكرت حفظك الله، ولا أدري كيف نسيتها

    لا حرمنا الله الاستفادة منكم ومن علمكم

  4. #19
    تاريخ التسجيل
    Mar 2007
    الإقامة
    سيول - كوريا الجنوبية
    المشاركات
    631

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة Leono مشاهدة المشاركة
    هل يُسمح في هذا الموضوع أن نعرض ما قمنا ببرمجته للبحث والنقاش.. أم نفتح موضوعا آخر لذلك..؟
    حيّاك الله أخي Leono

    الأمر في هذا لأستاذنا مشرف القسم وضاح، وإن كنتُ أنا أفضّل فتح موضوع جديد، إلا إذا كان الاستفسار في الكود بسيط ومحدد

  5. #20
    تاريخ التسجيل
    Oct 2007
    الإقامة
    canada-كندا
    المشاركات
    891

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة وضاح عطار مشاهدة المشاركة
    شكرا لك أخي العزيز على هذه الإجابة .

    وتوضيح أكثر

    فإن الشراء دائما هو على سعر Ask والبيع يكون على سعر Bid

    في حال عكست الموضوع فإن احتمال عدم تنفيذ الأمر من قبل البروكر عالي جدا .

    لأنك طلبت أن تشتري ماركت بسعر مغاير لسعر Ask ولن يقبل تنفيذ الصفقة إلا إذا كان السبريد أقل أو مساوي لقيمة Slipage التي عادة تكون 3 .

    وهذا يعني أنك موافق على تنفيذ الصفقة بفارق لا يزيد عن ثلاثة نقاط عن السعر الحالي .

    يعني تصور لو كان سعر Ask يساوي 1.2220 وأنت طلبت منه أن يشتري لك ماركت بسعر 1.2215 .

    لن يقبل البروكر ذلك وسيرفض لك طلبك أو طلب الاكسبيرت .

    لذلك خذها قاعدة وهي أن الشراء على Ask والبيع على Bid . والإغلاق يكون بالعكس .
    كلامك سليم أخ وضاح و لكن اشكالية الاخ هي عند الهدف و الاستوب و بهذه الحالة هو سيحدد قيمة لهما ستكون بعيدة عن السعر الحالي لذلك لا علاقة للبروكر بذلك ما دام يشتري بالاسك و يبيع بالبد
    و يبقى الفارق الوحيد هو ما اوضحته له من فارق السبريد في حالة الهدف و الاستوب
    و الله اعلم

  6. #21
    تاريخ التسجيل
    Dec 2007
    المشاركات
    35

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    سؤال جديد وجزاكم الله خيرا..

    هل ال Static Variable خاص بالاكسبرتات فقط..؟

    أم يمكن تعريفه في المؤشرات أو السكربتات..؟

    وسؤال آخر..

    دالة Start يتم تنفيذها مع كل تغير في السعر (في الاكسبرت).. فهل يتم تحميل قائمة المدخلات كذلك مع كل تغير في السعر..؟ يعني لو غيرنا مثلا في مدخلات الاكسبرت..: هل سيستخدمها الاكسبرت مع تغير السعر التالي فورا..؟

    معذرة.. سؤال ثالث ..

    هل يمكن تغيير أحد المتغيرات الخارجية (من قائمة المدخلات) وذلك من داخل كود الاكسبرت نفسه..؟ بحيث مثلا يدخل المستخدم عدد العقود المناسب له.. لكن يقوم الاكسبرت ببعض الحسابات ويحدد عدد عقود آخر (يتناسب مع إدارة المخاطر على سبيل المثال)..؟

    واعذروني لو كنت أزعجتكم..

  7. #22
    تاريخ التسجيل
    Sep 2006
    الإقامة
    المملكة العربية السعودية
    المشاركات
    2,924

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    جزاكم الله كل خير

  8. #23
    تاريخ التسجيل
    Oct 2007
    الإقامة
    canada-كندا
    المشاركات
    891

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة Leono مشاهدة المشاركة
    <B>
    سؤال جديد وجزاكم الله خيرا..
    </B>




    هل ال Static Variable خاص بالاكسبرتات فقط..؟

    أم يمكن تعريفه في المؤشرات أو السكربتات..؟

    وسؤال آخر..

    دالة Start يتم تنفيذها مع كل تغير في السعر (في الاكسبرت).. فهل يتم تحميل قائمة المدخلات كذلك مع كل تغير في السعر..؟ يعني لو غيرنا مثلا في مدخلات الاكسبرت..: هل سيستخدمها الاكسبرت مع تغير السعر التالي فورا..؟

    معذرة.. سؤال ثالث ..

    هل يمكن تغيير أحد المتغيرات الخارجية (من قائمة المدخلات) وذلك من داخل كود الاكسبرت نفسه..؟ بحيث مثلا يدخل المستخدم عدد العقود المناسب له.. لكن يقوم الاكسبرت ببعض الحسابات ويحدد عدد عقود آخر (يتناسب مع إدارة المخاطر على سبيل المثال)..؟


    واعذروني لو كنت أزعجتكم..

    نعم أخي ان البرنامج عندما تضعه على الشارت يقرأ المدخلات مرة واحدة و من ثم يقرأ دالة ستارت مع كل تك
    فلو انك وضعت في المدخلات مثلا اللوت يساوي 1 و في دالة ستارت وضعت اللوت يساوي 2 فان البرنامج سيقرأ اللوت واحد و يكمل قراءته ليصل الى الجزء الذي وضعت به اللوت 2 في دالة ستارت و سوف يكمل عمله على اساس ان اللوت 2
    و عندما تغير أي شيء في المدخلات بمجرد ان تضغط على زر اوكي على النافذة فان البرنامج يقرأ المدخلات مرة واحدة ويكمل الى دالة ستارت أي ان أي تغيير في المدخلات يقرأه البرنامج مع أول تك لمرة واحدة فقط
    تقبل تحياتي

  9. #24
    تاريخ التسجيل
    Sep 2006
    الإقامة
    المملكة العربية السعودية
    المشاركات
    2,924

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    الرجاء من الاخوة المبرمجين المساعدة في التعديل على الاكسبيرت الموجود في هذا الموضوع

    http://www.arabictrader.com/vb/t37760.html

  10. #25
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    46
    المشاركات
    6,529

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة Leono مشاهدة المشاركة
    إجابات أكثر من رائعة أستاذ وضاح..



    بارك الله فيك..


    هل يُسمح في هذا الموضوع أن نعرض ما قمنا ببرمجته للبحث والنقاش.. أم نفتح موضوعا آخر لذلك..؟

    أهلا بك أخي

    يمكنك فتح موضوع مستقل لكل تجربة برمجية مميزة ليتم مناقشتها .
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

  11. #26
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    46
    المشاركات
    6,529

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة Leono مشاهدة المشاركة
    جزاك الله خيرا..


    يعني نفهم من هذا أن صفقة الشراء تبدأ ب Ask وتُغلق ب Bid..؟


    وصفقة البيع تبدأ ب Bid وتغلق ب Ask..؟
    بالضبط
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

  12. #27
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    46
    المشاركات
    6,529

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة memouz مشاهدة المشاركة
    كلامك سليم أخ وضاح و لكن اشكالية الاخ هي عند الهدف و الاستوب و بهذه الحالة هو سيحدد قيمة لهما ستكون بعيدة عن السعر الحالي لذلك لا علاقة للبروكر بذلك ما دام يشتري بالاسك و يبيع بالبد
    و يبقى الفارق الوحيد هو ما اوضحته له من فارق السبريد في حالة الهدف و الاستوب
    و الله اعلم

    نعم أخي الفاضل أنت أجبت عن قسم من السؤال وأنا أجبت عن القسم الآخر

    ولا تعارض بين اجابتينا
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

  13. #28
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    46
    المشاركات
    6,529

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    اقتباس المشاركة الأصلية كتبت بواسطة Leono مشاهدة المشاركة
    <B>
    سؤال جديد وجزاكم الله خيرا..
    </B>



    هل ال Static Variable خاص بالاكسبرتات فقط..؟


    أم يمكن تعريفه في المؤشرات أو السكربتات..؟
    يمكن تعريف المتحولات الساكنة في كل الأنواع

    وسؤال آخر..


    دالة Start يتم تنفيذها مع كل تغير في السعر (في الاكسبرت).. فهل يتم تحميل قائمة المدخلات كذلك مع كل تغير في السعر..؟ يعني لو غيرنا مثلا في مدخلات الاكسبرت..: هل سيستخدمها الاكسبرت مع تغير السعر التالي فورا..؟
    بمجرد تغيير المدخلات أو تغير الفريم أو الانقطاع عن العمل ثم العودة يتم قراءة المدخلات مرة أخرى

    معذرة.. سؤال ثالث ..


    هل يمكن تغيير أحد المتغيرات الخارجية (من قائمة المدخلات) وذلك من داخل كود الاكسبرت نفسه..؟ بحيث مثلا يدخل المستخدم عدد العقود المناسب له.. لكن يقوم الاكسبرت ببعض الحسابات ويحدد عدد عقود آخر (يتناسب مع إدارة المخاطر على سبيل المثال)..؟
    يمكن ذلك طبعا ولكن الأفضل عدم تغيير نفس المتحولات بل يكون التعامل داخليا مع متحولات داخلية فقط .

    واعذروني لو كنت أزعجتكم..
    أهلا بك دائما

    الإجابة في الاقتباس
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

  14. #29
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    46
    المشاركات
    6,529

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    س :

    هل يوجد بيئة مشابهة للميتا تريد او لغة MQL4 لكن على لغة أخرى مثل الجافا بحيث تعطي صلاحيات امن Security وجودة وحرية اكثر في البرمجة؟؟ أو فقط المؤشرات والاكسبيرتات للفوركس تقتصر على هذه اللغة؟

    ج :

    سأجيب عن هذا السؤال بأمور محددة على شكل نقاط :

    = تركيبة لغة MQL4 هي في الحقيقة نفس تركيبة لغة C .

    = يقصد بتركيبة اللغة هي التعليمات الأساسية ( if for return .... ) وكذلك طريقة كتابة الوظائف وتعريف المتحولات .

    = سيكون من السهل على مبرمج C التعامل مع اللغة الجديدة ولكن يجب عليه تعلم الوظائف الجديدة وطريقة عمل الفوركس أساسا من أسعار ومؤشرات .. الخ .

    = يستطيع من لديه خبرة جيدة في الفوركس تعلم لغة البرمجة واتقانها أفضل بكثير من مبرمج C لا يعرف شيئا عن الفوركس .

    = لا يمكن تنفيذ برنامج MQL4 في بيئة C أو العكس .

    = هذه اللغة مخصصة فقط لبرامج التداول ****trader ولا يمكن الاستفادة منها في بيئات مختلفة أخرى مثل الميتاستوك والذي يتضمن لغة أخرى مختلفة تماما .

    = مع ذلك وبقليل من الخبرة يمكنك التآلف مع بيئة MQL4 بسهولة وإيجاد تقنيات خاصة بك لعمل تصحيح أخطاء وتطوير برامجك بشكل أفضل .

    = مع أن بيئة MQL4 تحتوي مترجم نصوص برمجية Compiler خاص بها لإخفاء النص البرمجي عن الغير إلا أن هذا غير كافي أبدا لحفظ نص برنامجك بأمان .

    = لذلك ومع تقدمك في البرمجة يجب عليك الإعتماد على المكتبات الخارجية DLL التي تكتب بلغات عدة مثل السي الأصلية .

    = بهذه الطريقة يمكنك حماية برنامجك بشكل أفضل .

    = يفضل دائما عدم استباق الأمور في هذه المسائل فلكل مرحلة أولوياتها وتأكد أنه كلما زادت خبرتك زادت حلولك .
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

  15. #30
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    46
    المشاركات
    6,529

    افتراضي رد: موضوع مخصص للأسئلة البرمجية

    س :

    ما هي الدالة التي تقوم بحساب 10% مثلا من رأس المال كنظام إدارة مال آلي .. في كل مرة ندخل صفقة تحسب الـ 10% بناء على مجمل رأس المال كله (رأس المال الأساسي+ الأرباح الأخيره)


    ج :

    للإجابة عن هذا السؤال ينبغي أولا توضيح وشرح بعض الوظائف المتعلقة بإدارة رأس المال :

    = الوظيفة AccountBalance :
    هذه الوظيفة تعطينا قيمة الرصيد الحالي الناتج عن الإجمالي لمجموع المبلغ الأساسي مع مجموع الأرباح والخسائر لجميع الصفقات التي فتحت وأغلقت .
    وأي صفقة مفتوحة ولم تغلق بعد فإن مجموعها لا يدخل في حساب الرصيد السابق .

    = الوظيفة AccountEquity :
    هذه الوظيفة تعطينا قيمة الرصيد الفعلي وهو مساوي للرصيد السابق إضافة إلى الرصيد المتحرك الناتج عن الصفقات المفتوحة .
    وهو قد يزيد عن الرصيد الحالي في حال كانت الصفقات المفتوحة وغير المغلقة بعد رابحة .
    أو قد ينقص عن الرصيد الحالي في حال كانت الصفقات المفتوحة وغير المغلقة بعد خاسرة .

    مثال :
    فتحنا حساب بمبلغ 5000 دولار ودخلنا خمس صفقات .. أغلقنا ثلاث صفقات بربح إجمالي 150 دولار
    وبقي صفقتين مفتوحتين لم تغلقا بعد وكان إجمالي ربح الصفقتين المفتوحتين -50 ( خسارة ) وفق الأسعار الحالية .

    يصبح الرصيد الحالي AccountBalance مساوي للمبلغ 5000 + 150 = 5150 دولار .
    يصبح الرصيد الفعلي AccountEquity مساوي 5150 + (-50) = 5100 دولار .

    يتغير الرصيد الفعلي AccountEquity دائما مع تغير الأسعار .
    فمثلا لو تحركت الأسعار باتجاه الصفقتين المفتوحتين وتحولت خسارتهما إلى ربح 100 دولار فيصبح الرصيد الفعلي مساوي للمبلغ 5150 + 100 = 5250 دولار .

    بينما يبقى الرصيد الحالي AccountBalance مساوي للمبلغ 5150 دولار .

    عند إغلاق الصفقتين المفتوحتين يصبح الرصيد الحالي مساويا للرصيد الفعلي وهو المبلغ 5250 دولار


    = الوظيفة AccountMargin :
    هذه الوظيفة تعطينا المبلغ المحجوز لصفقاتنا المفتوحة .. أي المبلغ الذي فتحنا به الصفقات بعدد لوتات معين .
    ويتم حسابه وفق عدد اللوتات المفتوحة إضافة إلى الرافعة المالية المستخدمة .

    = الوظيفة AccountFreeMargin :
    هذه الوظيفة تعطينا المبلغ المتوفر الذي نستطيع من خلاله فتح صفقات جديدة إضافية . وهو يساوي الرصيد الفعلي مطروحا منه المبلغ المحجوز لصفقاتنا المفتوحة .


    نأتي الآن للمفيد في إدارة رأس المال .. وفي مثالنا السابق لدينا في رأس المال 5000 دولار ولو فرضنا أننا قررنا الدخول ب 10 % فقط

    هذا يعني أن المبلغ المستثمر هو 500 دولار ..

    فإذا كانت رافعتنا المالية 1:100 فهذا يعني أننا قادرون على فتح صفقة بخمسة لوتات ميني .
    أما إذا كانت رافعتنا المالية 1:200 فهذا يعني أننا قادرون على فتح صفقة بعشرة لوتات ميني أو لوت كامل واحد .

    وهكذا ..

    وعند برمجة اكسبيرت ما يجب أن يأخذ بعين الاعتبار هذه الأرصدة ويقوم بحساب المبلغ المتاح له كنسبة مخاطرة مئوية

    طبعا هناك طرق كثيرة لحساب عدد اللوتات المتاح له في الصفقة الجديدة وكلها تعتمد بالأساس على الطريقة المتبعة لإدارة رأس المال

    بالنسبة لي ارى أن يقوم الاكسبيرت بحساب نسبة المارجن المستخدم بالنسبة للرصيد الكلي قبل الدخول في صفقة جديدة

    فإذا كانت نسبة هذا المبلغ أكبر من أو يساوي النسبة المسموحة فإنه يؤجل الدخول في الصفقة الجديدة

    وإلا فإنه يحسب مجددا المبلغ المتبقي من النسبة المتاحة له ثم يحولها إلى عدد لوتات بناء على المارجن الذي سيحجز لكل لوت على العملة التي سيفتح الصفقة عليها

    أي أنه سيقوم بحساب ما يلي وعلى أساس أن نسبة المخاطرة 10 % :

    - يحسب نسبة المخاطرة الحالية وذلك بقسمة AccountMargin على AccountBalance
    ولنفرض أن القيمة كانت أكبر من 0.1 أي أكبر من 10 % وهذا يعني أنه لا يمكن فتح صفقة جديدة .

    مثال :

    الرصيد 5000 ::: المارجن المستخدم 600 ::: 600 / 5000 = 0.12 وهي أكبر من 0.1

    لذلك لا ندخل في الصفقة الجديدة

    - أما إذا كانت النسبة أقل من 0.1 فإنه يحسب المبلغ المتاح له للدخول في صفقة جديدة وذلك كما يلي :
    يحسب أولا المبلغ الذي يساوي 10 % من الرصيد ثم يطرح منه AccountMargin

    مثال :

    الرصيد 5000 ::: المبلغ المتاح 0.1 * 5000 = 500

    500 - AccountMargin ولنفرضه 200 = 300

    إذا استطعنا حساب المبلغ الذي نستطيع به شراء عدد لوتات معين

    - الآن يجب تحويل المبلغ السابق 300 إلى عدد لوتات وذلك بقسمة 300 على قيمة المارجن للوت واحد

    يمكن معرفة قيمة المارجن للوت واحد بواسطة الوظيفة


    كود PHP:
    MarketInfo (MODE_MARGINREQUIRED


    هذه هي كل المعلومات الأساسية لحساب عدد اللوتات المناسب للصفقة الجديدة بناء على نسبة مخاطرة محددة
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

صفحة 2 من 628 الأولىالأولى 123456781252102502 ... الأخيرةالأخيرة

المواضيع المتشابهه

  1. موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
    By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 10
    آخر مشاركة: 03-08-2012, 06:54 PM
  2. عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
    By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملات
    مشاركات: 280
    آخر مشاركة: 27-08-2009, 10:30 PM

الاوسمة لهذا الموضوع