SnowCron.
مجانا E - فئات البريد.
هذا البرنامج الشبكات العصبية يسمح لك:
استخدام كوهونين الشبكة العصبية خرائط التنظيم الذاتي، والمعروف أيضا باسم تصنيف خوارزميات الشبكة العصبية أو المصنف الشبكة العصبية.
جميع الأدوات التي تحتاجها لاستيراد البيانات والقيام بتحولات البيانات (إلى شكل الشبكات العصبية الاصطناعية يمكن أن نفهم).
رسم أدوات لعرض التقدم أثناء التدريب على الشبكة أو لإنشاء المخطط باستخدام الإدخال - الإخراج - بيانات الإخراج المتوقعة.
معالجة الصور، محرك قاعدة البيانات، الوصول إلى الإنترنت والعديد من الأشياء الصغيرة، التي لا علاقة لها الشبكات العصبية مباشرة، ولكن سوف تجعل حياتك أسهل.
المدمج في لغة البرمجة، التي تسمح لك لتبسيط وجعل التلقائي صقل عملية التعلم الشبكة العصبية، ويتيح لك المزيد من السيطرة على تحويلات البيانات والرسوم البيانية وإدخال ملف / الإخراج.
المدمج في لغة البرمجة الآن يدعم الإضافات طرف ثالث! وهذا يعني، أنه إذا كنت بحاجة إلى غير البرمجة، وظيفة عالية الأداء، وهذا غير متوفر في تطبيق الشبكة العصبية لدينا، يمكنك كتابته على لغة البرمجة المفضلة لديك، على سبيل المثال. على C ++ - وندعوها من مخطوطات اللحاء.
الشبكة العصبية مثال 1:
ويشمل "دورة كاملة"، من قضايا التصميم إلى تحويل رمز الشبكة العصبية الناتجة إلى منصة التداول من اختيارك.
الشبكة العصبية مثال 2:
إنشاء نظام التداول، دون معرفة مسبقة عن معالمه. يتم تحسين الشبكات العصبية تلقائيا، استنادا إلى بيانات السوق.
كما هو الحال دائما، بعد الانتهاء من الشبكة العصبية التدريب النهائي، هو استدار إلى منصة التداول الخاص بك تشويك، لذلك يتم تنفيذ التداول الشبكة العصبية في البيئة كنت مرتاحا مع.
الشبكة العصبية مثال 3:
تطبيق شبكات الأسهم وتداول العملات الأجنبية.
التنظيم الذاتي خرائط تستخدم للمساعدة في التعرف على نمط الشبكات العصبية.
مقدمة إلى الشبكات العصبية.
هذا هو مقدمة للمبتدئين في الشبكات العصبية - نوع معين منهم، ودعا فيدفوروارد باكبروباغاتيون الشبكات العصبية.
يغطي البرنامج التعليمي الشبكات العصبية المصطلحات الأساسية، ومبادئ العمل، وبعض التطبيقات الشبكات العصبية العملية التي يمكن تنفيذها باستخدام الشبكات العصبية. هذه الخوارزمية الشبكة العصبية هي واحدة من الأكثر شعبية، كما أنه من السهل لتنفيذ وفهم. أيضا، فإنه عادة ما تنتج نتائج ممتازة.
المدمج في لغة البرمجة.
المدمج في لغة البرمجة لديها اثنين "أجزاء". الجزء الأول يعالج المهام المشتركة، فإنه يوفر لك القدرة على العمل مع البيانات بطريقة تلقائية، لأداء ملف الإدخال / الإخراج، لرسم المخططات وحفظها كصور، لإنشاء صفحات الويب تلقائيا مع هذه المخططات، للعمل مع قواعد البيانات سكليت وأكثر من هذا بكثير.
الثانية "جزء" هو محدد لبرامج الشبكات العصبية اللحاء. يمكنك كتابة البرامج النصية (برامج مصغرة) لمعالجة البيانات تلقائيا، لإنشاء وتعليم شبكات جديدة، وهلم جرا.
الإضافات (وظائف تسمى من دلز طرف ثالث) معتمدة الآن.
عند تطبيقها على تداول الفوركس، والتداول بشكل عام، اللحاء يمكن أن تصبح أداة قيمة. انها تسمح لك لخلق نموذج الشبكة العصبية، على أساس فيدفوروارد باكبروباغاتيون الشبكات العصبية، أو الشبكات العصبية الخوارزميات الجينية، أو كوهونن تصنيف الشبكة العصبية، أو مزيج منها، بالإضافة إلى أدوات التحليل الفني التقليدية.
بعد الانتهاء من نظام الشبكة العصبية، يمكنك (يتم تغطيتها في الأمثلة المتاحة على هذا الموقع، في شكل مفصل خطوة بخطوة) ميناء من اللحاء المدمج في لغة البرمجة إلى لغة البرمجة من منصة التداول من اختيارك . من تلك النقطة على، لا تحتاج اللحاء من أجل التجارة! يمكنك ببساطة استخدام بيئة التداول المفضلة لديك.
الشبكات العصبية برمجة أبي.
استخدام الشبكات العصبية المدربة من قبل برنامج اللحاء من تطبيقات الشبكات العصبية الاصطناعية الخاصة بك. إضافة قوة الشبكات العصبية الاصطناعية إلى أدوات تحليل البيانات الخاصة بك. إنشاء برامج تفاعلية، والتي يمكن معالجة البيانات عند وصولها، وتسجيل عن طريق السجل.
هنا يمكنك أن تسأل سؤال ذات الصلة أو الإبلاغ عن خلل.
فوركس الشبكة العصبية تعليمي
هل سمعت من قبل بيتكوين؟ أو أي عملة تشفير أخرى متاحة في السوق؟ أراهن أن لديك & # 8230؛ و حتى الآن، انها & # 8217؛ ق السوق الأكثر تقلبا وغير متوقعة، مع القليل من دون لوائح، مخاطر عالية، و، مع أعلى بكثير فرص الربح. ماذا عن الحصول على أكثر من 500٪ العائد على الاستثمار في غضون 10 أشهر فقط، تداول العملة التشفير على يوميا [& هيليب؛]
خيارات الماسح الضوئي 4.1 في العمل (فيديو ديمو)
هل كان لديك فرصة لرؤية أحدث ماسح ضوئي خيارات حجم غير عادية 4.1 البلاتين نسخة في العمل حتى الآن؟ إذا لم يكن هنا - الفيديو القصير يدل على قدرات متميزة للعثور على فرص التداول المناسبة لك: البرنامج يسمح لك ل & # 8230؛ البحث عن فرص تجارية جديدة من خلال إيجاد خيارات مع خيارات غير عادية حجم عبر نهاية اليوم الماسح الضوئي. اختيار الأسهم مع المؤسسات [& هيليب؛]
خيارات الماسح الضوئي 4.0 الإصدار البلاتين صدر!
واحدة من أدواتنا المدهشة وقوية للعثور على فرص التداول عن طريق المسح الضوئي في المطلعين الخفية & # 8217؛ المعلومات، قريبا! الإصدار الجديد من غير عادية حجم خيارات الماسح الضوئي 4.0 البلاتين هو الافراج غدا! الآن، يمكنك مسح من خلال خيارات الكون-فورا! وتلبية معايير المسح الجديدة - يمكنك تحديد مستوى التقلب الضمني [& هيليب؛]
جديد فوركس نيوروماستر 3.5 صدر!
التداول اليومي والإصدارات برو المتاحة! إنه أكثر استقرارا، ويستخدم خلاصة البيانات الجديدة / الخادم. توفر تغذية البيانات الجديدة المزيد من الاستقرار والتغطية، وفي الإصدار التالي، سوف تغطي النسخة البلاتينية 49 أزواج فكس، بالإضافة إلى 5 أزواج أساسية في الإصدار القياسي، و 23 زوجا في النسخة برو. [و hellip؛]
خيارات حجم غير عادية الماسح الضوئي 3.5 برو صدر!
إذا لم تعمد إلى التحقق من أداة غريت التي تجعل الربح متسقا يوما بعد يوم، واسمه & # 8220؛ ماسحة خيارات حجم غير عادية & # 8221؛، فإنه & # 8217؛ s فرصة لاست للقيام بذلك! و، أنا & # 8217؛ م فخور أن أعلن أن هذه الأداة الرائعة قد تصبح مجرد أكبر! وقد تم الافراج عن النسخة الجديدة 3.5 برو اليوم، مع تحسين سرعة ضخمة، أحدث ما يصل إلى تاريخ [& هيليب؛]
جديد نيوروماستر الفوركس 3.1 الافراج عن اليوم!
انتباه الفوركس التجار & # 8230؛ نسخة جديدة من الفوركس نيوروماستر 3.1 صدر! الآن أنها تدعم متعددة تيمفراميس إنتراداي، ولها المرونة لتحديد المنطقة الزمنية الخاصة بك التداول الخاصة! برياكثينغ فوريكس فوريكاستينغ سوفتوار يخبرك بالضبط عند الشراء و متى سيل & # 8230؛ فقط قبل عكس السوق الرئيسية! ويعطيك ميزة غير عادلة تقريبا في [& هيليب؛]
خيارات حجم غير عادية الماسح الضوئي 3.0 برنامج صدر!
هل تتاجر الخيارات أو الأسهم؟ إذا كان الأمر كذلك، يجب عليك التحقق من الإصدار الأحدث من برنامج أوبتيونس سكانر الذي تم إصداره اليوم! نيو أوبتيونس الماسح الضوئي 3.0 الآن متصلا مصدر بيانات مجانية محدثة، ولها حتى الآن قائمة كاملة من جميع رموز الخيار المتداولة على أميكس، نيس وناسداك، جنبا إلى جنب في قائمة واحدة إذا كنت [& هيليب؛]
الأسهم نيوروماستر 3.0 برو متوفر الآن!
اسمحوا لي أن أعرض لكم نسخة جديدة من الأسهم نيوروماستر 3.0 للمحترفين! لقد تم الافراج عن هذا الإصدار الجديد، مع مجموعة من الميزات البارزة الجديدة اليوم، والمستخدم المسجل من الإصدار السابق، أنت & # 8217؛ مؤهلة للترقية إلى الإصدار 3.0 برو دون أي رسوم إضافية (إذا كنت & # 8217؛ في غضون 1 سنة من فترة الترقية المجانية). وات & # 8217؛ S نيو: - INTRADAY [& هيليب؛]
أعلن & # 8230؛ الفوركس نيوروماستر 2.4 برو!
انتباه الفوركس التجار & # 8230؛ أعلنت للتو & # 8211؛ برياكثينغ فوريكس فوريكاستينغ سوفتوار يخبرك بالضبط عند الشراء و متى سيل & # 8230؛ فقط قبل عكس السوق الرئيسية! ويتيح لك ميزة غير عادلة تقريبا في أسواق الفوركس، مع عائدات محتملة غير محدودة في التداول الخاص بك انقر هنا لرؤية المزيد & # 8230؛
فوركس الشبكة العصبية تعليمي
احصاءات الحلول هي الرائدة في البلاد في الاستشارات الإحصائية ويمكن أن تساعد مع البرامج الإحصائية سبس. اتصل حلول حلول اليوم للتشاور مجانا لمدة 30 دقيقة.
مع مساعدة من هذه الوحدة سبس، يمكن للباحث بسهولة بناء قاموس البيانات من المعلومات (مثل تسميات القيمة، وما إلى ذلك) وإعداد البيانات لغرض التحليل الذي هو أكثر مرونة من خلال الاستفادة من أداة "تعريف متغير خصائص" في هذا وحدة سبس.
نموذج نموذج الانحدار سبس من وحدة سبس يساعد المستخدم أو الباحث لاستخدام نماذج أكثر تطورا لنمذجة البيانات. هذه الوحدة سبس تمكن المستخدم من نموذج البيانات من خلال الاستفادة من مجموعة واسعة من نماذج الانحدار غير الخطية. هذه الوحدة النمطية سبس هي وحدة إضافية لقاعدة سبس. وتستخدم هذه الوحدة سبس في مختلف التخصصات، مثل أبحاث السوق، والتي.
كتاب (دلمار سنغاج التعلم)
ويوفر هذا الكتاب دليلا شاملا لجميع جوانب الشبكات الحاسوبية. (التسامح مع الأخطاء، نقل آمنة، الكمبيوتر والشبكة الطب الشرعي). العديد من الأرقام والجداول، ومشاريع اليدين ومشاريع القضية توفر التعرض في العالم الحقيقي الشبكات والأمن والطرق والمهارات الطب الشرعي. تغطية جميع أنظمة تشغيل الشبكة الرئيسية (ويندوز، أونيكس / لينكس، ماك أوس X، و نيتوار). سوف القراء الحصول على المعرفة العملية الشبكات التي ستكون مفيدة في أنشطة الحوسبة اليومية. نيتورك هاردوار، بروتوكولز، أبليكاتيونس، أوبيراتينغ سيستمز، & سيكوريتي أند فورنزيكس.
قد يعجبك ايضا:
الاثنين تزدهر المواد القراءة.
1. يوفر هذا القرض رأس المال اللازم لشراء البرمجيات والمواد التسويقية والأدوات التعليمية ريادة الأعمال التي تدرس من قبل رجل الأعمال الرئيسي والرئيس التنفيذي لجامعة نوفياو ريتش، جيم بيكولو. مع القدرة على التركيز الآن بدوام كامل بدلا من وقت الفراغ أتوقع أن زيادة دخلي إلى محترم 1،800 $ / الشهر.
2. الناس على محمل الجد، سيتم استخدام هذا القرض لاتخاذ بلدي استراتيجية تداول العملات الأجنبية، والتي تعمل بشكل جيد للغاية، إلى المستوى التالي. نظرة على الصورة في القائمة. أكثر من 150٪ الربح في 13 يوما من النشاط، 24 ساعة، التداول الآلي باستخدام برنامجي. (تبين أبدا تداولها مقابل المال الحقيقي)
3. سيتم استخدام هذا القرض لمساعدتي على استثمار 10K في صندوق الاستثمار حساب تدار على الفوركس. أنا مرشح جيد لهذا القرض لأنني أستثمر أموالي الخاصة.
لا خطة التجارة الخسارة التي تعمل حقا لجهودكم.
هل أنت في منطقة دالاس، تكساس؟ لدي خطة تداول غير مضاربة، غير اتجاهي، وتولد معدل عائد مرتفع جدا. وهو يعمل كل يوم - في كل وقت - مع أي خسائر - (نعم) أنها "حقا" يعمل. لقد تم تداول الأسواق المالية لمدة 30 عاما وأنا أفهم بالضبط ما أقوم به. كما تجريبي، بدأت التداول أصدقاء حساب الفوركس فقط 6،000،000 $ في 12/20/07 وأنا ولدت عائدا بنسبة 100٪ في ثلاثة أسابيع فقط باستخدام الرافعة المالية مع أي خسائر. لم يكن الحظ جزءا من النجاح. حساب الوساطة الممولة بشكل صحيح لن يكون أبدا خسائر. وأنا أعلم أنه يبدو من غير المرجح ولكن يمكنني إثبات وإثبات ذلك "هو" صحيح. استغرق الأمر أكثر من حياتي لتطوير هذه التقنية، وأنها لم تأتي رخيصة بالنسبة لي. أنا أسميها مجموعتي صفر أي خطة تداول الخسارة، وسوف تغلب على أي.
دفع بطريقة أو بأخرى.
$ 2000 لدورة على الانترنت هاه. إذا كان يعمل بالنسبة لك. بضعة أسابيع من الجيد حقا أن تبدأ فعلا في الربح في التداول المباشر. البقاء متماسكة على مدى هوال طويل هو خدعة الآن. هذا يأخذ الانضباط. تجنب جلسات الانفجار حيث يتاجر تاجر المال جيدة بعد سيئة في محاولة لاسترداد الخسائر. أو يقفز بشجاعة إلى تجارة مع القليل من البحوث.
أنا منزل دراستي نفسي أكثر من حوالي سنة. لم يكن لدي المال للتجارة في ذلك الوقت لذلك حقا لا يهم. كنت المحتوى لتعلم وحفظ حتى كان لي ذلك. كان لي بعض النفقات التي كانت ذات أولوية على الفوركس. عندما فعلت النقدية الإضافية لم ابتلعها الحياة كنت قد ربحت لأكثر من 6 أشهر على الورق والانتقال إلى العيش كان يبدو نسبيا.
أنا الحصول على عوائد لطيفة الآن لمدة عام تقريبا يعيش. من عند.
السنة الفائقة للعلوم & مداش؛ بريسبان تايمز.
فضلا عن الشبكات العصبية، التي تقارب الطريقة التي يعمل بها الدماغ البشري، والخوارزميات الجينية، التي تحاكي عملية التطور في العالم الطبيعي، قد تتضمن البرامج أساليب غير مدروسة حتى الآن. بعض هذه قد تمكن حتى الآن.
منشورات شائعة.
الذكاء الاصطناعي في سوق العملات.
حاسبة سعر العملة.
التعلم الإحصائي الشبكات العصبية.
النظم القائمة على المعرفة الشبكات العصبية.
الشبكات العصبية الاصطناعية المبسطة.
تحويل العملات.
الشبكة العصبية المتكررة.
تداول العملات.
الشبكات العصبية الاصطناعية ماتلاب سبيل المثال.
سوق الفوركس.
سوق تداول العملات الأجنبية سوق الأخبار أبريل.
ن في سوق العملات.
الشبكات العصبية على أساس التوقيع الاعتراف.
ن في الفوركس.
تغيير العملة.
السبت 16، فبراير 2018 01:15 ص من كريستوفر ستوكس.
@ Chrisstokes0: الشبكة العصبية: الفيسبوك ديفس هكد في 'متطورة' هجوم جافا صفر يوم.
ديكريلاتيون هو مصطلح عام لأي عملية تستخدم لتقليل الترابط الذاتي داخل إشارة أو ارتباط متبادل ضمن مجموعة من الإشارات، مع الحفاظ على الجوانب الأخرى للإشارة. وهناك طريقة تستخدم بشكل متكرر من ديكريلاشيون هو استخدام مطابقة.
فيليكس غروينغ هو مشروع بحثي بدأ في الأول من ديسمبر 2006، ويعمل على تصميم الروبوتات التي يمكنها الكشف عن الإشارات العاطفية البشرية والاستجابة لها. ويشمل المشروع ستة بلدان و 25 روبوتيكستس، علماء النفس التنموي وعلماء الأعصاب.
الخطوط العريضة للروبوتات الروبوتات - فرع التكنولوجيا التي تتعامل مع التصميم والبناء والتشغيل والتخلص الهيكلي، وتصنيع وتطبيق الروبوتات. ويرتبط الروبوتات لعلوم الالكترونيات والهندسة والميكانيكا والبرمجيات. كلمة "روبوت" كان.
من البيانات إلى نموذج - الجزء 1.
واستكشاف إعداد مجموعة بيانات لاستخدامها في الشبكة العصبية عن طريق تنظيف البيانات. & # 8230؛ نيورو ديمنزيون & # 8230؛ نيوروسولوتيونس البيانات التعدين الشبكة العصبية & # 8230؛
الفوركس مدونة.
مباشرة تجربة تداول العملات الأجنبية والمعلومات حول سوق الصرف الأجنبي التي سوف تكون مفيدة للتجار.
الاشتراك للحصول على التحديثات اليومية مباشرة إلى صندوق البريد الإلكتروني الخاص بك.
استخدام الشبكات العصبية المتكررة في الفوركس.
اليوم، أقدم الكتاب الإلكتروني الجديد للتحميل مجانا من إيرنفوريكس. ومن استخدام الشبكات العصبية المتكررة للتنبؤ الفوركس التي كتبها V. V. كوندراتينكو ويو. A. كوبيرين من جامعة سانت بطرسبرغ الحكومية. وقد نشرت هذه المادة العلمية مرة أخرى في عام 2003، وكان من بين أولى تلك التي تقدم بعض نظرة حقيقية على قدرات الشبكات العصبية للتنبؤ أسعار الصرف الأجنبي.
كما يحدث غالبا مع الأوراق العلمية المكتوبة في أوروبا الشرقية أو بلدان رابطة الدول المستقلة، ونوعية الترجمة في هذا واحد هو أيضا منخفضة جدا. على الرغم من هذه الحقيقة، المادة ليست صعبة جدا لقراءة كما أنه يحتوي على عدد قليل جدا من الصيغ ويعتمد على عدد قليل من المفاهيم الرياضيات.
يستخدم المؤلفون شبكة عصبية متكررة تتألف من 2 من الخلايا العصبية المدخلات والخلايا العصبية 1 الإخراج مع 100 الخلايا العصبية الخفية في المنتصف. يتم استخدام مجموعتي بيانات للمدخلات & # 8212؛ معدل سعر الخام للتغيير ومتوسط متحرك مع فترة محددة إلى 5. ثبت أن تركيبة المدخلات هي الأكثر فعالية من عدة متغيرات حاولوها. من أجل البساطة والتنبؤ قابليتها للاستخدام، المتوسط المتحرك بار واحد إلى الأمام يستخدم كقيمة الانتاج. يتم تدريب ن الناتجة أكثر من 1200 الحانات اليومية من ور / أوسد، غبب / أوسد، أوسد / جبي و أوسد / تشف. ثم يتم اختباره على مجموعة من 103 الحانات اليومية. وتظهر النتائج ميلا كبيرا إلى حد ما للشبكة العصبية المصممة للتنبؤ بكل من علامة وحجم التغير في أسعار العملات في المستقبل.
للأسف، الكتاب الإلكتروني لا يخلو من عيوبه. بالإضافة إلى قضايا جودة الترجمة المذكورة أعلاه، بعض البيانات تبدو مضحكة نوعا ما. وبصفتنا تاجرا في الغالب الأسبوعي، كنت مسليا بشكل خاص من خلال هذا الاقتباس:
وبالإضافة إلى ذلك، فإن توقعات البيانات الأسبوعية يفترض، أن التاجر، الذي يستخدم هذا التنبؤ سوف التجارة مرة واحدة في الأسبوع، وهو أمر غير ذي صلة من الناحية العملية.
لماذا هو غير ذي صلة؟ لسوء الحظ، لا يوجد أي تفسيرات أخرى قدمها المؤلفون. وأود أيضا أن أشير إلى عدد قليل نوعا ما من الحانات المستخدمة للاختبار (مجموعة الإنتاج). ومن شأن رفعها إلى شيء مماثل لحجم مجموعة التدريب أن يكون خطوة مبررة. اختيار قيمة المتوسط المتحرك المباشر في المستقبل كما قيمة الإخراج ن & # 8217؛ يبدو أيضا دون المستوى الأمثل بالنسبة لي. وستكون قيم المعدل الفعلية 5 أو 10 أو 20 بارا قبل نقطة التنبؤ أكثر إثارة للاهتمام لاعتبارات عملية.
الوظائف ذات الصلة:
14 ردود على & # 8220؛ استخدام الشبكات العصبية المتكررة في الفوركس & # 8221؛
أنا أحاول تكرار رن كما رأيت في هذه الورقة لأطروحتي.
كيف يمكنني حساب القيمة المقربة المتوقعة من المتوسط المتحرك المتوقع؟
أو كيف يمكنني الحصول على بعض المعلومات ذات الصلة من ما المتوقع؟
27 يناير 2018 الساعة 10:06 صباحا.
حساب قيمة وثيقة من قيمة ما المتوقعة هو بسيط جدا في الواقع. النظر في 5-فترة ما. لديك بالفعل 4 قيم قريبة السابقة، لذلك يمكنك فقط إضافتها والحصول على قيمة C sum4. ثم، حساب إغلاق المتوقع: 5 & مرات؛ ما & # 8211؛ C sum4.
شكرا أندري على ردكم :)
في الواقع المشكلة هي أن المتوسط المتحرك المتوقع هو مشابهة تماما بيانيا إلى ما الحقيقي (65٪ إلى 70٪ التنبؤ الصحيح لزيادة أو نقصان من ماجستير في 4 سنوات).
ولكن عندما تحويل ما في قيمة وثيقة (مع الصيغة الخاصة بك) التنبؤ الصحيح من علامة على قيمة وثيقة تميل إلى 50٪.
هذا هو التنبؤ ما (التنبؤ الأحمر، الأزرق الحقيقي)
هذا هو التنبؤ قيمة قريبة الفقراء (التنبؤ الأحمر، الأزرق الحقيقي الحقيقي)
شكرا لمساعدتك :)
27 يناير، 2018 في 3:11 مساء.
على ما يبدو، فهذا يعني أن الطريقة تتوقع ما تجاهل قيم الإغلاق الحالية. يمكن أن يكون لديك مجموعات مختلفة لانهائية من الإغلاق التي سوف تؤدي إلى نفس القيمة ما.
حتى الآن، وأنا لست متأكدا حقا إذا كان يمكن أن تساعدك على التجارة بنجاح.
مرحبا. I & # 8217؛ لقد تم القيام بمحاولات مستقلة لإعادة إنتاج التجارب من هذه الورقة. احتفظت بجريدة عن تجاربي في مدونتي:
قبل فترة من الزمن كتبت أيضا مقالة عن الاختلاف الذي أجريته من التجارب الأصلية ل كوبيرين & # 8217؛
لدي أيضا بعض الانتقادات حول جودة النتائج المبينة في الورقة. لقد حصلت على أفضل & # 8220؛ R تربيع & # 8221؛ عشرات باستخدام طريقة التنبؤ تافهة. أصف هذه الطريقة هنا:
طريقة التنبؤ التافهة تتفوق بسهولة على الشبكة العصبية كوبرين & # 8217؛ عند تقييمها من قبل نفس المعايير هو مبين في ورقة.
1 يوليو 2018 الساعة 12:07 مساء.
بالمناسبة، هناك & # 8217؛ s في الواقع مقالة سبرينغر المنشورة حول نفس الطريقة كوندراتينكو و كوبرين استخدامها في بلدهم. كما شاركت في تأليفه كوبرين. أنا & # 8217؛ قرأت المقالة، وهناك & # 8217؛ s لا شيء كنت & # 8217؛ ر تجد في & # 8221؛ استخدام الشبكات العصبية المتكررة للتنبؤ فوركس & # 8221؛. إذا كان هناك أي شيء، هناك تفاصيل أقل:
شكرا لتقاسم البحوث الخاصة بك في مثل هذا التفصيل الكبير! كانت هذه القراءة الثاقبة جدا. أشعر الآن مستوحاة من القيام ببعض مزيد من البحوث في الشبكات الوطنية والتنبؤ الخوارزميات. ومن الجميل أيضا أن نرى رمز مشترك & # 8211؛ لا العديد من المطورين تفعل ذلك.
أنت & # 8217؛ مرحبا جدا، السيد مورارو. أحاول أن اتبع 4 حريات البرمجيات مفتوحة المصدر. لذلك لا تتردد في تحميل، قراءة، وتعديل التعليمات البرمجية.
كتبت مجموعة من الكود البرمجي و باش مخطوطات لهذا المشروع، ولكن لم أكن & # 8217؛ t تعليق ملفات المصدر بشكل صحيح. سي إذا كان لديك صعوبة في فهم ما & # 8217؛ ق يحدث في التعليمات البرمجية، لا تتردد في البريد الإلكتروني لي مع أي أسئلة.
وأعتقد أن عمل كوبيرين & # 8217؛ على التنبؤ المالي باستخدام الشبكات قصيرة المدى مبتكر جدا. ولكن لأنه هو الطليعية حتى، قد تأتي مع عدد قليل من المراوغات. حاولت العديد من الأشياء المختلفة في محاولة للحصول عليه إلى نقطة حيث يمكنني استخدامها لتنبؤ بشكل مربح اتجاهات السوق. ولكن أعتقد أن هناك حاجة إلى مزيد من البحوث.
هناك بحوث قليلة نسبيا يتم إجراؤها اليوم على الشبكات العصبية المتكررة، لذلك أعتقد أنه قد يكون هناك بعض الوقت قبل أن نرى أي نتائج مثيرة في هذا الشأن. ولكن هذا & # 8217؛ مجرد رأيي الشخصي.
يقول كوبيرين أنه يمكن التنبؤ حوالي 80٪ من علامات الزيادة. هل هذا يكفي للتجارة المربحة؟
15 سبتمبر، 2018 في 3:57 مساء.
يعتمد على أي نوع من علامات الزيادة التي يمكن التنبؤ بها. إذا كانت هذه فرصة 80٪ للحصول على 1 نقطة مقابل 20٪ فرصة فقدان 5 نقاط، فإنه ليس مربحا.
كما اتضح، والتنبؤ علامات زيادة مع دقة 80٪ ليس كل ذلك من الصعب.
I & # 8217؛ d أقترح عليك تجربة التجربة التالية:
خذ أي مجموعة بيانات سجل أسعار صرف العملات وأخذ بعض مجموعات فرعية منه. الآن، قم بتنفيذ خوارزمية التنبؤ التافهة التالية على تلك المجموعات الفرعية:
لكل علامة زيادة في المجموعة الفرعية، توقع أنه سيكون له نفس اتجاه علامة الزيادة السابقة.
ستلاحظ أن مجرد الحظ، فإن بعض (العديد) من مجموعاتك الفرعية سيتحقق من توقعات صحيحة بنسبة 80٪.
وتستخدم الشبكة العصبية كوبيرين & # 8217؛ قيمة سعر الصرف واحد من اليوم السابق للتنبؤ القيمة من اليوم التالي له. قد تكون الشبكة العصبية الخاصة بهم أيضا مجرد بصق التنبؤات مع قيمة قريبة من القيمة من اليوم السابق (من ذلك & # 8217؛ ق المدخلات). يجب أن يكون هذا كافيا لإنتاج معدل ضرب بنسبة 80٪ لبعض مجموعات البيانات الفرعية.
حاولت كوبيرين وآخرون خوارزمية فقط مع عدد قليل جدا من مجموعات فرعية. ولعلهم فعلوا شيئا مثل التجربة التي اقترحتها هنا، والكرز اختار المجموعات الفرعية أكثر احتمالا لإنتاج مواتية R - التربيعية وزيادة علامات ضرب النسب، حتى أن الأرقام سوف تبدو جيدة على الورق.
فقط لأكرر: أنا نفسي قد أجرى هذه التجربة. أنا ملاذ & # 8217؛ ر اختباره لعلامات الزيادة. ولكن لدي لنتائج R - التربيعية. وتبين أن الكثير من مجموعات فرعية تظهر R - تربيع أكبر من 0.6 (وهو أفضل أن حصلت على كوبيرين وآخرون)، عند استخدام بلدي طريقة التنبؤ تافهة:
عذرا: أفضل ما يحصلون عليه هو شيء حول 0.69. حسنا: أحصل على ما يصل إلى 0.74، وأنا لا & # 8217؛ حتى استخدام الشبكة العصبية. أتوقع فقط: & # 8220؛ غدا & # 8217؛ ق قيمة سيكون بالضبط نفس اليوم & # 8221؛ على مجموعة من مجموعات فرعية من البيانات، وتتراوح نتائج R - التربيعي من 0.3 إلى 0.74.
سيكون من المثير للاهتمام أن نرى ما يحصل على الشبكة العصبية عند اختبارها ضد مجموعة البيانات حيث يحصل على طريقة تافهة انخفاض درجة التربيعية، مثل 0.3. أظن أن شبكتهم العصبية لم تحصل على أي شيء أعلى من ذلك بكثير. لو اي.
وبطبيعة الحال، لم يشارك كوبرين وآخرون أي رمز أو مجموعة بيانات. لذلك أعتقد أننا & # 8217؛ ليرة لبنانية ترك يتساءل.
أوه، وشيء آخر: كوبرين دوسن & # 8217؛ ر التنبؤ علامة زيادة لسعر الصرف نفسه، ولكن بالنسبة للمتوسط المتحرك من معدل العائد اللوغاريتمي.
وهذا يجعل من المرجح أكثر أن علامة الزيادة في اليوم السابق تكون نفس علامة لليوم التالي، لأن المتوسط المتحرك في الواقع يخفف من تقلبات معدل العائد.
SnowCron.
مجانا E - فئات البريد.
في هذه المقالة: مثال على استخدام برامج الشبكات العصبية لدينا لإنشاء نظام التداول الشبكي العصبي الكامل.
يستخدم هذا المثال لغة البرمجة المضمنة في اللحاء، لذا يرجى قراءة دليل لغة البرمجة النصية أولا.
استخدام الشبكات العصبية لخلق استراتيجية تداول الفوركس.
في هذا البرنامج التعليمي على الانترنت مجانا سوف تجد "دورة كاملة" من استخدام الشبكات العصبية (اللحاء الشبكات الشبكات العصبية) لتداول العملات الأجنبية (أو تداول سوق الأسهم، والفكرة هي نفسها).
سوف تتعلم كيفية اختيار المدخلات للشبكات العصبية الاصطناعية، وكيفية اتخاذ قرار ما لاستخدامها كما الإخراج.
سوف تجد مثالا للنص البرمجي جاهز للاستخدام الذي يسمح لأداء الشبكات العصبية الأمثل لكل من بنية الشبكة العصبية (عدد من الخلايا العصبية) ونظام تداول العملات الأجنبية (وقف الخسارة الخ)
وأخيرا (الجزء الذي ليس موجودا في معظم الدروس)، وسوف تتعلم ما يجب القيام به بعد ذلك. بعد كل شيء، اللحاء الشبكات العصبية البرمجيات لا تستطيع أن تفعل التداول في الوقت الحقيقي، تحتاج إلى استخدام شيء مثل محطة التجارة، ميتاكوتس أو ميتاترادر. كيفية منفذ نظام التداول الفوركس من اللحاء إلى منصة التداول المفضلة لديك؟ هل لديك للتعامل مع دلز، عناصر تحكم أكتيفكس والبرمجة على مستوى منخفض؟ الجواب هو لا.
كورتيكس نيورال نيتوركس نتووركس يأتي مع ميزة سهلة الاستخدام التي تسمح لك بسهولة الميناء الناتج (المدربين) الشبكة العصبية إلى لغة البرمجة من منصة التداول الخاصة بك. لا دلز، ددي، أكتيفكس أو أي حلول أخرى منخفضة المستوى - كل شيء سهل وبسيط.
ملاحظة هامة: هذه ليست "كيفية التجارة" البرنامج التعليمي. بدلا من ذلك، فإنه يخبرك كيفية استخدام اللحاء الشبكات الشبكات العصبية البرمجيات، ولكن لا تزال تحتاج إلى اختراع نظام التداول الخاص بك. واحد الذي نستخدمه هنا هو بالكاد نقطة انطلاق، ولا ينبغي أن تستخدم كاستراتيجية تداول العملات الأجنبية "كما هي". فكرة هذا النص هو أن يعلمك لإنشاء أنظمة التداول القائمة على ن ومنفذها إلى منصة التداول من اختيارك. على سبيل المثال، هو أوفيسيمبليفيد المثال، ويمكن أن تستخدم إلا كرسم توضيحي للمبادئ التجارية. وبنفس الطريقة، فإن نظام التداول ماسد، الذي يمكن العثور عليه في العديد من الدروس، لا يعمل بشكل جيد بعد الآن (كما تغيرت الأسواق)، ولكن لا يزال مثالا جيدا على استخدام مؤشرات للتجارة الميكانيكية.
في كلمتين: القيام بالتحليل الخاص بك.
ملاحظة هامة أخرى: البرنامج التعليمي يستخدم أمثلة، والكثير منهم. لجعل حياتك أسهل، لقد شملت كل منهم، وليس فقط شظايا. ومع ذلك فإنه يجعل النص أطول من ذلك بكثير. أيضا، أنا ذاهب من أول، الخرقاء، نظام تداول العملات الأجنبية، إلى أكثر تقدما، في كل مرة شرح ما تم تحسينه ولماذا. التحلي بالصبر، أو القفز مباشرة إلى القسم الذي تحتاجه.
ملاحظة هامة النهائية: رمز ليست شيئا منحوتة في الحجر، فإنه يمكن أن تتغير في حين أن هذا النص مكتوب. يتم تضمين الإصدارات النهائية من الملفات النصية في أرشيف اللحاء.
مضايقات الفوركس شراء / بيع إشارات: ما هو الخطأ مع أمثلة "بسيطة"؟
في دليل المستخدم كورتيكس الشبكات العصبية البرمجيات استخدمنا مثال بسيط من الشبكة العصبية أفتيفيسيال، والتنبؤ سعر الأسهم جينز. لمعرفة ما هو الخطأ في هذا النهج، دعونا نفعل نفس المثال "بسيط"، باستخدام MSFT. TXT، بدلا من GENZ. TXT (استخدام 800 سجل في مجموعة التعلم، كما MSFT. TXT هو أقصر قليلا، ثم GENZ. TXT).
انها فقط لن تعمل! لماذا ا؟
وسوف يصبح السبب واضحا، إذا سألت نفسك: "ما هو السبب في التنبؤ الشبكة العصبية للقيم المستقبلية يمكن أن يتم في المقام الأول؟"
الجواب هو: أنها تعلم أن تفعل ما يسمى الشبكات العصبية الاعتراف نمط، للتعرف على أنماط، وإذا كان هناك منطق مخفي في هذه الأنماط، ثم حتى نمط جديد (مع نفس المنطق) سيتم الاعتراف.
هذا هو خدعة - "مع نفس المنطق". ليس هناك حتى واحد، ولكن ثلاث مشاكل هنا.
أولا وقبل كل شيء، إذا نظرتم إلى سعر سهم ميكروسوفت، ستلاحظون أنه كان ينخفض في جزء "التعلم" من بياناتنا، وعلى جانبي - في الجزء "اختبار". لذلك فمن الممكن، أن المنطق قد تغير.
ثانيا، والأهم من ذلك - ما هو النمط؟ ترى، إذا علمنا الشبكة العصبية في نطاق 10 - 100، ومن ثم قدمته مع شيء في مجموعة 1 إلى 3 - فهي أنماط مختلفة! 10، 20، 30 و 1، 2، 3 تبدو مماثلة للإنسان لأنه - لأن لدينا هذه القدرة على تقسيم عشرة، عندما قدمت مع الأرقام تنتهي مع الصفر. وهو ما يسمى تجهيز مسبق للبيانات، وبشكل افتراضي، فإن ن لا يمكن أن تفعل ذلك.
هل يمكننا تعليمه؟ بالتاكيد. ما هو بالضبط نحن بحاجة إلى تعليمه؟
هذا هو الثالث، والأكثر أهمية. نحن لسنا بحاجة إلى التنبؤ السعر! نحن لا نهتم! ما نحتاج إليه هو شراء الفوركس إشارات البيع.
الآن، انتظر لحظة! نحن بحاجة إلى) أن يكون لدينا مدخلات (التعلم والاختبار) في نفس النطاق، ونحن بحاجة ب) لتكون قادرة على اتخاذ قرارات التداول على أساس ذلك؟ أليس هذا ما نسميه مؤشرا؟ البنغو؟
لذلك، هذا ما سنقوم به - سنقوم ببناء مؤشر، لإطعامه إلى ن كمساهمة، وسنحاول الحصول على التنبؤ بقيمة المؤشر، وليس سعر السهم لا قيمة لها!
في المثال الأول، سنقوم بتحميل أسعار الأسهم من القرص، وفتح ملف الشبكة العصبية وبدء التعلم - كل ذلك في وضع الآلي.
إنشاء ملف نصي جديد (أو فتح واحد الذي يأتي مع كورتيكس الشبكات العصبية برامج أرشيف) وندعو إليها stock_nn. tsc.
أولا وقبل كل شيء، نحن بحاجة إلى تحميل قيم الأسعار من ملف MSFT. TXT. سنقوم باستخدام مؤشر كلف (انظر أدناه)، ولكن لحساب ذلك، نحن بحاجة إلى قيم مقسمة إلى تقسيم للارتفاع والمنخفض، وليس فقط للإغلاق. هنا هو كيفية الحصول عليها.
stock_nn. tsc، بارت 1.
السطر الأول بتعيين المسار إلى متغير ستروستباث، بطبيعة الحال، سيكون لديك لتعديله، إذا كان ملف البيانات موجود في الدليل مختلفة.
في السطر الثاني نحدد، أن هذا المسار غير نسبي ("النسبية" إلى موقع ملف Cortex. exe).
يتلقى TABLE_LOADER المسار، السلسلة الفارغة ل "ستارت لين"، 1 - لتخطي السطر الأول (أسماء الأعمدة)، جزء من خط تذييل الملف (السطر الأخير في MSFT. TXT لا يحتوي على بيانات)، فهو أيضا تعليمات لتحميل العمود رقم 0 (وندعوه أرتديت)، 2 (أرهي)، 3 (ارلو)، 4 (أرك) و 6 (أكلوس).
للحصول على وصف كامل ل TABLE_LOADER، راجع دليل مرجع سلانغ.
ثم نقوم بحساب الانقسام، عن طريق قسمة إغلاق إغلاق عن طريق إغلاق، واستخدام هذه القيمة لضبط منخفض وعالي.
يحتوي الملف MSFT. TXT على أحدث البيانات فيرست، بينما نريد لهم لاست.
بعد ذلك، نحن بحاجة إلى إنشاء مؤشر. لنفترض أنه سيكون مؤشر قيمة موقع إغلاق، على الرغم من أنه في "الحياة الحقيقية" ربما استخدم أكثر من مؤشر واحد كمدخل ن.
يتم حساب مؤشر قيمة الموقع القريب مثل.
كلف = ((كلوز - لو) - (هاي-كلوز)) / (هاي-لو)، حيث كلوز، لو أند هاي هي للفاصل الزمني، وليس بالضرورة لشريط واحد. ملاحظة، أننا نريد ذلك في نطاق 0 - 1، لجعله أسهل لتطبيع إلى نطاق ن لدينا (وهو، مرة أخرى، 0-1).
stock_nn. tsc، بارت 3.
بعد ذلك، نحن بحاجة إلى إنشاء ملف تأخر. دعونا نستخدم التأخر يساوي 1، 2. 9 (للحصول على تفاصيل حول وظائف الملف، راجع الدليل المرجعي سلانغ). لاحظ أن الحوار ن اللحاء يمكن أن تنتج تأخر بسيط تلقائيا (يمكنك استخدام زر "توليد تأخر"). ولكن في وقت لاحق من هذا النص، سنعمل مع تأخيرات معقدة (مما يعني أنها ليست 1، 2، 3. ولكن 1، 3، 64. أيا كان)، لذلك نحن بحاجة إلى إنشاء التعليمات البرمجية التي يمكن التعامل مع هذه المهمة في طريقة أكثر مرونة.
stock_nn. tsc، الجزء 4.
وجود ملف تأخر، ونحن مستعدون لإنشاء أول شبكة العصبية لدينا. هذه الوظيفة تأخذ الكثير من المعلمات، لذلك تكون متأن. ومع ذلك، فإن رمز بسيط حقا.
بالمناسبة، يمكن إزالة معظم هذه التعليمات البرمجية، إذا كنت تعتقد أنك يمكن التعامل مع الأرقام، بدلا من أسماء معنى في التعليمات البرمجية الخاصة بك، ومع ذلك، من شأنها أن تكون ممارسة الترميز سيئة للغاية.
stock_nn. tsc، الجزء 5.
الآن، بعد أن يكون لدينا شبكة العصبية والملف متخلفة مع البيانات، ونحن بحاجة لتعليم الشبكة. ملف التأخر (msft_ind. lgg) لديه 1074 السجلات، لذلك فمن المعقول أن استخدام 800 كمجموعة التعلم، و 274 المتبقية كمجموعة اختبار.
يمكنك، بطبيعة الحال، فتح ملف شبكة وانقر فوق زر "تشغيل" في علامة التبويب "التعلم". ولكن لأن هذا هو مقدمة إلى المتقدمة اللحاء الشبكات العصبية برامج البرمجة، دعونا استخدام سلانغ المدمج في لغة البرمجة بدلا من ذلك.
الرمز التالي إحضار الحوار مشروط مع إعدادات آن ن. ملاحظة، أنه إذا كنت تريد أن يكون لها امتياز من النقر على زر "تشغيل"، تحتاج إلى تغيير.
stock_nn. tsc، الجزء 6.
و بستارتلارنينغ يمكن أن يكون 0، في هذه الحالة الحوار سوف تنتظر المدخلات الخاصة بك، أو 1، ثم سوف تبدأ التعلم أيتوماتيكالي.
سوف بريسومسكريبت، إذا يساوي 1، استئناف السيناريو، إذا قمت بإغلاق الحوار عن طريق النقر فوق الزر موافق.
يتم استخدام بريسيت لإعادة الشبكة قبل بدء التعلم.
تشغيل البرنامج النصي، والانتظار حتى العداد العصر لتجاوز 1000، ثم انقر فوق "إيقاف". انتقل إلى علامة التبويب "تطبيق"، وانقر على "تطبيق". سيقوم هذا بتشغيل مجموعة البيانات بأكملها (التعلم والاختبار) من خلال ن، وإنشاء ملف. APL، الذي يحتوي على كل من المدخلات والمخرجات الأصلية، والتنبؤ الذي تم إنشاؤه ن، وبهذه الطريقة يمكنك بسهولة رسم لهم ومقارنة ضد بعضها البعض .
انتقل إلى علامة التبويب "الإخراج"، وحدد ملف msft_ind. apl، ثم انقر فوق "استعراض الملف"، "حدد الحقول"، ثم حدد "لا" في مربع القائمة اليسرى، و (بالضغط باستمرار على المفتاح كترل أثناء التحديد بالماوس ) كلف و ن: كلف في مربع القائمة اليمنى. انقر على "مخطط" لمعرفة مدى جودة توقعاتنا. حسنا. إنه جيد نوعا ما، مما يمكننا أن نقوله من خلال النظر إليه. ومع ذلك، لا شيء غير عادي.
وكان هذا مجرد مثال على ما يمكنك القيام به مع البرمجة النصية سلانغ، وكيفية أتمتة المهام الروتينية اللحاء. ومع ذلك، حتى الآن، لم نفعل شيئا كنت لا تستطيع أن تفعل "باليد". حسنا. لا شيء تقريبا، لأنه إذا كنت ترغب في إنشاء ملف تأخر مخصص، مع القول، كلف-100، كلف-50، كلف-25. الأعمدة، ثم سيكون لديك لاستخدام سلانغ (أو إكسيل.)، لأنك لا تستطيع أن تفعل في اللحاء دون البرمجة.
الفوركس استراتيجية التداول: ما لتحسين؟
هنا هي مشكلتنا التالية. هل نحن بحاجة إلى تنبؤ جيد المظهر، أم أننا بحاجة إلى واحد يمكننا استخدامه للتجارة مع الربح؟ يبدو السؤال غريبا، ولكن مجرد التفكير في ذلك للحظة. دعونا نقول لدينا توقعات جيدة جدا 1 ساعة. 95٪ دقيقة. ومع ذلك، إلى أي مدى يمكن أن يذهب السعر في ساعة واحدة؟ ليس بعيدا جدا، وأخشى. قارن ذلك إلى الوضع، عندما يكون لديك غير دقيقة بدلا من 10 ساعة التنبؤ. سوف يكون أفضل؟
للإجابة على هذا السؤال، نحن بحاجة إلى التجارة في الواقع، مقارنة بسيطة من الأخطاء المتوسطة التي تنتجها اثنين من ننس لن تساعد.
الجزء الثاني (من نفس المشكلة) هو في الطريقة التي نحدد "التنبؤ الجيد". لنفترض أن لدينا شبكة، والتي تنتج التنبؤ، وهو 75٪ دقيقة. مقارنة ذلك إلى ن، التي تنتج 100٪ التنبؤ الدقيق. آخر واحد هو أفضل. الآن، تقسيم الإخراج (التنبؤ) من 100٪ دقيقة ن من قبل 10. سيكون لدينا شبكة غير دقيقة للغاية، كما إشارة لها في أي مكان بالقرب من إشارة استخدمنا ك "الإخراج المطلوب". ومع ذلك، فإنه يمكن أن تستخدم نفس الطريقة استخدمنا 100٪ دقيقة ن، كل ما علينا القيام به هو مضاعفة إلى 10!
انظر، يتم إنشاء ن، من خلال ضبط متوسط الخطأ التربيعي، وليس الارتباط، لذلك، على الأقل من الناحية النظرية، يمكن أن ن أفضل تظهر نتائج سيئة، عند استخدامها لتداول الأسهم / الفوركس الفعلي.
لحل هذه المشكلة، نحن بحاجة لاختبار لدينا ن باستخدام التداول، واستخدام نتائج هذا التداول (الربح والانسحاب) لاتخاذ قرار، إذا كان هذا ن أفضل من الآخر.
دعنا نقوم به. دعونا إنشاء برنامج، التي يمكن استخدامها لضبط ن، وهذه المرة، عن طريق صقل، ونحن سوف يعني نتائج التداول.
تجارة الشبكة العصبية: بعض الملاحظات القصيرة.
أولا وقبل كل شيء، في مثالنا أعلاه، والتعلم "التلقائي" لن تتوقف أبدا، لأننا لم تحدد أي معايير التوقف. في مربع الحوار، أو في وظيفة CREATE_NN، يمكنك توفير دقيقة. خطأ (عند وصول ن إلى ذلك، فإنه يتوقف، وإذا تم تعيين بريسومسكريبت إلى 1، سيتم إغلاق الحوار وسوف السيناريو استئناف). أيضا يو يمكن أن توفر الحد الأقصى لعدد من الحقائب، أو كليهما. أنا لا تستخدمه في المثال أدناه، على الأقل ليس دائما، لأنني أخطط لمشاهدة التعلم وانقر فوق إيقاف عندما أعتقد أن ن جاهزة. إذا كنت تريد أن تفعل ذلك في وضع تلقائي بالكامل، والانتباه إلى هذه المعلمات.
ثانيا. واحدة من الطرق لجعل شبكة أصغر وأسرع وأكثر دقة، هو أن تبدأ مع الشبكة الصغيرة، وزيادة حجمه، والخلايا العصبية عن طريق الخلايا العصبية. وبسرعة، يتم تحديد عدد الخلايا العصبية المدخلات من خلال عدد من أعمدة بيانات المدخلات (ولكن يمكننا أن نختلفها أيضا)، وينبغي أن يكون عدد الخلايا العصبية الإخراج مساويا لعدد أعمدة بيانات الإخراج (عادة واحدة، ولكن ليس بالضرورة ). وهذا يعني أننا بحاجة إلى تحسين عدد الخلايا العصبية في طبقة (طبقات) خفية.
أيضا، كما ذكرت، ونحن لا نعرف حقا البيانات التي تستخدم. سوف كلف-15 (15 يوما تأخير) زيادة دقة التنبؤ لدينا؟ هل نحن بحاجة إلى كلف-256؟ هل سيكون من الأفضل استخدام كل منهما في نفس ن، أو ستضيف كلف-256 تدمر أدائنا؟
باستخدام دورات متداخلة لتجربة معلمات إدخال مختلفة، يمكنك:
إنشاء ن، بنفس الطريقة فعلنا ذلك لبيانات الأسهم (اسمحوا لي أن أكرر، ل ن، ليس هناك فرق بين الأسهم وفوريكس، حدث فقط أن لدي زوجين من ملفات البيانات عالية الجودة ل فوريكس أن أريد أن معالجة ، أثناء كتابة هذا النص). محاولة مجموعات مختلفة من التأخر. محاولة عدد مختلف من الخلايا العصبية في طبقة خفية. . ومجموعات مختلفة من المؤشرات المختلفة. . وما إلى ذلك وهلم جرا.
ومع ذلك، إذا حاولت كل تركيبات الممكنة من جميع المعلمات الممكنة، فلن تحصل على النتائج الخاصة بك، بغض النظر عن مدى سرعة جهاز الكمبيوتر الخاص بك. أدناه، سوف نستخدم زوجين من الحيل لتقليل الحسابات إلى الحد الأدنى.
بالمناسبة، قد يبدو، أنه إذا كنت تبدأ من واحد الخلايا العصبية الخفية، ثم زيادة إلى 2، 3 وهلم جرا، وعند نقطة ما الخطأ (جودة التنبؤ) أو الربح (إذا كنت اختبار ن من قبل التداول باستخدامه) سوف تبدأ في النزول، ثم لديك الفائز الخاص بك. لسوء الحظ، لا أستطيع أن يثبت، أنه بعد أول "ذروة الأداء" لا يمكن أن يكون هناك الثانية. وهذا يعني، أن الخطأ قد تذهب مثل 100، 30، 20، 40، 50 (كان فقط في الحد الأدنى، أليس كذلك؟) ثم 30، 20، 10، 15،. (الحد الأدنى الثاني). لدينا فقط لاختبار جميع الأرقام المعقولة.
الثالث. التحسين هو سيف ذو حدين. إذا قمت بتحسين شفرتك بشكل مفرط، فقد لا تعمل خارج البيانات التي استخدمتها لضبطها. وسوف أبذل قصارى جهدي لتجنب هذا الخلاف. إذا كنت ترغب في إجراء تحسينات إضافية على التعليمات البرمجية الخاصة بك أو ن، أنصحك لإجراء بحث في الإنترنت، لمعرفة المزيد عن المشاكل المخفية من هذا النهج. ألسو، أنا ذاهب لدفع بعض الانتباه إلى نعومة منحنى الربح. الربح الذي يبدو وكأنه 0، -500، 1000، -100، 10000 قد يكون كبيرا، ولكن الربح 0، 100، 200، 300، 400. هو أفضل، لأنه أقل خطورة. قد نتحدث عن ذلك لاحقا.
وأخيرا، في هذا المثال سنستخدم الفوركس، بدلا من أسعار الأسهم. من وجهة نظر ن لا يوجد فرق، ومن وجهة نظري - الفوركس هو أكثر متعة للتجارة. إذا كنت تفضل الأسهم، يمكن بسهولة تعديل التعليمات البرمجية.
استراتيجية تداول الفوركس للعب مع.
أولا وقبل كل شيء، دعونا خلق نموذج من التعليمات البرمجية لدينا، واحدة التي يمكن بسهولة أن يكون الأمثل في المستقبل. وسوف يكون نظام التداول، والذي يستخدم شبكة العصبية للتجارة وتنتج الرسم البياني (الربح ضد عدد التجارة). وسوف يحسب أيضا السحب، كمقياس متانة نظام التداول لدينا.
forex_nn_01.tsc، بارت 1.
الفرق الرئيسي هنا هو أننا نستخدم وظائف، بدلا من وضع كافة التعليمات البرمجية في الكتلة الرئيسية للبرنامج. بهذه الطريقة فإنه من الأسهل بكثير لإدارة.
ثانيا، لدينا وظيفة تستنيت. أنا باستخدام خوارزمية بسيطة جدا من التداول. The CLV indicator is confined to 0 - 1 interval (our version of CLV is), so when the indicator crosses up the dBuyLevel (see code above), I am buying, when it is crossing down the dSellLevel, I am selling.
Obviously, it is not the best trading strategy, but it will do for our purpose (just for now). If you want to improve it, here are some pointers. First, you may want to have a system, that is not ALWAYS in the market. Second, you may want to use more than one indicator as inputs, and maybe, more than one NN, so that the trading decision is made based on few predicted indicators. We will add some improvements to the trading algorithm later.
We use some standard assumptions of the FOREX trading: spread is 5 points, leverade is 100, min. lot is $100 (mini-FOREX).
Let's take a look at our "trading" system. Once again, it is an oversimplified one. An important note: the TestNn() is called last, and it has access to all variables that were created to that point. So if you see a variable that I am using, without initializing it, it probably means that it was initialized in NewNn(), TeachNn() or some other function that was called prior to TestNn().
To make things easier, comments are placed in the code.
forex_nn_01.tsc, part 2.
Few words about the drawdown. There are few ways of calculating it, and we are using what I consider the most "honest". The drawdown is a measure of instability of our system. What is a chance, that it will loose money? Lets say the initial amount is $1000. If the profit goes 100, 200, 300, 400. the drawdown is 0. If it goes 100, 200, 100. then the drawdown is 0.1 (10%), as we have just lost an amount, equal to 1/10 of the initial deposit (from 1200 to 1100).
I would strongly advice against using trading systems with large drawdowns.
Also, here I use a drawdown, that is to be used with variable lot size. However, in the actual samples, that come with the eBook, you will see another version:
As you can see, here we always use 1000 (the initial amount) to calculate the drawdown. The reason is simple: we always use the same lot size (no money management yet), so there is no difference, how much money we have already accumulated on our account, an average profit should be constant. The worse possible scenario in this case looks like this: from the very beginning ($1000 on account) we are loosing money. If we use 1000$ to calculate the drawdown, we will get the worse drawdown. This will help us not to trick ourselves. For example, say, we traded for some time, and we have $10,000$ on our account. Then we loose some money, and we now have $8,000. Then we have recovered, and got $12,000. Good trading system? على الاغلب لا.
Let's repeat the logic again, as it is very important (and it will become even more important, when we start doing money management). We trade using fixed size lots. So, statistically, there is no guarantee, that the maximum loss will not happen at the very beginning, when we only have $1000. And if it happens, we will have -1000$ (10,000 - 8,000), so the trading system is probably too risky.
When we talk about the money management (probably, not in this text), we will have to use different approach to drawdown calculation.
Note, that in this trading system, I am using the worse possible scenario: I am buying using High and selling, using Low. Many testers do not follow these rules, and create trading systems, that work fine on historical data. But in the real life, these trading systems have very poor performance. لماذا ا؟
Take a look at the price bar. It has Open, High, Low and Close. Do you know, how the price was moving inside the bar? No. So, let's say, your trading system generated a "buy" signal, at the bottom of the price bar (if dLow.
Note that I am using dLotSize equal 0.1 lot ($100). Obviously, in the "real" trading, you will benefit greatly, if the lot size is calculated depending on the money you have, something like:
forex_nn_01.tsc, part 3.
However, we are doing testing here, not trading. And for testing, we need, among other things, to see how smooth the profit curve is. This is much easier to do if the lot size is the same (in ideal situation, for dLotSize = 100 we will get a straight line, with some positive slope, while in case of the adjustable lot size we will get an exponent, that is much harder to analyze).
Later in this text, we will apply money management rules to our trading system, but not yet.
After we are done with the last part of our testing function, let's walk through the rest of the code.
The following function creates a CLV indicator. It takes the interval as a parameter, which means that we can call it many times, during the optimization, passing different numbers.
Note, that I am using the NN that works in the 0 - 1 interval. The data can be normalized, of course, but I chose to divide the indicator by 2 and to add 0.5, so that it is in 0 - 1 range.
forex_nn_01.tsc, part 4.
To make lag file, we can use the CREATE_LAG_FILE function. Alternatively, we can do it by explicitly providing all the necessary code. In this case, we have more control, and we are going to need it, if we begin varying number of lagged columns and so on.
forex_nn_01.tsc, part 5.
The nRemoveFirst parameter is important. Many functions, like indicators, moving averages, lag generators, for that matter, do not work well within the first few records of the dataset. Let's say we have MA(14) - what will it place in the records 1 - 13? So we choose to simply remove the first few (unreliable) records.
For the NewNn, as well as for all functions of this program, we need to pass as parameters only what can be changed during optimization process. For example, there is no need to pass a "skip before" parameter, as it is always the same.
forex_nn_01.tsc, part 6.
The TeachNn function simply brings up the NN dialog.
forex_nn_01.tsc, part 7.
Finally, we need a charting function. It is not mandatory, but it is always a good idea to see what our profit line looks like. The following code uses the XML to produce a chart, so it is a good idea to read the tutorial. Alternatively, you can draw the chart, rather than saving it in a file. To do it, use one of the samples, that are in the samples/scripts directory. Finally, you can modify the code, to produce HTML, rather than XML. HTML is easier to learn, but the code itself will be a bit less readable.
forex_nn_01.tsc, part 8.
Compile and Run the script.
حسنا. As expected, using 7 hours as an interval for the CLV produced very poor results:
FOREX Trading Strategies and Optimization.
The reason for the poor results is quite obvious: we used the Interval, Stop Loss, buy and sell levels and other parameters, that were purely random - we just picked first that came in mind! What if we try few combinations?
FOREX Trading Signals: What to optimize?
First of all, by overoptimizing the buy and sell levels, we can ruin our future performance. However we still can tune them, especially, if the performance is close for close values of buy and sell limits. For example, if we have -10% profit at buy limit equal 0.3, and +1000% profit when it equals 0.35, then there is probably a lucky coincidence, and we should not use 0.35 for our trading system, as in future it will probably not happen again. If, instead, we have -10% and +10% (instead of +1000%), it may be safer to use.
Generally, our trading system should be built for WORSE possible scenario, as if during the "real" trading the performance will be better, then during the test, we will survive, but not the other way around.
We can vary the value for the indicator interval, provided we have enough trades, so that we can be confident, in terms of statistics, in the performance of a system.
We certainly can vary the number of neurons, I don't think it can be overoptimized easily.
We can vary number of inputs and lags for inputs. It is possible to overoptimize this, but it is not very likely to happen.
And, of course, we can try different indicators.
Accurate FOREX Signals: How to optimize?
As have already been mentioned, if we start trying all possible combinations, it will take forever. So we are going to cheat. We will create pre-defined sets of parameters, that we think are reasonable, and pass them to the program.
To make as few calculations as possible, note, that Clv-1 and Clv-2 are, probably, important, but what about Clv-128? And - if we already have Clv-128, do we need Clv-129? Probably, not. So we are going to have something like Clv-1, Clv-2, Clv-4, Clv-8, . Clv-128 with just few variations, which will make our calculation time thousands times shorter.
FOREX Professional System Trading: Can it work at all?
What is it exactly we want to predict? Until this point we have used 1 hour chart for EURUSD, and we were predicting the next bar's CLV. Will the CLV+2 be better? What about CLV+3?
Also, especially considering the poor performance of our first trading system, it would be nice to know, that - at least in the "ideal" world, the goal (profitable trading) can be achieved.
To answer these questions, let's create a simple testing program. We assume, that our prediction is 100 % accurate, and, based on this assumption, we will use CLV+N, not the NN predicted one. That's right - we are going to take data from the future, and to use them instead of the NN prediction. This approach wouldn't work in the real life, of course, but at leats, it will give us some ideas of what to expect.
When looking at the results, please keep in mind, that we are not using any advanced money management, our lot size is set to a minimum $100. If you use variable lot sizes, results will be dramatically different. But even at a lot size set to 0.1 we can see (below) that getting the information from the future is an ultimate trader's "holly graal".
forex_nn_02.tsc, part 1.
You are already familiar with this code, it was used in FOREX_NN_01.TSC. It handles data loading. The only difference is in the part that obtains the list of files in the "images" directory and deletes all files with the. PNG extention. The reason for this code is simple: during our tests we are going to create many - may be, thousands - image files. We don't want them to hung around after we are done. So at the beginning of the script we are deleting images, created by other scripts.
forex_nn_02.tsc, part 2.
Just a few comments. We do not want to try all possible values for, for example, CLV interval. Instead, we can create an array, that contains only values we want to test. Then (see below) we will walk through this array.
Stop losses are important part of any trading strategy, so I have decided to vary them as well. It is a dangerous idea, however, as it is easy to overoptimize the system.
I am planning to test different values for buy and sell levels, but it will be done in cycle, without using arrays.
Unlike in our previous example, we want to have a large XML file, containing many images. To do it, I have moved the code, that is forming the XML header and footer outside of the Chart function. Read one of the online XML tutorials for details.
Note, that I am using 0 as the first lag, which means, that first I am testing the indicator (CLV) that was not "shifted" from the future. Just to get an idea, how good out "trading system" would be without NN (horrible, is the right word. It is loosing all the money).
Cortex uses the Internet Explorer control to display XML pages. When pages grow large, it takes a lot of memory. If your computer cannot handle it, consider creating multiple XML or HTML pages, instead. In the case of forex_nn_02, it should not be a problem, as the page is relatively short. Alternatively (that is what I am doing in scripts later in this text), create XML file, but do not open it from Cortex. Open them using Internet Explorer instead - unlike IE control, the Internet Explorer does not have the memory problem.
Now the code that is trying different combinations of parameters.
forex_nn_02.tsc, part 3.
Here, we are using nested cycles. In every cycle, we are assidning some variable (for example, nInterval for the outer cycle). This way the cycle will assign values of all elements of a corresponding array, one in a time. Then WITHIN it, the inner cycle is used, and so on, so that all combinations of all array elements are tested.
In the innermost cycle, I am calling the Test() function, to "test trade", and Chart() to add a new picture to a list of images saved on disk. Note, that this Chart() does not show any images, until all cycles are completed.
The Test() and CreateClv() functions are almost the same as in the previous example. The only real difference is due to the fact that it is called more then once. To do it, I am calling ARRAY_REMOVE to cleanup arrays.
Also, notice, that we are only creating charts for the combinations of parameters, that produce trading system with positive profit. Otherwise, we call "continue", to skip the Chart() function.
Finally, we have Take Profit now, so our trading system can be a bit more flexible.
forex_nn_02.tsc, part 4.
The Chart() function was broken into two pieces. The header and the footer should be written to the XML file only once, so they were moved to the main part of the program.
Also, I am using the counter, to save files under the different names. The information about parameters is written to the header of an image, so we can easily see which one it is. Finally, images are only saved for winning configurations, meaning the balance at the end should be more, then at the beginning.
forex_nn_02.tsc, part 5.
Run the program (it will take some time to complete). You will end up with a large XML page with images, one for each winning configuration.
Some of the results are great, however, as we used data "from the future", this system will not work in the real life. Actually, if you look at the Test() function, you will notice, that the cycle stops before we reach the last element of arrClose:
for(nBar = nRemoveFirst + 1; nBar.
THIS IS C++, just an example.
As you can see, the code is really simple. Now lets do the same using the SLANG script. As in examples before, we will keep the overall structure of the code, so that this example looks familiar. The only difference is that instead of using the built-in APPLY_NN function, we call the function of our own. The code that we do not use (such as cycles) is commented, but not removed.
Note, that the logic behind it was discussed in Neural Networks and Stock / Forex Trading article already. Briefly, the output of this script is formated to be compatible with the MQL, MetaTrader's scripting engine. MetaTrader is a trading platform we use, if you want something different, like TradeStation, for example, you will have to alter the code to comply to its syntax.
Then, in the following chapters, we are going to insert this code in the MetaTrader's indicator, and to use it to trade.
Porting script to trading platform.
The next step is not really required, but it is something, that may be useful. We are going to create a version of a tsc file (one above), but this time, we will use SLANG (Cortex scripting language) to emulate APPLY_NN function. The reason is, in the next chapter we are going to port it to the scripting language of a MetaTrader trading platform, so it is a good idea to make sure everything works.
After we run this function, we discover, that the result it produces is the same, as the forex_nn_05a produced, which means the code works fine. :
Note, that there is a difference at the beginning of the charts, as "our" NN does not try to process the data at the beginning (where lag is incomplete), while the built-in NN does not "know" about this problem. Of course, it doesn't affect the result, as the beginning of the chart is ignored by using the nRemoveFirst parameter in our script (set to 200, which is guaranteed to be larger, then our lag).
Using third-party trading platform.
We have the NN that (more or less) can be used. We have the script, implementing this NN without calls to the Cortex-specific NN functions. Now we are going to port it to the trading platform that can be used for the real trading, which means it can contact brocker, place orders and earn (or loose) money.
As a trading platform, I am going to use MetaTrader.
Disclaimer: I am not related to MetaQuotes in any way. I do not work for them, I am not their affiliate and so on. I use MetaTrader, ONLY because I like it.
I find this program user-friendly, flexible and powerful, and "not a monster". Also, it is free (compare to other packages of this class).
The only (minor) problem is that it is not always easy to find the dealer using MT in your area. Then, when you do a research, you may find couple of brockers, with screenshots on their web sites, that look suspiciously familiar. Yes, they use MetaTrader, but they don't call it MetaTrader!
I have asked for clarification at the company's forum, and they have told me, that they don't reveal brockers using their services. Very strange.
One of the brockers that is not hiding the fact they use MT, is Alpari. They will allow you to open a Demo account, so that you can trade in a real time, but without risking your money.
I am not going to recommeng services of Alpari. Once again, I am not being paid for that. Try their Demo account, and use your own judgement. Or you can start your own research at Internet forums.
Finally, if you do not like the MT, you can probably follow the example below using TS, MS or some other trading platform. This is just an example.
Our MT-based trading system will include two files, the indicator and an expert. This is the way they call it in MQL (scripting language of MT), and I am going to follow this naming convention.
The indicator implements the neural network and draws a chart. An expert takes these data and does trading. As MetaTrader has a "strategy tester", we will be able to test our strategy, to see how good it is.
I will assume, that you are familiar with MQL programming, it is quite close to SLANG and tutorials can be found both at MetaQuotes and Alpari.
Finally, I am using the code structure, that is borrowed from MetaQuotes forum, permission to use it the author of the corresponding posts had granted me permission to use fragments of his code.
Also, as some of our MetaTrader code is the same for all experts and indicators, we moved it to a separate library file. MetaTrader's libraries are nothing but includable files. This library takes care of synhronization, when two or more expert are trying to run in the same time, as well as of few other things. If you use MetaTrader, it will help you to create robust experts, in any case, the MQL language is easy to understand.
mylib. mql, a helper library.
The code should look familiar, all I did was re-writing it, using slightly different language syntax of MQL.
This indicator has two buffers, and draws two lines, one for the original NOC, and one for the NN-predicted NOC. For trading, you don't have to draw both indicator lines, of course (see MQL tutorials to learn how to do it), but I have decided to show them together, so you can compare.
Another difference, that you should know about, is the way MT performs testing. It may, in some cases, be more accurate, then one we did (we did the worse case scenario). Of course, you can always to change the SLANG script from the examples above, to implement any logic you want.
The result of our testing in MT is a bit better, then in Cortex, due to all these reasons.
Keep in mind, that MT calculates the DD in a different way. I still think, that my way is better.
In should be especially noted, that no additional optimization had been performed using MetaTrader's optimizer. We have just plugged our MTS (mechanical trading system) in, and it worked as expected.
هذا هو. You can now create Cortex Neural Network, optimize it to do trading, and to port it to the trading platform of your choice.
احصاءات الحلول هي الرائدة في البلاد في الاستشارات الإحصائية ويمكن أن تساعد مع البرامج الإحصائية سبس. اتصل حلول حلول اليوم للتشاور مجانا لمدة 30 دقيقة.
مع مساعدة من هذه الوحدة سبس، يمكن للباحث بسهولة بناء قاموس البيانات من المعلومات (مثل تسميات القيمة، وما إلى ذلك) وإعداد البيانات لغرض التحليل الذي هو أكثر مرونة من خلال الاستفادة من أداة "تعريف متغير خصائص" في هذا وحدة سبس.
نموذج نموذج الانحدار سبس من وحدة سبس يساعد المستخدم أو الباحث لاستخدام نماذج أكثر تطورا لنمذجة البيانات. هذه الوحدة سبس تمكن المستخدم من نموذج البيانات من خلال الاستفادة من مجموعة واسعة من نماذج الانحدار غير الخطية. هذه الوحدة النمطية سبس هي وحدة إضافية لقاعدة سبس. وتستخدم هذه الوحدة سبس في مختلف التخصصات، مثل أبحاث السوق، والتي.
كتاب (دلمار سنغاج التعلم)
ويوفر هذا الكتاب دليلا شاملا لجميع جوانب الشبكات الحاسوبية. (التسامح مع الأخطاء، نقل آمنة، الكمبيوتر والشبكة الطب الشرعي). العديد من الأرقام والجداول، ومشاريع اليدين ومشاريع القضية توفر التعرض في العالم الحقيقي الشبكات والأمن والطرق والمهارات الطب الشرعي. تغطية جميع أنظمة تشغيل الشبكة الرئيسية (ويندوز، أونيكس / لينكس، ماك أوس X، و نيتوار). سوف القراء الحصول على المعرفة العملية الشبكات التي ستكون مفيدة في أنشطة الحوسبة اليومية. نيتورك هاردوار، بروتوكولز، أبليكاتيونس، أوبيراتينغ سيستمز، & سيكوريتي أند فورنزيكس.
قد يعجبك ايضا:
الاثنين تزدهر المواد القراءة.
1. يوفر هذا القرض رأس المال اللازم لشراء البرمجيات والمواد التسويقية والأدوات التعليمية ريادة الأعمال التي تدرس من قبل رجل الأعمال الرئيسي والرئيس التنفيذي لجامعة نوفياو ريتش، جيم بيكولو. مع القدرة على التركيز الآن بدوام كامل بدلا من وقت الفراغ أتوقع أن زيادة دخلي إلى محترم 1،800 $ / الشهر.
2. الناس على محمل الجد، سيتم استخدام هذا القرض لاتخاذ بلدي استراتيجية تداول العملات الأجنبية، والتي تعمل بشكل جيد للغاية، إلى المستوى التالي. نظرة على الصورة في القائمة. أكثر من 150٪ الربح في 13 يوما من النشاط، 24 ساعة، التداول الآلي باستخدام برنامجي. (تبين أبدا تداولها مقابل المال الحقيقي)
3. سيتم استخدام هذا القرض لمساعدتي على استثمار 10K في صندوق الاستثمار حساب تدار على الفوركس. أنا مرشح جيد لهذا القرض لأنني أستثمر أموالي الخاصة.
لا خطة التجارة الخسارة التي تعمل حقا لجهودكم.
هل أنت في منطقة دالاس، تكساس؟ لدي خطة تداول غير مضاربة، غير اتجاهي، وتولد معدل عائد مرتفع جدا. وهو يعمل كل يوم - في كل وقت - مع أي خسائر - (نعم) أنها "حقا" يعمل. لقد تم تداول الأسواق المالية لمدة 30 عاما وأنا أفهم بالضبط ما أقوم به. كما تجريبي، بدأت التداول أصدقاء حساب الفوركس فقط 6،000،000 $ في 12/20/07 وأنا ولدت عائدا بنسبة 100٪ في ثلاثة أسابيع فقط باستخدام الرافعة المالية مع أي خسائر. لم يكن الحظ جزءا من النجاح. حساب الوساطة الممولة بشكل صحيح لن يكون أبدا خسائر. وأنا أعلم أنه يبدو من غير المرجح ولكن يمكنني إثبات وإثبات ذلك "هو" صحيح. استغرق الأمر أكثر من حياتي لتطوير هذه التقنية، وأنها لم تأتي رخيصة بالنسبة لي. أنا أسميها مجموعتي صفر أي خطة تداول الخسارة، وسوف تغلب على أي.
دفع بطريقة أو بأخرى.
$ 2000 لدورة على الانترنت هاه. إذا كان يعمل بالنسبة لك. بضعة أسابيع من الجيد حقا أن تبدأ فعلا في الربح في التداول المباشر. البقاء متماسكة على مدى هوال طويل هو خدعة الآن. هذا يأخذ الانضباط. تجنب جلسات الانفجار حيث يتاجر تاجر المال جيدة بعد سيئة في محاولة لاسترداد الخسائر. أو يقفز بشجاعة إلى تجارة مع القليل من البحوث.
أنا منزل دراستي نفسي أكثر من حوالي سنة. لم يكن لدي المال للتجارة في ذلك الوقت لذلك حقا لا يهم. كنت المحتوى لتعلم وحفظ حتى كان لي ذلك. كان لي بعض النفقات التي كانت ذات أولوية على الفوركس. عندما فعلت النقدية الإضافية لم ابتلعها الحياة كنت قد ربحت لأكثر من 6 أشهر على الورق والانتقال إلى العيش كان يبدو نسبيا.
أنا الحصول على عوائد لطيفة الآن لمدة عام تقريبا يعيش. من عند.
السنة الفائقة للعلوم & مداش؛ بريسبان تايمز.
فضلا عن الشبكات العصبية، التي تقارب الطريقة التي يعمل بها الدماغ البشري، والخوارزميات الجينية، التي تحاكي عملية التطور في العالم الطبيعي، قد تتضمن البرامج أساليب غير مدروسة حتى الآن. بعض هذه قد تمكن حتى الآن.
منشورات شائعة.
الذكاء الاصطناعي في سوق العملات.
حاسبة سعر العملة.
التعلم الإحصائي الشبكات العصبية.
النظم القائمة على المعرفة الشبكات العصبية.
الشبكات العصبية الاصطناعية المبسطة.
تحويل العملات.
الشبكة العصبية المتكررة.
تداول العملات.
الشبكات العصبية الاصطناعية ماتلاب سبيل المثال.
سوق الفوركس.
سوق تداول العملات الأجنبية سوق الأخبار أبريل.
ن في سوق العملات.
الشبكات العصبية على أساس التوقيع الاعتراف.
ن في الفوركس.
تغيير العملة.
السبت 16، فبراير 2018 01:15 ص من كريستوفر ستوكس.
@ Chrisstokes0: الشبكة العصبية: الفيسبوك ديفس هكد في 'متطورة' هجوم جافا صفر يوم.
ديكريلاتيون هو مصطلح عام لأي عملية تستخدم لتقليل الترابط الذاتي داخل إشارة أو ارتباط متبادل ضمن مجموعة من الإشارات، مع الحفاظ على الجوانب الأخرى للإشارة. وهناك طريقة تستخدم بشكل متكرر من ديكريلاشيون هو استخدام مطابقة.
فيليكس غروينغ هو مشروع بحثي بدأ في الأول من ديسمبر 2006، ويعمل على تصميم الروبوتات التي يمكنها الكشف عن الإشارات العاطفية البشرية والاستجابة لها. ويشمل المشروع ستة بلدان و 25 روبوتيكستس، علماء النفس التنموي وعلماء الأعصاب.
الخطوط العريضة للروبوتات الروبوتات - فرع التكنولوجيا التي تتعامل مع التصميم والبناء والتشغيل والتخلص الهيكلي، وتصنيع وتطبيق الروبوتات. ويرتبط الروبوتات لعلوم الالكترونيات والهندسة والميكانيكا والبرمجيات. كلمة "روبوت" كان.
من البيانات إلى نموذج - الجزء 1.
واستكشاف إعداد مجموعة بيانات لاستخدامها في الشبكة العصبية عن طريق تنظيف البيانات. & # 8230؛ نيورو ديمنزيون & # 8230؛ نيوروسولوتيونس البيانات التعدين الشبكة العصبية & # 8230؛
الفوركس مدونة.
مباشرة تجربة تداول العملات الأجنبية والمعلومات حول سوق الصرف الأجنبي التي سوف تكون مفيدة للتجار.
الاشتراك للحصول على التحديثات اليومية مباشرة إلى صندوق البريد الإلكتروني الخاص بك.
استخدام الشبكات العصبية المتكررة في الفوركس.
اليوم، أقدم الكتاب الإلكتروني الجديد للتحميل مجانا من إيرنفوريكس. ومن استخدام الشبكات العصبية المتكررة للتنبؤ الفوركس التي كتبها V. V. كوندراتينكو ويو. A. كوبيرين من جامعة سانت بطرسبرغ الحكومية. وقد نشرت هذه المادة العلمية مرة أخرى في عام 2003، وكان من بين أولى تلك التي تقدم بعض نظرة حقيقية على قدرات الشبكات العصبية للتنبؤ أسعار الصرف الأجنبي.
كما يحدث غالبا مع الأوراق العلمية المكتوبة في أوروبا الشرقية أو بلدان رابطة الدول المستقلة، ونوعية الترجمة في هذا واحد هو أيضا منخفضة جدا. على الرغم من هذه الحقيقة، المادة ليست صعبة جدا لقراءة كما أنه يحتوي على عدد قليل جدا من الصيغ ويعتمد على عدد قليل من المفاهيم الرياضيات.
يستخدم المؤلفون شبكة عصبية متكررة تتألف من 2 من الخلايا العصبية المدخلات والخلايا العصبية 1 الإخراج مع 100 الخلايا العصبية الخفية في المنتصف. يتم استخدام مجموعتي بيانات للمدخلات & # 8212؛ معدل سعر الخام للتغيير ومتوسط متحرك مع فترة محددة إلى 5. ثبت أن تركيبة المدخلات هي الأكثر فعالية من عدة متغيرات حاولوها. من أجل البساطة والتنبؤ قابليتها للاستخدام، المتوسط المتحرك بار واحد إلى الأمام يستخدم كقيمة الانتاج. يتم تدريب ن الناتجة أكثر من 1200 الحانات اليومية من ور / أوسد، غبب / أوسد، أوسد / جبي و أوسد / تشف. ثم يتم اختباره على مجموعة من 103 الحانات اليومية. وتظهر النتائج ميلا كبيرا إلى حد ما للشبكة العصبية المصممة للتنبؤ بكل من علامة وحجم التغير في أسعار العملات في المستقبل.
للأسف، الكتاب الإلكتروني لا يخلو من عيوبه. بالإضافة إلى قضايا جودة الترجمة المذكورة أعلاه، بعض البيانات تبدو مضحكة نوعا ما. وبصفتنا تاجرا في الغالب الأسبوعي، كنت مسليا بشكل خاص من خلال هذا الاقتباس:
وبالإضافة إلى ذلك، فإن توقعات البيانات الأسبوعية يفترض، أن التاجر، الذي يستخدم هذا التنبؤ سوف التجارة مرة واحدة في الأسبوع، وهو أمر غير ذي صلة من الناحية العملية.
لماذا هو غير ذي صلة؟ لسوء الحظ، لا يوجد أي تفسيرات أخرى قدمها المؤلفون. وأود أيضا أن أشير إلى عدد قليل نوعا ما من الحانات المستخدمة للاختبار (مجموعة الإنتاج). ومن شأن رفعها إلى شيء مماثل لحجم مجموعة التدريب أن يكون خطوة مبررة. اختيار قيمة المتوسط المتحرك المباشر في المستقبل كما قيمة الإخراج ن & # 8217؛ يبدو أيضا دون المستوى الأمثل بالنسبة لي. وستكون قيم المعدل الفعلية 5 أو 10 أو 20 بارا قبل نقطة التنبؤ أكثر إثارة للاهتمام لاعتبارات عملية.
الوظائف ذات الصلة:
14 ردود على & # 8220؛ استخدام الشبكات العصبية المتكررة في الفوركس & # 8221؛
أنا أحاول تكرار رن كما رأيت في هذه الورقة لأطروحتي.
كيف يمكنني حساب القيمة المقربة المتوقعة من المتوسط المتحرك المتوقع؟
أو كيف يمكنني الحصول على بعض المعلومات ذات الصلة من ما المتوقع؟
27 يناير 2018 الساعة 10:06 صباحا.
حساب قيمة وثيقة من قيمة ما المتوقعة هو بسيط جدا في الواقع. النظر في 5-فترة ما. لديك بالفعل 4 قيم قريبة السابقة، لذلك يمكنك فقط إضافتها والحصول على قيمة C sum4. ثم، حساب إغلاق المتوقع: 5 & مرات؛ ما & # 8211؛ C sum4.
شكرا أندري على ردكم :)
في الواقع المشكلة هي أن المتوسط المتحرك المتوقع هو مشابهة تماما بيانيا إلى ما الحقيقي (65٪ إلى 70٪ التنبؤ الصحيح لزيادة أو نقصان من ماجستير في 4 سنوات).
ولكن عندما تحويل ما في قيمة وثيقة (مع الصيغة الخاصة بك) التنبؤ الصحيح من علامة على قيمة وثيقة تميل إلى 50٪.
هذا هو التنبؤ ما (التنبؤ الأحمر، الأزرق الحقيقي)
هذا هو التنبؤ قيمة قريبة الفقراء (التنبؤ الأحمر، الأزرق الحقيقي الحقيقي)
شكرا لمساعدتك :)
27 يناير، 2018 في 3:11 مساء.
على ما يبدو، فهذا يعني أن الطريقة تتوقع ما تجاهل قيم الإغلاق الحالية. يمكن أن يكون لديك مجموعات مختلفة لانهائية من الإغلاق التي سوف تؤدي إلى نفس القيمة ما.
حتى الآن، وأنا لست متأكدا حقا إذا كان يمكن أن تساعدك على التجارة بنجاح.
مرحبا. I & # 8217؛ لقد تم القيام بمحاولات مستقلة لإعادة إنتاج التجارب من هذه الورقة. احتفظت بجريدة عن تجاربي في مدونتي:
قبل فترة من الزمن كتبت أيضا مقالة عن الاختلاف الذي أجريته من التجارب الأصلية ل كوبيرين & # 8217؛
لدي أيضا بعض الانتقادات حول جودة النتائج المبينة في الورقة. لقد حصلت على أفضل & # 8220؛ R تربيع & # 8221؛ عشرات باستخدام طريقة التنبؤ تافهة. أصف هذه الطريقة هنا:
طريقة التنبؤ التافهة تتفوق بسهولة على الشبكة العصبية كوبرين & # 8217؛ عند تقييمها من قبل نفس المعايير هو مبين في ورقة.
1 يوليو 2018 الساعة 12:07 مساء.
بالمناسبة، هناك & # 8217؛ s في الواقع مقالة سبرينغر المنشورة حول نفس الطريقة كوندراتينكو و كوبرين استخدامها في بلدهم. كما شاركت في تأليفه كوبرين. أنا & # 8217؛ قرأت المقالة، وهناك & # 8217؛ s لا شيء كنت & # 8217؛ ر تجد في & # 8221؛ استخدام الشبكات العصبية المتكررة للتنبؤ فوركس & # 8221؛. إذا كان هناك أي شيء، هناك تفاصيل أقل:
شكرا لتقاسم البحوث الخاصة بك في مثل هذا التفصيل الكبير! كانت هذه القراءة الثاقبة جدا. أشعر الآن مستوحاة من القيام ببعض مزيد من البحوث في الشبكات الوطنية والتنبؤ الخوارزميات. ومن الجميل أيضا أن نرى رمز مشترك & # 8211؛ لا العديد من المطورين تفعل ذلك.
أنت & # 8217؛ مرحبا جدا، السيد مورارو. أحاول أن اتبع 4 حريات البرمجيات مفتوحة المصدر. لذلك لا تتردد في تحميل، قراءة، وتعديل التعليمات البرمجية.
كتبت مجموعة من الكود البرمجي و باش مخطوطات لهذا المشروع، ولكن لم أكن & # 8217؛ t تعليق ملفات المصدر بشكل صحيح. سي إذا كان لديك صعوبة في فهم ما & # 8217؛ ق يحدث في التعليمات البرمجية، لا تتردد في البريد الإلكتروني لي مع أي أسئلة.
وأعتقد أن عمل كوبيرين & # 8217؛ على التنبؤ المالي باستخدام الشبكات قصيرة المدى مبتكر جدا. ولكن لأنه هو الطليعية حتى، قد تأتي مع عدد قليل من المراوغات. حاولت العديد من الأشياء المختلفة في محاولة للحصول عليه إلى نقطة حيث يمكنني استخدامها لتنبؤ بشكل مربح اتجاهات السوق. ولكن أعتقد أن هناك حاجة إلى مزيد من البحوث.
هناك بحوث قليلة نسبيا يتم إجراؤها اليوم على الشبكات العصبية المتكررة، لذلك أعتقد أنه قد يكون هناك بعض الوقت قبل أن نرى أي نتائج مثيرة في هذا الشأن. ولكن هذا & # 8217؛ مجرد رأيي الشخصي.
يقول كوبيرين أنه يمكن التنبؤ حوالي 80٪ من علامات الزيادة. هل هذا يكفي للتجارة المربحة؟
15 سبتمبر، 2018 في 3:57 مساء.
يعتمد على أي نوع من علامات الزيادة التي يمكن التنبؤ بها. إذا كانت هذه فرصة 80٪ للحصول على 1 نقطة مقابل 20٪ فرصة فقدان 5 نقاط، فإنه ليس مربحا.
كما اتضح، والتنبؤ علامات زيادة مع دقة 80٪ ليس كل ذلك من الصعب.
I & # 8217؛ d أقترح عليك تجربة التجربة التالية:
خذ أي مجموعة بيانات سجل أسعار صرف العملات وأخذ بعض مجموعات فرعية منه. الآن، قم بتنفيذ خوارزمية التنبؤ التافهة التالية على تلك المجموعات الفرعية:
لكل علامة زيادة في المجموعة الفرعية، توقع أنه سيكون له نفس اتجاه علامة الزيادة السابقة.
ستلاحظ أن مجرد الحظ، فإن بعض (العديد) من مجموعاتك الفرعية سيتحقق من توقعات صحيحة بنسبة 80٪.
وتستخدم الشبكة العصبية كوبيرين & # 8217؛ قيمة سعر الصرف واحد من اليوم السابق للتنبؤ القيمة من اليوم التالي له. قد تكون الشبكة العصبية الخاصة بهم أيضا مجرد بصق التنبؤات مع قيمة قريبة من القيمة من اليوم السابق (من ذلك & # 8217؛ ق المدخلات). يجب أن يكون هذا كافيا لإنتاج معدل ضرب بنسبة 80٪ لبعض مجموعات البيانات الفرعية.
حاولت كوبيرين وآخرون خوارزمية فقط مع عدد قليل جدا من مجموعات فرعية. ولعلهم فعلوا شيئا مثل التجربة التي اقترحتها هنا، والكرز اختار المجموعات الفرعية أكثر احتمالا لإنتاج مواتية R - التربيعية وزيادة علامات ضرب النسب، حتى أن الأرقام سوف تبدو جيدة على الورق.
فقط لأكرر: أنا نفسي قد أجرى هذه التجربة. أنا ملاذ & # 8217؛ ر اختباره لعلامات الزيادة. ولكن لدي لنتائج R - التربيعية. وتبين أن الكثير من مجموعات فرعية تظهر R - تربيع أكبر من 0.6 (وهو أفضل أن حصلت على كوبيرين وآخرون)، عند استخدام بلدي طريقة التنبؤ تافهة:
عذرا: أفضل ما يحصلون عليه هو شيء حول 0.69. حسنا: أحصل على ما يصل إلى 0.74، وأنا لا & # 8217؛ حتى استخدام الشبكة العصبية. أتوقع فقط: & # 8220؛ غدا & # 8217؛ ق قيمة سيكون بالضبط نفس اليوم & # 8221؛ على مجموعة من مجموعات فرعية من البيانات، وتتراوح نتائج R - التربيعي من 0.3 إلى 0.74.
سيكون من المثير للاهتمام أن نرى ما يحصل على الشبكة العصبية عند اختبارها ضد مجموعة البيانات حيث يحصل على طريقة تافهة انخفاض درجة التربيعية، مثل 0.3. أظن أن شبكتهم العصبية لم تحصل على أي شيء أعلى من ذلك بكثير. لو اي.
وبطبيعة الحال، لم يشارك كوبرين وآخرون أي رمز أو مجموعة بيانات. لذلك أعتقد أننا & # 8217؛ ليرة لبنانية ترك يتساءل.
أوه، وشيء آخر: كوبرين دوسن & # 8217؛ ر التنبؤ علامة زيادة لسعر الصرف نفسه، ولكن بالنسبة للمتوسط المتحرك من معدل العائد اللوغاريتمي.
وهذا يجعل من المرجح أكثر أن علامة الزيادة في اليوم السابق تكون نفس علامة لليوم التالي، لأن المتوسط المتحرك في الواقع يخفف من تقلبات معدل العائد.
SnowCron.
مجانا E - فئات البريد.
في هذه المقالة: مثال على استخدام برامج الشبكات العصبية لدينا لإنشاء نظام التداول الشبكي العصبي الكامل.
يستخدم هذا المثال لغة البرمجة المضمنة في اللحاء، لذا يرجى قراءة دليل لغة البرمجة النصية أولا.
استخدام الشبكات العصبية لخلق استراتيجية تداول الفوركس.
في هذا البرنامج التعليمي على الانترنت مجانا سوف تجد "دورة كاملة" من استخدام الشبكات العصبية (اللحاء الشبكات الشبكات العصبية) لتداول العملات الأجنبية (أو تداول سوق الأسهم، والفكرة هي نفسها).
سوف تتعلم كيفية اختيار المدخلات للشبكات العصبية الاصطناعية، وكيفية اتخاذ قرار ما لاستخدامها كما الإخراج.
سوف تجد مثالا للنص البرمجي جاهز للاستخدام الذي يسمح لأداء الشبكات العصبية الأمثل لكل من بنية الشبكة العصبية (عدد من الخلايا العصبية) ونظام تداول العملات الأجنبية (وقف الخسارة الخ)
وأخيرا (الجزء الذي ليس موجودا في معظم الدروس)، وسوف تتعلم ما يجب القيام به بعد ذلك. بعد كل شيء، اللحاء الشبكات العصبية البرمجيات لا تستطيع أن تفعل التداول في الوقت الحقيقي، تحتاج إلى استخدام شيء مثل محطة التجارة، ميتاكوتس أو ميتاترادر. كيفية منفذ نظام التداول الفوركس من اللحاء إلى منصة التداول المفضلة لديك؟ هل لديك للتعامل مع دلز، عناصر تحكم أكتيفكس والبرمجة على مستوى منخفض؟ الجواب هو لا.
كورتيكس نيورال نيتوركس نتووركس يأتي مع ميزة سهلة الاستخدام التي تسمح لك بسهولة الميناء الناتج (المدربين) الشبكة العصبية إلى لغة البرمجة من منصة التداول الخاصة بك. لا دلز، ددي، أكتيفكس أو أي حلول أخرى منخفضة المستوى - كل شيء سهل وبسيط.
ملاحظة هامة: هذه ليست "كيفية التجارة" البرنامج التعليمي. بدلا من ذلك، فإنه يخبرك كيفية استخدام اللحاء الشبكات الشبكات العصبية البرمجيات، ولكن لا تزال تحتاج إلى اختراع نظام التداول الخاص بك. واحد الذي نستخدمه هنا هو بالكاد نقطة انطلاق، ولا ينبغي أن تستخدم كاستراتيجية تداول العملات الأجنبية "كما هي". فكرة هذا النص هو أن يعلمك لإنشاء أنظمة التداول القائمة على ن ومنفذها إلى منصة التداول من اختيارك. على سبيل المثال، هو أوفيسيمبليفيد المثال، ويمكن أن تستخدم إلا كرسم توضيحي للمبادئ التجارية. وبنفس الطريقة، فإن نظام التداول ماسد، الذي يمكن العثور عليه في العديد من الدروس، لا يعمل بشكل جيد بعد الآن (كما تغيرت الأسواق)، ولكن لا يزال مثالا جيدا على استخدام مؤشرات للتجارة الميكانيكية.
في كلمتين: القيام بالتحليل الخاص بك.
ملاحظة هامة أخرى: البرنامج التعليمي يستخدم أمثلة، والكثير منهم. لجعل حياتك أسهل، لقد شملت كل منهم، وليس فقط شظايا. ومع ذلك فإنه يجعل النص أطول من ذلك بكثير. أيضا، أنا ذاهب من أول، الخرقاء، نظام تداول العملات الأجنبية، إلى أكثر تقدما، في كل مرة شرح ما تم تحسينه ولماذا. التحلي بالصبر، أو القفز مباشرة إلى القسم الذي تحتاجه.
ملاحظة هامة النهائية: رمز ليست شيئا منحوتة في الحجر، فإنه يمكن أن تتغير في حين أن هذا النص مكتوب. يتم تضمين الإصدارات النهائية من الملفات النصية في أرشيف اللحاء.
مضايقات الفوركس شراء / بيع إشارات: ما هو الخطأ مع أمثلة "بسيطة"؟
في دليل المستخدم كورتيكس الشبكات العصبية البرمجيات استخدمنا مثال بسيط من الشبكة العصبية أفتيفيسيال، والتنبؤ سعر الأسهم جينز. لمعرفة ما هو الخطأ في هذا النهج، دعونا نفعل نفس المثال "بسيط"، باستخدام MSFT. TXT، بدلا من GENZ. TXT (استخدام 800 سجل في مجموعة التعلم، كما MSFT. TXT هو أقصر قليلا، ثم GENZ. TXT).
انها فقط لن تعمل! لماذا ا؟
وسوف يصبح السبب واضحا، إذا سألت نفسك: "ما هو السبب في التنبؤ الشبكة العصبية للقيم المستقبلية يمكن أن يتم في المقام الأول؟"
الجواب هو: أنها تعلم أن تفعل ما يسمى الشبكات العصبية الاعتراف نمط، للتعرف على أنماط، وإذا كان هناك منطق مخفي في هذه الأنماط، ثم حتى نمط جديد (مع نفس المنطق) سيتم الاعتراف.
هذا هو خدعة - "مع نفس المنطق". ليس هناك حتى واحد، ولكن ثلاث مشاكل هنا.
أولا وقبل كل شيء، إذا نظرتم إلى سعر سهم ميكروسوفت، ستلاحظون أنه كان ينخفض في جزء "التعلم" من بياناتنا، وعلى جانبي - في الجزء "اختبار". لذلك فمن الممكن، أن المنطق قد تغير.
ثانيا، والأهم من ذلك - ما هو النمط؟ ترى، إذا علمنا الشبكة العصبية في نطاق 10 - 100، ومن ثم قدمته مع شيء في مجموعة 1 إلى 3 - فهي أنماط مختلفة! 10، 20، 30 و 1، 2، 3 تبدو مماثلة للإنسان لأنه - لأن لدينا هذه القدرة على تقسيم عشرة، عندما قدمت مع الأرقام تنتهي مع الصفر. وهو ما يسمى تجهيز مسبق للبيانات، وبشكل افتراضي، فإن ن لا يمكن أن تفعل ذلك.
هل يمكننا تعليمه؟ بالتاكيد. ما هو بالضبط نحن بحاجة إلى تعليمه؟
هذا هو الثالث، والأكثر أهمية. نحن لسنا بحاجة إلى التنبؤ السعر! نحن لا نهتم! ما نحتاج إليه هو شراء الفوركس إشارات البيع.
الآن، انتظر لحظة! نحن بحاجة إلى) أن يكون لدينا مدخلات (التعلم والاختبار) في نفس النطاق، ونحن بحاجة ب) لتكون قادرة على اتخاذ قرارات التداول على أساس ذلك؟ أليس هذا ما نسميه مؤشرا؟ البنغو؟
لذلك، هذا ما سنقوم به - سنقوم ببناء مؤشر، لإطعامه إلى ن كمساهمة، وسنحاول الحصول على التنبؤ بقيمة المؤشر، وليس سعر السهم لا قيمة لها!
في المثال الأول، سنقوم بتحميل أسعار الأسهم من القرص، وفتح ملف الشبكة العصبية وبدء التعلم - كل ذلك في وضع الآلي.
إنشاء ملف نصي جديد (أو فتح واحد الذي يأتي مع كورتيكس الشبكات العصبية برامج أرشيف) وندعو إليها stock_nn. tsc.
أولا وقبل كل شيء، نحن بحاجة إلى تحميل قيم الأسعار من ملف MSFT. TXT. سنقوم باستخدام مؤشر كلف (انظر أدناه)، ولكن لحساب ذلك، نحن بحاجة إلى قيم مقسمة إلى تقسيم للارتفاع والمنخفض، وليس فقط للإغلاق. هنا هو كيفية الحصول عليها.
stock_nn. tsc، بارت 1.
السطر الأول بتعيين المسار إلى متغير ستروستباث، بطبيعة الحال، سيكون لديك لتعديله، إذا كان ملف البيانات موجود في الدليل مختلفة.
في السطر الثاني نحدد، أن هذا المسار غير نسبي ("النسبية" إلى موقع ملف Cortex. exe).
يتلقى TABLE_LOADER المسار، السلسلة الفارغة ل "ستارت لين"، 1 - لتخطي السطر الأول (أسماء الأعمدة)، جزء من خط تذييل الملف (السطر الأخير في MSFT. TXT لا يحتوي على بيانات)، فهو أيضا تعليمات لتحميل العمود رقم 0 (وندعوه أرتديت)، 2 (أرهي)، 3 (ارلو)، 4 (أرك) و 6 (أكلوس).
للحصول على وصف كامل ل TABLE_LOADER، راجع دليل مرجع سلانغ.
ثم نقوم بحساب الانقسام، عن طريق قسمة إغلاق إغلاق عن طريق إغلاق، واستخدام هذه القيمة لضبط منخفض وعالي.
يحتوي الملف MSFT. TXT على أحدث البيانات فيرست، بينما نريد لهم لاست.
بعد ذلك، نحن بحاجة إلى إنشاء مؤشر. لنفترض أنه سيكون مؤشر قيمة موقع إغلاق، على الرغم من أنه في "الحياة الحقيقية" ربما استخدم أكثر من مؤشر واحد كمدخل ن.
يتم حساب مؤشر قيمة الموقع القريب مثل.
كلف = ((كلوز - لو) - (هاي-كلوز)) / (هاي-لو)، حيث كلوز، لو أند هاي هي للفاصل الزمني، وليس بالضرورة لشريط واحد. ملاحظة، أننا نريد ذلك في نطاق 0 - 1، لجعله أسهل لتطبيع إلى نطاق ن لدينا (وهو، مرة أخرى، 0-1).
stock_nn. tsc، بارت 3.
بعد ذلك، نحن بحاجة إلى إنشاء ملف تأخر. دعونا نستخدم التأخر يساوي 1، 2. 9 (للحصول على تفاصيل حول وظائف الملف، راجع الدليل المرجعي سلانغ). لاحظ أن الحوار ن اللحاء يمكن أن تنتج تأخر بسيط تلقائيا (يمكنك استخدام زر "توليد تأخر"). ولكن في وقت لاحق من هذا النص، سنعمل مع تأخيرات معقدة (مما يعني أنها ليست 1، 2، 3. ولكن 1، 3، 64. أيا كان)، لذلك نحن بحاجة إلى إنشاء التعليمات البرمجية التي يمكن التعامل مع هذه المهمة في طريقة أكثر مرونة.
stock_nn. tsc، الجزء 4.
وجود ملف تأخر، ونحن مستعدون لإنشاء أول شبكة العصبية لدينا. هذه الوظيفة تأخذ الكثير من المعلمات، لذلك تكون متأن. ومع ذلك، فإن رمز بسيط حقا.
بالمناسبة، يمكن إزالة معظم هذه التعليمات البرمجية، إذا كنت تعتقد أنك يمكن التعامل مع الأرقام، بدلا من أسماء معنى في التعليمات البرمجية الخاصة بك، ومع ذلك، من شأنها أن تكون ممارسة الترميز سيئة للغاية.
stock_nn. tsc، الجزء 5.
الآن، بعد أن يكون لدينا شبكة العصبية والملف متخلفة مع البيانات، ونحن بحاجة لتعليم الشبكة. ملف التأخر (msft_ind. lgg) لديه 1074 السجلات، لذلك فمن المعقول أن استخدام 800 كمجموعة التعلم، و 274 المتبقية كمجموعة اختبار.
يمكنك، بطبيعة الحال، فتح ملف شبكة وانقر فوق زر "تشغيل" في علامة التبويب "التعلم". ولكن لأن هذا هو مقدمة إلى المتقدمة اللحاء الشبكات العصبية برامج البرمجة، دعونا استخدام سلانغ المدمج في لغة البرمجة بدلا من ذلك.
الرمز التالي إحضار الحوار مشروط مع إعدادات آن ن. ملاحظة، أنه إذا كنت تريد أن يكون لها امتياز من النقر على زر "تشغيل"، تحتاج إلى تغيير.
stock_nn. tsc، الجزء 6.
و بستارتلارنينغ يمكن أن يكون 0، في هذه الحالة الحوار سوف تنتظر المدخلات الخاصة بك، أو 1، ثم سوف تبدأ التعلم أيتوماتيكالي.
سوف بريسومسكريبت، إذا يساوي 1، استئناف السيناريو، إذا قمت بإغلاق الحوار عن طريق النقر فوق الزر موافق.
يتم استخدام بريسيت لإعادة الشبكة قبل بدء التعلم.
تشغيل البرنامج النصي، والانتظار حتى العداد العصر لتجاوز 1000، ثم انقر فوق "إيقاف". انتقل إلى علامة التبويب "تطبيق"، وانقر على "تطبيق". سيقوم هذا بتشغيل مجموعة البيانات بأكملها (التعلم والاختبار) من خلال ن، وإنشاء ملف. APL، الذي يحتوي على كل من المدخلات والمخرجات الأصلية، والتنبؤ الذي تم إنشاؤه ن، وبهذه الطريقة يمكنك بسهولة رسم لهم ومقارنة ضد بعضها البعض .
انتقل إلى علامة التبويب "الإخراج"، وحدد ملف msft_ind. apl، ثم انقر فوق "استعراض الملف"، "حدد الحقول"، ثم حدد "لا" في مربع القائمة اليسرى، و (بالضغط باستمرار على المفتاح كترل أثناء التحديد بالماوس ) كلف و ن: كلف في مربع القائمة اليمنى. انقر على "مخطط" لمعرفة مدى جودة توقعاتنا. حسنا. إنه جيد نوعا ما، مما يمكننا أن نقوله من خلال النظر إليه. ومع ذلك، لا شيء غير عادي.
وكان هذا مجرد مثال على ما يمكنك القيام به مع البرمجة النصية سلانغ، وكيفية أتمتة المهام الروتينية اللحاء. ومع ذلك، حتى الآن، لم نفعل شيئا كنت لا تستطيع أن تفعل "باليد". حسنا. لا شيء تقريبا، لأنه إذا كنت ترغب في إنشاء ملف تأخر مخصص، مع القول، كلف-100، كلف-50، كلف-25. الأعمدة، ثم سيكون لديك لاستخدام سلانغ (أو إكسيل.)، لأنك لا تستطيع أن تفعل في اللحاء دون البرمجة.
الفوركس استراتيجية التداول: ما لتحسين؟
هنا هي مشكلتنا التالية. هل نحن بحاجة إلى تنبؤ جيد المظهر، أم أننا بحاجة إلى واحد يمكننا استخدامه للتجارة مع الربح؟ يبدو السؤال غريبا، ولكن مجرد التفكير في ذلك للحظة. دعونا نقول لدينا توقعات جيدة جدا 1 ساعة. 95٪ دقيقة. ومع ذلك، إلى أي مدى يمكن أن يذهب السعر في ساعة واحدة؟ ليس بعيدا جدا، وأخشى. قارن ذلك إلى الوضع، عندما يكون لديك غير دقيقة بدلا من 10 ساعة التنبؤ. سوف يكون أفضل؟
للإجابة على هذا السؤال، نحن بحاجة إلى التجارة في الواقع، مقارنة بسيطة من الأخطاء المتوسطة التي تنتجها اثنين من ننس لن تساعد.
الجزء الثاني (من نفس المشكلة) هو في الطريقة التي نحدد "التنبؤ الجيد". لنفترض أن لدينا شبكة، والتي تنتج التنبؤ، وهو 75٪ دقيقة. مقارنة ذلك إلى ن، التي تنتج 100٪ التنبؤ الدقيق. آخر واحد هو أفضل. الآن، تقسيم الإخراج (التنبؤ) من 100٪ دقيقة ن من قبل 10. سيكون لدينا شبكة غير دقيقة للغاية، كما إشارة لها في أي مكان بالقرب من إشارة استخدمنا ك "الإخراج المطلوب". ومع ذلك، فإنه يمكن أن تستخدم نفس الطريقة استخدمنا 100٪ دقيقة ن، كل ما علينا القيام به هو مضاعفة إلى 10!
انظر، يتم إنشاء ن، من خلال ضبط متوسط الخطأ التربيعي، وليس الارتباط، لذلك، على الأقل من الناحية النظرية، يمكن أن ن أفضل تظهر نتائج سيئة، عند استخدامها لتداول الأسهم / الفوركس الفعلي.
لحل هذه المشكلة، نحن بحاجة لاختبار لدينا ن باستخدام التداول، واستخدام نتائج هذا التداول (الربح والانسحاب) لاتخاذ قرار، إذا كان هذا ن أفضل من الآخر.
دعنا نقوم به. دعونا إنشاء برنامج، التي يمكن استخدامها لضبط ن، وهذه المرة، عن طريق صقل، ونحن سوف يعني نتائج التداول.
تجارة الشبكة العصبية: بعض الملاحظات القصيرة.
أولا وقبل كل شيء، في مثالنا أعلاه، والتعلم "التلقائي" لن تتوقف أبدا، لأننا لم تحدد أي معايير التوقف. في مربع الحوار، أو في وظيفة CREATE_NN، يمكنك توفير دقيقة. خطأ (عند وصول ن إلى ذلك، فإنه يتوقف، وإذا تم تعيين بريسومسكريبت إلى 1، سيتم إغلاق الحوار وسوف السيناريو استئناف). أيضا يو يمكن أن توفر الحد الأقصى لعدد من الحقائب، أو كليهما. أنا لا تستخدمه في المثال أدناه، على الأقل ليس دائما، لأنني أخطط لمشاهدة التعلم وانقر فوق إيقاف عندما أعتقد أن ن جاهزة. إذا كنت تريد أن تفعل ذلك في وضع تلقائي بالكامل، والانتباه إلى هذه المعلمات.
ثانيا. واحدة من الطرق لجعل شبكة أصغر وأسرع وأكثر دقة، هو أن تبدأ مع الشبكة الصغيرة، وزيادة حجمه، والخلايا العصبية عن طريق الخلايا العصبية. وبسرعة، يتم تحديد عدد الخلايا العصبية المدخلات من خلال عدد من أعمدة بيانات المدخلات (ولكن يمكننا أن نختلفها أيضا)، وينبغي أن يكون عدد الخلايا العصبية الإخراج مساويا لعدد أعمدة بيانات الإخراج (عادة واحدة، ولكن ليس بالضرورة ). وهذا يعني أننا بحاجة إلى تحسين عدد الخلايا العصبية في طبقة (طبقات) خفية.
أيضا، كما ذكرت، ونحن لا نعرف حقا البيانات التي تستخدم. سوف كلف-15 (15 يوما تأخير) زيادة دقة التنبؤ لدينا؟ هل نحن بحاجة إلى كلف-256؟ هل سيكون من الأفضل استخدام كل منهما في نفس ن، أو ستضيف كلف-256 تدمر أدائنا؟
باستخدام دورات متداخلة لتجربة معلمات إدخال مختلفة، يمكنك:
إنشاء ن، بنفس الطريقة فعلنا ذلك لبيانات الأسهم (اسمحوا لي أن أكرر، ل ن، ليس هناك فرق بين الأسهم وفوريكس، حدث فقط أن لدي زوجين من ملفات البيانات عالية الجودة ل فوريكس أن أريد أن معالجة ، أثناء كتابة هذا النص). محاولة مجموعات مختلفة من التأخر. محاولة عدد مختلف من الخلايا العصبية في طبقة خفية. . ومجموعات مختلفة من المؤشرات المختلفة. . وما إلى ذلك وهلم جرا.
ومع ذلك، إذا حاولت كل تركيبات الممكنة من جميع المعلمات الممكنة، فلن تحصل على النتائج الخاصة بك، بغض النظر عن مدى سرعة جهاز الكمبيوتر الخاص بك. أدناه، سوف نستخدم زوجين من الحيل لتقليل الحسابات إلى الحد الأدنى.
بالمناسبة، قد يبدو، أنه إذا كنت تبدأ من واحد الخلايا العصبية الخفية، ثم زيادة إلى 2، 3 وهلم جرا، وعند نقطة ما الخطأ (جودة التنبؤ) أو الربح (إذا كنت اختبار ن من قبل التداول باستخدامه) سوف تبدأ في النزول، ثم لديك الفائز الخاص بك. لسوء الحظ، لا أستطيع أن يثبت، أنه بعد أول "ذروة الأداء" لا يمكن أن يكون هناك الثانية. وهذا يعني، أن الخطأ قد تذهب مثل 100، 30، 20، 40، 50 (كان فقط في الحد الأدنى، أليس كذلك؟) ثم 30، 20، 10، 15،. (الحد الأدنى الثاني). لدينا فقط لاختبار جميع الأرقام المعقولة.
الثالث. التحسين هو سيف ذو حدين. إذا قمت بتحسين شفرتك بشكل مفرط، فقد لا تعمل خارج البيانات التي استخدمتها لضبطها. وسوف أبذل قصارى جهدي لتجنب هذا الخلاف. إذا كنت ترغب في إجراء تحسينات إضافية على التعليمات البرمجية الخاصة بك أو ن، أنصحك لإجراء بحث في الإنترنت، لمعرفة المزيد عن المشاكل المخفية من هذا النهج. ألسو، أنا ذاهب لدفع بعض الانتباه إلى نعومة منحنى الربح. الربح الذي يبدو وكأنه 0، -500، 1000، -100، 10000 قد يكون كبيرا، ولكن الربح 0، 100، 200، 300، 400. هو أفضل، لأنه أقل خطورة. قد نتحدث عن ذلك لاحقا.
وأخيرا، في هذا المثال سنستخدم الفوركس، بدلا من أسعار الأسهم. من وجهة نظر ن لا يوجد فرق، ومن وجهة نظري - الفوركس هو أكثر متعة للتجارة. إذا كنت تفضل الأسهم، يمكن بسهولة تعديل التعليمات البرمجية.
استراتيجية تداول الفوركس للعب مع.
أولا وقبل كل شيء، دعونا خلق نموذج من التعليمات البرمجية لدينا، واحدة التي يمكن بسهولة أن يكون الأمثل في المستقبل. وسوف يكون نظام التداول، والذي يستخدم شبكة العصبية للتجارة وتنتج الرسم البياني (الربح ضد عدد التجارة). وسوف يحسب أيضا السحب، كمقياس متانة نظام التداول لدينا.
forex_nn_01.tsc، بارت 1.
الفرق الرئيسي هنا هو أننا نستخدم وظائف، بدلا من وضع كافة التعليمات البرمجية في الكتلة الرئيسية للبرنامج. بهذه الطريقة فإنه من الأسهل بكثير لإدارة.
ثانيا، لدينا وظيفة تستنيت. أنا باستخدام خوارزمية بسيطة جدا من التداول. The CLV indicator is confined to 0 - 1 interval (our version of CLV is), so when the indicator crosses up the dBuyLevel (see code above), I am buying, when it is crossing down the dSellLevel, I am selling.
Obviously, it is not the best trading strategy, but it will do for our purpose (just for now). If you want to improve it, here are some pointers. First, you may want to have a system, that is not ALWAYS in the market. Second, you may want to use more than one indicator as inputs, and maybe, more than one NN, so that the trading decision is made based on few predicted indicators. We will add some improvements to the trading algorithm later.
We use some standard assumptions of the FOREX trading: spread is 5 points, leverade is 100, min. lot is $100 (mini-FOREX).
Let's take a look at our "trading" system. Once again, it is an oversimplified one. An important note: the TestNn() is called last, and it has access to all variables that were created to that point. So if you see a variable that I am using, without initializing it, it probably means that it was initialized in NewNn(), TeachNn() or some other function that was called prior to TestNn().
To make things easier, comments are placed in the code.
forex_nn_01.tsc, part 2.
Few words about the drawdown. There are few ways of calculating it, and we are using what I consider the most "honest". The drawdown is a measure of instability of our system. What is a chance, that it will loose money? Lets say the initial amount is $1000. If the profit goes 100, 200, 300, 400. the drawdown is 0. If it goes 100, 200, 100. then the drawdown is 0.1 (10%), as we have just lost an amount, equal to 1/10 of the initial deposit (from 1200 to 1100).
I would strongly advice against using trading systems with large drawdowns.
Also, here I use a drawdown, that is to be used with variable lot size. However, in the actual samples, that come with the eBook, you will see another version:
As you can see, here we always use 1000 (the initial amount) to calculate the drawdown. The reason is simple: we always use the same lot size (no money management yet), so there is no difference, how much money we have already accumulated on our account, an average profit should be constant. The worse possible scenario in this case looks like this: from the very beginning ($1000 on account) we are loosing money. If we use 1000$ to calculate the drawdown, we will get the worse drawdown. This will help us not to trick ourselves. For example, say, we traded for some time, and we have $10,000$ on our account. Then we loose some money, and we now have $8,000. Then we have recovered, and got $12,000. Good trading system? على الاغلب لا.
Let's repeat the logic again, as it is very important (and it will become even more important, when we start doing money management). We trade using fixed size lots. So, statistically, there is no guarantee, that the maximum loss will not happen at the very beginning, when we only have $1000. And if it happens, we will have -1000$ (10,000 - 8,000), so the trading system is probably too risky.
When we talk about the money management (probably, not in this text), we will have to use different approach to drawdown calculation.
Note, that in this trading system, I am using the worse possible scenario: I am buying using High and selling, using Low. Many testers do not follow these rules, and create trading systems, that work fine on historical data. But in the real life, these trading systems have very poor performance. لماذا ا؟
Take a look at the price bar. It has Open, High, Low and Close. Do you know, how the price was moving inside the bar? No. So, let's say, your trading system generated a "buy" signal, at the bottom of the price bar (if dLow.
Note that I am using dLotSize equal 0.1 lot ($100). Obviously, in the "real" trading, you will benefit greatly, if the lot size is calculated depending on the money you have, something like:
forex_nn_01.tsc, part 3.
However, we are doing testing here, not trading. And for testing, we need, among other things, to see how smooth the profit curve is. This is much easier to do if the lot size is the same (in ideal situation, for dLotSize = 100 we will get a straight line, with some positive slope, while in case of the adjustable lot size we will get an exponent, that is much harder to analyze).
Later in this text, we will apply money management rules to our trading system, but not yet.
After we are done with the last part of our testing function, let's walk through the rest of the code.
The following function creates a CLV indicator. It takes the interval as a parameter, which means that we can call it many times, during the optimization, passing different numbers.
Note, that I am using the NN that works in the 0 - 1 interval. The data can be normalized, of course, but I chose to divide the indicator by 2 and to add 0.5, so that it is in 0 - 1 range.
forex_nn_01.tsc, part 4.
To make lag file, we can use the CREATE_LAG_FILE function. Alternatively, we can do it by explicitly providing all the necessary code. In this case, we have more control, and we are going to need it, if we begin varying number of lagged columns and so on.
forex_nn_01.tsc, part 5.
The nRemoveFirst parameter is important. Many functions, like indicators, moving averages, lag generators, for that matter, do not work well within the first few records of the dataset. Let's say we have MA(14) - what will it place in the records 1 - 13? So we choose to simply remove the first few (unreliable) records.
For the NewNn, as well as for all functions of this program, we need to pass as parameters only what can be changed during optimization process. For example, there is no need to pass a "skip before" parameter, as it is always the same.
forex_nn_01.tsc, part 6.
The TeachNn function simply brings up the NN dialog.
forex_nn_01.tsc, part 7.
Finally, we need a charting function. It is not mandatory, but it is always a good idea to see what our profit line looks like. The following code uses the XML to produce a chart, so it is a good idea to read the tutorial. Alternatively, you can draw the chart, rather than saving it in a file. To do it, use one of the samples, that are in the samples/scripts directory. Finally, you can modify the code, to produce HTML, rather than XML. HTML is easier to learn, but the code itself will be a bit less readable.
forex_nn_01.tsc, part 8.
Compile and Run the script.
حسنا. As expected, using 7 hours as an interval for the CLV produced very poor results:
FOREX Trading Strategies and Optimization.
The reason for the poor results is quite obvious: we used the Interval, Stop Loss, buy and sell levels and other parameters, that were purely random - we just picked first that came in mind! What if we try few combinations?
FOREX Trading Signals: What to optimize?
First of all, by overoptimizing the buy and sell levels, we can ruin our future performance. However we still can tune them, especially, if the performance is close for close values of buy and sell limits. For example, if we have -10% profit at buy limit equal 0.3, and +1000% profit when it equals 0.35, then there is probably a lucky coincidence, and we should not use 0.35 for our trading system, as in future it will probably not happen again. If, instead, we have -10% and +10% (instead of +1000%), it may be safer to use.
Generally, our trading system should be built for WORSE possible scenario, as if during the "real" trading the performance will be better, then during the test, we will survive, but not the other way around.
We can vary the value for the indicator interval, provided we have enough trades, so that we can be confident, in terms of statistics, in the performance of a system.
We certainly can vary the number of neurons, I don't think it can be overoptimized easily.
We can vary number of inputs and lags for inputs. It is possible to overoptimize this, but it is not very likely to happen.
And, of course, we can try different indicators.
Accurate FOREX Signals: How to optimize?
As have already been mentioned, if we start trying all possible combinations, it will take forever. So we are going to cheat. We will create pre-defined sets of parameters, that we think are reasonable, and pass them to the program.
To make as few calculations as possible, note, that Clv-1 and Clv-2 are, probably, important, but what about Clv-128? And - if we already have Clv-128, do we need Clv-129? Probably, not. So we are going to have something like Clv-1, Clv-2, Clv-4, Clv-8, . Clv-128 with just few variations, which will make our calculation time thousands times shorter.
FOREX Professional System Trading: Can it work at all?
What is it exactly we want to predict? Until this point we have used 1 hour chart for EURUSD, and we were predicting the next bar's CLV. Will the CLV+2 be better? What about CLV+3?
Also, especially considering the poor performance of our first trading system, it would be nice to know, that - at least in the "ideal" world, the goal (profitable trading) can be achieved.
To answer these questions, let's create a simple testing program. We assume, that our prediction is 100 % accurate, and, based on this assumption, we will use CLV+N, not the NN predicted one. That's right - we are going to take data from the future, and to use them instead of the NN prediction. This approach wouldn't work in the real life, of course, but at leats, it will give us some ideas of what to expect.
When looking at the results, please keep in mind, that we are not using any advanced money management, our lot size is set to a minimum $100. If you use variable lot sizes, results will be dramatically different. But even at a lot size set to 0.1 we can see (below) that getting the information from the future is an ultimate trader's "holly graal".
forex_nn_02.tsc, part 1.
You are already familiar with this code, it was used in FOREX_NN_01.TSC. It handles data loading. The only difference is in the part that obtains the list of files in the "images" directory and deletes all files with the. PNG extention. The reason for this code is simple: during our tests we are going to create many - may be, thousands - image files. We don't want them to hung around after we are done. So at the beginning of the script we are deleting images, created by other scripts.
forex_nn_02.tsc, part 2.
Just a few comments. We do not want to try all possible values for, for example, CLV interval. Instead, we can create an array, that contains only values we want to test. Then (see below) we will walk through this array.
Stop losses are important part of any trading strategy, so I have decided to vary them as well. It is a dangerous idea, however, as it is easy to overoptimize the system.
I am planning to test different values for buy and sell levels, but it will be done in cycle, without using arrays.
Unlike in our previous example, we want to have a large XML file, containing many images. To do it, I have moved the code, that is forming the XML header and footer outside of the Chart function. Read one of the online XML tutorials for details.
Note, that I am using 0 as the first lag, which means, that first I am testing the indicator (CLV) that was not "shifted" from the future. Just to get an idea, how good out "trading system" would be without NN (horrible, is the right word. It is loosing all the money).
Cortex uses the Internet Explorer control to display XML pages. When pages grow large, it takes a lot of memory. If your computer cannot handle it, consider creating multiple XML or HTML pages, instead. In the case of forex_nn_02, it should not be a problem, as the page is relatively short. Alternatively (that is what I am doing in scripts later in this text), create XML file, but do not open it from Cortex. Open them using Internet Explorer instead - unlike IE control, the Internet Explorer does not have the memory problem.
Now the code that is trying different combinations of parameters.
forex_nn_02.tsc, part 3.
Here, we are using nested cycles. In every cycle, we are assidning some variable (for example, nInterval for the outer cycle). This way the cycle will assign values of all elements of a corresponding array, one in a time. Then WITHIN it, the inner cycle is used, and so on, so that all combinations of all array elements are tested.
In the innermost cycle, I am calling the Test() function, to "test trade", and Chart() to add a new picture to a list of images saved on disk. Note, that this Chart() does not show any images, until all cycles are completed.
The Test() and CreateClv() functions are almost the same as in the previous example. The only real difference is due to the fact that it is called more then once. To do it, I am calling ARRAY_REMOVE to cleanup arrays.
Also, notice, that we are only creating charts for the combinations of parameters, that produce trading system with positive profit. Otherwise, we call "continue", to skip the Chart() function.
Finally, we have Take Profit now, so our trading system can be a bit more flexible.
forex_nn_02.tsc, part 4.
The Chart() function was broken into two pieces. The header and the footer should be written to the XML file only once, so they were moved to the main part of the program.
Also, I am using the counter, to save files under the different names. The information about parameters is written to the header of an image, so we can easily see which one it is. Finally, images are only saved for winning configurations, meaning the balance at the end should be more, then at the beginning.
forex_nn_02.tsc, part 5.
Run the program (it will take some time to complete). You will end up with a large XML page with images, one for each winning configuration.
Some of the results are great, however, as we used data "from the future", this system will not work in the real life. Actually, if you look at the Test() function, you will notice, that the cycle stops before we reach the last element of arrClose:
for(nBar = nRemoveFirst + 1; nBar.
THIS IS C++, just an example.
As you can see, the code is really simple. Now lets do the same using the SLANG script. As in examples before, we will keep the overall structure of the code, so that this example looks familiar. The only difference is that instead of using the built-in APPLY_NN function, we call the function of our own. The code that we do not use (such as cycles) is commented, but not removed.
Note, that the logic behind it was discussed in Neural Networks and Stock / Forex Trading article already. Briefly, the output of this script is formated to be compatible with the MQL, MetaTrader's scripting engine. MetaTrader is a trading platform we use, if you want something different, like TradeStation, for example, you will have to alter the code to comply to its syntax.
Then, in the following chapters, we are going to insert this code in the MetaTrader's indicator, and to use it to trade.
Porting script to trading platform.
The next step is not really required, but it is something, that may be useful. We are going to create a version of a tsc file (one above), but this time, we will use SLANG (Cortex scripting language) to emulate APPLY_NN function. The reason is, in the next chapter we are going to port it to the scripting language of a MetaTrader trading platform, so it is a good idea to make sure everything works.
After we run this function, we discover, that the result it produces is the same, as the forex_nn_05a produced, which means the code works fine. :
Note, that there is a difference at the beginning of the charts, as "our" NN does not try to process the data at the beginning (where lag is incomplete), while the built-in NN does not "know" about this problem. Of course, it doesn't affect the result, as the beginning of the chart is ignored by using the nRemoveFirst parameter in our script (set to 200, which is guaranteed to be larger, then our lag).
Using third-party trading platform.
We have the NN that (more or less) can be used. We have the script, implementing this NN without calls to the Cortex-specific NN functions. Now we are going to port it to the trading platform that can be used for the real trading, which means it can contact brocker, place orders and earn (or loose) money.
As a trading platform, I am going to use MetaTrader.
Disclaimer: I am not related to MetaQuotes in any way. I do not work for them, I am not their affiliate and so on. I use MetaTrader, ONLY because I like it.
I find this program user-friendly, flexible and powerful, and "not a monster". Also, it is free (compare to other packages of this class).
The only (minor) problem is that it is not always easy to find the dealer using MT in your area. Then, when you do a research, you may find couple of brockers, with screenshots on their web sites, that look suspiciously familiar. Yes, they use MetaTrader, but they don't call it MetaTrader!
I have asked for clarification at the company's forum, and they have told me, that they don't reveal brockers using their services. Very strange.
One of the brockers that is not hiding the fact they use MT, is Alpari. They will allow you to open a Demo account, so that you can trade in a real time, but without risking your money.
I am not going to recommeng services of Alpari. Once again, I am not being paid for that. Try their Demo account, and use your own judgement. Or you can start your own research at Internet forums.
Finally, if you do not like the MT, you can probably follow the example below using TS, MS or some other trading platform. This is just an example.
Our MT-based trading system will include two files, the indicator and an expert. This is the way they call it in MQL (scripting language of MT), and I am going to follow this naming convention.
The indicator implements the neural network and draws a chart. An expert takes these data and does trading. As MetaTrader has a "strategy tester", we will be able to test our strategy, to see how good it is.
I will assume, that you are familiar with MQL programming, it is quite close to SLANG and tutorials can be found both at MetaQuotes and Alpari.
Finally, I am using the code structure, that is borrowed from MetaQuotes forum, permission to use it the author of the corresponding posts had granted me permission to use fragments of his code.
Also, as some of our MetaTrader code is the same for all experts and indicators, we moved it to a separate library file. MetaTrader's libraries are nothing but includable files. This library takes care of synhronization, when two or more expert are trying to run in the same time, as well as of few other things. If you use MetaTrader, it will help you to create robust experts, in any case, the MQL language is easy to understand.
mylib. mql, a helper library.
The code should look familiar, all I did was re-writing it, using slightly different language syntax of MQL.
This indicator has two buffers, and draws two lines, one for the original NOC, and one for the NN-predicted NOC. For trading, you don't have to draw both indicator lines, of course (see MQL tutorials to learn how to do it), but I have decided to show them together, so you can compare.
Another difference, that you should know about, is the way MT performs testing. It may, in some cases, be more accurate, then one we did (we did the worse case scenario). Of course, you can always to change the SLANG script from the examples above, to implement any logic you want.
The result of our testing in MT is a bit better, then in Cortex, due to all these reasons.
Keep in mind, that MT calculates the DD in a different way. I still think, that my way is better.
In should be especially noted, that no additional optimization had been performed using MetaTrader's optimizer. We have just plugged our MTS (mechanical trading system) in, and it worked as expected.
هذا هو. You can now create Cortex Neural Network, optimize it to do trading, and to port it to the trading platform of your choice.
No comments:
Post a Comment