وظيفة مخصصة MQL4
Results 1 to 8 of 8

Thread: وظيفة مخصصة MQL4

  1. #1
    مرحبا يا جماعة ،

    أحاول القيام بعملي المخصص لإظهار الأوامر المفتوحة (البيع البيع). يعمل هذا الرمز ، لكنه يفتقر إلى بعض الأشياء.

    Inserted Code void OpenOrders () BuyOrdersOpen = 0؛ SellOrdersOpen = 0؛ كثافة العمليات TotalOrders = OrdersTotal ()؛ for (int iii = TotalOrders-1؛ iiigt؛ = 0؛ iii--) OrderSelect (iii، SELECT_BY_POS)؛ يجب أن تستمر (OrderSymbol ()!) = الرمز ())؛ if (OrderType () == OP_BUY) BuyOrdersOpen = BuyOrdersOpen 1؛ if (OrderType () == OP_SELL) SellOrdersOpen = SellOrdersOpen 1؛ مشكلتي حتى الآن هي أنني أعمل مع العوامل الدولية للحصول على النتائج من الوظيفة (BuyOrdersOpen، SellOrdersOpen). أتفهم أنني سأقوم بإعادة الدالة إلى القيم وأن تكون القيم متوفرة بسهولة ، إذا اتصلت بالوظيفة الصحيحة. لا تفهم كيف تصل إلى هناك مع ذلك ...

    أي شخص يمكن أن يساعدني؟

  2. #2

    Quote Originally Posted by ;
    مرحبا Folks ، أنا أحاول أن أفعل غرضي الخاص لإظهار لي أوامر تقبلا (شراء بيع). يعمل هذا الرمز ، لكنه يفتقر إلى بعض الأشياء. [كود] باطل OpenOrders () {BuyOrdersOpen = 0؛ SellOrdersOpen = 0؛ كثافة العمليات TotalOrders = OrdersTotal ()؛ for (int iii = TotalOrders-1؛ iiigt؛ = 0؛ iii--) {OrderSelect (iii، SELECT_BY_POS)؛ if (OrderSymbol ()!) = Symbol ()) continue؛ if (OrderType () == OP_BUY) BuyOrdersOpen = BuyOrdersOpen 1؛ if (OrderType () == OP_SELL) {...
    البحث عن ملف التوحيد. لقد طلبت الآن بعضًا من الأسئلة البرمجية الجديدة للغاية في الآونة الأخيرة. ربما يجب عليك وضع mql وكذلك القيام ببعض القراءة الخفيفة مثل qbasic أو python أو أي شيء على طول هذه الخطوط ... أو في حالة ما إذا كان بإمكانك العثور على برنامج تعليمي ملائم C. لا يمكنك الاستمرار في القدوم إلى هنا لتتساءل عن الصوت مثل أسئلة الواجب المنزلي. Mql هو shit لمحاولة تعلم كيفية تنفيذ أي شيء متعلق برمز. إنه نصف c-like و نصف شيء شخصي ، إلى جانب ملف المساعدة أيضا في اللغة الإنجليزية المكسورة التي عادة ما تكون غير منطقية. إذهب للقراءة عن بعض اللغات الأخرى. العب مع هذا. أعود إلى mql. ثم قد يكون لديك بعض الأسئلة بدلاً من أن تضرب رأسك وتطلب من الجميع هنا. لا يحتاج المبرمج الجيد إلى معرفة كل وظيفة صغيرة يتم توفيرها عن طريق اللغة. يجب عليهم ببساطة فهم أساسيات الطريقة التي تعمل بها المصطلحات ، ومن ثم معرفة كيفية العثور عليها في وثائق المساعدة (وعلى الإنترنت) تفاصيل كل الأشياء الأخرى التي يمكن القيام بها. أنت في حاجة لمعرفة وفهم الأساسيات ... ليس mql من أين تبدأ. الجحيم ، ربما حتى شيء مثل الروبوتات هي بداية. على الأقل قد تكون شبه مثيرة للاهتمام (ثم الحروب الأساسية يجب أن تحصل فعلا على الأمور والتقدم من الوافد الجديد إلى أكثر تعقيدًا قليلاً). تحرير وأيضا لتتبع من codemeister .... أيضا البحث عن المتغيرات حسب المرجع أو القيمة.

  3. #3
    المشكلة مع وظائف MQL (واللغة الأخرى) هي أنها تعيد فقط قيمة واحدة. أجد نفسي للوقت. استخدام globals ليس اختيارًا سيئًا. قد يقترح البعض استخدام غرضين ، واحد يعيد رقم الشراء والآخر لعمليات البيع الخاصة بك. ولكن هذا يعني عادةً استدعاء كل مرة بالإضافة إلى dupliion من التعليمات البرمجية. لقد رأيت بعض الناس اليوم يعيدون قيمة واحدة كقيمة دالة والأخرى كقانون عالمي شنيع ولا معنى له.

  4. #4
    ربما أنا فقط في المدرسة القديمة - سمعت C قبل سمعت MQL - ومع ذلك ، فإن الإجابة على هذه الصعوبة كانت موجودة منذ ... حسنا C ، أعتقد.
    http://docs.mql4.com/basis/variables/formal

  5. #5

    Quote Originally Posted by ;
    مرحبا يا جماعة ، أنا أحاول أن أقوم بعملي الخاص حسب الطلب لإظهار الأوامر التقديرية (شراء بيع). يعمل هذا الرمز ، لكنه يفتقر إلى بعض الأشياء.
    شيء من هذا القبيل (تمرير المعلمات بالرجوع) والعودة كاملة؟ بهذه الطريقة تحصل على جميع القيم 3: buyopenorders ، sellopenorders (في ما يتعلق بقائمة المعلمات) وأيضا قيمة totalopenorders عاد من الوظيفة. لاحظ أيضًا التغييرات التي طرأت على المسافة البادئة. يتمثل الهدف من المسافة البادئة في إظهار مكان بدء كتل الكود وإنهائها (مثل الحلقات أو المكعبات) لإجراء معاينة بصرية بسيطة. تأكد من تأطير الكتل بواسطة الأقواس الخاصة بك. يعني بشكل صحيح أن قوس المجعد يتصاعد (يسار مبرر) مع الحلقة ذات الصلة أو في حالة الحظر. الرمز الموجود داخل الكتلة (داخل الأقواس المتعرجة) يتم وضع مسافة بادئة له. تم إدراج الرمز الخاص بـ OpenOrders (int BuyOrdersOpen، int SellOrdersOpen) BuyOrdersOpen = 0؛ SellOrdersOpen = 0؛ int totalOrders = OrdersTotal ()؛ for (int iii = TotalOrders-1؛ iiigt؛ = 0؛ Measure -) OrderSelect (iii، SELECT_BY_POS)؛ يجب (OrderSymbol ()! = الرمز ()) متابعة؛ if (OrderType () == OP_BUY) BuyOrdersOpen = 1؛ if (OrderType () == OP_SELL) SellOrdersOpen = 1؛ return TotalOrders؛

  6. #6

    Quote Originally Posted by ;
    المشكلة في وظائف MQL (واللغة الأخرى) هي أنها تعطي قيمة واحدة فقط. أجد نفسي في نفس اللغز من وقت لآخر. استخدام globals ليس اختيارًا سيئًا. قد يقترح البعض استخدام وظيفتين ، أحدهما ينتج عدد الشراء والآخر لعمليات البيع الخاصة بك. ولكن هذا يعني عادةً استدعاء كل مرة بالإضافة إلى ازدواج الشفرة. لقد رأيت بعض الناس اليوم يعيدون قيمة واحدة كقيمة دالة وأخرى ك a رمز شنيع ولا معنى له.
    أسمع هذه القضية. أميل إلى الاعتقاد بأن تكرار الشفرة (الحلقات الخاصة) هو في الغالب فكرة رهيبة. MT4 غير فعال كما هو ، ليس عليك أن تجعله فعالاً. ومع ذلك ، قد يؤدي تمرير المعلمات حسب المرجع إلى جعل قراءةفهم الشفرة أكثر صعوبة بالنسبة لبعض أو في سيناريوهات معينة. إذا كان الأمر كذلك ، فقد يكون من الأفضل أن تصل إلى الأداء ، أو استخدام متغير على تكرار الحلقات ، التي أفضلها. سيكون أفضلي للقيام حلقة واحدة عندما يكون ذلك ممكنا وأيضا لتمرير المراجع كما هو الحال في التعليمات البرمجية أعلاه. تعمل Globals أيضًا ولكن يصبح من الواضح ما هو الرمز الهش وما هي الوظيفة التي يمكن إعادة استخدامها. ليس أنني لا أستخدم متغيرًا حسب التصميم. إن جعل الكود معممًا أو قابل لإعادة الاستخدام هو جهد أكبر مما يستحق. أنا لا أعيد استخدام كل شيء

  7. #7

    Quote Originally Posted by ;
    شيء مماثل لذلك (تمرير المعلمات بالرجوع) والعودة الإجمالي؟ بهذه الطريقة تحصل على جميع القيم 3: buyopenorders ، sellopenorders (بالإشارة في قائمة المعلمات) جنبا إلى جنب مع قيمة totalopenorders عاد في هذه الوظيفة. لاحظ أيضًا التغييرات التي طرأت على هذا المسافة البادئة. يتمثل الهدف من المسافة البادئة في إظهار الكتل التي تبدأ وتنتهي الكود (مثل الحلقات أو المكعبات) من أجل الفحص البصري السهل. تأكد من أن الأقواس الخاصة بك تؤطر المكعبات بشكل صحيح. يعني بشكل صحيح أن قوس مجعد يصطف (يسار مبرر) مع المرتبط ل ...
    أظن أنك لست ضمن مفهوم ”الرجل” الذي يصطاد السمك ، وهو أكثر في إعطاء الأسماك لأي شخص يطلبها. والجروح تؤذي عقلي. أنا أكثر من نمط 1TBS ، على الرغم من أنني أفهم كثير يفعل ذلك من هذا القبيل. بعد بضعة آلاف من أسطر الكود في 1TBS ، يمكن أن تكون أطقم الأسنان الفتاه المهدورة هذه قد أضيفت بالفعل إلى الكثير من الخطوط التي أهدرت والتي كانت تعوق قراءة القراءة بشكل كبير. فقط ملاحظة منذ الانتهاء من هذا الموضوع بشكل أساسي. Kr Indentation يجب أن يكون في طريقه للخروج من هذه الأيام (على أساس لي على الأقل).

  8. #8

    Quote Originally Posted by ;
    أعتقد أنكم لستوا مهتمين في كل شيء بتعليم رجل أن يصطاد ”فكرة أكثر وأكثر من مجرد إعطاء السمكة لأي شخص يطلبها.
    أنا كل شيء عن تعليم الشخص لصيد السمك ، ولكن أعتقد أنه بذل جهدا صادقا على أساس ما قدم رمز وماذا سئل. كان يعرف ما لم يفهم ولم يكن مسروراً لطلب المساعدة.
    Quote Originally Posted by ;
    وهذا الانحطاط يضر بذهني. أنا أفهم كثير يفعلون مثل هذا ، لكني. بعد بضعة ملايين من أسطر الشفرة في 1TBS ، كانت أطقم الأسنان المفتوحة هذه قد أضافت بالفعل الكثير من الخطوط التي أهدرت والتي كانت تعوق القراءة بشكل كبير. مجرد ملاحظة منذ أن انتهى هذا الموضوع بشكل أساسي. Kr indentation يجب أن يكون على الطريق للخروج في الوقت الحاضر (على أساس لي على الأقل).
    أنا أيضا أؤيد 1TBS بسبب سوق الشاشة ولكن كما كان مايك تواجه صعوبة فقط في تصعيد يتصاعد ، لم أكن أريد أن يفجر أفكاره.

أذونات النشر

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  
  • رمز BB مفعل
  • الابتسامات مفعلة
  • رمز[IMG] مفعل
  • رمز [VIDEO] مفعل
  • رمز HTML غير مفعل
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.