Friday 19 January 2018

بسيط الحركة من المتوسط التنفيذ


المتوسط ​​المتحرك البسيط - سما كسر المتوسط ​​المتحرك البسيط - سما المتوسط ​​المتحرك البسيط قابل للتخصيص بحيث يمكن حسابه لعدد مختلف من الفترات الزمنية، وذلك ببساطة عن طريق إضافة سعر إغلاق الضمان لعدد من الفترات الزمنية ثم تقسيم هذا المجموع حسب عدد الفترات الزمنية التي تعطي متوسط ​​سعر الضمان خلال الفترة الزمنية. متوسط ​​متحرك بسيط يزيل التقلب، ويجعل من الأسهل لعرض اتجاه السعر للأمن. إذا ارتفع المتوسط ​​المتحرك البسيط، فهذا يعني أن سعر الأمن آخذ في الازدياد. إذا كان يشير لأسفل فهذا يعني أن سعر الأمن آخذ في التناقص. وكلما زاد الإطار الزمني للمتوسط ​​المتحرك، كلما كان المتوسط ​​المتحرك البسيط أكثر سلاسة. والمتوسط ​​المتحرك القصير الأجل أكثر تقلبا، ولكن قراءته أقرب إلى بيانات المصدر. الأهمية التحليلية تعد المتوسطات المتحركة أداة تحليلية مهمة تستخدم لتحديد الاتجاهات الحالية للأسعار وإمكانية إحداث تغيير في اتجاه ثابت. أبسط شكل من أشكال استخدام المتوسط ​​المتحرك البسيط في التحليل هو استخدامه لتحديد بسرعة إذا كان الأمن في اتجاه صاعد أو اتجاه هبوطي. أداة تحليلية شعبية أخرى، وإن كانت أكثر تعقيدا، هي مقارنة زوج من المتوسطات المتحركة البسيطة التي تغطي كل منها أطر زمنية مختلفة. وإذا كان المتوسط ​​المتحرك البسيط على المدى القصير أعلى من المتوسط ​​الأطول أجلا، فمن المتوقع حدوث اتجاه صعودي. من ناحية أخرى، فإن المتوسط ​​على المدى الطويل فوق المتوسط ​​الأقصر يشير إلى حركة هبوطية في الاتجاه. أنماط التداول الشائعة اثنين من أنماط التداول الشائعة التي تستخدم المتوسطات المتحركة البسيطة تشمل الصليب الموت والصليب الذهبي. يحدث تقاطع الموت عندما يتقاطع المتوسط ​​المتحرك البسيط لمدة 50 يوم دون المتوسط ​​المتحرك ل 200 يوم. ويعتبر هذا إشارة هبوطية، أن المزيد من الخسائر في المخزن. يحدث العبور الذهبي عندما يكسر المتوسط ​​المتحرك على المدى القصير فوق المتوسط ​​المتحرك على المدى الطويل. يمكن أن يؤدي ذلك إلى زيادة مكاسب التداول في المخزن. A المتوسط ​​المتحرك البسيط للتنفيذ في جافا في عدة مناسبات أراد إيف حساب مقاييس بسيطة في تطبيقات جافا، على سبيل المثال عدد الزيارات في الساعة أو الأخطاء طوال الوقت فترة. في حين أن حساب مقاييس بسيطة ليس صعبا بشكل رهيب، إلا أن عمله الإضافي ومعرفه ينفقان ذلك الوقت على نطاق المشكلة. فوجئت بعدم العثور على أي حلول مقبولة على نطاق واسع للمقاييس في جافا. لم أجد المقاييس ولكن يبدو قليلا معقدة جدا وغير موثقة بشكل جيد - كل ما أردت حقا هو لحساب المتوسط ​​المتحرك. فكرت في المشكلة بعض أكثر وقررت أنها ليست مشكلة صعبة. هيريس الحل الخاص بي يعمل هذا من خلال إنشاء مجموعة من حجم التحديث تحديث النافذة، ثم مؤشر ترابط العد إلى الفهرس التالي في الصفيف على تردد التحديث. العد للفاصل هو ببساطة أري - arrayi1، وهو أحدث عدد ناقص أقدم عدد. لمدة 10 دقيقة الفاصلة، أقدم العد (i1) هو بالضبط 10 دقيقة من العمر. لإضافة المتوسط ​​المتحرك إلى التعليمات البرمجية لدينا أولا تحتاج جيدا عداد، وذلك باستخدام أتوميكلونغ. يجب زيادة هذا العداد استنادا إلى الأحداث التي تهتم بها في الحوسبة (مثل طلبات بوست لخدمة ريست). نحن بحاجة إلى توفير التنفيذ مع الوصول إلى العداد والتي يتم إنجازها من خلال واجهة جيتكونت. هنا إل إنشاء متوسط ​​متحرك مع نافذة 5 دقائق يتم تحديث كل ثانية. وللحصول على المتوسط ​​الحالي نحن ببساطة استدعاء الأسلوب جيتايفيراج: تفصيل التنفيذ الرئيسي هو كيف يتم تحديد حجم الصفيف: عن طريق قسمة النافذة عن طريق تكرار التحديث. لذلك نافذة كبيرة مع تكرار التحديث المتكررة يمكن أن تستهلك قدرا كبيرا من الذاكرة. في هذا المثال حجم صفيف هو معقول 300. ومع ذلك، إذا أنشأنا المتوسط ​​المتحرك 24 ساعة مع فاصل زمني 1 ثانية سيكون حجم 86400 تردد التحديث أكثر معقولية لفترة 24 ساعة قد يكون كل 5 دقائق (حجم صفيف من 288 ). وهناك اعتبار آخر لاختيار النافذة وتردد التحديث هو أن النافذة يجب أن تكون قابلة للتجزئة حسب التردد. على سبيل المثال نافذة 2 دقيقة مع تردد التحديث 6 ثانية على ما يرام، ولكن تردد التحديث 7 ثانية ليست كذلك، لأنه لا قسمة من قبل 120. يتم طرح إليغالارغمنتكسيبتيون إذا كان تردد التحديث معامل نافذة ليست صفر. يتطلب هذا التنفيذ مؤشر ترابط واحد لكل متوسط ​​متحرك، وهو ليس فعالا جدا. الحل الأفضل هو مشاركة مؤشر الترابط عبر العديد من المتوسطات. تحديث . إيف تحديث التعليمات البرمجية لمشاركة موضوع هنا. وأخيرا، ثيريس مشكلة حالة أولية: ليس لدينا بيانات حتى الآن للنافذة بأكملها. على سبيل المثال إذا كان لديك نافذة 5 دقائق و 15 ثانية فقط من البيانات. يرجع هذا التنفيذ نول حتى يكون لدينا 5 دقائق من البيانات. وثمة نهج آخر هو تقدير المتوسط. لنفترض أن لدينا عد 10 في 30 ثانية، ثم يمكننا تقدير المتوسط ​​كما 40 في 2 دقيقة. ومع ذلك هناك خطر حدوث خطأ كبير من خلال استقراء البيانات غير مكتملة. على سبيل المثال، إذا كان لدينا انفجار من 20 زيارة في 2 ثانية، ويد يكون تقدير 1200 في 2 دقيقة، والتي في جميع الاحتمالات هو طريق قبالة. في الإحصاءات متوسط ​​متحرك بسيط هو خوارزمية تحسب المتوسط ​​غير المرجح من عينات ن الماضي . وعادة ما تسمى المعلمة n بحجم النافذة، لأن الخوارزمية يمكن اعتبارها نافذة تنزلق فوق نقاط البيانات. باستخدام صيغة عودية للخوارزمية، يتم تقليل عدد العمليات المطلوبة لكل عينة إلى إضافة واحدة، وطرح واحد وقسم واحد. منذ صياغة مستقلة عن حجم النافذة ن. التعقيد وقت التشغيل هو (1). أي ثابت. والصيغة العودية للمتوسط ​​المتحرك غير المرجح هي حيث يكون المتوسط ​​المتوسط ​​المتداول ويمثل x نقطة بيانات. لذلك، كلما تنزلق النافذة إلى اليمين، نقطة بيانات واحدة، الذيل، يتسرب ونقطة بيانات واحدة، الرأس، يتحرك. التنفيذ تنفيذ المتوسط ​​المتحرك البسيط يجب أن يأخذ ما يلي في الاعتبار تهيئة الخوارزمية ما دام لم يتم ملء النافذة بالكامل مع القيم، فشل صيغة عودية. التخزين مطلوب الوصول إلى عنصر الذيل، والتي اعتمادا على تنفيذ يتطلب تخزين العناصر ن. يستخدم تطبيقي الصيغة المقدمة عندما يتم ملء النافذة بالكامل بالقيم، ويتحول بطريقة أخرى إلى الصيغة التي تقوم بتحديث الوسط من خلال إعادة حساب مجموع العناصر السابقة. لاحظ أن هذا يمكن أن يؤدي إلى عدم الاستقرار العددي بسبب الحساب العائم نقطة. وفيما يتعلق استهلاك الذاكرة، وتنفيذ يستخدم متكررات لتتبع الرأس والذيل العناصر. وهذا يؤدي إلى تنفيذ مع متطلبات الذاكرة الثابتة مستقلة عن حجم النافذة. هنا هو إجراء التحديث الذي ينزلق النافذة إلى اليمين. في معظم المجموعات تبطل العدادين عند تعديل المجموعة الأساسية. غير أن التنفيذ يعتمد على عدد صحيح من الباحثين. ولا سيما في التطبيقات القائمة على التدفق، تحتاج المجموعة الأساسية إلى تعديلها عند وصول عنصر جديد. طريقة واحدة للتعامل مع ذلك هو إنشاء بسيطة حجم دائري حجم ثابت من حجم N1 أن يبطل أبدا تكراراتها وإضافة عنصر بالتناوب واستدعاء التحول. أتمنى أن أستطيع معرفة كيفية تنفيذ هذا فعلا، حيث أن وظيفة الاختبار مربكة جدا بالنسبة لي 8230 هل أحتاج إلى تحويل البيانات إلى صفيف، ثم تشغيل سما سما جديد سما (20، صفيف) لمدة 20 فترة سما كيف يمكنني التعامل مع شيفت () هل من الضروري تنفيذ منشئين. (آسف للارتباك). لا تحتاج don8217t لتحويل البيانات الخاصة بك إلى صفيف طالما البيانات الخاصة بك ينفذ IEnumerable1 ونوع تعداد مزدوج. بقدر ما يتعلق الأمر الرسائل الخاصة بك تحتاج إلى تحويل داتارو إلى شيء أن عدد لا يحصى من القيم المزدوجة. نهجك يعمل. شيفت، الشرائح نافذة موقف واحد إلى اليسار. لمجموعة البيانات من 40 القيم ويقول 20 سما فترة لديك 21 مواقف نافذة يناسب في (40 8211 20 1). في كل مرة تقوم فيها باستدعاء شيفت () يتم نقل الإطار إلى اليسار بموقف واحد، ويقوم متوسط ​​() بإرجاع سما لموقف النافذة الحالي. وهذا يعني، المتوسط ​​غير المرجح لجميع القيم داخل النافذة. بالإضافة إلى ذلك بلدي التنفيذ يسمح لحساب سما حتى لو لم يتم ملء نافذة بالكامل في البداية. لذلك في جوهر نأمل أن يساعد هذا. أي أسئلة أخرى حقوق النشر إشعار كريستوف هيندل و cheind. wordpress، 2009-2018. ممنوع الاستخدام غير المصرح به أندور الازدواجية من هذه المادة دون إذن صريح وخطي من هذه بلوق المؤلف صاحب أندور ممنوع منعا باتا. ويمكن استخدام مقتطفات وروابط، شريطة أن يتم إعطاء الائتمان الكامل والواضح لكريستوف هيندل و cheind. wordpress مع الاتجاه المناسب والمحدد للمحتوى الأصلي. المشاركات الاخيرة

No comments:

Post a Comment