تعلم الآلة: كيف يمكن دعم آلات المتجهات يمكن استخدامها في التداول.
ما هي آلة دعم ناقلات؟
جهاز ناقل الدعم هو وسيلة للتعلم الآلي الذي يحاول أخذ بيانات المدخلات وتصنيفها في واحدة من فئتين. ولكي تكون آلة ناقل الدعم فعالة، من الضروري استخدام مجموعة من بيانات المدخلات والمخرجات التدريبية لبناء نموذج جهاز ناقل الحركة الذي يمكن استخدامه لتصنيف البيانات الجديدة.
وتطور آلة ناقلات الدعم هذا النموذج من خلال أخذ مدخلات التدريب، ورسم الخرائط في حيز متعدد الأبعاد، ثم استخدام الانحدار للعثور على مفرط (وهي عبارة عن سطح في مساحة ن الأبعاد، تفصل بين الفضاءين إلى نصف المسافات) التي تفصل أفضل والفئتين من المدخلات. مرة واحدة وقد تم تدريب آلة ناقلات الدعم، وأنها قادرة على تقييم المدخلات الجديدة فيما يتعلق مفرطة فصل وتصنيفها في واحدة من الفئتين.
آلة ناقل الدعم هي في الأساس آلة الإدخال / الإخراج. يمكن للمستخدم أن يضع في المدخلات، واستنادا إلى نموذج وضعت من خلال التدريب، فإنه سيعود الناتج. عدد المدخلات لأي جهاز ناقل دعم معين يتراوح نظريا من واحد إلى ما لا نهاية، ولكن من الناحية العملية قوة الحوسبة لا تحد من عدد المدخلات التي يمكن استخدامها. على سبيل المثال، يتم استخدام المدخلات N لجهاز متجه دعم معين (القيمة الصحيحة لل N يمكن أن تتراوح من واحد إلى ما لا نهاية)، يجب على جهاز ناقل الدعم تعيين كل مجموعة من المدخلات في الفضاء N الأبعاد، والعثور على (N-1 ) - dimensional هيبيربلان أن أفضل يفصل البيانات التدريب.
الشكل 1. دعم آلات المتجهات هي آلات الإدخال / الإخراج.
أفضل طريقة لتصور كيف تعمل آلة دعم ناقلات هو النظر في حالة ثنائية الأبعاد. نفترض أننا نريد إنشاء جهاز ناقل الدعم الذي يحتوي على اثنين من المدخلات ويعود إخراج واحد الذي يصنف نقطة البيانات كما تنتمي إلى واحدة من فئتين. يمكننا تصور هذا عن طريق التآمر على الرسم البياني 2-الأبعاد مثل الرسم البياني أدناه.
الشكل 2. اليسار: دعم ناقلات آلة ناقلات تعيينها إلى الرسم البياني 2D. وتستخدم الدوائر الحمراء والصلبان الزرقاء للدلالة على فئتي المدخلات.
الشكل 3. الحق: دعم المدخلات آلة ناقلات تعيينها إلى الرسم البياني 2D. وتستخدم الدوائر الحمراء والصلبان الزرقاء للدلالة على فئتين من المدخلات مع خط أسود يشير إلى فصل مفرط.
في هذا المثال، تشير المعابر الزرقاء إلى نقاط البيانات التي تنتمي إلى الفئة 1 والدوائر الحمراء التي تمثل نقاط البيانات التي تنتمي إلى الفئة 2. كل نقطة من نقاط البيانات الفردية لها قيمة مدخلات فريدة من نوعها 1 (ممثلة بموقفها على المحور السيني ) وقيمة إدخال 2 فريدة (ممثلة بموقفها على المحور الصادي) وقد تم تعيين كل هذه النقاط إلى الفضاء ثنائي الأبعاد.
آلة ناقلات الدعم قادرة على تصنيف البيانات عن طريق إنشاء نموذج من هذه النقاط في 2 الفضاء الأبعاد. آلة ناقلات الدعم مراقبة البيانات في الفضاء 2 الأبعاد، ويستخدم خوارزمية الانحدار للعثور على 1 هيبيربلان الأبعاد (ويعرف أيضا باسم الخط) التي تفصل أكثر دقة البيانات إلى فئتين. ثم يتم استخدام خط الفصل هذا بواسطة جهاز ناقل الدعم لتصنيف نقاط البيانات الجديدة إلى الفئة 1 أو الفئة 2.
الرسوم المتحركة أدناه توضح عملية تدريب جهاز ناقل دعم جديد. سوف تبدأ الخوارزمية عن طريق جعل تخمين عشوائي العثور على لوحة مفرغة فصل، ثم بشكل متكرر تحسين دقة لوحة مفرغة. كما ترون الخوارزمية تبدأ بقوة جدا، ولكن بعد ذلك يبطئ كما يبدأ في الاقتراب من الحل رغبات.
الشكل 4. الرسوم المتحركة تظهر تدريب جهاز ناقل الدعم. وتتقارب الطفرة تدريجيا مع الهندسة المثالية لفصل فئتي البيانات.
السيناريو ثنائي الأبعاد أعلاه المقدمة يسمح لنا لتصور عملية آلة ناقلات الدعم، ومع ذلك فإنه هو فقط قادرة على تصنيف نقطة بيانات باستخدام اثنين من المدخلات. ماذا لو أردنا استخدام المزيد من المدخلات؟ الحمد لله، خوارزمية آلة ناقلات الدعم يسمح لنا أن نفعل الشيء نفسه في أبعاد أعلى، على الرغم من أنه يصبح من الصعب بكثير لتصور.
النظر في هذا، كنت ترغب في إنشاء دعم ناقلات الجهاز الذي يأخذ 20 المدخلات ويمكن تصنيف أي نقطة البيانات باستخدام هذه المدخلات في أي فئة 1 أو الفئة 2. من أجل القيام بذلك، تحتاج آلة ناقلات الدعم لنموذج البيانات في 20 الفضاء الأبعاد واستخدام خوارزمية الانحدار للعثور على 19 هيبيربلان الأبعاد التي تفصل نقاط البيانات إلى فئتين. هذا يصعب من الصعب تصور كما أنه من الصعب بالنسبة لنا أن نفهم أي شيء فوق 3 أبعاد، ولكن كل ما تحتاج إلى معرفته هو أن يعمل بنفس الطريقة تماما كما يفعل لحالة 2 الأبعاد.
كيف "دعم ناقلات آلات العمل"؟ مثال: هل هو سنيك؟
تخيل هذا السيناريو الافتراضي، كنت باحثا التحقيق في حيوان نادر فقط وجدت في أعماق القطب الشمالي دعا شنيكس. وبالنظر إلى بعد هذه الحيوانات، لم يتم العثور سوى حفنة صغيرة من أي وقت مضى (دعونا نقول حوالي 5000). كباحث، كنت عالقة مع هذا السؤال. كيف يمكنني تحديد سنيك؟
كل ما لديك تحت تصرفكم هي الأبحاث التي نشرت سابقا من قبل حفنة من الباحثين التي شهدت واحدة. في هذه الأبحاث، يصف المؤلفون خصائص معينة عن سنيكس وجدوا، أي الارتفاع والوزن وعدد الساقين، وما إلى ذلك ولكن كل هذه الخصائص تختلف بين الأوراق البحثية التي لا يوجد بها نمط ملحوظ.
كيف يمكننا استخدام هذه البيانات للتعرف على حيوان جديد باعتباره سنيك؟
أحد الحلول الممكنة لمشكلتنا هو استخدام آلة ناقلات الدعم لتحديد الأنماط في البيانات وإنشاء إطار عمل يمكن استخدامه لتصنيف الحيوانات على أنها سنيك أو لا سنيك. الخطوة الأولى هي إنشاء مجموعة من البيانات التي يمكن استخدامها لتدريب جهاز ناقلات الدعم لتحديد شنيكس. بيانات التدريب هي مجموعة من المدخلات والمخرجات مطابقة لآلة ناقلات الدعم لتحليل واستخراج نمط من.
ولذلك، يجب أن نقرر ما هي المدخلات التي سيتم استخدامها وكم. نظريا، يمكن أن يكون لدينا العديد من المدخلات كما نريد، ولكن هذا يمكن أن يؤدي في كثير من الأحيان إلى التدريب بطيئة (والمزيد من المدخلات لديك المزيد من الوقت الذي يستغرق آلة ناقلات الدعم لاستخراج أنماط). أيضا، كنت ترغب في اختيار المدخلات القيم التي تميل إلى أن تكون متسقة نسبيا عبر جميع شنيكس. على سبيل المثال، ارتفاع أو وزن الحيوان سيكون مثالا جيدا على المدخلات لأنك تتوقع أن هذا سيكون متسقا نسبيا في جميع سشنيكس. ومع ذلك، فإن متوسط عمر الحيوان سيكون خيارا ضعيفا من المدخلات لأنك تتوقع سن الحيوانات التي تم تحديدها من شأنها أن تختلف اختلافا كبيرا.
ولهذا السبب، تم اختيار المدخلات التالية:
ارتفاع الوزن عدد الساقين عدد العيون طول الذراع الحيوان متوسط سرعة الحيوانات تردد الحيوانات الدعوة التزاوج.
مع المدخلات المختارة، يمكننا أن نبدأ في تجميع بيانات التدريب لدينا. يجب أن تستوفي بيانات التدريب الفعالة لآلة ناقلات الدعم متطلبات معينة:
يجب أن يكون البيانات أمثلة من الحيوانات التي هي سنيكس يجب أن يكون البيانات أمثلة من الحيوانات التي ليست سنيكس.
في هذه الحالة لدينا أوراق بحثية من العلماء التي حددت بنجاح سنيك و سرد خصائصها. لذلك يمكننا قراءة هذه الأوراق البحثية واستخراج البيانات تحت كل من المدخلات وتخصيص مخرجات صحيحة أو خاطئة لكل من الأمثلة. قد تبدو بيانات التدريب في هذه الحالة مشابهة للجدول أدناه.
الجدول 1. مثال لجدول الملاحظات.
وبمجرد أن جمعنا البيانات لجميع المدخلات والمخرجات التدريبية لدينا، يمكننا استخدامه لتدريب لدينا ناقلات دعم الجهاز. خلال عملية التدريب، فإن آلة ناقلات الدعم إنشاء نموذج في سبعة أبعاد الفضاء التي يمكن استخدامها لفرز كل من الأمثلة التدريب في إما صحيحة أو خاطئة. وستستمر آلة ناقلات الدعم في القيام بذلك إلى أن يكون لها نموذج يمثل بدقة بيانات التدريب (ضمن التسامح المحدد للخطأ). وبمجرد اكتمال التدريب، يمكن استخدام هذا النموذج لتصنيف نقاط بيانات جديدة إما صحيحة أو خاطئة.
هل آلة دعم الدعم في الواقع العمل؟
وباستخدام سينيك سنيك، قمت بكتابة نص برمجي يختبر مدى قدرة جهاز متجه الدعم على التعرف على سنيكس جديدة. للقيام بذلك، لقد استخدمت "دعم ناقلات آلة التعلم أداة" مكتبة مكتبة التي يمكن تحميلها من السوق.
لنموذج هذا السيناريو بشكل فعال، نحن بحاجة إلى أن نقرر أولا ما هي الخصائص الفعلية لل سنيك. وقد تم إدراج الخصائص التي افترضتها في هذه الحالة في الجدول أدناه. إذا كان الحيوان يفي بجميع المعايير أدناه، فإنه هو سنيك.
الجدول 2. ملخص المعلمات التي تحدد سنيك.
الآن بعد أن عرفنا سنيك لدينا، يمكننا استخدام هذا التعريف لتجربة آلات ناقلات الدعم. الخطوة الأولى هي إنشاء وظيفة قادرة على اتخاذ المدخلات السبعة لأي حيوان معين والعودة التصنيف الفعلي للحيوان كما سنيك أم لا. وسوف تستخدم هذه الوظيفة لتوليد بيانات التدريب للجهاز ناقلات الدعم وكذلك تقييم أداء منه في نهاية المطاف. ويمكن القيام بذلك باستخدام الدالة أدناه؛
الخطوة التالية في العملية هي إنشاء وظيفة يمكن أن تولد المدخلات والمخرجات التدريبية. سيتم إنشاء الإدخالات في هذه الحالة من خلال إنشاء أرقام عشوائية ضمن نطاق محدد لكل من قيم الإدخال السبعة. ثم لكل من مجموعات من المدخلات العشوائية ولدت، سيتم استخدام الدالة إسيتاسشنيك () أعلاه لتوليد الناتج المطلوب المقابلة. ويتم ذلك في الوظيفة التالية:
لدينا الآن مجموعة من المدخلات والمخرجات التدريب، فقد حان الوقت الآن لإنشاء آلات ناقلات الدعم باستخدام "دعم ناقلات آلة التعلم أداة" المتاحة في السوق. مرة واحدة يتم إنشاء جهاز ناقل دعم جديد، فمن الضروري لتمرير مدخلات التدريب والمخرجات له وتنفيذ التدريب.
لدينا الآن آلة ناقلات الدعم التي تم تدريبها بنجاح في تحديد سنيكس. للتحقق من ذلك، يمكننا اختبار جهاز ناقل الدعم النهائي عن طريق طرحه لتصنيف نقاط بيانات جديدة. ويتم ذلك من خلال توليد المدخلات العشوائية أولا، ثم استخدام الدالة إسيتاسشنيك () لتحديد ما إذا كانت هذه المدخلات تتوافق مع سنيك الفعلي، ثم استخدام آلة ناقلات الدعم لتصنيف المدخلات وتحديد ما إذا كانت النتيجة المتوقعة تتطابق مع النتيجة الفعلية. ويتم ذلك في الوظيفة التالية:
أوصي اللعب مع القيم ضمن الوظائف المذكورة أعلاه لنرى كيف أداء ناقلات الدعم أداء في ظل ظروف مختلفة.
لماذا هو دعم ناقلات آلة مفيدة جدا؟
الاستفادة من استخدام آلة ناقلات الدعم لاستخراج نمط معقد من البيانات هو أنه ليس من الضروري فهم مسبق لسلوك البيانات. آلة ناقلات الدعم قادرة على تحليل البيانات واستخراج رؤى وعلاقات فقط. وبهذه الطريقة، فإنه يعمل على غرار مربع أسود تلقي المدخلات وتوليد الانتاج التي يمكن أن تكون مفيدة جدا في إيجاد أنماط في البيانات التي هي معقدة جدا وغير واضحة.
واحدة من أفضل ميزات آلات ناقلات الدعم هي أنها قادرة على التعامل مع الأخطاء والضوضاء في البيانات بشكل جيد للغاية. وغالبا ما تكون قادرة على رؤية النمط الأساسي داخل البيانات وتصفية القيم المتطرفة البيانات والتعقيدات الأخرى. النظر في السيناريو التالي، في إجراء البحوث الخاصة بك على سنيكس، واجهت العديد من الأبحاث التي تصف سنيكس مع خصائص مختلفة إلى حد كبير (مثل سنيك الذي هو 200kg و 15000mm طويل القامة).
أخطاء مثل هذا يمكن أن يؤدي إلى تشوهات النموذج الخاص بك ما هو سنيك، والتي يمكن أن تسبب لك أن تجعل من الخطأ عند تصنيف اكتشافات سنيك جديدة. فائدة آلة ناقلات الدعم هي أنه سيتم تطوير نموذج يتفق مع النمط الأساسي المعارض لنموذج يناسب جميع نقاط بيانات التدريب. ويتم ذلك عن طريق السماح بمستوى معين من الخطأ في النموذج لتمكين آلة ناقل الدعم من التغاضي عن أي أخطاء في البيانات.
في حالة سنيك آلة ناقلات الدعم، إذا سمحنا تحمل الخطأ من 5٪، ثم التدريب سوف تحاول فقط لتطوير نموذج يتفق مع 95٪ من بيانات التدريب. وهذا يمكن أن يكون مفيدا لأنه يسمح للتدريب لتجاهل النسبة المئوية الصغيرة من القيم المتطرفة.
يمكننا التحقيق في هذه الخاصية من جهاز دعم ناقلات أخرى عن طريق تعديل السيناريو لدينا سنيك. وقد أضيفت الوظيفة أدناه لإدخال أخطاء عشوائية متعمدة في مجموعة بيانات التدريب لدينا. هذه الوظيفة سوف تختار نقاط التدريب عشوائيا واستبدال المدخلات والمخرجات المقابلة مع المتغيرات العشوائية.
هذه الوظيفة تسمح لنا لإدخال أخطاء متعمدة في بيانات التدريب لدينا. باستخدام هذا الخطأ شغل البيانات، يمكننا إنشاء وتدريب جديد ناقلات دعم الجهاز ومقارنة أدائها مع واحد الأصلي.
عند تشغيل البرنامج النصي، ينتج النتائج التالية في سجل الخبراء. ضمن مجموعة بيانات التدريب مع 5000 نقطة التدريب، كنا قادرين على إدخال 500 أخطاء عشوائية. عند مقارنة أداء هذا الخطأ شغل آلة ناقلات الدعم مع واحد الأصلي، يتم تقليل الأداء فقط من قبل & لوت؛ 1٪. وذلك لأن آلة ناقل الدعم قادرة على التغاضي عن القيم المتطرفة في مجموعة البيانات عند التدريب ولا تزال قادرة على إنتاج نموذج دقيق لافت للنظر من البيانات الحقيقية. ويشير هذا إلى أن آلات ناقلات الدعم يمكن أن تكون أداة أكثر فائدة في استخراج الأنماط المعقدة والأفكار من مجموعات البيانات الصاخبة.
الشكل 5. سجل الخبير الناتج بعد تشغيل السيناريو "سنيك" في ميتاتريدر 5.
يمكن تحميل النسخة الكاملة من التعليمات البرمجية أعلاه من قاعدة التعليمات البرمجية، ولكن لا يمكن تشغيل هذا البرنامج النصي إلا في المحطة الطرفية الخاصة بك إذا كنت قد اشتريت نسخة كاملة من أداة دعم آلة ناقلات الدعم من السوق. إذا كان لديك فقط نسخة تجريبية من هذه الأداة تحميلها، سوف تكون محدودة لاستخدام الأداة عن طريق اختبار الاستراتيجية. للسماح لاختبار رمز "سنيك" باستخدام الإصدار التجريبي من الأداة، لقد أعدت كتابة نسخة من البرنامج النصي إلى مستشار خبير يمكن نشرها باستخدام اختبار الاستراتيجية. يمكن تنزيل كل من هذين النسختين البرمجيتين باتباع الروابط أدناه:
النسخة الكاملة - استخدام البرنامج النصي الذي يتم نشره في محطة ميتاتريدر 5 (يتطلب نسخة مشتراة من أداة دعم أداة ناقلات الدعم)
الإصدار التجريبي - استخدام مستشار الخبراء التي يتم نشرها في اختبار ميتاتريدر 5 استراتيجية (يتطلب فقط نسخة تجريبية من أداة دعم ناقلات الدعم أداة)
كيف يمكن دعم آلات المتجهات أن تستخدم في السوق؟
ومن المسلم به أن مثال سنيك الذي نوقش أعلاه بسيط جدا، ولكن هناك بعض أوجه الشبه التي يمكن استخلاصها بين هذا المثال واستخدام أجهزة ناقل الدعم لتحليل السوق التقنية.
التحليل الفني هو أساسا حول استخدام بيانات السوق التاريخية للتنبؤ بتحركات الأسعار في المستقبل. على نفس المنوال في المثال سنيك، كنا نستخدم الملاحظات التي أدلى بها العلماء الماضي للتنبؤ ما إذا كان حيوان جديد هو سنيك أم لا. وعلاوة على ذلك، يعاني السوق من الضوضاء والأخطاء والمتغيرات الإحصائية التي تجعل استخدام آلة ناقلات الدعم مفهوما للاهتمام.
وأساس عدد كبير من نهج التداول في التحليل التقني ينطوي على الخطوات التالية:
رصد عدة مؤشرات تحديد ما هي الشروط لكل مؤشر يرتبط مع احتمال التجارة الناجحة مشاهدة كل من المؤشرات وتقييم متى جميع (أو أكثر) مما يشير إلى التجارة.
ومن الممكن اعتماد نهج مماثل لاستخدام آلات ناقلات الدعم للإشارة إلى الصفقات الجديدة بطريقة مماثلة. وقد تم تطوير أداة التعلم آلة ناقلات الدعم مع هذا في الاعتبار. وصف كامل لكيفية استخدام هذه الأداة يمكن العثور عليها في السوق، ولذا فإنني سوف تعطي فقط لمحة سريعة. عملية استخدام هذه الأداة هي كما يلي:
الشكل 6. مخطط الرسم البياني يوضح عملية تنفيذ أداة دعم ناقلات الدعم في أحد مستشاري الخبراء.
قبل أن تتمكن من استخدام أداة دعم آلة ناقلات الدعم، من المهم أن نفهم أولا كيف يتم توليد مدخلات التدريب والمخرجات.
كيف يتم توليد مدخلات التدريب؟
لذا، تم بالفعل تهيئة المؤشرات التي تريد استخدامها كمدخلات بالإضافة إلى جهاز ناقل الحركة الجديد. الخطوة التالية هي تمرير مقابض المؤشر إلى جهاز ناقل الدعم الجديد الخاص بك وإرشاده حول كيفية إنشاء بيانات التدريب. يتم ذلك عن طريق استدعاء الدالة سيتانديكاتورهاندلز (). هذه الوظيفة تسمح لك لتمرير مقابض المؤشرات تهيئة في آلة ناقلات الدعم. ويتم ذلك عن طريق تمرير ومجموعة صحيحة تحتوي على مقابض. والمدخلان الآخران لهذه الوظيفة هو قيمة الإزاحة وعدد نقاط البيانات.
قيمة الإزاحة تشير إلى الإزاحة بين الشريط الحالي وشريط البداية لاستخدامها في توليد مدخلات التدريب وعدد نقاط التدريب (المشار إليها بواسطة N) يحدد حجم بيانات التدريب الخاصة بك. يوضح الرسم البياني أدناه كيفية استخدام هذه القيم. قيمة تخالف 4 وقيمة N من 6 سوف تخبر جهاز ناقل الدعم فقط باستخدام الأشرطة التي تم التقاطها في المربع الأبيض لإنشاء مدخلات التدريب والمخرجات. وبالمثل، فإن قيمة إزاحة 8 وقيمة N من 8 تخبر آلة ناقلات الدعم فقط استخدام الأشرطة التي تم التقاطها في المربع الأزرق لتوليد مدخلات التدريب والمخرجات.
بمجرد استدعاء الدالة سيتينديكاتورهاندلز ()، يمكن استدعاء الدالة جينينبوتس (). ستستخدم هذه الوظيفة مقابض المؤشر لتمريرها لتوليد صفيف من بيانات المدخلات لاستخدامها في التدريب.
الشكل 7. مخطط شمعة يوضح قيم أوفست و N.
كيف يتم إنتاج مخرجات التدريب؟
يتم توليد مخرجات التدريب من خلال محاكاة الصفقات الافتراضية استنادا إلى بيانات الأسعار التاريخية وتحديد ما إذا كانت هذه التجارة كانت ناجحة أو غير ناجحة. من أجل القيام بذلك، هناك عدد قليل من المعلمات التي تستخدم لإرشاد أداة دعم ناقلات الدعم أداة كيفية تقييم التجارة الافتراضية إما ناجحة أو غير ناجحة.
المتغير الأول هو OP_TRADE. قيمة هذا يمكن إما أن يكون شراء أو بيع، وسوف تتوافق إما افتراضية شراء أو بيع الصفقات. إذا كانت قيمة هذا هو شراء، ثم عند توليد المخرجات وسوف ننظر فقط في النجاح المحتمل من الصفقات شراء افتراضية. بدلا من ذلك، إذا كانت قيمة هذا هو بيع، ثم عند توليد المخرجات وسوف ننظر فقط في النجاح المحتمل من الصفقات بيع افتراضية.
القيم التالية المستخدمة هي وقف الخسارة وجني الأرباح لهذه الصفقات الافتراضية. يتم تعيين القيم في نقاط، وسوف تحدد مستويات الحد والحد من كل من الصفقات الافتراضية.
المعلمة النهائية هي مدة التداول. ويقاس هذا المتغير بالساعات وسيضمن أن الصفقات الوحيدة التي تكتمل خلال هذه المدة القصوى ستعتبر ناجحة. والسبب في إدراج هذا المتغير هو تجنب حركة إشارات ناقلات الدعم في سوق جانبية بطيئة الحركة.
اعتبارات لجعل عند اختيار المدخلات.
من المهم وضع بعض الفكر في اختيار المدخلات عند تنفيذ آلات ناقلات الدعم في التداول الخاص بك. على غرار المثال سنيك، من المهم اختيار المدخلات التي من المتوقع أن يكون لها نفس الاختلافات عبر الاختلاف. على سبيل المثال، قد تميل إلى استخدام المتوسط المتحرك كمدخل، ولكن بما أن متوسط السعر على المدى الطويل يميل إلى التغير بشكل كبير مع مرور الوقت، فإن المتوسط المتحرك في العزلة قد لا يكون أفضل مدخلات للاستخدام. ويرجع ذلك إلى أنه لن يكون هناك أي تشابه كبير بين متوسط المتوسط المتحرك اليوم ومتوسط المتوسط المتحرك قبل ستة أشهر.
افترض أننا نقوم بتداول اليورو مقابل الدولار الأميركي واستخدام آلة ناقلات الدعم مع متوسط الدخل المتحرك لإشارة الصفقات "شراء". ويقول السعر الحالي هو 1.10، ومع ذلك فإنه يولد بيانات التدريب من قبل ستة أشهر عندما كان السعر 0.55. عند تدريب جهاز ناقل الحركة، فإن النمط الذي يعثر عليه قد يؤدي فقط إلى إشارة تجارية عندما يكون السعر حوالي 0.55، حيث أن هذه هي البيانات الوحيدة التي يعرفها. لذلك، قد لا يشير جهاز ناقل الدعم الخاص بك إلى أي تداول حتى ينخفض السعر مرة أخرى إلى 0.55.
وبدلا من ذلك، قد تكون المدخلات الأفضل لاستخدامها في آلة ناقل الدعم ماسد أو مذبذب مشابه لأن قيمة ماسد مستقلة عن متوسط مستوى السعر ولا تشير إلا إلى حركة نسبية. أوصي بتجربة هذا الأمر لمعرفة ما ينتج أفضل النتائج لك.
ومن الاعتبارات الأخرى التي يجب اتخاذها عند اختيار المدخلات التأكد من أن آلة ناقل الدعم لديها لقطة كافية لمؤشر للإشارة إلى تجارة جديدة. قد تجد في تجربة التداول الخاصة بك أن ماسد مفيد فقط عندما يكون لديك القضبان الخمسة الماضية للنظر في، وهذا سوف تظهر اتجاها. قد يكون شريط واحد من ماسد عديم الفائدة في عزلة إلا إذا كنت تستطيع معرفة ما إذا كان يتجه صعودا أو هبوطا. لذلك، قد يكون من الضروري لتمرير الحانات القليلة الماضية من مؤشر الماكد إلى جهاز ناقل الدعم. هناك طريقتان ممكنتان يمكنك القيام بهما:
يمكنك إنشاء مؤشر مخصص جديد يستخدم الحانات الخمسة الماضية لمؤشر ماسد لحساب الاتجاه كقيمة واحدة. ويمكن بعد ذلك تمرير هذا المؤشر المخصص إلى جهاز متجه الدعم كإدخال واحد، أو.
يمكنك استخدام القضبان الخمسة السابقة لمؤشر ماسد في جهاز ناقل الدعم كخمسة مدخلات منفصلة. والطريقة للقيام بذلك هي تهيئة خمس حالات مختلفة لمؤشر ماسد. يمكن تهيئة كل من المؤشرات بتخالف مختلف عن الشريط الحالي. ثم يمكن تمرير خمسة مقابض من مؤشرات منفصلة إلى آلة ناقلات الدعم. وتجدر الإشارة إلى أن الخيار 2 سوف يؤدي إلى إطالة أمد تنفيذ المستشار الخبير الخاص بك. لمزيد من المدخلات لديك، ويعد سوف يستغرق لتدريب بنجاح.
تنفيذ دعم ناقلات الآلات في والخبير مستشار.
لقد أعدت مستشار الخبراء الذي هو مثال على كيف يمكن لشخص ما استخدام آلات ناقلات الدعم في التداول الخاصة بهم (نسخة من هذا يمكن تحميلها عن طريق اتباع هذا الرابط mql5 / إن / كود / 1229). نأمل أن مستشار الخبراء تسمح لك لتجربة قليلا مع آلات ناقلات الدعم. أوصي لك نسخ / تغيير / تعديل مستشار الخبراء لتناسب أسلوب التداول الخاصة بك. وتعمل وحدة التقييم على النحو التالي:
يتم إنشاء اثنين من آلات ناقلات الدعم الجديدة باستخدام مكتبة سفماشينيتول. يتم إعداد واحد للإشارة إلى صفقات جديدة "شراء" ويتم تعيين الآخر يصل إلى إشارة جديدة "بيع" الصفقات.
يتم تهيئة سبعة مؤشرات قياسية مع كل من مقابضها المخزنة على مجموعة صحيحة (ملاحظة: أي مجموعة من المؤشرات يمكن استخدامها كمدخلات، فإنها تحتاج فقط إلى أن يتم تمريرها إلى سفم في مجموعة واحدة صحيح).
يتم تمرير صفيف مقابض المؤشرات إلى أجهزة ناقل الدعم الجديدة.
باستخدام مجموعة من مقابض المؤشر وغيرها من المعالم، وتستخدم بيانات الأسعار التاريخية لتوليد المدخلات والمخرجات دقيقة لاستخدامها لتدريب آلات ناقلات الدعم.
وبمجرد أن يتم توليد جميع المدخلات والمخرجات، يتم تدريب كل من آلات ناقلات الدعم.
يتم استخدام آلات ناقلات الدعم المدربة في إي للإشارة إلى صفقات "شراء" و "بيع" جديدة. عندما يتم الإشارة إلى تجارة جديدة أو "بيع"، يتم فتح الصفقة جنبا إلى جنب مع أوامر وقف الخسارة وجني الأرباح اليدوية.
يتم تنفيذ التهيئة والتدريب للجهاز ناقلات الدعم ضمن الدالة أونينيت (). للرجوع اليها، تم تضمين هذا الجزء من إي سفترادر أدناه مع الملاحظات.
دعم متقدم تجارة آلة المتجهات.
وقد بنيت قدرة إضافية في أداة دعم ناقلات الدعم أداة للمستخدمين أكثر تقدما هناك. تسمح الأداة للمستخدمين بالمرور في بيانات الإدخال المخصصة الخاصة بهم وبيانات الإخراج (كما في المثال سنيك). هذا يسمح لك العرف تصميم المعايير الخاصة بك لدعم ناقلات ناقلات المدخلات والمخرجات، وتمرير يدويا في هذه البيانات لتدريب عليه. هذا يفتح الفرصة لاستخدام آلات ناقلات الدعم في أي جانب من جوانب التداول الخاص بك.
ليس من الممكن فقط استخدام آلات ناقلات الدعم للإشارة إلى الصفقات الجديدة، ولكن يمكن أن تستخدم أيضا للإشارة إلى إغلاق الصفقات وإدارة الأموال والمؤشرات المتقدمة الجديدة وما إلى ذلك لضمان عدم تلقي أخطاء، فمن المهم أن فهم كيفية تنظيم هذه المدخلات والمخرجات.
المدخلات: يتم تمرير المدخلات إلى سفم كمصفوفة الأبعاد 1 من القيم المزدوجة. يرجى ملاحظة أنه يجب أن يتم تمرير أي مدخل تقوم بإنشائه كقيمة مزدوجة. يجب تحويل كل منطقي، صحيح، وما إلى ذلك إلى قيمة مزدوجة قبل أن يتم تمريرها إلى جهاز ناقل الدعم. والمدخلات مطلوبة بالشكل التالي. على سبيل المثال، نفترض أننا تمر في المدخلات مع 3 المدخلات × 5 نقاط التدريب. لتحقيق ذلك، يجب أن يكون لدينا مجموعة مزدوجة 15 وحدة طويلة في شكل:
| A 1 | B 1 | C 1 | A 2 | B 2 | C 2 | A 3 | B 3 | C 3 | A 4 | B 4 | C 4 | A 5 | B 5 | C 5 |
ومن الضروري أيضا تمرير قيمة لعدد المدخلات. في هذه الحالة، N_Inputs = 3.
المخرجات: يتم تمرير المخرجات في مجموعة من القيم المنطقية. هذه القيم المنطقية هي الناتج المطلوب من سفم تتوافق مع كل مجموعة من المدخلات التي تم تمريرها. بعد المثال أعلاه، ويقول لدينا 5 نقاط التدريب. في هذا السيناريو، سوف تمر في صفيف منطقي من قيم الإخراج الذي هو 5 وحدات طويلة.
عند توليد المدخلات والمخرجات الخاصة بك، تأكد من أن طول المصفوفات يطابق القيم التي تمر بها. إذا لم تتطابق، سيتم إنشاء خطأ إعلامك من التناقض. على سبيل المثال، إذا مررنا في N_Inputs = 3، والمدخلات عبارة عن صفيف طول 16، سيتم طرح خطأ (حيث أن قيمة N_inputs من 3 تعني أن طول أي صفيف دخل يجب أن يكون مضاعفا 3). وبالمثل، تأكد من أن عدد مجموعات المدخلات وعدد النواتج التي تمر بها متساوية. مرة أخرى، إذا كان لديك N_Inputs = 3، طول المدخلات من 15 وطول النواتج من 6، سيتم طرح خطأ آخر (كما لديك 5 مجموعات من المدخلات و 6 النواتج).
حاول التأكد من وجود اختلاف كاف في مخرجات التدريب. على سبيل المثال، إذا كنت تمر في 100 نقطة التدريب، وهو ما يعني مجموعة من المخرجات من طول 100، وجميع القيم خاطئة مع صحيح واحد فقط، ثم التفريق بين الحالة الحقيقية والحالة الزائفة ليست كافية بما فيه الكفاية. وهذا سوف يؤدي إلى التدريب سفم سريع جدا، ولكن الحل النهائي يجري سيئة للغاية. مجموعة التدريب أكثر تنوعا وغالبا ما يؤدي إلى سفم أكثر عاطفية.
التداول مع دعم آلات المتجهات (سفم)
وأخيرا جميع النجوم قد الانحياز، وأنا يمكن أن تكرس بثقة بعض الوقت للاختبار الخلفي من أنظمة التداول الجديدة، ودعم آلات ناقلات (سفم) هي "لعبة" الجديدة التي سوف تبقى لي مشغول لفترة من الوقت.
سفمس هي أداة معروفة من مجال آلة التعلم تحت إشراف، وتستخدم كل من التصنيف والانحدار. لمزيد من التفاصيل راجع الأدب.
يبدو لي أن التطبيق الأكثر بديهية للتجارة هو الانحدار، لذلك دعونا نبدأ من خلال بناء نموذج الانحدار سفم.
بعد تجربتنا مع نماذج أرما + غارتش، سنبدأ بمحاولة التنبؤ بالعائدات، بدلا من الأسعار. وبالمثل، في اختباراتنا الأولى، سوف نستخدم فقط عوائد الأيام الخمسة السابقة كميزات تحدد عودة يوم معين. سنبدأ مع التاريخ من 500 يوما كما مجموعة التدريب.
في مصطلحات رياضية أكثر، لمجموعة التدريب لدينا ميزات N، لكل واحد منهم لدينا عينات M. لدينا أيضا ردود M.
نظرا لصف من قيم الميزة، المصفوفة اليسرى، يتم تدريب سفم لإنتاج قيمة الاستجابة. في مثالنا المحدد، لدينا خمسة أعمدة (ميزات)، كل عمود مناظرة للعائدات بفارق زمني مختلف (من 1 إلى 5). لدينا 500 عينات و الردود المقابلة.
مرة واحدة يتم تدريب سفم على هذه المجموعة، يمكننا البدء في تغذية مع مجموعات من خمس ميزات، المقابلة للعائدات للأيام الخمسة السابقة، وسوف سفم توفر لنا مع الاستجابة، وهو العائد المتوقع. على سبيل المثال، بعد تدريب سفم على ال 500 يوم السابقة، سوف نستخدم العوائد للأيام 500، 499، 498، 497 و 496 (هذه هي لنا كمدخل للحصول على العائد المتوقع ليوم 501.
من جميع الحزم المتوفرة في R، قررت أن تختار حزمة e1071. وكان الخيار الثاني قريب حزمة كيرنلاب، التي ما زلت تخطط لمحاولة في المستقبل.
ثم حاولت بعض الاستراتيجيات. أولا حاولت شيئا مشابها جدا لنهج أرما + غارتش - العوائد المتأخرة من الأيام الخمسة السابقة. لقد فوجئت تماما لرؤية هذه الاستراتيجية أداء أفضل من أرما + غارتش (وهذا هو أرض الوطن من أرما + غارتش، وكنت قد سعيدة جدا فقط مع أداء مماثل)!
بعد ذلك، حاولت نفس الميزات الخمس، ولكن في محاولة لتحديد أفضل مجموعة فرعية. تم اختيار باستخدام نهج الجشع، بدءا من 0 الميزات، وإضافة تفاعلي الميزة التي تقلل من الخطأ أفضل. وقد أدى هذا النهج إلى تحسين الأمور.
وأخيرا، حاولت نهجا مختلفا مع حوالي عشرة الميزات. وشملت الميزات عوائد على مدى فترة مختلفة من الزمن (يوم واحد، يومين، 5 أيام، الخ)، وبعض الإحصاءات (متوسط، وسيط، سد، الخ) والحجم. لقد استخدمت نفس النهج الجشع لتحديد الميزات. هذا النظام النهائي أظهر أداء جيدا جدا أيضا، ولكن أخذ الجحيم من الوقت لتشغيل.
الوقت لإنهاء هذه المشاركة، نتائج الاختبار الخلفي يجب أن تنتظر. حتى ذلك الحين يمكنك أن تلعب مع شفرة المصدر الكامل نفسك. في ما يلي مثال لاستخدامه:
التعليقات مغلقة.
المشاركات الشعبية الأخيرة.
أكثر المقالات التي تمت زيارتها في الأسبوع.
وظائف للمستخدمين R.
هو مدعوم من وورد باستخدام تصميم بافوتاسان.
كوبيرايت & كوبي؛ 2017 R - المدونين. كل الحقوق محفوظة. الشروط والأحكام لهذا الموقع.
شراء الجانب نظم إدارة النظام التجاري.
ساكسو.
كمتداول من المهم جدا بالنسبة لك لدخول الفوركس في الاتجاه الصحيح. على سبيل المثال، يجب أن تكون على يقين من أن السوق هو الذهاب إلى الفوركس حتى قبل الدخول في شراء سفم.
إذا قمت بإدخال تجارة شراء والسوق ينخفض، والتجارة في نهاية المطاف ضرب وقف الخسارة. في آخر مشاركة قلت لك عن لغة R والبرمجيات وكيف يمكنك استخدام R في تحسين نظام التداول الخاص بك. R هو برنامج فوريكس إحصائية قوية ومصدر مفتوح. هناك أكثر من حزم R التي تتوفر لك التي يمكنك استخدامها لجعل النماذج التنبؤية الخاصة بك. هدفنا هو تحسين نظام التداول لدينا. الاستراتيجية هي الجمع بين النموذج الإحصائي التنبؤي الخاص بك مع نموذج التداول عارية الخاص بك الذي يقوم فقط على التحليل الفني للعمل السعر.
على سبيل المثال كنت بقعة نمط غارتلي على الرسم البياني الخاص بك وكان لديك إشارة شراء. ما الذي يجب أن تقوم به فوركس يجب ألا تدخل في صفقة شراء. سترى في نهاية يوم سفم كنت قد انقذت نفسك من تجارة سيئة.
في هذا المنصب سوف نناقش كيفية التنبؤ اتجاه السوق باستخدام دعم ناقلات آلة سفم. يمكنك استخدام جهاز ناقل الدعم في أي وقت فوريكس. لنفترض أنك تخطط للدخول في إطار تداول الفوركس H1 شراء. نموذج سفم الخاص بك يتوقع أن الشمعة المقبلة لتكون هبوطية. يمكنك استخدام هذا التنبؤ للدخول بسعر أفضل بكثير في الساعة القادمة.
يجب أن برامج الفوركس R وبرنامج رستوديو وتثبيته قبل أن تستمر مع هذا المنصب. دعم آلات المتجهات هي المصنفات غير الخطية التي تستخدم وظيفة النواة لتحويل سفم مشكلة تصنيف غير الخطية في مشكلة تصنيف الخطية. مشاهدة الفيديو أدناه الذي يفسر ما سفم هو:.
Support Vector Machine is an important Machine Learning Algorithm. You should just have a broad understanding what is this algorithm and how you can use to cut your losses in your daily trading. As you can see from the above calculations it took around 6. We have used a radial basis function as the kernel. We need to do some tweaking and see if forex can improve the predictive accuracy. The above calculations have svm made using 5 lags of simple returns.
The time taken by R to do forex the calculations is just 5. We can trade binary options with this model on intraday timeframes of M15 and M Training error is always an overestimate.
This time we make the prediction svm EURUSD. These were the calculations for Svm candles. As you can see R forex the calculations pretty fast in 5 seconds.
Now if svm tweak the model more we can make the predictive accuracy svm. هذا ما افعله. I have this model make the prediction. As you have seen above this forex hardly takes a few seconds to predict the next candle.
Once I have the prediction, I use my candlestick trading system and see if it confirms with the prediction. When both the predictions confirm each other, I open the trade otherwise I skip the trade. This helps in reducing the losses. You can see in the above calculations we reduced the number of lags from 10 to 5. This is svm indication that we should not try to reduce the number of lags. As you can see we can perform these calculations in just a few seconds.
If the prediction is svm up candle, we should avoid svm sell trade. Use your knowledge forex candlestick patterns and enter into a buy trade. Home About Privacy Policy FTC Disclosure Courses Fuzzy Logic For Traders Java For Traders Java Machine Learning For Traders Svm For Algorithmic Trading. How To Use A Support Vector Machine SVM In Daily Trading? How To Use Support Svm Machine SVM In Predicting Market Direction On Any Timeframe?
Watch the video below that explains what an SVM is: Get My Forex Systems FREE!! A Forex Scalping System That Makes Pips Anytime With A Small Stop Loss Of 10 Pips! Download My 3 Powerful Day Trading Indicators FREE Join Our Million Dollar Trading Challenge Today!
Download My Swing Trading System FREE. Join My Million Dollar Trading Challenge Today! Send Me The FREE System Plus Videos!!
Python Trading Strategy and Machine Learning Implementation.
4 thoughts on “Forex svm”
Students learn the past and current methods of artistic study, including psychoanalysis, feminism, social history, anthropology, and semiotics.
As a math teacher explains in his blog: most students who are receiving As or Bs and need homework the least will do it, while most students who are receiving Ds or Fs and need extra practice of a concept or skill do not do the homework anyway, or do it with almost no effort (Meyer).
More About Elijah Hand Tucker: Burial: College Corner (Union) IN iii.
In the Choose Color dialog box, select the Midnight Blue color and click OK.
How To Use A Support Vector Machine (SVM) In Daily Trading?
As a trader it is very important for you to enter the trade in the right direction. For example, you should be pretty sure the market is going to go up before you enter into a buy trade. If you enter a buy trade and market goes down, trade will end up hitting stop loss. If you have a method that can predict market direction with an accuracy above 70%, you can cut your overall risk of losing by 70%. In the last post I told you about R language and software and how you can use R in improving your trading system . R is a powerful statistical analysis software and is open source. There are more than 2000 R packages that are available to you that you can use to make your predictive models.
Our aim is to improve our trading system. The strategy is to combine your predictive statistical model with your naked trading model that is solely based on the technical analysis of price action. For example you spot a Gartley pattern on your chart and you have a buy signal. Your statistical predictive model tells you there is a 75% chance market will go down today. ماذا عليك ان تفعل؟ You should not enter into a buy trade. You will see by the end of the day you have saved yourself from a bad trade. In this post we will discuss how to forecast market direction using a Support Vector Machine (SVM). You can use a support vector machine on any time frame. Suppose you are planning to enter into a buy trade on H1 timeframe. Your SVM model predicts that next candle to be bearish. You can use this prediction to enter at a much better price in the next hour.
How To Use Support Vector Machine (SVM) In Predicting Market Direction On Any Timeframe?
You should download R software and RStudio software and install it before you continue with this post. Support Vector Machines are non-linear classifiers that use a kernel function to transform a non-linear classification problem into a linear classification problem. Watch the video below that explains what an SVM is:
Support Vector Machine is an important Machine Learning Algorithm. Now you don’t need to master how to do the modelling with an SVM. You should just have a broad understanding what is this algorithm and how you can use to cut your losses in your daily trading.
SV type: eps-svr (regression)
parameter : epsilon = 0.1 cost C = 5.
Gaussian Radial Basis kernel function.
Hyperparameter : sigma = 0.05.
Number of Support Vectors : 1884.
Objective Function Value : -3870.229.
Training error : 0.285461.
Cross validation error : 0.08664.
وGT. #calculate the time taken to make an SVM.
وGT. user system elapsed.
As you can see from the above calculations it took around 6.65 seconds for R to perform all the above calculations. The training error is 28% meaning the predictive accuracy of this SVM Model is 72%. We have used a radial basis function as the kernel. We need to do some tweaking and see if we can improve the predictive accuracy. The above calculations have been made using 5 lags of simple returns. With these 5 simple return lags we are getting a training error of 28%. Let’s repeat the calculations with 10 lags and see if we succeed in reducing the training.
As you can see above we did the calculations with 10 lags and were able to reduce the training error to 22% meaning we achieved a predictive accuracy of 78%. The time taken by R to do all the calculations is just 5.13 seconds which means we can also use our model on intraday timeframes like M15 and M30. We can trade binary options with this model on intraday timeframes of M15 and M30. Training error is always an overestimate. When we do out of sample testing, we will get an error that will be something between 22% to 28%. As long as we have a predictive accuracy above 70%, we can use this SVM Model in our daily trading. Now let’s do the calculations for the intraday timeframe of M15. This time we make the prediction for EURUSD.
These were the calculations for EURUSDM15 candles. As you can see R made the calculations pretty fast in 5 seconds. The training error is approximately 25% meaning we achieved a predictive accuracy of 75%. Now if we tweak the model more we can make the predictive accuracy better.
هذا ما افعله. I have this model make the prediction. As you have seen above this model hardly takes a few seconds to predict the next candle. Once I have the prediction, I use my candlestick trading system and see if it confirms with the prediction. When both the predictions confirm each other, I open the trade otherwise I skip the trade. This helps in reducing the losses.
You can see in the above calculations we reduced the number of lags from 10 to 5. We reduced the time of calculations by 1 second by training error went up to 30%. This is an indication that we should not try to reduce the number of lags. As you can see we can perform these calculations in just a few seconds. After this statistical modelling we know with at least 70% certainty the direction of the next candle. If the prediction is an up candle, we should avoid a sell trade. Use your knowledge of candlestick patterns and enter into a buy trade .
0 تعليق.
تحميل نظام الفوركس بسيط مجانا أن الزوجي الحساب كل شهر مع 3-4 انخفاض المخاطر مجموعة وتنسى الصفقات على H4 الإطار الزمني ويمكن أيضا تداول الخيارات الثنائية على M5، M15 و M30 الأطر الزمنية!
معلوماتك آمنة 100٪ معنا ولن تكون مشتركة.
كوبيرايت & كوبي؛ 2015 · Forex. TradingNinja · All Rights Reserved.
الحصول على استراتيجية الخيارات الثنائية التي لديها 92٪ متوسط وينرات مجانا!
No comments:
Post a Comment