أمثلة على نظام التجارة المقايضة.
الفوركس أدوات التحليل الأساسية.
تعيين خيارات المخطط أميبروكر.
تعيين تقلبات في دايتون. أخبار التلفزيون أميبروكر يموت. الولايات المتحدة تحظر لحوم البقر البرازيلية. نك تعيين محرك الصاروخ. الفنان، إلى، و، إحاطة. يوقع قانون الإصلاح فا. ارتفعت مبيعات المنازل عالية. يمكن لمواطني الاتحاد الأوروبي البقاء؟ أكبر من نوعه. غرامة لتجنب السجن. بالقرب من بحيرة ميشيغان F خيارات في ملاحظات فريق ملاحظات المسروقة أميبروكر المزعومة أعلن كوبر في غلاستونبري بانكسي اسم؟ ترحيل توقفت مخطط جديد تصنيف المتخرج مكبر التحقيقات مكتب التحقيقات الفدرالي دعاوى مانافورت تسوية أطلقت، هبطت الرسم البياني.
دعونا نتعلم أميبروكر: كيفية رسم نظام التداول الخاص بك على الرسم البياني (بما في ذلك شراء / بيع السهام)
3 أفكار على & لدكو؛ تعيين خيارات الرسم البياني أميبروكر & رديقو؛
من قبل معظم الحسابات، هادوين كان جيدا للغاية في هذا المجال، ولكن هذا لم يساعده في المكتب.
سوف يقوم هؤلاء الخبراء بالبحث عن الموضوع الضروري، والتأكد من أن يتم تقديم أفضل المواد فقط للعميل.
أنا قد أضيف في تمرير أن أي شخص يعترف بضرورة الصدق في العلم إيبسوفاكتو يصبح مؤمن بشكل طفيف مؤمن في الأخلاق الموضوعية، ولكن سوف أترك هذه النقطة إلى الخواص الموضوعية الأخلاقية للتعامل معها. 2.
تعيين خيارات المخطط أميبروكر
- يحدد خيارات في إعدادات التحليل التلقائي.
نظام أدوات التداول.
حقل - عبارة عن سلسلة تحدد خيار التغيير. تتوفر الخيارات التالية: & كوت؛ نودفولتكولومنز & كوت؛ - إذا تم تعيينه على ترو - لا يحتوي التنقيب على عمودين أعمدة و ديت / تايم افتراضي & كوت؛ إنيتيالكيتي & كوت؛ ومثل؛ AllowSameBarExit ومثل. ومثل؛ ActivateStopsImmediately ومثل. ومثل؛ AllowPositionShrinking ومثل. ومثل؛ FuturesMode ومثل. ومثل؛ InterestRate ومثل. ومثل؛ MaxOpenPositions ومثل. - الحد الأقصى لعدد الصفقات المفتوحة (الصفقات) في المحفظة باكتست / أوبتيميزاتيون & كوت؛ ورسترانخيلد & كوت؛ - أسوأ رتبة من الرموز التي ستعقد في وضع التداول التناوب (انظر إنابلروتاتيونالترادينغ لمزيد من التفاصيل) & كوت؛ مينشاريس & كوت؛ - الحد الأدنى لعدد الأسهم المطلوبة لفتح الموقف في باكتستر / محسن. إذا لم يكن لديك ما يكفي من الأموال لشراء العديد من، لن يتم إدخال التجارة & كوت؛ مينبوسفالو & كوت؛ - (4.70.3 وما فوق) الحد الأدنى لمبلغ الدولار المطلوب لفتح المركز في باكتستر / أوبتميزر. إذا لم يكن لديك ما يكفي من الأموال لن يتم إدخال التجارة & كوت؛ بريسيبوندشكينغ & كوت؛ - إذا تم تعيين إلى خطأ - تعطيل فحص وتعديل بيبريس / سيلبريس / كوفيربريس / صفائف شورتريس إلى رمز الحالي عالية منخفضة المدى. كوميسيونمود -
0 - استخدام جدول محفظة مدير محفظة.
1 - النسبة المئوية للتجارة.
3 - $ للسهم الواحد / العقد كوميسيونامونت - مبلغ العمولة في الأساليب 1..3 حساب الحساب (في الإصدارات القديمة كان 'مارجينكيرمنت') - متطلبات هامش الحساب (كما هو الحال في الإعدادات)، 100 = لا يوجد هامش ريفيرززيغنالفورسكسيكسيت - من التجارة القائمة (الافتراضي = صحيح) أوسبيريفاريكيتيفوربوسزيزينغ - يؤثر على كيفية تنفيذ النسبة المئوية الحالية التحجيم موقف الأسهم.
فالس (القيمة الافتراضية) تعني: استخدام حقوق الملكية الحالية (لحظيا) لإجراء تحديد موضع الموضع،
صحيح يعني: استخدام شريط السابق إغلاق الأسهم لأداء موقف التحجيم بورتفوليوريبورتمود - يضع باكتستر وضع التقرير:
1 - سجل مفصل.
3 - لا الإخراج (مخصص فقط) وسكوستمباكتستبروك - صحيح / خطأ - يسمح لتشغيل / إيقاف باكتست مخصص إيفيريبارنولشيك - يسمح لتشغيل التحقق من نولس في العمليات الحسابية على كل شريط في مجموعة (افتراضيا هو أوف - أي أميبروكر الشيكات الخاصة بالرسائل الفارغة التي تظهر في بداية المصفوفة في نهاية المصفوفة وبمجرد اكتشاف قيمة غير خالية لا تفترض أي ثقوب أخرى (نولز) في الوسط). تحول & كوت؛ إيفريبارنولشيك & كوت؛ إلى ترو يسمح لتمديد هذه الشيكات إلى كل باروهيتش هو الطريقة 4.74.x والإصدارات السابقة عملت.
لاحظ مع ذلك أن تشغيله يعطي عقوبة أداء ضخمة (يتم تنفيذ العمليات الحسابية حتى 4X أبطأ عندما يكون هذا الخيار هو أون، لذلك لا تستخدم إلا إذا كنت حقا أن). هولدمينبارس - نومبر - إذا تم تعيينها على قيمة> 0 - فإنه يعطل الخروج خلال عدد من الأعمدة المحددة من قبل المستخدم حتى إذا تم إنشاء إشارات / توقف خلال تلك الفترة إيرليكسيتبارس - رقم إذا تم تعيين إلى قيمة> 0 - يسبب رسوم الخروج المبكر (استرداد) إذا تم الخروج من التجارة خلال هذه الفترة إيرليكسيتفي - يحدد النسبة المئوية (٪) من رسوم الخروج المبكر هولدمينديس - الرقم - إذا تم تعيين إلى قيمة> 0 - تعطيل تعطيل خلال عدد المستخدم المحدد من أيام التقويم (لا الحانات) حتى لو يتم إنشاء إشارات / توقف خلال تلك الفترة إيرليكسيتديس - الرقم إذا تم تعيينه إلى قيمة> 0 - الأسباب التي يتم فرض رسوم الخروج المبكر الخاص (الاسترداد) إذا تم الخروج من التجارة خلال الفترة المحددة في أيام التقويم (لا الحانات). ديسابليرينستوب - تعيينه إلى ترو المدمج في توقف الخراب معطل توليد تقرير - يسمح لقمع / قوة توليد تقرير باكتست. القيم المسموح بها: 0 أو 1 أو 2.
يتم إنشاء تقارير باكتست الافتراضية فقط باكتستس محفظة و باكتستس الفردية إذا تم تشغيل التقارير الفردية في الإعدادات. يتم تعطيل التقارير للتحسين.
الآن مع وظيفة سيتوبتيون () يمكنك إما قمع توليد التقرير ل باكتيستس أو تمكين توليد التقرير خلال بعض خطوات التحسين، كل من مستوى التعليمات البرمجية.
سيتوبتيون (& كوت؛ جينيراتريبورت & كوت ؛، 0)؛ // قمع جيل من التقرير.
سيتوبتيون (& كوت؛ جينيراتريبورت & كوت ؛، 1)؛ // قوة توليد التقرير الكامل.
سيتوبتيون (& كوت؛ جينيراتريبورت & كوت ؛، 2)؛ // يتم إنشاء تقرير سطر واحد فقط (في ملف results. rlst) قابل للعرض كسطر واحد في إكسبلورر إكسبلورر سيباراتلونغشورترانك - صحيح / خطأ.
عندما يتم تمكين ترتيب طويل / قصير منفصل، يحتفظ باكتستر اثنين منفصلة & كوت؛ أعلى مرتبة & كوت؛ وقوائم إشارات، وواحدة للإشارات الطويلة وواحدة للإشارات القصيرة. هذا يضمن أن المرشحين طويلة وقصيرة بشكل مستقل حتى لو كان موقف درجة ليست متناظرة (على سبيل المثال عندما المرشحين طويلة لديهم درجات إيجابية عالية جدا في حين أن المرشحين قصيرة لديها فقط نتائج سلبية كسور). هذا يتناقض مع الوضع الافتراضي حيث القيمة المطلقة فقط من نقاط الموقف مسألة، وبالتالي جانب واحد (طويلة / قصيرة) قد تهيمن تماما الترتيب إذا كانت قيم النتيجة غير متناظرة.
عندما يتم تمكين سيباراتلونغشورترانك، في المرحلة الثانية من باكتست، يتم تشابك قائمتين منفصلتين للتصنيف لتشكيل قائمة إشارة نهائية من خلال أخذ أول مرتبة أعلى، ثم أعلى مرتبة قصيرة، ثم المرتبة الثانية في المرتبة الثانية، ثم المرتبة الثانية في الترتيب الأعلى، ثم الأعلى 3 في المرتبة طويلة و 3 أعلى مرتبة قصيرة، وهلم جرا. (طالما توجد إشارات في كل من قوائم طويلة / قصيرة، إذا لم يكن هناك إشارات أكثر من نوع معين، ثم يتم إلحاق الإشارات المتبقية من قوائم طويلة أو قصيرة)
على سبيل المثال: إشارات الدخول (النتيجة): إسركس = شراء (60.93)، جيلد = شورت (-47.56)، سيلغ = شراء (57.68)، مرفل = شورت (-10.75)، أدب = شراء (34.75)، فرتس = 15.55)، سيري = شراء (2.79)،
كما ترون إشارات قصيرة مشوشة بين إشارات طويلة على الرغم من أن القيم المطلقة من عشرات أصغر من عشرات المقابلة من الإشارات الطويلة. أيضا كان هناك فقط 2 إشارات قصيرة لهذا شريط معين لذلك، فإن بقية القائمة يظهر إشارات طويلة في ترتيب نقطة الموقف.
على الرغم من أن هذه الميزة يمكن استخدامها بشكل مستقل، ويهدف إلى أن تستخدم في تركيبة مع ماكسوبينلونغ وخيارات ماكسوبينشورت. ماكسوبينلونغ - يحد من عدد من المواقف الطويلة التي يمكن أن تكون مفتوحة في وقت واحد ماكسوبينشورت - يحد من عدد من مواقف شورت التي يمكن أن تكون مفتوحة في وقت واحد.
قيمة زيرو (افتراضي) تعني نو ليميت. إذا تم تعيين ماكسوبينلونغ و ماكسوبينشورت على الصفر (أو لم يتم تعريف على الإطلاق) باكتستر يعمل بالطريقة القديمة - هناك حد عالمي نشط فقط (ماكسوبنبوسيتيونس) بغض النظر عن نوع من التجارة.
لاحظ أن هذه الحدود مستقلة عن الحد العالمي (ماكسوبنبوسيتيونس). وهذا يعني أن ماكسوبينلونغ + ماكسوبينشورت قد أو قد لا تكون مساوية ل ماكسوبنبوسيتيونس.
إذا ماكسوبينلونغ + ماكسوبينشورت أكبر من ماكسوبنبوسيتيونس ثم العدد الإجمالي للمواقف المسموح بها لن تتجاوز ماكسوبنبوسيتيونس، وسيتم تطبيق حدود طويلة / قصيرة الفردية أيضا. على سبيل المثال إذا تم تعيين ماكسوبنلونغ النظام الخاص بك إلى 7 و ماكسوبنشورت يتم تعيين إلى 7 و ماكسوبنبوسيتيونس يتم تعيين إلى 10 ونظامك ولدت 20 إشارات: 9 طويلة (أعلى مرتبة) و 11 قصيرة، وسوف تفتح 7 طويلة و 3 السراويل.
إذا ماكسوبينلونغ + ماكسوبينشورت أصغر من ماكسوبينبوسيتيونس (ولكن أكبر من الصفر)، فإن النظام لن تكون قادرة على فتح أكثر من (ماكسوبينلونغ + ماكسوبينشورت).
يرجى أيضا ملاحظة أن ماكسوبينلونغ و ماكسوبينشورت فقط كاب عدد من مواقف مفتوحة من نوع معين (طويلة / قصيرة). أنها لا تؤثر على طريقة الترتيب. أي. يتم تنفيذ الترتيب الافتراضي باستخدام قيمة أبسولوت من بوسيتكتور.
إذا لم تكن نقاط موقفك متناظرة، فقد يعني ذلك أنك لا تحصل على إشارات مرتبة من أعلى مرتبة من جانب واحد. لذلك، للاستفادة الكاملة ماكسوبينلونغ و ماكسوبينشورت في التناوب متوازنة (& كوت؛ محايدة السوق & كوت؛) أنظمة طويلة / قصيرة هو المطلوب لتنفيذ الترتيب سيبارات للإشارات طويلة وإشارات قصيرة.
ولتمكين استخدام منفصل لفترة طويلة / قصيرة:
سيتوبتيون (& كوت؛ سيباراتلونغشورترانك & كوت ؛، ترو)؛ ريفريشوينكومبليتد - عند تعيين إلى ترو، فإنه سيتم تنفيذ View-> تحديث كل بعد عملية التحليل التلقائي (مسح / استكشاف / باكتست / تحسين) اكتمال. ريكيردكلاراتيونس - عند تعيين إلى ترو محرك أفل سوف تتطلب دائما إعلانات متغيرة (باستخدام المحلية / العالمية) على أساس صيغة صيغة إكستراكولومنزلوكاتيون - يسمح للمستخدم تغيير موقع الأعمدة المخصصة المضافة أثناء باكتست / التحسين.
أ) أي مقاييس مخصصة تتم إضافتها باستخدام باكتستر مخصص.
ب) أي معلمات التحسين المحددة باستخدام أوبتيميز ().
في حالة ظهور كل من المقاييس المخصصة ومعاملات التحسين، تظهر المقاييس المخصصة أولا معلمات التحسين ثم.
يتم توفير هذه الوظيفة للسماح للمستخدم بتغيير الإعداد الافتراضي & كوت؛ في النهاية & كوت؛ موقع الأعمدة المخصصة / معلمات التحسين.
سيؤدي في وقت لاحق إلى إضافة المقاييس المخصصة ومعاملات التحديد بدءا من العمود 1 (على عكس آخر عمود افتراضي)
لاحظ أن هذا الإعداد يتغير & كوت؛ مرئية & كوت؛ ترتيب الأعمدة، وليس حقا في الذاكرة النظام أو ترتيب التصدير، لذلك ملفات البيانات المصدرة أو تنسيق نسخ / لصق لا تتغير. التسوية ديلاي - يصف هذا الخيار عدد الأيام (لا الحانات) فإنه يأخذ لبيع عائدات لتسوية وتكون متاحة لفتح مراكز جديدة.
سيتوبتيون (& كوت؛ سيتليمنتديلاي & كوت ؛، 3)؛ // سيؤدي ذلك إلى أن عائدات البيع متاحة فقط للتداول في اليوم الثالث بعد البيع.
للتتبع المفصل & كوت؛ سجل مفصل & كوت؛ خيار التقرير يظهر الآن الأموال المتاحة وغير المستقرة ل T + 1، T + 2 وهلم جرا.
ملاحظة: عند استخدام هذا الخيار فمن المستحسن استخدام باكتستريغولارراو بدلا من باكتستريغولار، وإلا قد لا يتم إدخال بعض الصفقات لأن الأموال لا تسوى على الفور وتحتاج إلى أن تكون قادرة على الدخول ليس على الأولى ولكن إشارات الشراء اللاحقة وهذا هو بالضبط ما باكتستريغولارراو عروض.
NOTE2: باكتستر القديمة (الأسهم () وظيفة) يتجاهل تأخير التسوية ستاتيكفاروتوساف - تسمح دورية لصناعة السيارات في إنقاذ المتغيرات الثابتة الثابتة (بالإضافة إلى توفير على الخروج، وهو دائما القيام به).
سيتوبتيون (& كوت؛ ستاتيكفاروتوساف & كوت ؛، 60)؛ // لصناعة السيارات في حفظ المتغيرات المستمرة كل 60 ثانية (1 دقيقة)
من المهم أن نفهم أن يتم حفظ المتغيرات المستمرة على الخروج تلقائيا، دون أي تدخل المستخدم لذلك يجب أن يكون كافيا لمعظم الحالات. إذا كنت لسبب ما تريد لصناعة السيارات في يحفظ عندما أميبروكر قيد التشغيل، ثم يمكنك استخدام هذه الوظيفة. يرجى ملاحظة أن كتابة العديد من المتغيرات ثابتة في ملف القرص الفعلي يستغرق وقتا طويلا ويحظر كل متغير ثابت الوصول لذلك يجب تجنب تحديد فترات صغيرة جدا لصناعة السيارات في حفظ. إنقاذ كل ثانية هو فكرة سيئة - وسوف يسبب الزائد. حفظ كل 60 ثانية يجب أن يكون على ما يرام. وظيفة الدعوة مع الفاصل الزمني تعيين إلى صفر تعطيل لصناعة السيارات في حفظ.
سيتوبتيون (& كوت؛ ستاتيكفاروتوساف & كوت ؛، 0)؛ مسنابل - تحكم مونتي كارلو المحاكاة: 0 - تعطيل، 1 - تمكين في باكتيستس، 2 - تمكين في باكتيستس والتحسينات مكرونز - عدد من محاكاة مونت كارلو تشغيل (تحقيقات) الافتراضي 1000 مكبوسيزيثود - مونتي كارلو طريقة حجم الموقف: 0 - لا 1 - حجم ثابت، 2 - مبلغ ثابت، 3 - في المئة من الأسهم مكبوسزيزاريز - عدد الأسهم لكل التجارة في ماك محاكاة مكبوسيزيفالو - قيمة الدولار في التجارة في ماك محاكاة مكبوسيزيبكتكيتي - في المئة من الأسهم الحالية في التجارة في ماك محاكاة مكارتيكيتكورفيس - صحيح / فالس (1/0) - تمكن مونتي كارلو الرسم البياني الإنصاف مستراوبرومينس - يحدد عدد خطوط الأسهم رسمها في مونت كارلو مكنسة القش المخطط وارنينغليفيل - يسمح لتغيير مستوى التحذير. المستوى 1 هو الافتراضي لجميع عمليات إعدام أفل مع استثناء محرر أفل والتعليق حيث يتم تعيين مستوى التحذير إلى 4.
1 - تقرير التحذيرات مستوى 1 فقط (502- الكثير من المؤامرات)
2 - تقرير المستوى 1 و 2 تحذيرات (أعلاه بالإضافة إلى التعيين ضمن الشرطية، القسمة على صفر، ثيرسليب فترة طويلة جدا)
3 - تحذيرات المستوى 1 و 2 و 3 (أعلاه زائد كريوبجيكت / كرياتستاتيكوبجيكت)
4- الإبلاغ عن جميع التحذيرات (الافتراضي لمحرر أفل)
تحذير: إذا قمت بتغيير الخيار على * لكل رمز * أساس النتائج المركبة (الربح٪ على سبيل المثال) سيتم ديستورتد منذ الحسابات تفترض أن أوبتيونس ثابتة لجميع الرموز في تشغيل باكتست واحد. 'هولدمينبارس'، 'إيرليكسيت. ومثل. الخيارات هي استثناء من هذه القاعدة (بمعنى أنه يمكن تعيينها بأمان على أساس كل رمز)
سيتوبتيون (& كوت؛ ألوبوسيتيونشرينكينغ & كوت؛، ترو)؛
تعيين خيارات المخطط أميبروكر
- تعيين / واضح / الكتابة الافتراضيات لخيارات جزء المخطط.
تشارتشوداتس، تشارت لوغاريثميك، تشارتشاروز، تشارتورابتيتل (4.75 أو أعلى)، تشارتيدكوتيماركر (v5.06). تشارتيدكوتيماركر - يخفي خط تحديد الاقتباس على أساس كل جزء، نفس الحوار المعلمة -> المحاور والشبكة -> فيرت. علامة الاقتباس: إظهار / إخفاء، تشارتديسابليكسيسكورسور (جديد في 5.80) - تعطيل مؤشر الماوس تغيير إلى أعلى / السهم لأسفل عند تحوم فوق المحور Y، تشارتديسابليتولتيبس (جديد في 5.80) - تعطيل عرض تلميحات الأدوات (نصائح البيانات).
غريدفلاغس - (للاستخدام الداخلي أميبروكر - لا تستخدم في الترميز الخاص بك كما سيتم إزالة هذه المعلمة في نهاية المطاف) القيم المسموح بها هي: chartGridDiv100، تشارتغريدبيرسنت، chartGridDiv1000، تشارتغريدارجارجس تشارتغريدميدل، chartGrid0، chartGrid30، chartGrid70، chartGrid10، ChartGrid90، ChartGrid50، chartGrid100 ، chartGrid20، chartGrid80، chartGrid1 يمين، يماكس - (جديد في 5.07) تحدد هذه المعلمات الحد الأدنى والقيم القصوى لمحور Y للتحجيم المخصص. إذا حددت أي قيم تستوفي الشرط يمين // للاحتفال ب & كوت؛ إظهار الأسهم & كوت؛ افتراضيا في استخدام مخطط جديد.
سيشارتوبتيونس (0، تشارتواروز)؛
مثال 2 (يعمل فقط مع الإصدار 4.75 أو أعلى):
سيشارتوبتيونس (2، تشارتورابتيتل)؛
تيتل = & كوت؛ هذا اختبار للتفاف تلقائي لنص العنوان طويل جدا بحيث يكون مناسبا في سطر واحد، ولهذا السبب تستخدم صيغة العينة هذه نصا طويلا جدا. آمل أن تكونوا يتمتعون عينة & كوت؛ .
أميبروكر أفلس أفضل مؤشرات أميبروكر.
مجموعة من الأكثر شعبية وأفضل أفلروكر أفلس للشراء بيع إشارات في جميع القطاعات أي الأسهم، المستقبل، خيارات والسلع التداول خلال اليوم والموقعية. هذه الصيغ متوفرة ل ليفيتيمي على الاشتراك السنوي للبيانات.
وصف مختصر.
هذه هي الأكثر شعبية وأفضل أربعة أميبروكر أفلس أي يومي أفل، شراء بيع إشارة أفل، صاروخ جت أفل والتاجر برو أفل. هذه أفلس تعمل بشكل أفضل للتداولات اللحظية. هذه شراء شراء إشارة أفلس متوافقة مع جميع إصدارات أميبروكر ومجانا لمدى الحياة مع الاشتراك السنوي البيانات.
كيفية إدراج أفلس في مخطط أميبروكر.
1. استخراج ملف AFL-Pack. zip في مجلد جديد بنفس الاسم (أفل-باك \)
2. انتقل إلى "أميبروكر" تثبيت مجلد. على سبيل المثال: 'C: \ بروغرام فيليز \ أميبروكر' أور 'C: \ بروغرام فيليز (x86) \ أميبروكر'
3. فتح مجلد "الصيغ".
4. نسخ مجلد أفل-باك ضمن مجلد "الصيغ" (على سبيل المثال C: \ بروغرام فيليز (x86) \ أميبروكر \ فورمولاس \ أفل-باك).
5. افتح أمي وسيط. ثم انتقل إلى الرسم البياني من الجانب الأيسر.
6. انقر فوق الرسم البياني. هنا يمكنك ان ترى المجلد أفل-باك.
7. انقر فوق المجلد. من المجلد سوف تجد أفل الخاص بك.
8. انقر نقرا مزدوجا فوق أي أفل سوف تآمر في الرسم البياني الخاص بك أو يمكنك سحب أفل ولصقه إلى أي منطقة المخطط في أمي وسيط.
قاعدة معارف المستخدمين.
26 يونيو 2007.
ثقوب البيانات في التداول في الوقت الحقيقي.
عندما لا يتلقى أميبروكر البيانات خلال ساعات التداول العادية، يشار إلى الفترة المفقودة أو الحانة على أنها ثقب في صفيف البيانات. يمكن أن تحدث ثقوب عندما لا يتم تداول المؤشر أو عند توقف تغذية البيانات. ويمكن أن تستمر لأي طول من الوقت ويمكن أن يحدث في أي إطار زمني.
عندما لا يحتوي شريط على بيانات، لا يتم إضافة شريط إلى قاعدة البيانات. سجل قاعدة البيانات يتخطى ببساطة إلى شريط الفترة التالية. يمكن ملء الثقوب أثناء الردم أو عندما يقوم مزود البيانات بإرسال تصحيحات البيانات. عند حدوث ذلك، يتم تحديث قاعدة البيانات.
عند رسم المؤشرات استنادا إلى الرمز الحالي المحدد، يتم تخطي الثقوب لإنشاء مخططات تبحث باستمرار. وبسبب هذا لا يمكنك الكشف عن أي ثقوب بصريا. ومع ذلك، كما هو موضح أدناه، وهذا ليس هو الحال عند رسم البيانات الأجنبية.
في حين أميبروكر أبدا تعديل البيانات التي يجمعها ومخازن في قاعدة البيانات الخاصة بك، فإنه قد ملء وإصلاح الثقوب أثناء العمليات التي تتطلب قاعدة زمنية مشتركة. وتشمل هذه العمليات عدة وظائف آ، وإنشاء المركبات، وتراكب الرسم البياني. وتسمى عملية تثبيت وحشو البيانات للسماح لهذه العمليات محاذاة البيانات.
محاذاة البيانات في آ.
في عمليات التحليل الآلي (آ)، يمكن تشغيل محاذاة البيانات تشغيل / إيقاف ويمكن تحديد الرمز المرجعي الذي سيتم استخدامه للمحاذاة. ويوضح ذلك في مرجع وظيفة أفل المعروض أدناه:
؟ وسادة ومحاذاة رمز مرجع.
عند تشغيل هذا، كل الرموز & # 8217؛ هي مبطنة ونقلت ومحاذاة رمز مرجع. ملاحظة: افتراضيا هذا الإعداد هو أوف. استخدام بمسؤولية. قد يبطئ باكتست / التنقيب / المسح الضوئي وإدخال بعض التغييرات الطفيفة على قيم مؤشر عندما يتم تعبئة البيانات والثقوب والثقوب مع البيانات شريط السابقة. والمقصود من هذه الميزة أن تستخدم عندما يستخدم النظام الخاص بك توقيت السوق العامة (يولد إشارات عالمية استنادا إلى البيانات و / أو المؤشرات المحسوبة باستخدام أجنبي من & # 8216؛ مرجع & # 8217؛ رمز) أو عند إنشاء مركب من البيانات غير محاذاة. ملاحظة: إذا لم يكن رمز المرجع موجودا، فلن يتم حجب البيانات.
محاذاة البيانات في المؤشرات.
تتم محاذاة البيانات الأجنبية المستخدمة في صيغ المؤشر مع الرمز الحالي وليس كما هو الحال في آ، إلى الرمز المرجعي المحدد في إعدادات آ. اعتمادا على قيمة المعلمة فيكسوب من وظيفة () الخارجية، ثقوب البيانات يمكن التعامل معها في أي من ثلاث طرق. ويوضح ذلك في مرجع وظيفة أفل كما يلي:
؟ المعلمة الأخيرة & # 8211؛ فيكسوب & # 8211؛ يقبل القيم التالية.
0 & # 8211؛ الثقوب ليست ثابتة 1 & # 8211؛ القيمة الافتراضية & # 8211؛ يتم ملء حقول البيانات المفقودة أوهلك الحقول باستخدام شريط السابق إغلاق، ويتم تعيين حجم إلى الصفر. 2 & # 8211؛ (سلوك ما قبل 4.90 القديم) & # 8211؛ أسباب ملء الثقوب في البيانات مع السابقة O، H، L، C، V القيم.
يتم توفير المعلمة فيكسوب من 2 للحفاظ على التوافق مع الإصدارات السابقة أميبروكر ويجب ألا تستخدم عند تطوير رمز جديد.؟
الثقوب في الوقت الحقيقي محفظة التداول.
عند تنفيذ نظام التداول محفظة رت من نافذة المؤشر، كنت عادة حلقة من خلال حافظة المحفظة واستخدام الدالة الخارجية () للوصول إلى البيانات لكل شريط كما يتم تحديده. منذ كل من الحالية والأجنبية قد يكون لها ثقوب، وهناك مجموعة متنوعة من ظروف حفرة للتعامل معها. قد تظهر الثقوب والقضبان المبطنة وتختفي من المخطط الخاص بك اعتمادا على قيمة المعلمة فيكسوب وما إذا كان شريط الحالي أو أجنبي لديه ثقوب. قد تتغير الرسوم البيانية أيضا خلال عمليات إعادة التعبئة. وبما أن البيانات المرسومة هي نفس البيانات المستخدمة في الصيغ الخاصة بك، يجب أن تكون حذرا حول كيفية استخدام البيانات الأجنبية.
معايير الكشف عن الثقوب بسيطة: إذا كان حجم يساوي فارغة، البيانات مفقودة (حفرة). إذا كان حجم يساوي الصفر، يتم مبطن البيانات (حفرة شغل)؛ وإذا كان حجم أكبر من الصفر، البيانات صحيحة (لا حفرة).
وبما أن البيانات الخارجية تتماشى مع المؤشر الحالي في المؤشرات، يمكن القول بأن:
؟ إذا كان الشريط الحالي لا يحتوي على بيانات شريط معين، لن يتم عرض الفاصل الزمني شريط المقابلة للمصفوفة الأجنبية ولن تكون متاحة للحسابات. هذا يمنع البيانات الأجنبية ويمكن أن يؤدي إلى إشارات غاب.
؟ إذا كان شريط الأجانب ليس لديه بيانات عن شريط معين في حين أن شريط المقابلة ل شريط الحالي لديه البيانات، سيتم إضافة شريط إلى مجموعة أجنبية. إذا تم تشغيل فيكسوب تشغيل، سيتم ملء هذا الشريط مع أسعار من شريط الأجنبية السابقة. إذا كنت تستخدم إشارات التداول اليومي، فقد يؤدي ذلك إلى إشارات إضافية أو مكررة.
ومن الواضح من ما سبق أن لتصميم نظام التداول محفظة عالية التردد الحقيقي القوي الذي ينفذ في إطار المؤشر، يجب أن تنظر في تأثير الثقوب على الإشارات الخاصة بك.
للكشف عن جميع الثقوب تماما، تحتاج إلى شريط إشارة الكمال، أي واحد أن يتداول كل دقيقة من اليوم لكل يوم تداول من السنة. إذا كان مثل هذا شريط الكمال موجودة، وكنت جعل هذا شريط الحالي بحيث يتم محاذاة جميع البيانات الأجنبية لذلك. ببساطة التحقق من الصفر حجم تحديد جميع الثقوب. ومع ذلك، لأن مثل هذا شريط الكمال لا وجود لها في الواقع، إذا كنت تفترض أن شريط هو الكمال، كنت ببساطة نقل مشكلة حفرة من شريط واحد إلى آخر، وأنت لن تكون أقرب إلى حل المشكلة.
الحل الأمثل هو استخدام صفيف مرجعي مرجع خطي يحتوي على أشرطة لجميع أيام التقويم. يتم توثيق هذه المصفوفة في العنوان التالي؟ على هذا الموقع. لتطبيق صفيف مرجع التاريخ الخطي للكشف عن الثقوب هو خارج نطاق هذا المنصب، ولكن قد يتم تغطيتها في وظيفة لاحقة.
حل آخر معقول بشكل معقول هو استخدام شريط حجم كبير، مثل كق، لالرقم الحالي الخاص بك. المشكلة هي أن حتى كق لديها فترات حجم منخفضة، وربما تحتوي على ثقوب.
وهناك حل أفضل قليلا هو إنشاء مجمع حجم لمجموعة من علامات تداول بنشاط، وربما من الأسواق المختلفة، وجعله الرمز الحالي الخاص بك. لهذا المركب أن يكون لها ثقب يجب أن تكون هناك فترة لم يتداول خلالها أي من الأوراق. في حين أن هذا من غير المحتمل أن يحدث في الأطر الزمنية الأطول، فإنه لا يزال يمكن أن يحدث في أطر زمنية قصيرة جدا، مما يجعل هذا الحل ناقص أيضا. سيتم استخدام هذا الحل هنا لإنشاء مخطط يعرض (خرائط) وجود ثقوب لقائمة المراقبة بأكملها في آن واحد.
يستخدم الرمز التجريبي أدناه قائمة مراقبة منفصلة للمركب والأشرطة التي سيتم تعيينها. لمنع استجابة بطيئة (ينظر إليها على أنها تأمين من قبل العديد) عندما يتم تعيين أعداد كبيرة من علامات، أو عند تحديد عن غير قصد واتشليست كبيرة جدا، يمكنك تعيين الحد الأقصى لعدد الدرجات (افتراضات إلى 50). يجب عليك فقط استخدام ارتفاع حجم علامات ل واتشليست المركب منذ تداولات خفيفة طفيفة من غير المرجح أن تضيف أي قضبان إلى المركب.
تتضمن نافذة بارام للرمز التجريبي الخيارات التالية:
يجب أن تشير قائمة المراقبة المرجعية (المستندة إلى 0) إلى مجموعة الدارات المستخدمة لإنشاء المركب. يجب دائما النقر فوق تحديث بعد تغيير المرجعية المرجعية لإنشاء مركب جديد لقائمة المراقبة الجديدة.
قائمة المراقبة إلى خريطة يحدد قائمة المراقبة التي سيتم اختبارها للحصول على الثقوب. سيضيف كل مؤشر في قائمة المراقبة هذه خطا أفقيا إلى المخطط. وهذا عادة ما يكون قائمة مراقبتك محفظة. يشار إلى الثقوب باستخدام أرقام محاطة بدائرة صغيرة. الرقم هو المعلمة فيكسوب المستخدمة في الخارجية () لاسترداد تلك البيانات.
حدوث أي رقم يظهر موقع حفرة. الرقم 0 يعني أن الشريط فارغ أو فارغ، ولن يظهر أي شريط. رقم 1 يعني أن شريط مبطن مع فقط C السعر من شريط السابق؛ رقم 2 يعني أن البيانات مبطنة مع أوهلكف (طريقة عفا عليها الزمن!) البيانات من شريط السابق.
يمكنك ملاحظة كيفية استبدال الثقوب ببيانات من الشريط السابق. يتم استبدال شريط فارغ مع شريط مطابق للشريط السابق عند تغيير المعلمة فيكسوب في الإطار بارام.
لإثبات كيفية تغيير علامة مرجعية مختلفة توزيع الثقوب، يمكنك فتح مساحة العمل الخاصة بك وخطوة من خلال (جعل الحالية) علامات مختلفة في قاعدة البيانات الخاصة بك. يقوم البرنامج بفحص موضع المؤشر، وإذا قمت بتعيين المخطط المحدد للمعرض إلى شو (بدلا من هايد)، سيتم وضع مخطط سعري على الرسم البياني لخط السهم المحدد. هذا يسمح لك لتكبير وفحص الأسعار في المنطقة المحيطة المحيطة ببيانات هول أو مبطن.
ملاحظة: نظرا لعدم وجود طريقة لاكتشاف الجزء الذي يعمل عليه المؤشر، فإن الاستشعار عن موضع المؤشر لن يعمل إلا إذا تم تشغيل خريطة الثقب في إطاره الخاص.
أنا يلتقط أدناه، تم استخدام مركب نسداق 100 (N100) كمرجع ل فيسف شريط. يتم تعيين كل شريط في الرسم البياني (ثقب الخريطة) أدناه خط زمني أفقي التي يشار إلى وجود ثقوب مع دائرة صغيرة. يعرض وضع المؤشر على حفرة تاريخه وبياناته في العنوان. لون الدوائر يتطابق مع ذلك من شريط. أرقام محور Y هي أرقام شريط (زائدة عن الحاجة).
في الحالة الأولى، تم تعيين المعلمة f إكسوب إلى الصفر ويترك موقع شريط مع شريط مفقود فارغة (انظر موقع المؤشر). لأن الرقم هو صغير جدا قد تبدو وكأنها؟ 1 ؟، ولكن هو في الواقع؟ 0؟. حقيقة أن شريط مفقود يعني أن الرمز الحالي لديه بيانات لهذا الشريط ولكن لم يفعل شريط الأجانب.
في التقاط المقبل معلمة فيكسوب من 1 يستخدم، ويتم ملء شريط مفقود مع السعر C من شريط السابق في حين يتم تعيين حجم (غير موضح) إلى الصفر.
في التقاط المقبل، يتم تعيين المعلمة فيكسوب إلى 2، مما يؤدي إلى شريط مفقود يتم ملؤها قيم أوهلكف من الشريط السابق.
في كل الأمثلة المذكورة أعلاه، تم استخدام مخطط التخلص من الذخائر المتفجرة. ومع ذلك، فإنه يمكن أيضا أن يكون كذلك الرسم البياني 1 دقيقة (أو أي إطار زمني آخر). هنا هو رمز أنتجت الرسوم البيانية أعلاه:
حرره آل فينوسا.
24 يونيو 2007.
رسالة في الوقت الحقيقي فيفو.
غالبا ما تظهر الرسائل في الوقت الفعلي على الشاشة فقط لمدة فاصل زمني واحد لتحديث المخطط وتختفي قبل أن يكون لديك الوقت لقراءتها. يعرض فيفو (أولا في أولا خارج) عرض ن خط عرض هنا ويمرر الرسائل في الرسم البياني العنوان بحيث تكون أسهل للقراءة. يتطلب تسجيل الرسائل إلى ديبوجفيو أو نافذة التفسير فتح نوافذ إضافية. باستخدام عنوان بدلا من ذلك يعرض الرسائل الحق على الرسم البياني وأكثر كفاءة في استخدام الفضاء.
والتطبيق النموذجي هو عرض حالة النظام في الوقت الفعلي، مثل حالة الطلب، ورسائل خطأ توز، وعبوات جزئية، ورصيد الحساب، والأرباح، وما إلى ذلك.
بما أن الرسم البياني تيتل لا يدعم التنسيق، فمن المستحسن استخدام خط أحادي التباعد، مثل وحدة تحكم لوسيدا، ومساحات لوحة لإنشاء أعمدة. يحدد الجزء الصحيح من المعلمة تنسيق نومتوستر () الطول الإجمالي للسلسلة التي تم إرجاعها ويمكن استخدامها لتنسيق الأعمدة. إذا كنت تفضل المزيد من خيارات الخط واللون، يمكنك استخدام وظائف غفكس لعرض الرسائل.
لمنع التفاف العنوان، يمكنك اقتطاع الرسائل باستخدام الدالة سترليفت (). هذا يعمل بشكل جيد لرسائل خطأ توز التي يمكن أن تكون طويلة ولكن تحمل المعلومات الهامة على يسار رسالة الخطأ. يستخدم العرض التوضيحي أدناه وظيفة بادسترينغ بسيطة () إلى الرسائل القصيرة في الأعمدة.
يتم استدعاء الدالة أدتوفيفوتيتل () كلما أردت إضافة رسالة إلى الجدول. حجته الأولى هي اسم المتغير الثابت الذي يحتوي على الجدول، الوسيطة الثانية هي الرسالة التي تريد إضافتها إلى الجدول، والثالث هو الحد الأقصى لعدد الأسطر في الجدول. يؤدي تعيين الوسيطة الثالثة إلى صفر إلى مسح الجدول.
للحفاظ على الأمور بسيطة، يستخدم الرمز أدناه وظائف بارام لمحاكاة الرسائل في الوقت الحقيقي؛ في نظام حقيقي، سيتم إنشاء هذه الرسائل من قبل الأحداث في الوقت الحقيقي. لاختبار التعليمات البرمجية، انقر فوق أي من رسائل الأحداث المرقمة في نافذة المعلمة.
يجب أن يكون العنوان الذي تم إنتاجه كما يلي:
لاحظ أن الرسائل في هذا المثال مبطن لوضع العمود التالي بشكل صحيح. يتم عكس ترتيب الرسائل للسماح بظهور آخر رسالة في أعلى جدول الرسائل. كلما تم تجاوز الحد الأقصى لعدد الخطوط، تتم إزالة أقدم رسالة. للتأكد من أن يتم تحديث الجدول مرة واحدة على الأقل مرة أخرى يجب دائما تضمين ريكتيمدريفريش (1) في التعليمات البرمجية.
وأخيرا، في التداول الآلي، لا تحتاج دائما إلى المخططات، وقد تفضل عرض جدول حالة فقط. منذ يتم تخزين الجدول في متغير ثابت عالمي، يمكنك قراءة الجدول من أي جزء أو نافذة باستخدام سطرين فقط من التعليمات البرمجية:
إذا كنت تستخدم العديد من شاشات التمرير في أجزاء مختلفة، يجب أن تقوم بتغيير المتغيرات الثابتة كما هو موضح في متغيرات كينغ ثابت. يتبع الرمز التجريبي الكامل:
حرره آل فينوسا.
تعليقات خارج على رسالة في الوقت الحقيقي فيفو.
9 مايو 2007.
حسابات الوقت.
هناك حاجة إلى حسابات الوقت عند وضع غات (جيد في الوقت) و غد (حتى الآن تاريخ) أوامر. أبسط طريقة هي تحويل تيمنوم إلى سيكوندنوم، إجراء العمليات الحسابية في ثواني، ثم تحويل ثيندنوم مرة أخرى إلى تيمنوم. أول وظيفتين أدناه سوف تفعل ذلك بالنسبة لك.
وتطبق الدالة التالية مرجعا معبرا عنه في ثوان إلى الوقت المرجعي. وعادة ما تستخدم هذه الإشارة لحساب أوقات غات. قد تحتاج هذه الوظيفة عندما تريد تطبيق إزاحة لمرجع زمني ويكون أوامر تفعيلها تلقائيا خلال اليوم دون الحاجة إلى أن تكون على الانترنت.
حرره آل فينوسا.
تعليقات خارج على حسابات الوقت.
7 مايو 2007.
حسابات التاريخ (الإصدار 2)
في التداول في الوقت الفعلي، قد تحتاج إلى إجراء عمليات حساب التاريخ المشار إليها إلى تاريخ الكمبيوتر بدلا من داتينومبر من البيانات الخاصة بك. بدلا من أن تكافح مع السنوات والتواريخ والأشهر، فمن الأسهل بكثير لاستخدام نظام البيانات الخطية مثل راتا يموت، الذي يحسب ببساطة عدد الأيام منذ 31 ديسمبر من العام صفر. لاستخدام طريقة راتا يموت تحتاج فقط اثنين من وظائف التحويل لتحويل بين راتا يموت إلى داتنومبرز والعكس بالعكس. في هذا المنصب سيتم استخدام نظام راتا داي لحساب أيام ناسداك غير التجارية وحساب تاريخ يوم التداول السابق.
تم نشر وظائف التحويل المدرجة أدناه على قائمة المستخدمين أميبروكر التي كتبها بول هو (شكرا بول!)، وسوف تستخدم تنفيذ العمليات الحسابية اللازمة في هذا المنصب.
يتم نسخ أيام ناسداك غير التجارية من موقع نسداق، وتحويلها إلى داتينومبرز، ودخلت في التعليمات البرمجية باستخدام الدالة بارامستر () بحيث يمكن تغييرها سنويا دون حفر في التعليمات البرمجية. في ما يلي قائمة نموذجية لعام 2007:
ناسداك عطلة جدول التداول.
2007 التواريخ & # 8211؛ ما لم يذكر، التواريخ التالية هي العطل التي يتم إغلاق سوق الأوراق المالية في بورصة ناسداك:
1 يناير & # 8211؛ السنة الجديدة & # 8217؛ يوم.
15 يناير & # 8211؛ عيد ميلاد مارتن لوثر كينغ الابن & # 8217؛
19 فبراير & # 8211؛ رؤساء & # 8217؛ يوم.
6 أبريل & # 8211؛ جمعة جيدة.
28 مايو & # 8211؛ اليوم التذكاري.
4 يوليو & # 8211؛ عيد الاستقلال.
3 سبتمبر & # 8211؛ يوم العمل عيد العمال.
22 نوفمبر & # 8211؛ عيد الشكر.
25 ديسمبر & # 8211؛ يوم عيد ميلاد المسيح.
للعثور على تاريخ التداول السابق، تبدأ التعليمات البرمجية باستخدام تاريخ راتا داي السابق، وإذا كان هذا هو تاريخ التداول، فإنه ينقص عدد يموت راتا حتى يتم العثور على يوم التداول. يتم تحديد المتغيرات المحددة إلى عنوان المخطط بحيث يمكنك تغيير التاريخ باستخدام بارامديت () والاطلاع على تحويلات العمل ..
داتنومبرتوراتي (داتنومبر)
يي = إنت (نوم) + 1900؛
نوم = فراك (نوم) * 100؛
يي = يي + إنت ((مم-14) / 12)؛
مم = إيف (مم & لوت؛ 3، مم + 12، مم)؛
راتدينوم = روند (د + إنت ((153 * مم-457) / 5) + 365 * يي + إنت (يي / 4) - إنت (يي / 100) + إنت (يي / 400) - 306)؛
z = راتادينوم + 306؛
يو = إنت ((b + g) /365.25)؛
سيسي = b + z - إنت (365.25 * يو)؛
مم = إنت ((5 * سيسي + 456) / 153)؛
د = سيسي - إنت ((153 * مم-457) / 5)؛
يو = إيف (مم & غ؛ 12، يو + 1، يو)؛
مم = إيف (مم & غ؛ 12، مم - 12 مم)؛
فونداتيون نوترادينغداي (راتادينوم)
دن العالمية، ناسداكنتن؛
ريتورن دو == 0 أور دو == 6 أور سترفيند (ناسداكنتن، دنستر)؛
بينما (نوترادينغداي (RD2))
"كيرنت ترادينغ داي: \ n \ n" +
"ديت:" + نومتوستر (داتيتيمكونفيرت (2، DN1)، فورماتداتيتيم) + "" + ستركستراكت (أيام الأسبوع، DW1) + "\ n" +
"رقم اليوم:" + نومتوستر (DW1،1.0) + "\ n" +
"راتا داي:" + نومتوستر (RD1،1.0، فالس) + "\ n" +
ورايتيف (نوترادينغداي (RD1)، "هذا ليس يوم تداول"، "هذا يوم تداول") + "\ n \ n \ n" +
"يوم التداول السابق: \ n \ n" +
"السابق تداي:" + نومتوستر (داتيتيمكونفيرت (2، DN2)، فورماتداتيتيمي) + "" + ستركستراكت (أيام الأسبوع، DW2) + "\ n" +
"رقم اليوم:" + نومتوستر (RD2٪ 7،1.0) + "\ n" +
"راتا داي:" + نومتوستر (RD2،1.0، فالس) + "\ n" +
ورايتيف (نوترادينغداي (RD2)، "هذا ليس يوم تداول"، "هذا يوم تداول")؛
حرره آل فينوسا.
6 مايو 2007.
مقدمة في الوقت الحقيقي البرمجة أفل.
تقدم الأمثلة أفل المقدمة في هذه الفئة حلول البدء السريع للمساعدة في الحصول على مبتدئين في طريقهم إلى البرمجة في الوقت الحقيقي أفل. وسوف تشمل الموضوعات قياس الوقت، وتنفيذ التأخير، وجمع البيانات في الوقت الحقيقي، ومخزونات المسح، وجمع حالة النظام، والكشف عن الأخطاء، وعرض النظام وحافظة محفظة، وما إلى ذلك معظم التعليمات البرمجية قد تكون ذات صلة التداول الآلي السريع، ولكن الكثير من ذلك يمكن كما يمكن استخدامها في أشكال أخرى من التداول.
وليس المقصود منها أن تحل محل أو تكون بديلا عن وثائق أميبروكر الرسمية مثل المراجع أفل، ملفات ريدم في مجلد أميبروكر الخاص بك، قاعدة المعرفة، مكتبة أفل، دروس الفيديو الرسمية، وغيرها من مواد الدعم.
والهدف من ذلك هو خلق مصدر من الأمثلة الأساسية التي أعرض لكم تقنيات البرمجة أفل التي يمكنك تعديلها بسهولة لتلبية الاحتياجات الشخصية الخاصة بك. إذا كنت مبتدئا أو حتى إذا كنت مطور نظام متحمس، مورد تنظيما جيدا مثل هذا يمكن أن يوفر لك ساعات عديدة من البرمجة وجعل تطوير النظام الكثير أكثر متعة.
إذا كنت ترغب في استخدام السحب والإفلات، يمكنك إنشاء مجلد حلول #AFL (& # 8220؛ # & # 8221؛ تتم إضافته لإجبار هذا المجلد إلى أعلى شجرة الخاص بك) في C: \ بروغرام فيليز \ أميبروكر \ فورمولاس مجلد باستخدام مستكشف ويندوز. عند العودة إلى أميبروكر، تحتاج إلى انقر فوق عرض - & غ؛ تحديث الكل لجعل المجلد الجديد مرئيا. داخل مجلد #AFL سولوتيونس يمكنك إنشاء مجلدات فرعية لتلبية الاحتياجات المحددة الخاصة بك.
إذا اكتشفت حل أفل مفيدا، يجب نسخه إلى المجلد الفرعي المناسب من مجلد #AFL سولوتيونس. سيعطيك هذا مصدر ترميز مثير للإعجاب في غضون بضعة أسابيع قصيرة. قد يبدو التخطيط النموذجي كما يلي:
إذا كنت تعتمد اتفاقيات تسمية قياسية للمتغيرات الخاصة بك، فإن العديد من وحدات التعليمات البرمجية الخاصة بك تعمل معا دون الكثير من التغييرات. في نهاية المطاف سوف تكون قادرة على بناء أنظمة التداول في دقائق بدلا من ساعات، وذلك ببساطة عن طريق سحب وإسقاط وحدات التعليمات البرمجية إلى مؤشر أو ربما باستخدام معالج كود أفل.
حرره آل فينوسا.
تعليقات خارج على مقدمة في الوقت الحقيقي برمجة أفل.
2 مايو 2007.
إعادة تعيين المؤشرات.
مؤشرات التمهيد مثل ما ()، إما ()، T3 ()، ديما ()، وما إلى ذلك تهدف إلى إعطائك مؤشر متوسط لتحركات الأسعار. وهي تفعل ذلك عن طريق تصفية التغيرات ذات التردد العالي في متغير سعر معين. والمشكلة هي أن مثل هذه المؤشرات تستحدث فترة زمنية في النظام. مؤشر التأخر هو الأكثر وضوحا بسهولة عندما يكون الرسم البياني للسعر الإجمالي على نحو سلس نسبيا (على سبيل المثال، عندما يبقى ما بسيط () ضمن نطاق عالية منخفضة)، وفجأة يتحول السعر أو الثغرات. وعندما يحدث ذلك، تحتاج معظم مؤشرات التمهيد إلى العديد من الحانات للتغلب على تأثير هذه الثغرات وإعادة وضع نفسها مرة أخرى ضمن متوسط النطاق السعري للحانة.
على الرغم من أن جميع أنظمة التداول تعتمد على التأخر لمعرفة أن شيئا قد تغير، ودرجة التأخير التي يحتاجها النظام يختلف. مؤشرات إعادة تعيين هي الأكثر فائدة في النظم التي تتطلب وظيفة تمهيد التي تتبع عن كثب السعر، أي واحد الذي يظهر الحد الأدنى من التأخر.
عندما يواجه مؤشر ريستابل إزاحة مفاجئة أكبر من المعتاد إلى متوسط السعر، فإنه يغير السلوك ويعيد تعيين المؤشر إلى نقطة مرجعية محسوبة. في حين أن هناك أنماط أو ظروف أخرى (إشارات، توقف، الأهداف، الخ) التي قد ترغب في إعادة تعيين مؤشر، وتركز هذه المناقشة على الثغرات البسيطة التي يتم تعريفها من قبل وظائف أفل غابوب () و غابدون (). التقنيات المعروضة هنا تعمل بشكل جيد على قدم المساواة مع بيانات التخلص من الذخائر المتفجرة أو رت. تطبيق آخر للمفهوم سيكون في التداول رت حيث قد ترغب في إعادة المؤشر الخاص بك في بداية كل يوم جديد أو جلسة التداول.
وتستند فكرة إعادة التعيين إلى حقيقة أن وظائف التمهيد لها فترة أولية وأن تأخر المؤشر سيكون متناسبا مع تلك الفترة، أي أن الفترات الأطول تزيد من الفارق الزمني وتقصر الفترات الزمنية الأقصر. مع العلم أنه يمكننا إعادة تعيين مؤشر ببساطة عن طريق تحديد فترة إلى قيمة أقل. عادة، إعادة إلى فترة 1 يعمل بشكل جيد. بعد شريط إعادة تعيين، يتم زيادة الفترة مع كل شريط يمر حتى وصلت إلى قيمتها الأصلية.
النظر في مثال التخلص من الذخائر المتفجرة الموضح أدناه. تحدد الأشرطة البيضاء الفجوات التي تؤدي إلى إعادة تعيين.
في أول شريط أبيض الثغرات السعر يصل و T3 التقليدي (الأزرق) يتراجع على الفور، وفي الواقع يتحرك عكس السعر. إعادة تعيين T3 (الأحمر) إعادة تعيين نفسه عندما كشف الفجوة وعلى الفور تقريبا قادرة على تتبع أشرطة الأسعار في الاتجاه الصحيح.
هناك العديد من الطرق لإعادة تعيين مؤشر: يمكنك أن تفعل ذلك فجأة من خلال تحديد الفترة إلى 1؛ يمكنك الحفاظ على الحد الأدنى من التجانس عن طريق إعادة تعيين إلى 2 أو 3؛ أو يمكنك ضبط تدريجيا الفترة و / أو T3 حساسية وفقا لبعض الصيغة. يستخدم المثال المثال أدناه الصيغة T3 التي يمكن العثور عليها في مكتبة أميبروكر.
في المثال أدناه، يمكنني استخدام بداية (شريط 1) من يوم التداول لإعادة T3. ومع ذلك، هناك العديد من الحالات الأخرى التي قد ترغب في إعادة تعيين مؤشر. على سبيل المثال، عند استخدام توقف زائدة أو مخارج نوع سار، أحيانا قد ترغب في إعادة تعيين مؤشر عندما تحصل على شراء أو بيع إشارة. يمكنك تعيين مرجع إعادة التعيين الخاص بك عن طريق حساب متوسط أسعار كل شريط، على سبيل المثال، (O + H + L + C) / 4. ومع ذلك، يجب أن تبقى بعيدا عن القيم المتوسطة لأنها سوف تعيد تأخر. أنا أفضل استخدام (O + C) / 2، ولكن يجب أن تحاول أي عدد من الأفكار الأخرى التي تناسب ترضيك.
وظيفة T3 (السعر، T3Periods، ق)
e1 = أما (السعر، 2 / (T3Periods + 1))؛
e2 = أما (e1، 2 / (T3Periods + 1))؛
e3 = أما (e2، 2 / (T3Periods + 1))؛
e4 = أما (e3، 2 / (T3Periods + 1))؛
e5 = أما (e4، 2 / (T3Periods + 1))؛
e6 = أما (e5، 2 / (T3Periods + 1))؛
وظيفة T3r (C، T3Sensitivity، T3Periods، ريستريفيرانس)
كبريس = إيف (ريسيت، ريستريفيرانس، C)؛
T3Periods = مين (T3Periods، بارسسينس (ريسيت))؛
T3Periods = إيف (ريسيت، 1، T3Periods)؛
e1 = أما (كبريس، 2 / (T3Periods + 1))؛
e2 = أما (e1، 2 / (T3Periods + 1))؛
e3 = أما (e2، 2 / (T3Periods + 1))؛
e4 = أما (e3، 2 / (T3Periods + 1))؛
e5 = أما (e4، 2 / (T3Periods + 1))؛
e6 = أما (e5، 2 / (T3Periods + 1))؛
T3Sensitivity = بارام ("T3 سنسيتيفيتي"، 1،0،1،0،01)؛
T3Periods = بارام ("فترات T3"، 3،1،10،1)؛
ريسيت = غابوب () أور غابدون ()؛
T3rPlot = T3r (C، T3Sensitivity، T3Periods، ريستريفيرانس)؛
مؤامرة (T3 (C، T3Periods، T3Sensitivity)، "\ n T3 التقليدية"، 6،1 | ستايلثيك)؛
حرره آل فينوسا.
تعليقات خارج على إعادة تعيين المؤشرات.
28 أبريل 2007.
توقيت الجلسة.
نظام أتمتة صحيح يعني أنك برمجة نظام التداول الخاص بك لبدء وإيقاف في أوقات محددة أثناء الذهاب تلعب الغولف، أليس كذلك؟
وهذا يعني أنه بالإضافة إلى وجود مفتاح تمكين / تعطيل ماستر تحتاج إلى أتمتة بدء وإيقاف جلسة التداول الخاصة بك. على سبيل المثال، قد ترغب في بدء جلسة العمل في الساعة 9:30 صباحا وتنتهي تلقائيا في الساعة 4:00 مساء.
يستخدم التعليمة البرمجية أدناه بارامديت () و بارامتيمي () لتعيين بدء جلسة العمل وإيقاف التواريخ / الأوقات، ويقارن هذه المعلمات إلى النظام التاريخ والوقت التي يتم إرجاعها بواسطة الدالة نو (). فإنه يولد مختلف دول الدورة التي يتم عرضها في العنوان، عند دمج هذه التعليمات البرمجية في النظام الخاص بك سوف تستخدم هذه الدول لتنفيذ إجراءات محددة، مثل إغلاق كافة المواقف، إلغاء جميع الأوامر، وما إلى ذلك بلينتكست () ليست هناك حاجة حقا ولكن ألقيت في للمتعة.
حرره آل فينوسا.
تعليقات خارج على توقيت الجلسة.
جزء ونافذة تنفيذ النظام.
عدد قليل من المستخدمين الالتفات إلى النظام الذي يتم تنفيذ المهام التي تؤديها في مختلف أميبروكر لوحات ويندوز. يمكن أن يكون لترتيب عمليات التنفيذ الجزئي تأثير كبير على أداء نظام تداول سريع وفي الوقت الفعلي. فمن السهل أن نفترض أن الجزء-صيغ تنفيذ أعلى إلى أسفل، لكنها لا & # 8217؛ ر. في الواقع، أمر التنفيذ لا يمكن التنبؤ بها، وينبغي، لجميع الأغراض العملية، تعتبر عشوائية من قبل المستخدم.
على سبيل المثال، عند استخدام متغيرات ثابتة أو ثابتة، إذا قمت بتهيئة ستاتيفاريابل في الجزء العلوي لاستخدامها في الجزء السفلي، تريد الجزء العلوي لتنفيذ أولا بحيث يمكن استخدام القيمة المعينة حديثا على الفور، أي أثناء نفس تحديث في الجزء السفلي وليس في المخطط التالي تحديث، والتي قد تحدث ثانية أو أكثر في وقت لاحق.
الآن اعتبر أن الجزء السفلي ينفذ أولا. في هذه الحالة، فإنه يتطلب الانتظار إما حتى الاقتباس التالي أو، إذا كنت تستخدم الدالة ريكستيمدريفريش (1)، والثانية التالية (أيهما يأتي أولا). في هذه الحالة، فإن المتغير الثابت يحتوي على قيمة من التحديث السابق، مما يعني أن قيمة المتغير الثابت سوف تتخلف عن طريق تحديث مخطط واحد. إذا كانت الصيغة في الجزء السفلي تقوم بوضع الأوامر مع أسعار لمت استنادا إلى الاقتباس الأخير (الذي أدى إلى التحديث) ومنذ احتساب سعر لمت في الجزء العلوي أثناء التحديث السابق، فإن سعر لمت المستخدمة سوف يستند إلى السابق وليس الأخير الاقتباس. في معظم الحالات، وهذا من شأنه أن يقلل احتمالك لملء لمل.
الحل الواضح هو إلحاق رمز الطلب الخاص بك إلى التعليمات البرمجية التي تهيئة متغير ثابت الخاص بك وتنفيذ في نفس الجزء. ومع ذلك، قد يكون من الصعب القيام بذلك إذا كانت الصيغ طويلة، أو إذا كانت كل صيغة تنتج مخططات ذات جداول مختلفة و / أو عناوين غير متوافقة. ومع ذلك، إذا قررت حل المشكلة بهذه الطريقة، يجب عليك النظر في استخدام #include الملفات.
حل آخر هو فرض ريفريشال في نهاية صيغة التهيئة. سيؤدي ذلك إلى تحديث جميع الأجزاء بدون تأخير، ولكن الآن قد يتم تنفيذ بعض الأجزاء أكثر من مرة لكل تحديث مخطط. سيكون عليك أن تقرر ما إذا كان هذا مهم في النظام الخاص بك. يمكن إلحاق السطرين التاليين إلى التعليمات البرمجية الخاصة بك وسوف تجبر ريفريشال. كن على علم بأن الحد الأدنى فترة ريفريشال هو ثانية واحدة، لذلك إذا كانت علامات الاقتباس الخاصة بك تصل بشكل أسرع، وهذا قد لا تعمل بشكل جيد للغاية.
إذا كان أمر التنفيذ أمر بالغ الأهمية، يمكنك جعل ريفريشال () الشرطي على حساب جزء-عداد وإجبار ريفريشال فقط إذا طلب تنفيذ جزء منه. للعثور على ترتيب تنفيذ جزء، يمكنك إضافة عداد تنفيذ جزء إلى كافة صيغ جزء وتسجيل العد إلى ديبوغفيو. إذا كان عدد أقل في الجزء العلوي، مقارنة مع الجزء السفلي، وهذا يعني أنه تم تنفيذها في الجزء العلوي في وقت سابق. إذا كان عدد أكبر، تم تنفيذه في وقت لاحق من الجزء السفلي.
لكي تتمكن من تحديد الصيغة التي يتم تنفيذها في السجل، ضع اسم الصيغة في الجزء العلوي من الصيغة:
لإضافة العداد، يمكنك إلحاق الشفرة التالية بنهاية الصيغة:
كونتيرديسبلايلين = فلنام + "، تشارتيد:" + جيتشارتيد () + "، بانكونتر:" + نومتوستر (بانكونتر، 1.0، فالس)؛
سيظهر هذا الأمر ووقت التنفيذ، بالثواني، في إطار ديبوغفيو:
يمكنك دراسة / تحليل ترتيب تنفيذ جزء دون إزعاج التعليمات البرمجية الخاصة بك عن طريق إدراج رمز 4 سطر أدناه عدة مرات في نفس النافذة، وبالتالي خلق أجزاء متعددة. ثم قم بتغيير ترتيب الأجزاء باستخدام الأسهم الصغيرة في القائمة التي تنبثق عند تحريك مؤشر الماوس فوق الجانب الأيسر العلوي من الجزء. في هذا المثال يتم عرض ترتيب الجزء في عنوان المخطط.
تيتل = فلنام + "، بانكونتر:" + نومتوستر (بانكونتر، 1.0، فالس)؛
يظهر التقاط أعلاه أن أمر التنفيذ ليس من أعلى إلى أسفل. قد تلاحظ أنه في حالتك، أمر التنفيذ يتتبع كارتيد. ويرجع ذلك إلى إدراج الأجزاء في تسلسل واحد تلو الآخر، ولكن هذا لن يكون هو الحال في العادة.
في حين أن هذا الموضوع قد لا يكون مهما للجميع، وسوف تصبح حاسمة عند بدء الترقيع مع أنظمة التداول عالية التردد.
حرره آل فينوسا.
تعليقات خارج على جزء وتنفيذ نافذة التنفيذ.
24 أبريل 2007.
المتغيرات المستمرة (الإصدار 3)
متغيرات ثابتة الاحتفاظ قيمها طالما أميبروكر قيد التشغيل. If you shut down AmiBroker or experience a computer crash, your Static Variables lose their values. This can create serious problems in Automated Trading. For example, suppose you experience a computer crash while you have many pending orders. After restarting everything, you are unable to modify the orders, and so you are forced to use the TWS to manually clean up the mess and restart.
To prevent this situation, you can use Persistent variables that store their values on your Hard Disk. They will remain there until you delete them. Using Persistent variables, if you experience a crash or shut down your system during the night, the persistent variables will automatically be reloaded when you power up again.
Persistent variables can also be used to save ticker-specific system parameters. For example, you could run an optimization and save the optimized parameters in a Persistent Variable encoded with the Ticker’s name. Below are examples for saving text and numerical values. Arrays are not included here because arrays are better handled in other ways. Included in the code below is a handy function to create Persistent lists and to remove items from these lists. The list functions are useful when you wish to save lists of Symbols and/or OrderIDs dynamically.
Note that these parameters must be stored in a specific folder on your Hard Disk (see first code line below for an example of a typical recommended path). You must assign the desired location to the string variable PersistentPath . Remember that Persistent variables are Global just like Static variables, and their names may have to be encoded with ChartIDs and/or Symbol names to prevent them from being modified by different programs.
PersistentPath = "C:\\Program Files\\AmiBroker\\PersistentVariables\\";
function PersistentVarSetText( VarName, String )
fh = fopen( PersistentPath+VarName+".pva","w" );
fputs( String, fh );
function PersistentVarGetText( VarName )
fh = fopen( PersistentPath+VarName+".pva","r" );
String = fgets( fh );
function PersistentVarSet( VarName, Number )
fh = fopen( PersistentPath+VarName+".pva","w" );
fputs( String, fh );
function PersistentVarGet( VarName )
fh = fopen( PersistentPath+VarName+".pva","r" );
String = fgets( fh );
else Number = Null;
function PersistentListAdd( VarName, String )
List = PersistentVarGetText( VarName );
for( i=0; ( LoopItem = StrExtract( List, i ) ) != ""; i++ )
if( LoopItem == String ) SubStrExists = 1;
if( NOT SubStrExists )
List = List + String+",";
PersistentVarSetText( VarName, List );
function PersistentListRemove( VarName, String )
List = PersistentVarGetText( VarName );
for( i=0; ( LoopItem = StrExtract( List, i ) ) != ""; i++ )
if( LoopItem != String ) NewList = NewList + LoopItem +",";
PersistentVarSetText( VarName, NewList );
The following function was kindly contributed by suresh (see comment) and can be used to delete Persistent variables:
حرره آل فينوسا.
April 21, 2007.
Removing Static Variables.
Trading systems may use hundreds or even thousands of Static Variables, and the associated memory usage will eventually slow down your system. To prevent this you need to clear them whenever possible. Since at this time AmiBroker doesn’t have a function to remove all Static Variables from memory, you can remove them by referencing each of them by their name, i. e. StaticVarRemove( StaticVarName ).
Using an indexed name will allow you to use a loop to remove Static Variables from memory. For example, a naming convention such as BuyPrice + NumToStr(n,1.0,false), where n could be the DateNum(), TimeNum(), DateTime(), BarIndex(), etc., would allow you to use a simple loop to generate all possible names and remove those that return non-null values.
Below are two examples of how to remove StaticVariables with this technique. Be careful when using BarNum() because the bar number changes if you use SetBarsRequired(), or if you use Quick-AFL, or if your data exceed the amount set in your DataBase settings or in Preferences.
Here is an example of how to remove from memory Ticker-specific OrderIDs that were, for example, used in a portfolio trading system:
for( NT=0; ( Ticker = StrExtract( TradingBasket, NT ) ) != ""; NT++ )
حرره آل فينوسا.
Comments Off on Removing Static Variables.
المشاركات الاخيرة.
احدث التعليقات.
ريتشارد ديل على موارد البيانات & # 8211؛ فوريكس هيرمان على الطلب المواضيع في الوقت الحقيقي هنا مايك B على طلب المواضيع في الوقت الحقيقي هنا توماش جانيشكو على قاعدة بيانات الأسهم الأمريكية (v2) brian_z على إعداد قاعدة بيانات مخصصة & # 8211؛ ناسداك.
الاقسام.
أكتوبر 2018 (1) سبتمبر 2018 (1) أغسطس 2018 (1) يوليو 2018 (1) أبريل 2018 (2) مارس 2018 (6) فبراير 2018 (2) يناير 2018 (2) فبراير 2009 (2) أغسطس 2008 (1) (2008) (17) تشرين الأول / أكتوبر 2008 (17) أيلول / سبتمبر 2008 (17) آب / أغسطس 2008 (26) تموز / يوليه 2007 (20) يونيو 2007 (17) أيار / مايو 2007 (8) نيسان / أبريل 2007 (16) كانون الثاني / يناير 2007 (1)
This site uses WordPress Page generated in 0.502 seconds.
- تعيين / واضح / الكتابة الافتراضيات لخيارات جزء المخطط.
تشارتشوداتس، تشارت لوغاريثميك، تشارتشاروز، تشارتورابتيتل (4.75 أو أعلى)، تشارتيدكوتيماركر (v5.06). تشارتيدكوتيماركر - يخفي خط تحديد الاقتباس على أساس كل جزء، نفس الحوار المعلمة -> المحاور والشبكة -> فيرت. علامة الاقتباس: إظهار / إخفاء، تشارتديسابليكسيسكورسور (جديد في 5.80) - تعطيل مؤشر الماوس تغيير إلى أعلى / السهم لأسفل عند تحوم فوق المحور Y، تشارتديسابليتولتيبس (جديد في 5.80) - تعطيل عرض تلميحات الأدوات (نصائح البيانات).
غريدفلاغس - (للاستخدام الداخلي أميبروكر - لا تستخدم في الترميز الخاص بك كما سيتم إزالة هذه المعلمة في نهاية المطاف) القيم المسموح بها هي: chartGridDiv100، تشارتغريدبيرسنت، chartGridDiv1000، تشارتغريدارجارجس تشارتغريدميدل، chartGrid0، chartGrid30، chartGrid70، chartGrid10، ChartGrid90، ChartGrid50، chartGrid100 ، chartGrid20، chartGrid80، chartGrid1 يمين، يماكس - (جديد في 5.07) تحدد هذه المعلمات الحد الأدنى والقيم القصوى لمحور Y للتحجيم المخصص. إذا حددت أي قيم تستوفي الشرط يمين // للاحتفال ب & كوت؛ إظهار الأسهم & كوت؛ افتراضيا في استخدام مخطط جديد.
سيشارتوبتيونس (0، تشارتواروز)؛
مثال 2 (يعمل فقط مع الإصدار 4.75 أو أعلى):
سيشارتوبتيونس (2، تشارتورابتيتل)؛
تيتل = & كوت؛ هذا اختبار للتفاف تلقائي لنص العنوان طويل جدا بحيث يكون مناسبا في سطر واحد، ولهذا السبب تستخدم صيغة العينة هذه نصا طويلا جدا. آمل أن تكونوا يتمتعون عينة & كوت؛ .
أميبروكر أفلس أفضل مؤشرات أميبروكر.
مجموعة من الأكثر شعبية وأفضل أفلروكر أفلس للشراء بيع إشارات في جميع القطاعات أي الأسهم، المستقبل، خيارات والسلع التداول خلال اليوم والموقعية. هذه الصيغ متوفرة ل ليفيتيمي على الاشتراك السنوي للبيانات.
وصف مختصر.
هذه هي الأكثر شعبية وأفضل أربعة أميبروكر أفلس أي يومي أفل، شراء بيع إشارة أفل، صاروخ جت أفل والتاجر برو أفل. هذه أفلس تعمل بشكل أفضل للتداولات اللحظية. هذه شراء شراء إشارة أفلس متوافقة مع جميع إصدارات أميبروكر ومجانا لمدى الحياة مع الاشتراك السنوي البيانات.
كيفية إدراج أفلس في مخطط أميبروكر.
1. استخراج ملف AFL-Pack. zip في مجلد جديد بنفس الاسم (أفل-باك \)
2. انتقل إلى "أميبروكر" تثبيت مجلد. على سبيل المثال: 'C: \ بروغرام فيليز \ أميبروكر' أور 'C: \ بروغرام فيليز (x86) \ أميبروكر'
3. فتح مجلد "الصيغ".
4. نسخ مجلد أفل-باك ضمن مجلد "الصيغ" (على سبيل المثال C: \ بروغرام فيليز (x86) \ أميبروكر \ فورمولاس \ أفل-باك).
5. افتح أمي وسيط. ثم انتقل إلى الرسم البياني من الجانب الأيسر.
6. انقر فوق الرسم البياني. هنا يمكنك ان ترى المجلد أفل-باك.
7. انقر فوق المجلد. من المجلد سوف تجد أفل الخاص بك.
8. انقر نقرا مزدوجا فوق أي أفل سوف تآمر في الرسم البياني الخاص بك أو يمكنك سحب أفل ولصقه إلى أي منطقة المخطط في أمي وسيط.
قاعدة معارف المستخدمين.
26 يونيو 2007.
ثقوب البيانات في التداول في الوقت الحقيقي.
عندما لا يتلقى أميبروكر البيانات خلال ساعات التداول العادية، يشار إلى الفترة المفقودة أو الحانة على أنها ثقب في صفيف البيانات. يمكن أن تحدث ثقوب عندما لا يتم تداول المؤشر أو عند توقف تغذية البيانات. ويمكن أن تستمر لأي طول من الوقت ويمكن أن يحدث في أي إطار زمني.
عندما لا يحتوي شريط على بيانات، لا يتم إضافة شريط إلى قاعدة البيانات. سجل قاعدة البيانات يتخطى ببساطة إلى شريط الفترة التالية. يمكن ملء الثقوب أثناء الردم أو عندما يقوم مزود البيانات بإرسال تصحيحات البيانات. عند حدوث ذلك، يتم تحديث قاعدة البيانات.
عند رسم المؤشرات استنادا إلى الرمز الحالي المحدد، يتم تخطي الثقوب لإنشاء مخططات تبحث باستمرار. وبسبب هذا لا يمكنك الكشف عن أي ثقوب بصريا. ومع ذلك، كما هو موضح أدناه، وهذا ليس هو الحال عند رسم البيانات الأجنبية.
في حين أميبروكر أبدا تعديل البيانات التي يجمعها ومخازن في قاعدة البيانات الخاصة بك، فإنه قد ملء وإصلاح الثقوب أثناء العمليات التي تتطلب قاعدة زمنية مشتركة. وتشمل هذه العمليات عدة وظائف آ، وإنشاء المركبات، وتراكب الرسم البياني. وتسمى عملية تثبيت وحشو البيانات للسماح لهذه العمليات محاذاة البيانات.
محاذاة البيانات في آ.
في عمليات التحليل الآلي (آ)، يمكن تشغيل محاذاة البيانات تشغيل / إيقاف ويمكن تحديد الرمز المرجعي الذي سيتم استخدامه للمحاذاة. ويوضح ذلك في مرجع وظيفة أفل المعروض أدناه:
؟ وسادة ومحاذاة رمز مرجع.
عند تشغيل هذا، كل الرموز & # 8217؛ هي مبطنة ونقلت ومحاذاة رمز مرجع. ملاحظة: افتراضيا هذا الإعداد هو أوف. استخدام بمسؤولية. قد يبطئ باكتست / التنقيب / المسح الضوئي وإدخال بعض التغييرات الطفيفة على قيم مؤشر عندما يتم تعبئة البيانات والثقوب والثقوب مع البيانات شريط السابقة. والمقصود من هذه الميزة أن تستخدم عندما يستخدم النظام الخاص بك توقيت السوق العامة (يولد إشارات عالمية استنادا إلى البيانات و / أو المؤشرات المحسوبة باستخدام أجنبي من & # 8216؛ مرجع & # 8217؛ رمز) أو عند إنشاء مركب من البيانات غير محاذاة. ملاحظة: إذا لم يكن رمز المرجع موجودا، فلن يتم حجب البيانات.
محاذاة البيانات في المؤشرات.
تتم محاذاة البيانات الأجنبية المستخدمة في صيغ المؤشر مع الرمز الحالي وليس كما هو الحال في آ، إلى الرمز المرجعي المحدد في إعدادات آ. اعتمادا على قيمة المعلمة فيكسوب من وظيفة () الخارجية، ثقوب البيانات يمكن التعامل معها في أي من ثلاث طرق. ويوضح ذلك في مرجع وظيفة أفل كما يلي:
؟ المعلمة الأخيرة & # 8211؛ فيكسوب & # 8211؛ يقبل القيم التالية.
0 & # 8211؛ الثقوب ليست ثابتة 1 & # 8211؛ القيمة الافتراضية & # 8211؛ يتم ملء حقول البيانات المفقودة أوهلك الحقول باستخدام شريط السابق إغلاق، ويتم تعيين حجم إلى الصفر. 2 & # 8211؛ (سلوك ما قبل 4.90 القديم) & # 8211؛ أسباب ملء الثقوب في البيانات مع السابقة O، H، L، C، V القيم.
يتم توفير المعلمة فيكسوب من 2 للحفاظ على التوافق مع الإصدارات السابقة أميبروكر ويجب ألا تستخدم عند تطوير رمز جديد.؟
الثقوب في الوقت الحقيقي محفظة التداول.
عند تنفيذ نظام التداول محفظة رت من نافذة المؤشر، كنت عادة حلقة من خلال حافظة المحفظة واستخدام الدالة الخارجية () للوصول إلى البيانات لكل شريط كما يتم تحديده. منذ كل من الحالية والأجنبية قد يكون لها ثقوب، وهناك مجموعة متنوعة من ظروف حفرة للتعامل معها. قد تظهر الثقوب والقضبان المبطنة وتختفي من المخطط الخاص بك اعتمادا على قيمة المعلمة فيكسوب وما إذا كان شريط الحالي أو أجنبي لديه ثقوب. قد تتغير الرسوم البيانية أيضا خلال عمليات إعادة التعبئة. وبما أن البيانات المرسومة هي نفس البيانات المستخدمة في الصيغ الخاصة بك، يجب أن تكون حذرا حول كيفية استخدام البيانات الأجنبية.
معايير الكشف عن الثقوب بسيطة: إذا كان حجم يساوي فارغة، البيانات مفقودة (حفرة). إذا كان حجم يساوي الصفر، يتم مبطن البيانات (حفرة شغل)؛ وإذا كان حجم أكبر من الصفر، البيانات صحيحة (لا حفرة).
وبما أن البيانات الخارجية تتماشى مع المؤشر الحالي في المؤشرات، يمكن القول بأن:
؟ إذا كان الشريط الحالي لا يحتوي على بيانات شريط معين، لن يتم عرض الفاصل الزمني شريط المقابلة للمصفوفة الأجنبية ولن تكون متاحة للحسابات. هذا يمنع البيانات الأجنبية ويمكن أن يؤدي إلى إشارات غاب.
؟ إذا كان شريط الأجانب ليس لديه بيانات عن شريط معين في حين أن شريط المقابلة ل شريط الحالي لديه البيانات، سيتم إضافة شريط إلى مجموعة أجنبية. إذا تم تشغيل فيكسوب تشغيل، سيتم ملء هذا الشريط مع أسعار من شريط الأجنبية السابقة. إذا كنت تستخدم إشارات التداول اليومي، فقد يؤدي ذلك إلى إشارات إضافية أو مكررة.
ومن الواضح من ما سبق أن لتصميم نظام التداول محفظة عالية التردد الحقيقي القوي الذي ينفذ في إطار المؤشر، يجب أن تنظر في تأثير الثقوب على الإشارات الخاصة بك.
للكشف عن جميع الثقوب تماما، تحتاج إلى شريط إشارة الكمال، أي واحد أن يتداول كل دقيقة من اليوم لكل يوم تداول من السنة. إذا كان مثل هذا شريط الكمال موجودة، وكنت جعل هذا شريط الحالي بحيث يتم محاذاة جميع البيانات الأجنبية لذلك. ببساطة التحقق من الصفر حجم تحديد جميع الثقوب. ومع ذلك، لأن مثل هذا شريط الكمال لا وجود لها في الواقع، إذا كنت تفترض أن شريط هو الكمال، كنت ببساطة نقل مشكلة حفرة من شريط واحد إلى آخر، وأنت لن تكون أقرب إلى حل المشكلة.
الحل الأمثل هو استخدام صفيف مرجعي مرجع خطي يحتوي على أشرطة لجميع أيام التقويم. يتم توثيق هذه المصفوفة في العنوان التالي؟ على هذا الموقع. لتطبيق صفيف مرجع التاريخ الخطي للكشف عن الثقوب هو خارج نطاق هذا المنصب، ولكن قد يتم تغطيتها في وظيفة لاحقة.
حل آخر معقول بشكل معقول هو استخدام شريط حجم كبير، مثل كق، لالرقم الحالي الخاص بك. المشكلة هي أن حتى كق لديها فترات حجم منخفضة، وربما تحتوي على ثقوب.
وهناك حل أفضل قليلا هو إنشاء مجمع حجم لمجموعة من علامات تداول بنشاط، وربما من الأسواق المختلفة، وجعله الرمز الحالي الخاص بك. لهذا المركب أن يكون لها ثقب يجب أن تكون هناك فترة لم يتداول خلالها أي من الأوراق. في حين أن هذا من غير المحتمل أن يحدث في الأطر الزمنية الأطول، فإنه لا يزال يمكن أن يحدث في أطر زمنية قصيرة جدا، مما يجعل هذا الحل ناقص أيضا. سيتم استخدام هذا الحل هنا لإنشاء مخطط يعرض (خرائط) وجود ثقوب لقائمة المراقبة بأكملها في آن واحد.
يستخدم الرمز التجريبي أدناه قائمة مراقبة منفصلة للمركب والأشرطة التي سيتم تعيينها. لمنع استجابة بطيئة (ينظر إليها على أنها تأمين من قبل العديد) عندما يتم تعيين أعداد كبيرة من علامات، أو عند تحديد عن غير قصد واتشليست كبيرة جدا، يمكنك تعيين الحد الأقصى لعدد الدرجات (افتراضات إلى 50). يجب عليك فقط استخدام ارتفاع حجم علامات ل واتشليست المركب منذ تداولات خفيفة طفيفة من غير المرجح أن تضيف أي قضبان إلى المركب.
تتضمن نافذة بارام للرمز التجريبي الخيارات التالية:
يجب أن تشير قائمة المراقبة المرجعية (المستندة إلى 0) إلى مجموعة الدارات المستخدمة لإنشاء المركب. يجب دائما النقر فوق تحديث بعد تغيير المرجعية المرجعية لإنشاء مركب جديد لقائمة المراقبة الجديدة.
قائمة المراقبة إلى خريطة يحدد قائمة المراقبة التي سيتم اختبارها للحصول على الثقوب. سيضيف كل مؤشر في قائمة المراقبة هذه خطا أفقيا إلى المخطط. وهذا عادة ما يكون قائمة مراقبتك محفظة. يشار إلى الثقوب باستخدام أرقام محاطة بدائرة صغيرة. الرقم هو المعلمة فيكسوب المستخدمة في الخارجية () لاسترداد تلك البيانات.
حدوث أي رقم يظهر موقع حفرة. الرقم 0 يعني أن الشريط فارغ أو فارغ، ولن يظهر أي شريط. رقم 1 يعني أن شريط مبطن مع فقط C السعر من شريط السابق؛ رقم 2 يعني أن البيانات مبطنة مع أوهلكف (طريقة عفا عليها الزمن!) البيانات من شريط السابق.
يمكنك ملاحظة كيفية استبدال الثقوب ببيانات من الشريط السابق. يتم استبدال شريط فارغ مع شريط مطابق للشريط السابق عند تغيير المعلمة فيكسوب في الإطار بارام.
لإثبات كيفية تغيير علامة مرجعية مختلفة توزيع الثقوب، يمكنك فتح مساحة العمل الخاصة بك وخطوة من خلال (جعل الحالية) علامات مختلفة في قاعدة البيانات الخاصة بك. يقوم البرنامج بفحص موضع المؤشر، وإذا قمت بتعيين المخطط المحدد للمعرض إلى شو (بدلا من هايد)، سيتم وضع مخطط سعري على الرسم البياني لخط السهم المحدد. هذا يسمح لك لتكبير وفحص الأسعار في المنطقة المحيطة المحيطة ببيانات هول أو مبطن.
ملاحظة: نظرا لعدم وجود طريقة لاكتشاف الجزء الذي يعمل عليه المؤشر، فإن الاستشعار عن موضع المؤشر لن يعمل إلا إذا تم تشغيل خريطة الثقب في إطاره الخاص.
أنا يلتقط أدناه، تم استخدام مركب نسداق 100 (N100) كمرجع ل فيسف شريط. يتم تعيين كل شريط في الرسم البياني (ثقب الخريطة) أدناه خط زمني أفقي التي يشار إلى وجود ثقوب مع دائرة صغيرة. يعرض وضع المؤشر على حفرة تاريخه وبياناته في العنوان. لون الدوائر يتطابق مع ذلك من شريط. أرقام محور Y هي أرقام شريط (زائدة عن الحاجة).
في الحالة الأولى، تم تعيين المعلمة f إكسوب إلى الصفر ويترك موقع شريط مع شريط مفقود فارغة (انظر موقع المؤشر). لأن الرقم هو صغير جدا قد تبدو وكأنها؟ 1 ؟، ولكن هو في الواقع؟ 0؟. حقيقة أن شريط مفقود يعني أن الرمز الحالي لديه بيانات لهذا الشريط ولكن لم يفعل شريط الأجانب.
في التقاط المقبل معلمة فيكسوب من 1 يستخدم، ويتم ملء شريط مفقود مع السعر C من شريط السابق في حين يتم تعيين حجم (غير موضح) إلى الصفر.
في التقاط المقبل، يتم تعيين المعلمة فيكسوب إلى 2، مما يؤدي إلى شريط مفقود يتم ملؤها قيم أوهلكف من الشريط السابق.
في كل الأمثلة المذكورة أعلاه، تم استخدام مخطط التخلص من الذخائر المتفجرة. ومع ذلك، فإنه يمكن أيضا أن يكون كذلك الرسم البياني 1 دقيقة (أو أي إطار زمني آخر). هنا هو رمز أنتجت الرسوم البيانية أعلاه:
حرره آل فينوسا.
24 يونيو 2007.
رسالة في الوقت الحقيقي فيفو.
غالبا ما تظهر الرسائل في الوقت الفعلي على الشاشة فقط لمدة فاصل زمني واحد لتحديث المخطط وتختفي قبل أن يكون لديك الوقت لقراءتها. يعرض فيفو (أولا في أولا خارج) عرض ن خط عرض هنا ويمرر الرسائل في الرسم البياني العنوان بحيث تكون أسهل للقراءة. يتطلب تسجيل الرسائل إلى ديبوجفيو أو نافذة التفسير فتح نوافذ إضافية. باستخدام عنوان بدلا من ذلك يعرض الرسائل الحق على الرسم البياني وأكثر كفاءة في استخدام الفضاء.
والتطبيق النموذجي هو عرض حالة النظام في الوقت الفعلي، مثل حالة الطلب، ورسائل خطأ توز، وعبوات جزئية، ورصيد الحساب، والأرباح، وما إلى ذلك.
بما أن الرسم البياني تيتل لا يدعم التنسيق، فمن المستحسن استخدام خط أحادي التباعد، مثل وحدة تحكم لوسيدا، ومساحات لوحة لإنشاء أعمدة. يحدد الجزء الصحيح من المعلمة تنسيق نومتوستر () الطول الإجمالي للسلسلة التي تم إرجاعها ويمكن استخدامها لتنسيق الأعمدة. إذا كنت تفضل المزيد من خيارات الخط واللون، يمكنك استخدام وظائف غفكس لعرض الرسائل.
لمنع التفاف العنوان، يمكنك اقتطاع الرسائل باستخدام الدالة سترليفت (). هذا يعمل بشكل جيد لرسائل خطأ توز التي يمكن أن تكون طويلة ولكن تحمل المعلومات الهامة على يسار رسالة الخطأ. يستخدم العرض التوضيحي أدناه وظيفة بادسترينغ بسيطة () إلى الرسائل القصيرة في الأعمدة.
يتم استدعاء الدالة أدتوفيفوتيتل () كلما أردت إضافة رسالة إلى الجدول. حجته الأولى هي اسم المتغير الثابت الذي يحتوي على الجدول، الوسيطة الثانية هي الرسالة التي تريد إضافتها إلى الجدول، والثالث هو الحد الأقصى لعدد الأسطر في الجدول. يؤدي تعيين الوسيطة الثالثة إلى صفر إلى مسح الجدول.
للحفاظ على الأمور بسيطة، يستخدم الرمز أدناه وظائف بارام لمحاكاة الرسائل في الوقت الحقيقي؛ في نظام حقيقي، سيتم إنشاء هذه الرسائل من قبل الأحداث في الوقت الحقيقي. لاختبار التعليمات البرمجية، انقر فوق أي من رسائل الأحداث المرقمة في نافذة المعلمة.
يجب أن يكون العنوان الذي تم إنتاجه كما يلي:
لاحظ أن الرسائل في هذا المثال مبطن لوضع العمود التالي بشكل صحيح. يتم عكس ترتيب الرسائل للسماح بظهور آخر رسالة في أعلى جدول الرسائل. كلما تم تجاوز الحد الأقصى لعدد الخطوط، تتم إزالة أقدم رسالة. للتأكد من أن يتم تحديث الجدول مرة واحدة على الأقل مرة أخرى يجب دائما تضمين ريكتيمدريفريش (1) في التعليمات البرمجية.
وأخيرا، في التداول الآلي، لا تحتاج دائما إلى المخططات، وقد تفضل عرض جدول حالة فقط. منذ يتم تخزين الجدول في متغير ثابت عالمي، يمكنك قراءة الجدول من أي جزء أو نافذة باستخدام سطرين فقط من التعليمات البرمجية:
إذا كنت تستخدم العديد من شاشات التمرير في أجزاء مختلفة، يجب أن تقوم بتغيير المتغيرات الثابتة كما هو موضح في متغيرات كينغ ثابت. يتبع الرمز التجريبي الكامل:
حرره آل فينوسا.
تعليقات خارج على رسالة في الوقت الحقيقي فيفو.
9 مايو 2007.
حسابات الوقت.
هناك حاجة إلى حسابات الوقت عند وضع غات (جيد في الوقت) و غد (حتى الآن تاريخ) أوامر. أبسط طريقة هي تحويل تيمنوم إلى سيكوندنوم، إجراء العمليات الحسابية في ثواني، ثم تحويل ثيندنوم مرة أخرى إلى تيمنوم. أول وظيفتين أدناه سوف تفعل ذلك بالنسبة لك.
وتطبق الدالة التالية مرجعا معبرا عنه في ثوان إلى الوقت المرجعي. وعادة ما تستخدم هذه الإشارة لحساب أوقات غات. قد تحتاج هذه الوظيفة عندما تريد تطبيق إزاحة لمرجع زمني ويكون أوامر تفعيلها تلقائيا خلال اليوم دون الحاجة إلى أن تكون على الانترنت.
حرره آل فينوسا.
تعليقات خارج على حسابات الوقت.
7 مايو 2007.
حسابات التاريخ (الإصدار 2)
في التداول في الوقت الفعلي، قد تحتاج إلى إجراء عمليات حساب التاريخ المشار إليها إلى تاريخ الكمبيوتر بدلا من داتينومبر من البيانات الخاصة بك. بدلا من أن تكافح مع السنوات والتواريخ والأشهر، فمن الأسهل بكثير لاستخدام نظام البيانات الخطية مثل راتا يموت، الذي يحسب ببساطة عدد الأيام منذ 31 ديسمبر من العام صفر. لاستخدام طريقة راتا يموت تحتاج فقط اثنين من وظائف التحويل لتحويل بين راتا يموت إلى داتنومبرز والعكس بالعكس. في هذا المنصب سيتم استخدام نظام راتا داي لحساب أيام ناسداك غير التجارية وحساب تاريخ يوم التداول السابق.
تم نشر وظائف التحويل المدرجة أدناه على قائمة المستخدمين أميبروكر التي كتبها بول هو (شكرا بول!)، وسوف تستخدم تنفيذ العمليات الحسابية اللازمة في هذا المنصب.
يتم نسخ أيام ناسداك غير التجارية من موقع نسداق، وتحويلها إلى داتينومبرز، ودخلت في التعليمات البرمجية باستخدام الدالة بارامستر () بحيث يمكن تغييرها سنويا دون حفر في التعليمات البرمجية. في ما يلي قائمة نموذجية لعام 2007:
ناسداك عطلة جدول التداول.
2007 التواريخ & # 8211؛ ما لم يذكر، التواريخ التالية هي العطل التي يتم إغلاق سوق الأوراق المالية في بورصة ناسداك:
1 يناير & # 8211؛ السنة الجديدة & # 8217؛ يوم.
15 يناير & # 8211؛ عيد ميلاد مارتن لوثر كينغ الابن & # 8217؛
19 فبراير & # 8211؛ رؤساء & # 8217؛ يوم.
6 أبريل & # 8211؛ جمعة جيدة.
28 مايو & # 8211؛ اليوم التذكاري.
4 يوليو & # 8211؛ عيد الاستقلال.
3 سبتمبر & # 8211؛ يوم العمل عيد العمال.
22 نوفمبر & # 8211؛ عيد الشكر.
25 ديسمبر & # 8211؛ يوم عيد ميلاد المسيح.
للعثور على تاريخ التداول السابق، تبدأ التعليمات البرمجية باستخدام تاريخ راتا داي السابق، وإذا كان هذا هو تاريخ التداول، فإنه ينقص عدد يموت راتا حتى يتم العثور على يوم التداول. يتم تحديد المتغيرات المحددة إلى عنوان المخطط بحيث يمكنك تغيير التاريخ باستخدام بارامديت () والاطلاع على تحويلات العمل ..
داتنومبرتوراتي (داتنومبر)
يي = إنت (نوم) + 1900؛
نوم = فراك (نوم) * 100؛
يي = يي + إنت ((مم-14) / 12)؛
مم = إيف (مم & لوت؛ 3، مم + 12، مم)؛
راتدينوم = روند (د + إنت ((153 * مم-457) / 5) + 365 * يي + إنت (يي / 4) - إنت (يي / 100) + إنت (يي / 400) - 306)؛
z = راتادينوم + 306؛
يو = إنت ((b + g) /365.25)؛
سيسي = b + z - إنت (365.25 * يو)؛
مم = إنت ((5 * سيسي + 456) / 153)؛
د = سيسي - إنت ((153 * مم-457) / 5)؛
يو = إيف (مم & غ؛ 12، يو + 1، يو)؛
مم = إيف (مم & غ؛ 12، مم - 12 مم)؛
فونداتيون نوترادينغداي (راتادينوم)
دن العالمية، ناسداكنتن؛
ريتورن دو == 0 أور دو == 6 أور سترفيند (ناسداكنتن، دنستر)؛
بينما (نوترادينغداي (RD2))
"كيرنت ترادينغ داي: \ n \ n" +
"ديت:" + نومتوستر (داتيتيمكونفيرت (2، DN1)، فورماتداتيتيم) + "" + ستركستراكت (أيام الأسبوع، DW1) + "\ n" +
"رقم اليوم:" + نومتوستر (DW1،1.0) + "\ n" +
"راتا داي:" + نومتوستر (RD1،1.0، فالس) + "\ n" +
ورايتيف (نوترادينغداي (RD1)، "هذا ليس يوم تداول"، "هذا يوم تداول") + "\ n \ n \ n" +
"يوم التداول السابق: \ n \ n" +
"السابق تداي:" + نومتوستر (داتيتيمكونفيرت (2، DN2)، فورماتداتيتيمي) + "" + ستركستراكت (أيام الأسبوع، DW2) + "\ n" +
"رقم اليوم:" + نومتوستر (RD2٪ 7،1.0) + "\ n" +
"راتا داي:" + نومتوستر (RD2،1.0، فالس) + "\ n" +
ورايتيف (نوترادينغداي (RD2)، "هذا ليس يوم تداول"، "هذا يوم تداول")؛
حرره آل فينوسا.
6 مايو 2007.
مقدمة في الوقت الحقيقي البرمجة أفل.
تقدم الأمثلة أفل المقدمة في هذه الفئة حلول البدء السريع للمساعدة في الحصول على مبتدئين في طريقهم إلى البرمجة في الوقت الحقيقي أفل. وسوف تشمل الموضوعات قياس الوقت، وتنفيذ التأخير، وجمع البيانات في الوقت الحقيقي، ومخزونات المسح، وجمع حالة النظام، والكشف عن الأخطاء، وعرض النظام وحافظة محفظة، وما إلى ذلك معظم التعليمات البرمجية قد تكون ذات صلة التداول الآلي السريع، ولكن الكثير من ذلك يمكن كما يمكن استخدامها في أشكال أخرى من التداول.
وليس المقصود منها أن تحل محل أو تكون بديلا عن وثائق أميبروكر الرسمية مثل المراجع أفل، ملفات ريدم في مجلد أميبروكر الخاص بك، قاعدة المعرفة، مكتبة أفل، دروس الفيديو الرسمية، وغيرها من مواد الدعم.
والهدف من ذلك هو خلق مصدر من الأمثلة الأساسية التي أعرض لكم تقنيات البرمجة أفل التي يمكنك تعديلها بسهولة لتلبية الاحتياجات الشخصية الخاصة بك. إذا كنت مبتدئا أو حتى إذا كنت مطور نظام متحمس، مورد تنظيما جيدا مثل هذا يمكن أن يوفر لك ساعات عديدة من البرمجة وجعل تطوير النظام الكثير أكثر متعة.
إذا كنت ترغب في استخدام السحب والإفلات، يمكنك إنشاء مجلد حلول #AFL (& # 8220؛ # & # 8221؛ تتم إضافته لإجبار هذا المجلد إلى أعلى شجرة الخاص بك) في C: \ بروغرام فيليز \ أميبروكر \ فورمولاس مجلد باستخدام مستكشف ويندوز. عند العودة إلى أميبروكر، تحتاج إلى انقر فوق عرض - & غ؛ تحديث الكل لجعل المجلد الجديد مرئيا. داخل مجلد #AFL سولوتيونس يمكنك إنشاء مجلدات فرعية لتلبية الاحتياجات المحددة الخاصة بك.
إذا اكتشفت حل أفل مفيدا، يجب نسخه إلى المجلد الفرعي المناسب من مجلد #AFL سولوتيونس. سيعطيك هذا مصدر ترميز مثير للإعجاب في غضون بضعة أسابيع قصيرة. قد يبدو التخطيط النموذجي كما يلي:
إذا كنت تعتمد اتفاقيات تسمية قياسية للمتغيرات الخاصة بك، فإن العديد من وحدات التعليمات البرمجية الخاصة بك تعمل معا دون الكثير من التغييرات. في نهاية المطاف سوف تكون قادرة على بناء أنظمة التداول في دقائق بدلا من ساعات، وذلك ببساطة عن طريق سحب وإسقاط وحدات التعليمات البرمجية إلى مؤشر أو ربما باستخدام معالج كود أفل.
حرره آل فينوسا.
تعليقات خارج على مقدمة في الوقت الحقيقي برمجة أفل.
2 مايو 2007.
إعادة تعيين المؤشرات.
مؤشرات التمهيد مثل ما ()، إما ()، T3 ()، ديما ()، وما إلى ذلك تهدف إلى إعطائك مؤشر متوسط لتحركات الأسعار. وهي تفعل ذلك عن طريق تصفية التغيرات ذات التردد العالي في متغير سعر معين. والمشكلة هي أن مثل هذه المؤشرات تستحدث فترة زمنية في النظام. مؤشر التأخر هو الأكثر وضوحا بسهولة عندما يكون الرسم البياني للسعر الإجمالي على نحو سلس نسبيا (على سبيل المثال، عندما يبقى ما بسيط () ضمن نطاق عالية منخفضة)، وفجأة يتحول السعر أو الثغرات. وعندما يحدث ذلك، تحتاج معظم مؤشرات التمهيد إلى العديد من الحانات للتغلب على تأثير هذه الثغرات وإعادة وضع نفسها مرة أخرى ضمن متوسط النطاق السعري للحانة.
على الرغم من أن جميع أنظمة التداول تعتمد على التأخر لمعرفة أن شيئا قد تغير، ودرجة التأخير التي يحتاجها النظام يختلف. مؤشرات إعادة تعيين هي الأكثر فائدة في النظم التي تتطلب وظيفة تمهيد التي تتبع عن كثب السعر، أي واحد الذي يظهر الحد الأدنى من التأخر.
عندما يواجه مؤشر ريستابل إزاحة مفاجئة أكبر من المعتاد إلى متوسط السعر، فإنه يغير السلوك ويعيد تعيين المؤشر إلى نقطة مرجعية محسوبة. في حين أن هناك أنماط أو ظروف أخرى (إشارات، توقف، الأهداف، الخ) التي قد ترغب في إعادة تعيين مؤشر، وتركز هذه المناقشة على الثغرات البسيطة التي يتم تعريفها من قبل وظائف أفل غابوب () و غابدون (). التقنيات المعروضة هنا تعمل بشكل جيد على قدم المساواة مع بيانات التخلص من الذخائر المتفجرة أو رت. تطبيق آخر للمفهوم سيكون في التداول رت حيث قد ترغب في إعادة المؤشر الخاص بك في بداية كل يوم جديد أو جلسة التداول.
وتستند فكرة إعادة التعيين إلى حقيقة أن وظائف التمهيد لها فترة أولية وأن تأخر المؤشر سيكون متناسبا مع تلك الفترة، أي أن الفترات الأطول تزيد من الفارق الزمني وتقصر الفترات الزمنية الأقصر. مع العلم أنه يمكننا إعادة تعيين مؤشر ببساطة عن طريق تحديد فترة إلى قيمة أقل. عادة، إعادة إلى فترة 1 يعمل بشكل جيد. بعد شريط إعادة تعيين، يتم زيادة الفترة مع كل شريط يمر حتى وصلت إلى قيمتها الأصلية.
النظر في مثال التخلص من الذخائر المتفجرة الموضح أدناه. تحدد الأشرطة البيضاء الفجوات التي تؤدي إلى إعادة تعيين.
في أول شريط أبيض الثغرات السعر يصل و T3 التقليدي (الأزرق) يتراجع على الفور، وفي الواقع يتحرك عكس السعر. إعادة تعيين T3 (الأحمر) إعادة تعيين نفسه عندما كشف الفجوة وعلى الفور تقريبا قادرة على تتبع أشرطة الأسعار في الاتجاه الصحيح.
هناك العديد من الطرق لإعادة تعيين مؤشر: يمكنك أن تفعل ذلك فجأة من خلال تحديد الفترة إلى 1؛ يمكنك الحفاظ على الحد الأدنى من التجانس عن طريق إعادة تعيين إلى 2 أو 3؛ أو يمكنك ضبط تدريجيا الفترة و / أو T3 حساسية وفقا لبعض الصيغة. يستخدم المثال المثال أدناه الصيغة T3 التي يمكن العثور عليها في مكتبة أميبروكر.
في المثال أدناه، يمكنني استخدام بداية (شريط 1) من يوم التداول لإعادة T3. ومع ذلك، هناك العديد من الحالات الأخرى التي قد ترغب في إعادة تعيين مؤشر. على سبيل المثال، عند استخدام توقف زائدة أو مخارج نوع سار، أحيانا قد ترغب في إعادة تعيين مؤشر عندما تحصل على شراء أو بيع إشارة. يمكنك تعيين مرجع إعادة التعيين الخاص بك عن طريق حساب متوسط أسعار كل شريط، على سبيل المثال، (O + H + L + C) / 4. ومع ذلك، يجب أن تبقى بعيدا عن القيم المتوسطة لأنها سوف تعيد تأخر. أنا أفضل استخدام (O + C) / 2، ولكن يجب أن تحاول أي عدد من الأفكار الأخرى التي تناسب ترضيك.
وظيفة T3 (السعر، T3Periods، ق)
e1 = أما (السعر، 2 / (T3Periods + 1))؛
e2 = أما (e1، 2 / (T3Periods + 1))؛
e3 = أما (e2، 2 / (T3Periods + 1))؛
e4 = أما (e3، 2 / (T3Periods + 1))؛
e5 = أما (e4، 2 / (T3Periods + 1))؛
e6 = أما (e5، 2 / (T3Periods + 1))؛
وظيفة T3r (C، T3Sensitivity، T3Periods، ريستريفيرانس)
كبريس = إيف (ريسيت، ريستريفيرانس، C)؛
T3Periods = مين (T3Periods، بارسسينس (ريسيت))؛
T3Periods = إيف (ريسيت، 1، T3Periods)؛
e1 = أما (كبريس، 2 / (T3Periods + 1))؛
e2 = أما (e1، 2 / (T3Periods + 1))؛
e3 = أما (e2، 2 / (T3Periods + 1))؛
e4 = أما (e3، 2 / (T3Periods + 1))؛
e5 = أما (e4، 2 / (T3Periods + 1))؛
e6 = أما (e5، 2 / (T3Periods + 1))؛
T3Sensitivity = بارام ("T3 سنسيتيفيتي"، 1،0،1،0،01)؛
T3Periods = بارام ("فترات T3"، 3،1،10،1)؛
ريسيت = غابوب () أور غابدون ()؛
T3rPlot = T3r (C، T3Sensitivity، T3Periods، ريستريفيرانس)؛
مؤامرة (T3 (C، T3Periods، T3Sensitivity)، "\ n T3 التقليدية"، 6،1 | ستايلثيك)؛
حرره آل فينوسا.
تعليقات خارج على إعادة تعيين المؤشرات.
28 أبريل 2007.
توقيت الجلسة.
نظام أتمتة صحيح يعني أنك برمجة نظام التداول الخاص بك لبدء وإيقاف في أوقات محددة أثناء الذهاب تلعب الغولف، أليس كذلك؟
وهذا يعني أنه بالإضافة إلى وجود مفتاح تمكين / تعطيل ماستر تحتاج إلى أتمتة بدء وإيقاف جلسة التداول الخاصة بك. على سبيل المثال، قد ترغب في بدء جلسة العمل في الساعة 9:30 صباحا وتنتهي تلقائيا في الساعة 4:00 مساء.
يستخدم التعليمة البرمجية أدناه بارامديت () و بارامتيمي () لتعيين بدء جلسة العمل وإيقاف التواريخ / الأوقات، ويقارن هذه المعلمات إلى النظام التاريخ والوقت التي يتم إرجاعها بواسطة الدالة نو (). فإنه يولد مختلف دول الدورة التي يتم عرضها في العنوان، عند دمج هذه التعليمات البرمجية في النظام الخاص بك سوف تستخدم هذه الدول لتنفيذ إجراءات محددة، مثل إغلاق كافة المواقف، إلغاء جميع الأوامر، وما إلى ذلك بلينتكست () ليست هناك حاجة حقا ولكن ألقيت في للمتعة.
حرره آل فينوسا.
تعليقات خارج على توقيت الجلسة.
جزء ونافذة تنفيذ النظام.
عدد قليل من المستخدمين الالتفات إلى النظام الذي يتم تنفيذ المهام التي تؤديها في مختلف أميبروكر لوحات ويندوز. يمكن أن يكون لترتيب عمليات التنفيذ الجزئي تأثير كبير على أداء نظام تداول سريع وفي الوقت الفعلي. فمن السهل أن نفترض أن الجزء-صيغ تنفيذ أعلى إلى أسفل، لكنها لا & # 8217؛ ر. في الواقع، أمر التنفيذ لا يمكن التنبؤ بها، وينبغي، لجميع الأغراض العملية، تعتبر عشوائية من قبل المستخدم.
على سبيل المثال، عند استخدام متغيرات ثابتة أو ثابتة، إذا قمت بتهيئة ستاتيفاريابل في الجزء العلوي لاستخدامها في الجزء السفلي، تريد الجزء العلوي لتنفيذ أولا بحيث يمكن استخدام القيمة المعينة حديثا على الفور، أي أثناء نفس تحديث في الجزء السفلي وليس في المخطط التالي تحديث، والتي قد تحدث ثانية أو أكثر في وقت لاحق.
الآن اعتبر أن الجزء السفلي ينفذ أولا. في هذه الحالة، فإنه يتطلب الانتظار إما حتى الاقتباس التالي أو، إذا كنت تستخدم الدالة ريكستيمدريفريش (1)، والثانية التالية (أيهما يأتي أولا). في هذه الحالة، فإن المتغير الثابت يحتوي على قيمة من التحديث السابق، مما يعني أن قيمة المتغير الثابت سوف تتخلف عن طريق تحديث مخطط واحد. إذا كانت الصيغة في الجزء السفلي تقوم بوضع الأوامر مع أسعار لمت استنادا إلى الاقتباس الأخير (الذي أدى إلى التحديث) ومنذ احتساب سعر لمت في الجزء العلوي أثناء التحديث السابق، فإن سعر لمت المستخدمة سوف يستند إلى السابق وليس الأخير الاقتباس. في معظم الحالات، وهذا من شأنه أن يقلل احتمالك لملء لمل.
الحل الواضح هو إلحاق رمز الطلب الخاص بك إلى التعليمات البرمجية التي تهيئة متغير ثابت الخاص بك وتنفيذ في نفس الجزء. ومع ذلك، قد يكون من الصعب القيام بذلك إذا كانت الصيغ طويلة، أو إذا كانت كل صيغة تنتج مخططات ذات جداول مختلفة و / أو عناوين غير متوافقة. ومع ذلك، إذا قررت حل المشكلة بهذه الطريقة، يجب عليك النظر في استخدام #include الملفات.
حل آخر هو فرض ريفريشال في نهاية صيغة التهيئة. سيؤدي ذلك إلى تحديث جميع الأجزاء بدون تأخير، ولكن الآن قد يتم تنفيذ بعض الأجزاء أكثر من مرة لكل تحديث مخطط. سيكون عليك أن تقرر ما إذا كان هذا مهم في النظام الخاص بك. يمكن إلحاق السطرين التاليين إلى التعليمات البرمجية الخاصة بك وسوف تجبر ريفريشال. كن على علم بأن الحد الأدنى فترة ريفريشال هو ثانية واحدة، لذلك إذا كانت علامات الاقتباس الخاصة بك تصل بشكل أسرع، وهذا قد لا تعمل بشكل جيد للغاية.
إذا كان أمر التنفيذ أمر بالغ الأهمية، يمكنك جعل ريفريشال () الشرطي على حساب جزء-عداد وإجبار ريفريشال فقط إذا طلب تنفيذ جزء منه. للعثور على ترتيب تنفيذ جزء، يمكنك إضافة عداد تنفيذ جزء إلى كافة صيغ جزء وتسجيل العد إلى ديبوغفيو. إذا كان عدد أقل في الجزء العلوي، مقارنة مع الجزء السفلي، وهذا يعني أنه تم تنفيذها في الجزء العلوي في وقت سابق. إذا كان عدد أكبر، تم تنفيذه في وقت لاحق من الجزء السفلي.
لكي تتمكن من تحديد الصيغة التي يتم تنفيذها في السجل، ضع اسم الصيغة في الجزء العلوي من الصيغة:
لإضافة العداد، يمكنك إلحاق الشفرة التالية بنهاية الصيغة:
كونتيرديسبلايلين = فلنام + "، تشارتيد:" + جيتشارتيد () + "، بانكونتر:" + نومتوستر (بانكونتر، 1.0، فالس)؛
سيظهر هذا الأمر ووقت التنفيذ، بالثواني، في إطار ديبوغفيو:
يمكنك دراسة / تحليل ترتيب تنفيذ جزء دون إزعاج التعليمات البرمجية الخاصة بك عن طريق إدراج رمز 4 سطر أدناه عدة مرات في نفس النافذة، وبالتالي خلق أجزاء متعددة. ثم قم بتغيير ترتيب الأجزاء باستخدام الأسهم الصغيرة في القائمة التي تنبثق عند تحريك مؤشر الماوس فوق الجانب الأيسر العلوي من الجزء. في هذا المثال يتم عرض ترتيب الجزء في عنوان المخطط.
تيتل = فلنام + "، بانكونتر:" + نومتوستر (بانكونتر، 1.0، فالس)؛
يظهر التقاط أعلاه أن أمر التنفيذ ليس من أعلى إلى أسفل. قد تلاحظ أنه في حالتك، أمر التنفيذ يتتبع كارتيد. ويرجع ذلك إلى إدراج الأجزاء في تسلسل واحد تلو الآخر، ولكن هذا لن يكون هو الحال في العادة.
في حين أن هذا الموضوع قد لا يكون مهما للجميع، وسوف تصبح حاسمة عند بدء الترقيع مع أنظمة التداول عالية التردد.
حرره آل فينوسا.
تعليقات خارج على جزء وتنفيذ نافذة التنفيذ.
24 أبريل 2007.
المتغيرات المستمرة (الإصدار 3)
متغيرات ثابتة الاحتفاظ قيمها طالما أميبروكر قيد التشغيل. If you shut down AmiBroker or experience a computer crash, your Static Variables lose their values. This can create serious problems in Automated Trading. For example, suppose you experience a computer crash while you have many pending orders. After restarting everything, you are unable to modify the orders, and so you are forced to use the TWS to manually clean up the mess and restart.
To prevent this situation, you can use Persistent variables that store their values on your Hard Disk. They will remain there until you delete them. Using Persistent variables, if you experience a crash or shut down your system during the night, the persistent variables will automatically be reloaded when you power up again.
Persistent variables can also be used to save ticker-specific system parameters. For example, you could run an optimization and save the optimized parameters in a Persistent Variable encoded with the Ticker’s name. Below are examples for saving text and numerical values. Arrays are not included here because arrays are better handled in other ways. Included in the code below is a handy function to create Persistent lists and to remove items from these lists. The list functions are useful when you wish to save lists of Symbols and/or OrderIDs dynamically.
Note that these parameters must be stored in a specific folder on your Hard Disk (see first code line below for an example of a typical recommended path). You must assign the desired location to the string variable PersistentPath . Remember that Persistent variables are Global just like Static variables, and their names may have to be encoded with ChartIDs and/or Symbol names to prevent them from being modified by different programs.
PersistentPath = "C:\\Program Files\\AmiBroker\\PersistentVariables\\";
function PersistentVarSetText( VarName, String )
fh = fopen( PersistentPath+VarName+".pva","w" );
fputs( String, fh );
function PersistentVarGetText( VarName )
fh = fopen( PersistentPath+VarName+".pva","r" );
String = fgets( fh );
function PersistentVarSet( VarName, Number )
fh = fopen( PersistentPath+VarName+".pva","w" );
fputs( String, fh );
function PersistentVarGet( VarName )
fh = fopen( PersistentPath+VarName+".pva","r" );
String = fgets( fh );
else Number = Null;
function PersistentListAdd( VarName, String )
List = PersistentVarGetText( VarName );
for( i=0; ( LoopItem = StrExtract( List, i ) ) != ""; i++ )
if( LoopItem == String ) SubStrExists = 1;
if( NOT SubStrExists )
List = List + String+",";
PersistentVarSetText( VarName, List );
function PersistentListRemove( VarName, String )
List = PersistentVarGetText( VarName );
for( i=0; ( LoopItem = StrExtract( List, i ) ) != ""; i++ )
if( LoopItem != String ) NewList = NewList + LoopItem +",";
PersistentVarSetText( VarName, NewList );
The following function was kindly contributed by suresh (see comment) and can be used to delete Persistent variables:
حرره آل فينوسا.
April 21, 2007.
Removing Static Variables.
Trading systems may use hundreds or even thousands of Static Variables, and the associated memory usage will eventually slow down your system. To prevent this you need to clear them whenever possible. Since at this time AmiBroker doesn’t have a function to remove all Static Variables from memory, you can remove them by referencing each of them by their name, i. e. StaticVarRemove( StaticVarName ).
Using an indexed name will allow you to use a loop to remove Static Variables from memory. For example, a naming convention such as BuyPrice + NumToStr(n,1.0,false), where n could be the DateNum(), TimeNum(), DateTime(), BarIndex(), etc., would allow you to use a simple loop to generate all possible names and remove those that return non-null values.
Below are two examples of how to remove StaticVariables with this technique. Be careful when using BarNum() because the bar number changes if you use SetBarsRequired(), or if you use Quick-AFL, or if your data exceed the amount set in your DataBase settings or in Preferences.
Here is an example of how to remove from memory Ticker-specific OrderIDs that were, for example, used in a portfolio trading system:
for( NT=0; ( Ticker = StrExtract( TradingBasket, NT ) ) != ""; NT++ )
حرره آل فينوسا.
Comments Off on Removing Static Variables.
المشاركات الاخيرة.
احدث التعليقات.
ريتشارد ديل على موارد البيانات & # 8211؛ فوريكس هيرمان على الطلب المواضيع في الوقت الحقيقي هنا مايك B على طلب المواضيع في الوقت الحقيقي هنا توماش جانيشكو على قاعدة بيانات الأسهم الأمريكية (v2) brian_z على إعداد قاعدة بيانات مخصصة & # 8211؛ ناسداك.
الاقسام.
أكتوبر 2018 (1) سبتمبر 2018 (1) أغسطس 2018 (1) يوليو 2018 (1) أبريل 2018 (2) مارس 2018 (6) فبراير 2018 (2) يناير 2018 (2) فبراير 2009 (2) أغسطس 2008 (1) (2008) (17) تشرين الأول / أكتوبر 2008 (17) أيلول / سبتمبر 2008 (17) آب / أغسطس 2008 (26) تموز / يوليه 2007 (20) يونيو 2007 (17) أيار / مايو 2007 (8) نيسان / أبريل 2007 (16) كانون الثاني / يناير 2007 (1)
This site uses WordPress Page generated in 0.502 seconds.
No comments:
Post a Comment