- المتاجرة
- تداول مبرمج
- اكسبرت لـ NetTradeX
- NetTradex Advisors (FAQ)
FAQ لبرنامج NetTradex Advisors
تُحفظ جميع سكريبتات الـ NetTradeX Advisors في مجلد Documents\NeTTradeX Advisors\scripts . بعد الانتهاء من تنصيب البرنامج على الكمبيوتر الثاني ، سيترتب عليك نسخ محتوى المجلد بأكمله و لصقه في المجلد المطابق على الكمبيوتر الجديد و من ثم إعادة تشغيل المنصة .
لإظهار الخط بدون حدوث إي إنقطاع فيه ، استخدم خاصية SetIndexStyle مع استخدام بارامتر type الذي له قيمة ltSection .
بعد وصول التيك (tick ) ، يُفترض على الاكسبيرت ان يقوم بتنفيذ جميع الخطوات المنطقية للبرنامج و ذلك في غضون زمن محدود ( 60 ثانية ). في حال زاد الحدّ عن هذا المقدار ، فإن الاكسبيرت يتوقف بشكل اجباري ، و يُعطى 3 ثوان إضافية على إنهاء عمل الاكسبيرت. يُنصح بتحليل حالة و وضع الراية (flag ) لـ System.IsStopped على انهاء عمل الاكسبيرت بشكل صحيح . أثناء توقف الاكسبيرت ، تظهر للمستخدم رسالة stopped by timeout . في هذه الحالة ، يجب إعادة صياغة البرنامج ، بشكل يصبح فيه وقت تنفيذ البرنامج أقل .
بعد ان تكون قد تأكدت من أن دالة Deals.Open() ، تُعيد الصفر ، يجب اللجوء الى خاصية System.LastError و الحصول على كود الخطأ. إن شرح كودات الاخطاء ، يتم في تعليمات المستخدم ، في قسم " اسس اللغة "- " كودات الاخطاء ". انتبه الى أن اللجوء الى خاصية System.LastError يجب القيام به في استدعاء خاصية التداول ، و إلا فإن العملية اللاحقة ستُغير هذه الخاصية بشكل يتماثل مع نتائج عملها .
للحصول على خصائص الصفقة أو الأمر ، يجب أولاً استدعاء الدالة Select() و من ثم ، و بعد التأكد من أن Select() أعادت قيمة true ، يمكن الحصول الى خصائص الصفقة أو الأمر .
لمعرفة نوع الامر المؤجل ، يجب أن تقوم بالنظر في خصائصه ، عن طريق استدعاء دالة Select(). لأمر Buy Stop يجب أن يتنفذ شرطين : Orders.Direction == opBuy و Orders.IsLimit == false، و بالتالي ، فإنه لأمر Buy Limit يجب تنفيذ شرطين Orders.Direction == opBuy و Orders.IsLimit == true
إن الخاصية الفرعية تُستخدم للاوامر " المعقدة " و تسمح بتحديد اي من الاوامر تُعدّ اساسية و اياً منها تُعد تابعة. على سبيل المثال ، في حال وجود أمر مُفعّل ، و الذي في اثناء تَفعّله سيتم وضع امرين " أمر يلغي الآخر " : الامر المفعل سيكون هو الاساسي ( أمر من المستوى الأول - order level 1 ) و أمر يلغي الآخر – تابع له ( أمر من المستوى الثاني - order level 2 ) .
تحتوي قائمة الرموز في حوار فتح الصفقة على تلك الرموز ، الموجودة في نافذة Market Watch. لذلك ، و قبل ارسال طلب فتح الصفقة ، تأكّد بأنك مشترك بالرمز المطلوب و ذلك في Market Watch .
تصل المعلومات عن الصفقات المقفلة الى تبويبة History لمنصة NetTradeX Advisors.. يمكن الوصول الى مثل هذه الصفقات بمساعدة History. يتم حفظ المعلومات عن الصفقات المقفلة حتى وقت اعادة تشغيل المنصة .
قبل استدعاء طريقة Symbols.Distance() ، اشترك بالرمز (Symbols ) الذي تريده في نافذة Market Watch .
لتشغيل السكريبت ، تلزم الدالة Run() . تُعتبر الدالتان Initialize() و DeInitialize() دالتان إختياريتان ، و إذا لم يكن هناك اي تصور لأية إجراءات اثناء التنصيب و الحذف ، فإنه يمكن استثنائهما من البرنامج .
في بعض الحالات ، على سبيل المثال ، أثناء إنشاء ملفات لوصف دالات المستخدمين المساعدة ، يمكن أن لا يتواجد في السكريبت ايضاً دالة Run() . سيكون باالمكان جمع هذه الملفات ، لكن من غير الممكن تشغيلهم. إن مثل هذه السكريبتات ،
تُستخدم الى جانب الموجّه #include و تدخل في كود السكريبتات التنفيذية .
* إن مفهوم السكريبت في لغة NTL+ يشمل في ذاته ثلاثة أنواع من البرامج : اكسبيرت ، اينديكاتر ، مُرفق ( أداة مساعدة ).
نعم يوجد . إن جميع المعلومات المعروضة على تبويبة Journal تُسجّل أيضاً في ملف السجل (log file ) ، و الذي يتواجد في مجلّد Documents\ NetTradeX Advisors\ bases\ account_type\ account_number\ logs . يتم إنشاء ملف لكل يوم بيومه ، و يكون امتداد هذا الملف log.. يمكن فتح هذا الملف في اي محرر للنصوص .
يمكن للمتغيرات الشاملة أن تتواجد على شكل extern مُعدّل أو بدونه. في حاول وجود المُعدّل extern بعد تشغيل السكريبت مباشرة ،تُفتح نافذة ، يمكن فيها تغيير قيم مثل هذه المُتغيرات. عدا عن ذلك ، يمكن تغيير هذه المتغييرات بسرعة ، اي بمعنى أثناء وجود الاكسبيرت أو الاينديكاتر في حالة عمل .
بالضغط على تركيبة المفاتيح Ctrl+N ، تُفتح قائمة الرموز ، المُتاحة لإنشاء الرسومات البيانية للأسعار الجارية .
أثناء العمل مع الرسومات البيانية ، يمكن استخدام تركيبة المفاتيح + / - في القسم الرقمي للوحة المفاتيح و ذلك لتغيير حجم الرسم البياني افقياً. كما يمكن تنفيذ هذه العملية ، إذا قمنا بتحريك مؤشر الفأرة من الخط الزمني لليمين و
لليسار. لتغير الحجم عمودياً ، فإنه يجب تحريك مؤشر الفأرة من لوحة الأسعار و بالضغط المستمر على زر الفأرة ، مُحركين الفأرة نحو الأعلى أو الأسفل .
لإظهار الرسم البياني للأسعار الجارية حتى أبعد تاريخ ، يمكن الضغط على زر Home أما للإنتقال الى آخر الأسعار ، فإنه يمكن الضغط على زر End .
إن عملية النقر المزدوج في مكان فارغ لتبويبة Open Positions ، يؤدي الى فتح نافذة فتح الصفقة ، و بالنقر المزدوج في مكان فارغ لتبويبة الأوامر – تُفتح نافذة إعداد الأمر. يمكن تنفيذ هذه العمليات بالنقر على زر F4 في لوحة المفاتيح
( فتح الصفقة ) أو على زر F3 ( إعداد الأمر ) .
يمكن تغيير قيم الحقول الرقمية في النوافذ الحوارية لفتح الصفقة أو إعداد الأوامر من خلال تحريك دولاب الفأرة. على سبيل المثال ، أثناء إعداد سعر الامر المرتبط ، فإن تحريك دولاب الفأرة مرة واحدة يؤدي الى تغيير السعر بقيمة نقطة
واحدة .
كون أن كلا المعاملين عبارة عن أعداد صحيحة ، فإن النتيجة ستكون هي أيضاً عبارة عن عدد صحيح. لذلك ، يجب تحويل إحدى المعاملين ليصبح من نوع double على الشكل التالي (2)/3 و في هذه الحالة ستكون نتيجة 2/3=0,666667 .
يمكن معاينة التغيرات الشاملة بمساعدة نافذة " Global Variables " و التي يمكن استدعائها بمساعدة قائمة View - Global Variables . انتبه الى أنّ لكل حساب متغيراته الشاملة الخاصة به .
اثناء استخدام طريقة Indicators.Fractals عبثاً تجري محاول الحصول على قيم آخر قضيب ( بار ) كون أنها ستكون قيمتها مساوية للصفر. القيم المؤكدة للكسور تتشكل بدءاً من البار الرابع ( البار مع فهرس 3 ) ، كون أنه في مثل هذه الحالة ، سيتم استخدام بارين كاملين متشكلين في كل اتجاه من البار المطلوب .
يتم حفظ المعلومات في ذاكرة الكمبيوتر بنظام العد الثنائي ، و بسبب ذلك ، يمكن للعديد من الارقام المُعطاة في النظام العشري أن تكون على شكل كسر لا منتهي فقط . العدد المُعطى على سبيل المثال كـ 0.1 يمكن حقيقةً أن يكون مساوياً لـ 0.099999998 ، لذلك من غير الصحيح و الدقيق استخدام المساواة المزدوجة لمقارنة الارقام من نقطة عائمة . من الافضل استخدام الطريقة الرياضية Math.Abs(a - b) < delta حيث a هي القيمة الناتجة و b هي القيمة التي يجري معها المقارنة و delta هي الخطأ المطلق .