بى الحركة من المتوسط النصي


لدي مشكلة صغيرة. لدي مختبر الظاهري، سيقوم الطالب بإكمال مسح مع 5 أسئلة، كل تكاليف 2 نقطة. خيار سيئة -2 نقطة، خيار جيد 2 نقطة. لذلك، في النهاية، عندما الصحافة طالب تظهر لي النتائج، أريد أن البرنامج النصي لتحديث حقل الوسائط من مستخدمي الجدول وتحديث حقل نوتا من الجدول عامل. هذا الطالب سوف تحصل على المزيد من النتائج ولكن إذا كان لديه نتيجة 4، يجب أن يكون متوسط ​​4، دون النظر في نتائج أخرى. أنا أرفق النصي فب، فإنه لا يعمل، فإنه لم حساب المتوسط ​​الذي أريد. بس: وسائل الإعلام يعني المتوسط، معنى معنى معنى أو ملاحظة، سوما معنى المبلغ، نرنوت معنى عدد من الملاحظات. إذا كنت تنفيذ حدد إذا (notalt4،4، أفغ (نوتا)) كما الوسيط من المختبر حيث ستودنتيتوريسكوياهو أنه يظهر 4 أن الخطأ. ليس لدي 4 في ملاحظاتي. ما هو الخطأ هنا إذا كان لدي واحد 4، متوسط ​​عوائد 4، هو جيد هنا. طلب يوليو 3 11 في 15:16 مغلقة كما غير واضح ما كنت تطلب من قبل تريبلي. andrewsi. HaveNoDisplayName. هيمانشو. أليكس ديك 19 15 في 5:10 يرجى توضيح المشكلة المحددة الخاصة بك أو إضافة تفاصيل إضافية لتسليط الضوء بالضبط ما تحتاجه. كما it39s مكتوبة حاليا، من الصعب أن أقول بالضبط ما you39re يسأل. راجع صفحة كيفية طلب المساعدة من أجل توضيح هذا السؤال. إذا كان يمكن إعادة صياغة هذا السؤال لتناسب القواعد في مركز المساعدة. يرجى تعديل السؤال. اقتباس don39t العمل، فإنه didn39t حساب متوسط ​​أنني أريد. كوت ما هو حساب ثم ما هي النتائج هل هناك أي أخطاء نداش user456814 يوليو 3 11 في 15: 25AFL المضيف البرمجة هام ملاحظة. منذ إدخال حلقات الحلقات المحلية وتدفق التحكم مثل إف-إلس وبينما في الإصدار 4.40 أهمية البرمجة قد تقلص إلى حد كبير. حاليا معظم المهام التي تتطلب البرمجة في الإصدارات السابقة يمكن التعامل معها في أفل الأصلي. ماذا يكون أكثر الحلقات أفل هي 3-6 مرات أسرع من جسكريبتفبسكريبت. أفل البرمجة النصية هو واجهة بين محرك أفل و جسكريبتفبسكريبت محركات (ويعرف أيضا باسم تقنيات البرمجة النشط) المتاحة كجزء من أدوات الإنترنت أمبير تقنيات منصة المقدمة من قبل مايكروسوفت. انها تسمح لك لبناء الصيغ التي لها أجزاء في رمز أفل وأجزاء في جسكريبتفبسكريبت. المتطلبات أميبروكر 3.59 أو أعلى محركات ميكروسوفت جسكريبتفبسكريبت تثبيت محركات ميكروسوفت جسكريبتفبسكريبت تأتي مع إنترنيت إكسبلورر 4 أو أعلى (ويندوز 98، ميلنيوم، 2000 قد أدرجت في نظام التشغيل). ولكن ينصح بتثبيت أحدث إصدار من إنترنيت إكسبلورر (5.5) أو تنزيل أحدث إصدار من ويندوز سكريبتينغ هوست (5.5) من ميكروسوفت: يمكن العثور على وثائق جسكريبتفبسكريبت على صفحة البرمجة النصية الرسمية على العنوان التالي: msdn. microsoftscripting تمكين أفل سكريبتينغ هوست إذا كنت ترغب في استخدام البرامج النصية داخل الصيغ لديك إلى استدعاء الدالة إنابليسكريبت () في بداية الصيغة. وظيفة يأخذ معلمة واحدة المدخلات - اسم المحرك: من ثم على، سوف تكون قادرة على تجسيد أجزاء مكتوبة بلغة البرمجة في الصيغ الخاصة بك. يجب أن يتم وضع علامة بداية ونهاية السيناريو مع تسلسل لوت و غ، كما هو مبين في المثال أدناه: كوتنورمالكوت بيانات أفل شراء الصليب (ماسد ()، 0) بيع الصليب (0، ماسد ()) لوت. رمز البرنامج النصي هنا. غ كوتنورمالكوت أفل بيانات شراء إكسريم (شراء، بيع) حاليا الطريقة الوحيدة لتبادل المعلومات بين كوتنورمالكوت جزء أفل والجزء النصي هو استخدام المتغيرات. المضيف أفل البرمجة يعرض كائن واحد (محددة مسبقا، لا كرياتيونينيتياليزاشيون اللازمة) دعا أفل. يحتوي كائن أفل على خاصية بارامتريزد واحدة (افتراضي) تسمى فار (فارنام) يمكن استخدامها للوصول إلى متغيرات أفل من جانب البرنامج النصي: حيث إن فار هو خاصية افتراضية يمكنك حذف اسمها والكتابة ببساطة أفل (فارنام) كما هو موضح في المثال أدناه: في أفل هناك ثلاثة أنواع البيانات الممكنة: صفيف (من أرقام نقطة العائمة)، وعدد (نقطة عائمة) وسلسلة. تستخدم محركات فسكريبت و جسكريبت نوع البيانات المتغير الذي يمكن أن يحمل أي نوع من المتغيرات بما في ذلك ثلاثة المستخدمة من قبل أفل. كما هو الحال في أفل، كنت لا تعلن المتغيرات في لغات البرمجة النصية، يتم تحديد نوع من قبل المهمة الأولى. في حالة فسكريبت يمكنك جيتسيت أفل المتغيرات من أي نوع معتمد باستخدام بناء الجملة هو مبين أعلاه. ولكن في جسكريبت، وذلك بسبب الاختلاف الأساسي في التعامل مع المصفوفات في جسكريبت (يتم تنفيذ عناصر صفيف في جسكريبت كما بروبيتيتس ديناميكية من كائن صفيف) تحتاج إلى استخدام التعليمات البرمجية التالية للحصول على قيمة أفل مجموعة في مجموعة جسكريبت: و جيتاراي ( ) وظيفة المبينة أعلاه يجعل من السهل لتحويل أتمتة من نوع مصفوفة آمنة في مجموعة جسكريبت. يوضح هذا المثال أيضا كيفية تعريف واستخدام الدالات في جسكريبت تعيين متغيرات أفل من صفائف جانب البرنامج النصي هو أكثر بساطة، مضيف البرمجة أفل بالكشف عن صفائف جسكريبت ويمكن الحصول على محتوياتها مباشرة: يتم التعامل مع جميع أنواع البيانات الأخرى نفسها في جسكريبت و فسكريبت التكرار من خلال المصفوفات واحدة من أهم المهام الأساسية التي يمكن أن يفعلها الجميع هي التكرار من خلال المصفوفة. في فسكريبت يمكن القيام بذلك باستخدام ل .. توا .. البيان التالي، في جسكريبت باستخدام ل () بيان. كل من هذه البنيات تحتاج إلى معرفة حجم صفيف أو عدد من العناصر في الصفيف. في فسكريبت يجب استخدام الدالة أوبوند (أراري) للحصول على الحد العلوي من المصفوفة، في جسكريبت يمكنك فقط استخدام خاصية طول المصفوفة. تظهر الأمثلة التالية هذا. (يرجى تذكر أنه في كل من صفائف فسكريبت و جسكريبت تعتمد على الصفر.) أ) مثال المؤشر - المتوسط ​​المتحرك الأسي: ب) مثال هدف الربح المستهدف هنا يأتي مثال الصيغة التي تحقق هدف الربح المستهدف عند النسبة المئوية الثابتة 10 من سعر الشراء. لاحظ أن حالة الشراء يتم الوفاء بها عندما يصل السعر إلى مستوى جديد، لذلك يحدث عدة مرات بعد الشراء الأولي. ولذلك فالوهن (شراء، وثيقة) لا يمكن أن تعطيك سعر الشراء الأولي وهذا النوع من حكم التداول لا يمكن تنفيذها في أفل نفسها. ولكن، مع البرمجة لا توجد مشكلة. مزيد من المعلومات تتوفر المزيد من عينات البرمجة في مكتبة أفل على الخط في: amibrokerlibrarylist. php في حالة أي أسئلة أخرى والتعليقات والاقتراحات يرجى الاتصال بي على العنوان التالي: سوبورتاميبروكر. يرجى ملاحظة أن البرمجة أفل هو موضوع متقدم إلى حد ما ويجب أن تلعب قليلا مع أفل أولا قبل الذهاب عميقا جدا في scripting. Im في محاولة لاسترداد إما الأخير من مجموعة كبيرة من البيانات (15000 القيم). بل هو خوارزمية جائع الموارد جدا لأن كل قيمة تعتمد على سابقتها. هنا هو بلدي التعليمات البرمجية: ما فعلت بالفعل: عزل k لذلك لا يتم حساب 10000 مرات إبقاء فقط أحدث إما المحسوبة، وعدم الاحتفاظ بها جميعا في مصفوفة استخدام ل () بدلا من فوريش () صفيف البيانات ليس لديها مفاتيح لها مجموعة أساسية هذا سمح لي إلى تقليل وقت التنفيذ من 2000ms إلى حوالي 500ms ل 15000 القيم ما لم يعمل: استخدام سبلفيسدراي ()، هذا حلق فقط 10ms تنفيذ 1،000،000 القيم استخدام تمديد فبترادر. وهذا يعيد مصفوفة تحتوي على جميع إماس بدلا من أحدث فقط، وبطء الكتابة وتشغيل نفس الخوارزمية في C وتشغيلها أكثر من 2،000،000 القيم يأخذ فقط 13ms ومن الواضح ذلك، وذلك باستخدام لغة المترجمة، وانخفاض مستوى يبدو أن يساعد P حيث يجب أن أذهب من هنا سيتم تشغيل التعليمات البرمجية في نهاية المطاف على أوبونتو، لذلك اللغة التي يجب أن أختار سوف فب تكون قادرة على استدعاء وتمرير مثل هذه الحجة الضخمة إلى السيناريو طلب يوليو 11 14 في 19:21 واضح تنفيذ مع تمديد يمنحك دفعة كبيرة. بالإضافة إلى ذلك يمكن تحسين حساب التفاضل والتكامل في حد ذاته وهذا المكسب يمكنك إضافة في أيهما اللغة التي تختارها. فمن السهل أن نرى أن لاستيما يمكن حسابها على النحو التالي: يمكن إعادة كتابة هذا على النحو التالي من أجل إخراج من حلقة بقدر الإمكان: لشرح استخراج k أعتقد أنه في الصيغة السابقة كما لو أن كل يتم ضرب البيانات الخام الأصلية في ك حتى عمليا يمكنك بدلا من ذلك مضاعفة النتيجة النهائية. لاحظ أن إعادة كتابة بهذه الطريقة، لديك 2 عمليات داخل حلقة بدلا من 3 (لتكون دقيقة داخل حلقة هناك أيضا زيادة، وأنا مقارنة مع سيزداتا وتعيين قيمة لاستيما) لذلك بهذه الطريقة يمكنك أن تتوقع تحقيق إضافية سبيدوب في النطاق ما بين 16 و 33. وعلاوة على ذلك هناك تحسينات أخرى يمكن اعتبارها على الأقل في بعض الظروف: النظر في القيم الأخيرة فقط يتم ضرب القيم الأولى عدة مرات بواسطة k1m 1 - k بحيث مساهمتها قد تكون قليلة أو حتى تذهب تحت دقة النقطة العائمة (أو الخطأ المقبول). هذه الفكرة مفيدة بشكل خاص إذا كنت تستطيع أن تفعل افتراض أن البيانات القديمة هي من نفس الترتيب من حيث الحجم الأحدث لأنه إذا كنت تعتبر فقط قيم n الماضي الخطأ الذي تقوم به هو إيموفديسكارديداتا (1-k) n. حتى إذا كان ترتيب من الحجم هو نفسه على نطاق واسع يمكننا أن نقول أن الخطأ النسبي القيام به هو ريل إر لاستما إماوفسكارديداتا (1-ك) ن الماضي سيما أن يساوي تقريبا ببساطة (1-ك) ن. تحت افتراض أن لاستما يساوي تقريبا إيموفديسكارديداتا: دعونا نقول أنه يمكنك قبول ريلر خطأ نسبي يمكنك النظر بأمان فقط القيم ن الماضي حيث (1 - k) n لوت ريلر. يعني أنه يمكنك قبل حساب (قبل حلقة) ن سجل (ريلر) سجل (1-ك) وحساب جميع فقط النظر في القيم ن الماضي. إذا كانت مجموعة البيانات كبيرة جدا هذا يمكن أن تعطي سرعة معقولة. ضع في اعتبارك أنه بالنسبة لأرقام النقطة العائمة 64 بت لديك دقة نسبية (ذات صلة بالعالمة) التي هي 2-53 (حوالي 1.1e-16 و 2-24 5.96e-8 فقط لأرقام نقطة عائمة 32 بت) بحيث لا يمكنك الحصول على أفضل من هذا الخطأ النسبي لذلك أساسا يجب أن لا يكون لديك ميزة في حساب أكثر من n سجل (1.1e-16) سجل (1-k) القيم. على سبيل المثال إذا كان نطاق 2000 ثم ن سجل (1.1e-16) سجل (1-22001) 36746. وأعتقد أن من المثير للاهتمام أن نعرف أن الحسابات الإضافية سوف تضيع داخل جولة هو عديم الفائدة هو أفضل عدم القيام به. الآن مثال واحد للحالة حيث يمكنك قبول خطأ نسبي أكبر من العائمة نقطة الدقة ريل 1ppm 1e-6 0.00001 6 أرقام عشري كبير لديك ن سجل (1.1e-16) سجل (1-22001) 13815 أعتقد تماما عدد قليل مقارنة بأرقام العينات الأخيرة الخاصة بك حتى في تلك الحالات يمكن أن يكون سبيدوب واضحا (إم على افتراض أن مجموعة 2000 هو ذات مغزى أو عالية للتطبيق الخاص بك ولكن لا أستطيع أن أعرف). فقط عدد قليل من الأرقام الأخرى لأنني لا أعرف ما هي الأرقام النموذجية الخاصة بك: ريل 1e-3 مجموعة 2000 n 6907 ريلر 1e -3 مجموعة 200 n 691 ريلر 1e-3 مجموعة 20 n 69 ريلر 1e-6 مجموعة 2000 n 13815 ريلر 1e - 6 نطاق 200 n 1381 ريلر 1e-6 النطاق 20 n 138 إذا كان لا يمكن أن تؤخذ على افتراض لاستيما يساوي تقريبا إماوفديسكارديداتا الأمور أقل سهولة ولكن لأن ميزة كام تكون كبيرة يمكن أن يكون من المفيد أن تستمر: نحن بحاجة إلى إعادة النظر في الصيغة الكاملة: ريل إيموفديسكاردداتا (1-k) n لاستيما (n-لو) (n-لو) (ريلر لاستيما إماوفسكاردداتا) سجل (1-k) (لوغ (ريلر لوغ (لاستيما إماوفسكاردداتا)) سجل (1-k) إيموفديسكارديداتا (دون حساب في نهاية المطاف لاستيما ولا إماوفسكارديداتا بطبيعة الحال) حالة واحدة هي عندما نعلم مسبقا أن على سبيل المثال إماوفديسكاردداتا لاستيما لوت M (على سبيل المثال M 1000 أو M 1E6) في هذه الحالة n لوت (لوغ (ريلرم)) لوغ (1) - k) إذا كنت لا يمكن أن تعطي أي عدد M لديك للعثور على معرف جيد إي إلى الإفراط في تقدير إماوفديسكارديداتا لاستيما طريقة سريعة واحدة يمكن أن تأخذ M ماكس (البيانات) دقيقة (البيانات) موازية يمكن إعادة كتابة الحساب في شكل حيث هو إضافة بسيطة لشروط مستقلة: حتى إذا كانت لغة التنفيذ يدعم بالتوازي يمكن تقسيم مجموعة البيانات في 4 (أو 8 أو n. في الأساس عدد النوى وحدة المعالجة المركزية المتاحة) قطع ويمكن حساب مجموع المصطلحات على كل قطعة في موازاة تلخيص النتائج الفردية في نهاية المطاف. أنا لا أذهب بالتفصيل مع هذا لأن هذا الرد هو بالفعل طويلة بشكل رهيب، وأعتقد أن هذا المفهوم قد أعرب بالفعل. أشكركم على هذا I39m باستخدام هذا على بيانات سوق الأوراق المالية، وبالتالي فإن حقيقة أن البيانات القديمة هي على نفس الترتيب من حيث البيانات الجديدة تعتمد على الإطار الزمني المستخدم. لنفترض أن مجموعة من 200، سيكون هناك اختلاف أكبر بكثير في الأسعار على الإطار الزمني اليومي (200 يوما) من 5 دقائق الإطار الزمني (16 ساعة). سأختبر سيناريوهات مختلفة على البيانات الحقيقية والمحاكاة. على البيانات الجديدة، مع مجموعة لوت 200، يمكنني استخدام 1000 مجموعة البيانات. ولكن أيضا القيام ببعض اختبار الظهر على مدى السنوات القليلة الماضية، لذلك ما زلت بحاجة لتحميل مجموعة البيانات بأكملها. لقد ساعدت لكلا الحالتين، شكرا لك نداش ليكيجينس 16 يوليو 14 في 15:11 بناء ملحق الخاص بك بالتأكيد يحسن الأداء. هيريس تعليمي جيد من موقع زيند. بعض أرقام الأداء: الأجهزة: أوبونتو 14.04، فب 5.5.9، 1 النواة إنتل CPU3.3Ghz، 128MB من ذاكرة الوصول العشوائي (في فس). قبل (فب فقط، 16،000 القيم). 500ms c التمديد، 16،000 القيم. 0.3ms C التمديد (100،000 القيم). 3.7ms C التمديد (500،000 القيم). 28.0ms ولكن الذاكرة إم محدودة في هذه المرحلة، وذلك باستخدام 70MB. وسوف إصلاح ذلك وتحديث الأرقام وفقا لذلك.

Comments