شبكة الفوركس
أخيرا شبكة العصبية الحقيقية إي الحرة - شيء عضو تجاري جديد انضم سبتمبر 2008 911 المشاركات مرحبا الجميع، كانت فترة من الوقت. أنا عادة لا تأخذ مثل هذه الفواصل الطويلة من المشاركة في هذا المنتدى ولكن لأكثر من عام إيف كان يعمل على مشروع مكثف جدا وبعد عام من اختبار الأمام إم هنا لمشاركتها مع كل واحد منكم. إم الأصدقاء مع العديد من التجار المهنية وحفنة من الولايات المتحدة حصلت معا، جنبا إلى جنب خبرتنا وخلق شبكة الشبكة العصبية الآلي لميتاتريدر أن يعمل في الواقع. منذ أن علمنا أن معظم مناطق العد لا قيمة لها على الاطلاق أو أسوأ من ذلك، الحيل، كنا نظن أن يكون توفير شيء فريد لمتاجر التجزئة العادي من الناس الذين يمكن أن تكون في الواقع موثوق بها. وتسمى هذه المجموعة ميتانورال. استخدمنا الشبكات العصبية وتطبيقها على تداول الفوركس بنجاح في الماضي وقررت ترجمة هذه الطريقة إلى نظام ميتاتريدر. ومن المعروف على نطاق واسع أن الشركات التجارية لارجيت وصناديق التحوط استخدام نظم الذكاء الاصطناعي والنويرية متطورة للاستفادة من الأسواق المالية مع دقة مذهلة. فكرنا، لماذا لا يمكن أن تكون هذه السلطة أيضا متاحة لنا - المستثمرين المال الصغيرة لذلك أخذت استراحة من كل ما عندي من الأنشطة الأخرى وعملت بجد مع ميتانيورال لتطوير هذا النظام، والتي أعتقد أنها الشبكة العصبية الحقيقية الوحيدة إي. في الواقع، فإنه لا يجب أن يكون حتى إي، يمكن كتابة التعليمات البرمجية في C للعمل بالضبط بنفس الطريقة في التجارة، إسيغنال، نيوروشيل، أو أي منصة تسمح دل استيراد وجمع البيانات، لأن خلق الشبكة العصبية يحدث في Neurosolutions. إيف جعلت المؤشرات وأنظمة التداول للمجتمع فوركسفاكتوري لسنوات لذلك أردت أن أعطيك يا رفاق النسخة المجانية الوحيدة من إي ميتانيورال على شبكة الانترنت. أريد الحصول على تعليقاتك ومرات الظهور. إذا كان هذا الموضوع على ما يرام و لا يحصل سيديتراكيد إل تمديد المحاكمة. إيف كان متعة فك رموز سوق الفوركس مع العقول العظيمة على هذا المنتدى لسنوات وأنه من دواعي سروري أن يعيد. الشبكات العصبية في مناطق العد هو المستقبل، وآمل يا رفاق يمكن تحقيق هذا وتطوير النظم الخاصة بك. الخطوة الأولى في خلق الدماغ الشبكة العصبية الاصطناعي هو جمع البيانات التي سيتم تشكيل هيكل الدماغ. وبما أننا نحاول خلق الدماغ الذي سوف يعرف كيفية التجارة في الأسواق يجب علينا جمع بيانات السوق. ومع ذلك، لا يمكننا ببساطة جمع كتلة من البيانات وتفريغها في محركنا العصبي لخلق هيكل دماغنا. يجب علينا جمع البيانات في الشكل الذي نريد أن الدماغ لمعالجة تلك البيانات، وفي نهاية المطاف نفس الشكل الذي نريده لخلق الناتج في. وبعبارة أخرى، لم يكن فقط يقول دماغنا ما للتفكير، من خلال إعطائها البيانات الخام، ولكن يجب علينا أن نقول له كيف للتفكير، من خلال صياغة تلك البيانات الخام إلى تكوين ذكاء. في هذه الحالة، لدينا تكوين واضح هو أنماط. نحن جمع البيانات في قطاعات، يتكون كل قطعة من عدد من الحانات التي وضعتها التاجر في مؤشر جمع الملكية التي تأتي مع كل من حزم لدينا. يتم تجميع هذا التجمع من القضبان فيما يتعلق شريط المقبل الذي يأتي بعد التجمع - ونحن سوف ندعو هذا شريط في المستقبل. عندما تم جمع بيانات السوق ومن المعروف شريط المستقبل، لأنه هو كل البيانات التاريخية، هو شريط المقبل بعد التجمع. والفكرة هي أن الدماغ الشبكة العصبية سوف تجد أنماط معقدة في تجميع بار واستخدام المعلومات التي تم جمعها، بما في ذلك شريط التالي بعد التجمع، لتحديد أي أنماط معقدة قبل نتيجة شريط المقبل. خلال التداول الفعلي أن النتيجة ستكون شريط المستقبل الذي في الواقع يجعل من الممكن معرفة بدرجة عالية من الدقة اتجاه السوق قبل أن يحدث. يتم استخراج البيانات التي تم جمعها في جدول البيانات الذي يعرض بيانات الأسعار على أنها مفتوحة، عالية، منخفضة، وثيقة (أوهلك). يتم جمع أوهلك من كل شريط على حدة ووضعها في العمود الخاص بها. في المثال أعلاه يمثل كل صف 3 أشرطة في المجموع. لذلك، الأعمدة تمثل مئات أو آلاف من القضبان التي تم جمعها العودة إلى التاريخ. بالإضافة إلى أوهلك يمكنك أيضا جمع القيم من أي مؤشر تقريبا اخترت، والتي سوف تعطي أساسا هذا المؤشر القدرة على التفكير على أساس تغير ظروف السوق والتنبؤ القيمة التالية. بناء الشبكة العصبية والتدريب الآن أن لدينا البيانات التي تم جمعها، واستخراجها في ملف جدول بيانات في تكوين واضح، يمكننا تحميله في محرك الشبكة العصبية التي من شأنها أن تخلق هيكل الدماغ الاصطناعي، وتدريبه، واختبار دقتها قبل حفظ الهيكل. مرة واحدة يتم استيراد البيانات التي تم جمعها في برنامج بناء الشبكة يتم إعطاء خيار لتحديد أي بت من البيانات التي تريد استخدامها لبناء الدماغ. هذه ميزة هامة لأنها تمكن المستخدم من إنشاء العديد من الاستراتيجيات المختلفة بناء على أيهما يعتبر جزء من البيانات ضروري. ما كان يفعل أساسا في هذه الخطوة هو تحديد ما المحرك سوف تستخدم لخلق أنماط معقدة المذكورة في وقت سابق، والتي سوف تقرر في نهاية المطاف القدرة الإسقاط للشبكة العصبية إي. على سبيل المثال، قل أنك أردت أن تخبر الشبكة العصبية بأن تبحث فقط عن الأنماط في أسعار الحانات المفتوحة فيما يتعلق بقيم المؤشرات من مؤشرك المفضل. ثم يمكنك تحديد المؤشر الخاص بك في جامع واختيار فقط المدخلات المفتوحة والبيانات في برنامج البناء الموضح أعلاه. يمكنك أيضا تحديد كافة المدخلات، باستثناء العمود output1، مما يدل على قيمة الانتاج الخاص بك - اختيار جميع المدخلات سيخلق نمط التعلم الأكثر تعقيدا ممكن، وبالتالي السماح الدماغ للرد على العديد من السيناريوهات المختلفة. مرة واحدة يتم اختيار المدخلات والمخرجات المطلوبة البرنامج سوف تخلق هيكل الدماغ الشبكة العصبية الخاصة بك ويمكنك البدء في تدريب عليه. يتم تعيين جزء من البيانات التي تم جمعها جانبا وتستخدم لتدريب واختبار دقة الدماغ الاصطناعي الخاص بك، سترى الناتج المطلوب تبدأ لتتوافق مع بيانات الاختبار كما يتعلم. مرة واحدة هذه العملية كاملة سوف تكون قادرة على تصدير الدماغ الاصطناعي منظم في شكل دل التي سيتم استخدامها من قبل ميتانيورال إي. مرة واحدة يتم بناء الدماغ وتدريبها واختبارها وتصديرها كدل يمكنك البدء في التداول مع الدماغ الشبكة العصبية الآلي من شأنها أن ترى أنماط معقدة من المستحيل على الإنسان لتحقيقه. الحصول على ميتانورال إي مجانا الآن عن طريق تمويل حساب في فينفس مع أي مبلغ واستخدام خدمة ناسخة التجارة لدينا لتعكس لدينا الصفقات الفوز المهنية في حسابك. بعد 50 يتم تداولها الكثير الكثير سوف تتلقى ميتانورال إي مع وظيفة كاملة للحسابات المجانية يجب أن تمول مع الارتباط المنصوص عليها في قسم التسعير من موقع ميتانيورال. وضع هذه الملفات في المجلدات التالية في ميتاتريدر: خبير استشاري - ميتاتريدر 4experts مؤشر جامع (DatacollectorV2a) - ميتاتريدر 4expertsindicators مؤشر الشبكة العصبية (ميتانورال ن المؤشر) - ميتاتريدر 4expertsindicators مكلوك و MT4NSAdapter ملفات دل - ميتاتريدر 4expertslibraries سوف تحتاج إلى تثبيت نيوروسولوتيونس 6 و فيسوال ستوديو 6 لأنه يعمل، يمكن العثور على تعليمات حول هذه التركيبات في دليل مفصل جدا تعلق على هذا المنصب. يجب عليك قراءة دليل نعم، فإنه يمكن تطبيقها على عملات متعددة في وقت واحد لأنه يمكن تدريب على كل عملة على حدة ويمكن إنشاء هيكل الشبكة العصبية لكل عملة. وأود أن أقول أن التبعية وسيط الوحيد سيكون سلامة تغذية الأسعار، وأكثر استقرارا وثابتة تغذية أفضل البيانات التدريب سيكون وبعد ذلك الصفقات. لم يكن سلخ فروة الرأس بالضرورة حتى سرعة التنفيذ ليست مهمة جدا. شكرا على اهتمامك. تهانينا على تطوير نظام يعطي عائدات صحية. دائما أفضل من عاطلين عن الخدمة التي عادة ما ينتهي تهب الحساب. أنا عضو تجاري نفسي تقاسم نظام فيبوناتشي تحول بلدي (فوركسفيبس) هنا حتى أستطيع أن أفهم لماذا كنت تقدم إي الحرة. سؤالي هو يمكن تطبيق هذا إي على عملات متعددة لأنها تقوم على الشبكات العصبية الحقيقية هل تعتمد على وسيط وسرعة التنفيذسنوكرون الشبكات العصبية للتجارة الفوركس في هذا المقال: مثال على استخدام الشبكات العصبية لدينا برامج لإنشاء العصبية كاملة نظام التداول الشبكي. يستخدم هذا المثال لغة البرمجة المضمنة في اللحاء. لذا يرجى قراءة دليل لغة البرمجة أولا. استخدام الشبكات العصبية لخلق استراتيجية التداول الفوركس في هذا البرنامج التعليمي على الانترنت مجانا سوف تجد دورة كاملة من استخدام الشبكات العصبية (اللحاء الشبكات العصبية البرمجيات) لتداول العملات الأجنبية (أو تداول سوق الأسهم، والفكرة هي نفسها). سوف تتعلم كيفية اختيار المدخلات للشبكات العصبية الاصطناعية. وكيفية اتخاذ قرار بشأن ما يجب استخدامه كمخرجات. سوف تجد مثالا للنص البرمجي جاهز للاستخدام الذي يسمح لأداء الشبكات العصبية الأمثل لكل من بنية الشبكة العصبية (عدد من الخلايا العصبية) ونظام تداول العملات الأجنبية (وقف الخسارة الخ) وأخيرا (الجزء غير موجود في معظم الدروس)، وسوف تتعلم ما يجب القيام به بعد ذلك. بعد كل شيء، اللحاء الشبكات العصبية البرمجيات لا تستطيع أن تفعل التداول في الوقت الحقيقي، تحتاج إلى استخدام شيء مثل محطة التجارة، ميتاكوتس أو ميتاترادر. كيفية منفذ نظام التداول الفوركس من اللحاء إلى منصة التداول المفضلة لديك هل لديك للتعامل مع دلز، وضوابط أكتيفكس والبرمجة على مستوى منخفض الجواب هو لا. كورتيكس نيورال نيتوركس نتووركس يأتي مع ميزة سهلة الاستخدام التي تسمح لك بسهولة الميناء الناتج (المدربين) الشبكة العصبية إلى لغة البرمجة من منصة التداول الخاصة بك. لا دلز، ددي، أكتيفكس أو أي حلول أخرى منخفضة المستوى - كل شيء سهل وبسيط. ملاحظة هامة: هذه ليست كيفية التجارة تعليمي. بدلا من ذلك، فإنه يخبرك كيفية استخدام اللحاء الشبكات العصبية البرمجيات. ولكن ما زلت بحاجة إلى اختراع نظام التداول الخاص بك. واحد نستخدم هنا هو بالكاد نقطة الانطلاق، وينبغي أن لا تستخدم كاستراتيجية تداول العملات الأجنبية كما هو. فكرة هذا النص هو أن يعلمك لإنشاء أنظمة التداول القائمة على ن ومنفذها إلى منصة التداول من اختيارك. على سبيل المثال، هو أوفيسيمبليفيد المثال، ويمكن أن تستخدم إلا كرسم توضيحي للمبادئ التجارية. وبنفس الطريقة، فإن نظام التداول ماسد، الذي يمكن العثور عليه في العديد من الدروس، لا يعمل بشكل جيد بعد الآن (كما تغيرت الأسواق)، ولكن لا يزال مثالا جيدا على استخدام مؤشرات للتجارة الميكانيكية. في كلمتين: القيام بالتحليل الخاص بك. ملاحظة هامة أخرى: البرنامج التعليمي يستخدم أمثلة، والكثير منهم. لجعل حياتك أسهل، لقد شملت كل منهم، وليس فقط شظايا. ومع ذلك فإنه يجعل النص أطول من ذلك بكثير. أيضا، أنا ذاهب من أول، الخرقاء، نظام تداول العملات الأجنبية. إلى أكثر تقدما، في كل مرة شرح ما تم تحسينه ولماذا. التحلي بالصبر، أو القفز مباشرة إلى القسم الذي تحتاجه. ملاحظة هامة النهائية: رمز ليست شيئا منحوتة في الحجر، فإنه يمكن أن تتغير في حين أن هذا النص مكتوب. يتم تضمين الإصدارات النهائية من الملفات النصية في أرشيف اللحاء. المضايقات من فوريكس شراء بيع إشارات: ما هو الخطأ مع أمثلة بسيطة في دليل كورتيكس الشبكات العصبية مستخدمي البرمجيات استخدمنا مثال بسيط من الشبكة العصبية أفتيفيسيال. وتوقع سعر الأسهم جينز. لمعرفة ما هو الخطأ في هذا النهج، دعونا نفعل نفس المثال البسيط، وذلك باستخدام MSFT. TXT، بدلا من GENZ. TXT (استخدام 800 سجل في مجموعة التعلم، كما MSFT. TXT هو أقصر قليلا، ثم جينز. رسالة قصيرة). انها لن تعمل فقط لماذا السبب سوف تصبح واضحة، إذا كنت تسأل نفسك: ما هو السبب التنبؤ الشبكة العصبية من القيم المستقبلية يمكن القيام به في المقام الأول الجواب هو: هو تعلم أن تفعل ما يسمى الشبكات العصبية الاعتراف نمط. للتعرف على الأنماط، وإذا كان هناك منطق مخفي في هذه الأنماط، فسيتم التعرف على نمط جديد (بنفس المنطق). ثاتس خدعة - مع نفس المنطق. ليس هناك حتى واحد، ولكن ثلاث مشاكل هنا. أولا وقبل كل شيء، إذا نظرتم إلى سعر الأسهم ميكروسوفتس، ستلاحظ، أنه كان ينخفض في الجزء التعلم من البيانات لدينا، وعلى جانبي - في جزء الاختبار. لذلك فمن الممكن، أن المنطق قد تغير. ثانيا، والأهم من ذلك - ما هو نمط ترى، إذا علمنا الشبكة العصبية في نطاق 10-100، ومن ثم قدمته مع شيء في نطاق 1 إلى 3 - فهي أنماط مختلفة 10 و 20 و 30 و 1، 2، 3 تبدو مماثلة للإنسان لأنه - لأن لدينا هذه القدرة على تقسيم من قبل عشرة، عندما قدمت مع الأرقام تنتهي مع الصفر. وهو ما يسمى تجهيز مسبق للبيانات، وبشكل افتراضي، فإن ن لا يمكن أن تفعل ذلك. يمكننا تعليمه بالطبع. ما هو بالضبط نحن بحاجة إلى تعليمه وهذا هو الثالث، والأكثر أهمية. نحن لسنا بحاجة إلى التنبؤ السعر نحن لا نهتم ما نحتاج إليه هو شراء الفوركس إشارات البيع. الآن، انتظر لحظة نحن بحاجة إلى) أن يكون لدينا مدخلات (على حد سواء التعلم والاختبار) في نفس النطاق، ونحن بحاجة ب) لتكون قادرة على اتخاذ قرارات التداول على أساس أنه ليس ما نسميه مؤشر البنغو لذلك، وهذا ما نحن بصدد القيام به - سنبني مؤشرا، لإطعامه إلى ن كمساهمة، وسنحاول الحصول على تنبؤ بقيمة المؤشر، وليس سعر السهم غير المجدي في المثال الأول، سنقوم بتحميل المخزون ونقلت من القرص، وفتح ملف الشبكة العصبية وبدء التعلم - كل ذلك في وضع الآلي. إنشاء ملف نصي جديد (أو فتح واحد الذي جاء مع كورتيكس الشبكات العصبية برامج أرشيف) وندعو ذلك stocknn. tsc. أولا وقبل كل شيء، نحن بحاجة إلى تحميل قيم الأسعار من ملف MSFT. TXT. سنقوم باستخدام مؤشر كلف (انظر أدناه)، ولكن لحساب ذلك، نحن بحاجة إلى قيم مقسمة إلى تقسيم للارتفاع والمنخفض، وليس فقط للإغلاق. هنا هو كيفية الحصول عليها. stocknn. tsc، بارت 1 السطر الأول يعين المسار إلى متغير ستروستباث، بطبيعة الحال، سيكون لديك لتحريره، إذا كان ملف البيانات الخاص بك موجود في الدليل مختلفة. في السطر الثاني نحدد، أن هذا المسار غير نسبي (نسبة إلى موقع ملف Cortex. exe). يتلقى تابلوادر المسار، السلسلة الفارغة لخط البداية، 1 - لتخطي السطر الأول (أسماء الأعمدة)، وهي جزء من خط تذييل الملفات (السطر الأخير في MSFT. TXT لا يحتوي على بيانات)، يتم توجيهه أيضا لتحميل رقم العمود 0 (وندعوه أرتديت)، 2 (أرهي)، 3 (ارلو)، 4 (أرك) و 6 (اركلوس). للحصول على وصف كامل ل تابليلودر، راجع الدليل المرجعي ل سلانغ. ثم نقوم بحساب الانقسام، عن طريق قسمة إغلاق إغلاق عن طريق إغلاق، واستخدام هذه القيمة لضبط منخفض وعالي. يحتوي الملف MSFT. TXT على أحدث البيانات فيرست، بينما نريد لهم لاست. بعد ذلك، نحن بحاجة إلى إنشاء مؤشر. دعونا نقول، وسوف يكون مؤشر قيمة موقع قريب، على الرغم من أن في الحياة الحقيقية وأود ربما استخدام أكثر من مؤشر واحد المدخلات ن. يتم حساب مؤشر قيمة موقع إغلاق مثل كلف ((إغلاق - منخفض) - (عالية - إغلاق)) (عالية - منخفضة)، حيث إغلاق، منخفض وعالي هي للفاصل الزمني، وليس بالضرورة لشريط واحد. لاحظ، أننا نريد ذلك في نطاق 0 - 1، لجعله أسهل لتطبيع إلى نطاق نا لدينا (وهو، مرة أخرى، 0-1). stocknn. tsc، الجزء 3 التالي، نحن بحاجة إلى إنشاء ملف تأخر. يتيح استخدام التأخيرات التي تساوي 1، 2. 9 (للحصول على تفاصيل حول وظائف الملف، راجع الدليل المرجعي ل سلانغ). ملاحظة، أن الحوار كورتيكس ن يمكن أن تنتج تأخر بسيط تلقائيا (يمكنك استخدام زر تأخر توليد). ولكن في وقت لاحق من هذا النص، سنعمل مع تأخيرات معقدة (مما يعني أنها ليست 1، 2، 3. ولكن 1، 3، 64. أيا كان)، لذلك نحن بحاجة إلى إنشاء التعليمات البرمجية التي يمكن التعامل مع هذه المهمة في طريقة أكثر مرونة. stocknn. tsc، الجزء 4 وجود ملف تأخر، ونحن مستعدون لإنشاء أول شبكة العصبية لدينا. هذه الوظيفة تأخذ الكثير من المعلمات، لذلك تكون متأن. ومع ذلك، فإن رمز بسيط حقا. بالمناسبة، يمكن إزالة معظم هذه التعليمات البرمجية، إذا كنت تعتقد أنك يمكن التعامل مع الأرقام، بدلا من أسماء معنى في التعليمات البرمجية الخاصة بك، ومع ذلك، من شأنها أن تكون ممارسة الترميز سيئة للغاية. stocknn. tsc، بارت 5 الآن، بعد أن يكون لدينا شبكة عصبية وملف متخلف مع البيانات، ونحن بحاجة لتعليم الشبكة. ملف التأخر (msftind. lgg) لديه 1074 السجلات، لذلك فمن المعقول أن استخدام 800 كمجموعة التعلم، والباقي 274 كمجموعة اختبار. يمكنك، بطبيعة الحال، فتح ملف شبكة وانقر فوق زر تشغيل في علامة التبويب التعلم. ولكن هذا هو مقدمة إلى المتقدمة اللحاء الشبكات العصبية برامج البرمجة، يتيح استخدام سلانغ لغة البرمجة المدمج في بدلا من ذلك. الرمز التالي إحضار الحوار مشروط مع إعدادات آن ن. ملاحظة، إذا كنت تريد أن يكون لها امتياز النقر على زر تشغيل، تحتاج إلى تغيير stocknn. tsc، الجزء 6 و بستارتلارنينغ يمكن أن يكون 0، في هذه الحالة سوف الحوار ينتظر الإدخال الخاص بك، أو 1، ثم التعلم سوف تبدأ أيتاليكالي. سوف بريسومسكريبت، إذا يساوي 1، استئناف السيناريو، إذا قمت بإغلاق الحوار عن طريق النقر فوق الزر موافق. يتم استخدام بريسيت لإعادة الشبكة قبل بدء التعلم. قم بتشغيل البرنامج النصي، وانتظر أن يتجاوز عداد الوقت 1000، ثم انقر فوق إيقاف. انتقل إلى علامة التبويب تطبيق، ثم انقر على تطبيق. سيقوم هذا بتشغيل مجموعة البيانات بأكملها (التعلم والاختبار) من خلال ن، وإنشاء ملف. APL، الذي يحتوي على كل من المدخلات والمخرجات الأصلية، والتنبؤ الذي تم إنشاؤه ن، وبهذه الطريقة يمكنك بسهولة رسم لهم ومقارنة ضد بعضها البعض . انتقل إلى علامة التبويب الإخراج، وحدد ملف msftind. apl، ثم انقر فوق استعراض الملف، وحدد الحقول، ثم حدد مربع "لا" في القائمة اليسرى، و (بالضغط باستمرار على مفتاح كترل أثناء التحديد بالماوس) كلف و ن: كلف في مربع القائمة الصحيح. انقر على الرسم البياني لمعرفة مدى جودة توقعاتنا. حسنا. إنه جيد نوعا ما، مما يمكننا أن نقوله من خلال النظر إليه. ومع ذلك، لا شيء غير عادي. وكان هذا مجرد مثال على ما يمكنك القيام به مع البرمجة النصية سلانغ، وكيفية أتمتة المهام الروتينية كورتيكس. ومع ذلك، حتى الآن، لم نفعل شيئا كنت لا يمكن القيام به باليد. حسنا. لا شيء تقريبا، لأنه إذا كنت ترغب في إنشاء ملف تأخر مخصص، مع القول، كلف-100، كلف-50، كلف-25. الأعمدة، ثم سيكون لديك لاستخدام سلانغ (أو إكسيل.)، لأنك لا تستطيع أن تفعل في اللحاء دون البرمجة. الفوركس استراتيجية التداول: ما لتحسين هنا هي مشكلتنا المقبلة. هل نحن بحاجة إلى تنبؤ جيد المظهر، أو أننا بحاجة إلى واحد يمكننا استخدامه للتداول مع الربح يبدو السؤال غريب، ولكن مجرد التفكير في ذلك لحظة. دعونا نقول لدينا جيدة جدا 1 ساعة التنبؤ. 95 دقيقة. ومع ذلك، إلى أي مدى يمكن أن يذهب السعر في ساعة واحدة ليس بعيدا جدا، وأخشى. قارن ذلك إلى الوضع، عندما يكون لديك غير دقيقة بدلا من 10 ساعة التنبؤ. سيكون من الأفضل الإجابة على هذا السؤال، ونحن بحاجة إلى التجارة في الواقع، ومقارنة بسيطة من الأخطاء المتوسطة التي تنتجها اثنين من ننس لن تساعد. الجزء الثاني (من نفس المشكلة) هو في الطريقة التي نحدد بها التنبؤ الجيد. دعونا نقول لدينا شبكة، التي تنتج التنبؤ، وهو 75 دقيقة. قارن ذلك إلى ن، التي تنتج 100 التنبؤ الدقيق. آخر واحد هو أفضل. الآن، تقسيم الإخراج (التنبؤ) من 100 دقيقة ن من قبل 10. سيكون لدينا شبكة غير دقيقة للغاية، كما إشارة لها في أي مكان بالقرب من إشارة استخدمنا كالمخرجات المرجوة. ومع ذلك، فإنه يمكن أن تستخدم نفس الطريقة التي استخدمنا 100 دقيقة ن، كل ما علينا القيام به هو مضاعفة إلى 10 انظر، يتم إنشاء ن، من خلال ضبط متوسط الخطأ التربيعي، وليس الارتباط، وذلك على الأقل في النظرية، ن أفضل يمكن أن تظهر نتائج سيئة، عندما تستخدم لتداول الأسهم الأسهم الفعلية. لحل هذه المشكلة، نحن بحاجة لاختبار لدينا ن باستخدام التداول، واستخدام نتائج هذا التداول (الربح والانسحاب) لاتخاذ قرار، إذا كان هذا ن أفضل من الآخر. دعنا نقوم به. يتيح إنشاء برنامج، والتي يمكن استخدامها لضبط ن، وهذه المرة، عن طريق صقل، ونحن سوف يعني نتائج التداول. الشبكة العصبية التداول: ملاحظات قصيرة قليلة أولا وقبل كل شيء، في مثالنا أعلاه، والتعلم التلقائي لن تتوقف أبدا، لأننا لم تحدد أي معايير التوقف. في مربع الحوار، أو في وظيفة كريتين، يمكنك توفير دقيقة. خطأ (عند وصول ن إلى ذلك، فإنه يتوقف، وإذا تم تعيين بريسومسكريبت إلى 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. هو أفضل، لأنه أقل خطورة. قد نتحدث عن ذلك لاحقا. وأخيرا، في هذا المثال سنستخدم الفوركس، بدلا من أسعار الأسهم. من وجهة نظر ن لا يوجد فرق، ومن وجهة نظري - الفوركس هو أكثر متعة للتجارة. إذا كنت تفضل الأسهم، يمكن بسهولة تعديل التعليمات البرمجية. استراتيجية التداول الفوركس للعب مع أولا وقبل كل شيء، يتيح إنشاء نموذج أولي من التعليمات البرمجية لدينا، واحدة التي يمكن بسهولة أن يكون الأمثل في المستقبل. وسوف يكون نظام التداول، والذي يستخدم شبكة العصبية للتجارة وتنتج الرسم البياني (الربح ضد عدد التجارة). وسوف يحسب أيضا السحب، كمقياس متانة نظام التداول لدينا. forexnn01.tsc، بارت 1 الفرق الرئيسي هنا هو أننا نستخدم وظائف، بدلا من وضع كافة التعليمات البرمجية في الكتلة الرئيسية للبرنامج. بهذه الطريقة فإنه من الأسهل بكثير لإدارة. ثانيا، لدينا وظيفة تستنيت. أنا باستخدام خوارزمية بسيطة جدا من التداول. ويقتصر المؤشر كلف على 0-1 الفاصل الزمني (لدينا نسخة من كلف هو)، لذلك عندما مؤشر يعبر عن دبويليفيل (انظر التعليمات البرمجية أعلاه)، وأنا شراء، عندما هو عبور أسفل دسلليفيل، وأنا أبيع. من الواضح، أنها ليست أفضل استراتيجية التداول، لكنها لن تفعل لغرضنا (فقط في الوقت الراهن). إذا كنت ترغب في تحسينه، وهنا بعض المؤشرات. أولا، قد ترغب في الحصول على نظام، وهذا ليس دائما في السوق. ثانيا، قد ترغب في استخدام أكثر من مؤشر واحد كمدخلات، وربما أكثر من واحد ن، بحيث يتم اتخاذ قرار التداول على أساس المؤشرات القليلة المتوقعة. سنضيف بعض التحسينات على خوارزمية التداول لاحقا. نحن نستخدم بعض الافتراضات القياسية للتداول الفوركس: انتشار هو 5 نقاط، ليفيراد هو 100، دقيقة. الكثير هو 100 (مصغرة-- فوريكس). دعونا نلقي نظرة على نظام التداول لدينا. مرة أخرى، هو واحد مفرط التبسيط. ملاحظة هامة: تستن () تسمى آخر، ولها حق الوصول إلى كافة المتغيرات التي تم إنشاؤها إلى تلك النقطة. حتى إذا كنت ترى متغير أن أستخدمه، دون تهيئة ذلك، ربما يعني أنه تم تهيئة في نيون ()، تيتشن () أو بعض الدالة الأخرى التي كانت تسمى قبل تستن (). لتسهيل الأمور، يتم وضع التعليقات في الشفرة. forexnn01.tsc، بارت 2 بعض الكلمات حول السحب. هناك طرق قليلة لحسابه، ونحن نستخدم ما أعتبره أكثر صدقا. ويعد السحب التدريجي مقياسا لعدم استقرار نظامنا. ما هي فرصة، وأنه سوف تفقد المال دعونا نقول المبلغ الأولي هو 1000. إذا كان الربح يذهب 100، 200، 300، 400. السحب هو 0. إذا كان يذهب 100، 200، 100. ثم السحب هو 0.1 ( 10)، لأننا فقدنا للتو مبلغا يساوي 110 من الإيداع الأولي (من 1200 إلى 1100). وأود أن أشير بقوة ضد استخدام أنظمة التداول مع سحب كبيرة. أيضا، هنا يمكنني استخدام السحب، وهذا هو أن تستخدم مع حجم متغير الكثير. ومع ذلك، في العينات الفعلية، التي تأتي مع الكتاب الاليكتروني، سترى نسخة أخرى: كما ترون، وهنا نحن دائما استخدام 1000 (المبلغ الأولي) لحساب السحب. والسبب بسيط: نحن دائما استخدام نفس حجم الكثير (أي إدارة الأموال حتى الآن)، لذلك ليس هناك فرق، كم من المال لدينا تراكمت بالفعل على حسابنا، يجب أن يكون متوسط الربح ثابت. السيناريو الأسوأ المحتمل في هذه الحالة يبدو مثل هذا: من البداية (1000 على حساب) نحن نفقد المال. إذا كنا نستخدم 1000 لحساب السحب، وسوف نحصل على أسوأ تراجع. وهذا سوف يساعدنا على عدم خداع أنفسنا. على سبيل المثال، لنفترض أننا تداولنا لبعض الوقت، ولدينا 10 آلاف حساب. ثم نحن تفقد بعض المال، ولدينا الآن 8،000. ثم انتعشنا، وحصلت على 12،000. نظام تداول جيد ربما لا. يتيح تكرار المنطق مرة أخرى، كما أنه مهم جدا (وسوف تصبح أكثر أهمية، عندما نبدأ في إدارة المال). نحن التجارة باستخدام حجم ثابت الكثير. لذلك، إحصائيا، لا يوجد ضمان، أن الحد الأقصى للخسارة لن يحدث في البداية، عندما يكون لدينا 1000 فقط. وإذا حدث ذلك، سيكون لدينا -1000 (10،000 - 8،000)، وبالتالي فإن نظام التداول وربما أيضا محفوف بالمخاطر. عندما نتحدث عن إدارة الأموال (ربما، وليس في هذا النص)، سيكون لدينا لاستخدام نهج مختلف لحساب السحب. ملاحظة، أنه في هذا النظام التجاري، وأنا باستخدام السيناريو الأسوأ ممكن: أنا شراء باستخدام عالية وبيع، وذلك باستخدام منخفضة. العديد من المختبرين لا تتبع هذه القواعد، وخلق أنظمة التداول، التي تعمل بشكل جيد على البيانات التاريخية. ولكن في الحياة الحقيقية، هذه الأنظمة التجارية لديها أداء ضعيف للغاية. لماذا نلقي نظرة على شريط الأسعار. انها مفتوحة، عالية، منخفضة وإغلاق. هل تعرف، كيف كان السعر يتحرك داخل شريط رقم لذلك، يقول يقول، نظام التداول الخاص بك ولدت إشارة شراء، في الجزء السفلي من شريط الأسعار (إذا دلو لاحظ أن أستخدم دلوتسيزي يساوي 0.1 لوت (100). من الواضح، في التداول الحقيقي، سوف تستفيد كثيرا، إذا تم حساب حجم الكثير اعتمادا على المال لديك، شيء مثل: forexnn01.tsc، الجزء 3 ومع ذلك، نحن نفعل الاختبار هنا، وليس التداول، وللاختبار، ونحن تحتاج، من بين أمور أخرى، لنرى كيف سلاسة منحنى الربح هو، وهذا هو أسهل بكثير إذا كان حجم الكثير هو نفسه (في الوضع المثالي، ل دلوتسيزي 100 سوف نحصل على خط مستقيم، مع بعض الميل الإيجابي، بينما في حالة من حجم الكثير قابل للتعديل سوف نحصل على الأس، وهذا هو أصعب بكثير لتحليل) في وقت لاحق في هذا النص، وسوف تطبق قواعد إدارة الأموال لنظام التداول لدينا، ولكن ليس بعد. بعد أن يتم ذلك مع الجزء الأخير من اختبار وظيفة، يتيح المشي من خلال بقية التعليمات البرمجية. تخلق الدالة التالية مؤشر كلف الفاصل الزمني e كمعلمة، مما يعني أننا يمكن أن نسميها عدة مرات، خلال التحسين، ويمر أرقام مختلفة. لاحظ أن أنا باستخدام ن الذي يعمل في الفترة 0-1. يمكن تطبيع البيانات، بطبيعة الحال، ولكن اخترت لتقسيم المؤشر بنسبة 2 وإضافة 0.5، بحيث يكون في 0-1 النطاق. forexnn01.tsc، الجزء 4 لجعل ملف تأخر، يمكننا استخدام الدالة كراتيلغافيل. بدلا من ذلك، يمكننا أن نفعل ذلك من خلال توفير صراحة كل التعليمات البرمجية اللازمة. في هذه الحالة، لدينا المزيد من السيطرة، ونحن بحاجة إلى ذلك، إذا بدأنا عدد متفاوت من الأعمدة المتخلفة وهلم جرا. forexnn01.tsc، الجزء 5 المعلمة نريموفيرست مهم. العديد من الوظائف، مثل المؤشرات، والمتوسطات المتحركة، والمولدات المتخلفة، لهذه المسألة، لا تعمل بشكل جيد في السجلات القليلة الأولى من مجموعة البيانات. دعونا نقول لدينا ما (14) - ما سيضع في السجلات 1 - 13 لذلك نختار ببساطة إزالة السجلات القليلة الأولى (غير موثوق بها). ل نيون، وكذلك لجميع وظائف هذا البرنامج، ونحن بحاجة لتمرير كمعلمات فقط ما يمكن تغييره خلال عملية التحسين. على سبيل المثال، ليست هناك حاجة لتمرير تخطي قبل المعلمة، كما هو دائما نفسه. forexnn01.tsc، الجزء 6 وظيفة تيتشن ببساطة جلب الحوار ن. forexnn01.tsc، الجزء 7 وأخيرا، نحن بحاجة إلى وظيفة الرسم البياني. أنها ليست إلزامية، ولكن من الجيد دائما أن نرى ما يبدو خط الربح لدينا. تستخدم التعليمات البرمجية التالية شمل لإنشاء مخطط، لذلك فمن الجيد قراءة البرنامج التعليمي. بدلا من ذلك، يمكنك رسم المخطط، بدلا من حفظه في ملف. للقيام بذلك، استخدم أحد العينات، الموجودة في الدليل سامبلكريبتس. وأخيرا، يمكنك تعديل التعليمات البرمجية، لإنتاج هتمل، بدلا من شمل. هتمل هو أسهل للتعلم، ولكن الرمز نفسه سيكون أقل قليلا للقراءة. forexnn01.tsc، الجزء 8 ترجمة وتشغيل البرنامج النصي. حسنا. كما هو متوقع، باستخدام 7 ساعات كفاصل زمني ل كلف نتائج سيئة للغاية: استراتيجيات التداول الفوركس والتحسين والسبب في النتائج السيئة واضح تماما: استخدمنا الفاصل الزمني، وقف الخسارة، وشراء وبيع المستويات وغيرها من المعالم، التي كانت بحتة عشوائية - اخترنا فقط أولا التي جاءت في الاعتبار ماذا لو حاولنا مجموعات قليلة الفوركس إشارات التداول: ما لتحسين أولا وقبل كل شيء، من خلال أوفيروبتيميزينغ شراء وبيع المستويات، ونحن يمكن أن تدمر أدائنا في المستقبل. ومع ذلك ما زلنا يمكن ضبط لهم، وخاصة، إذا كان أداء قريب لقيم وثيقة من حدود البيع والبيع. على سبيل المثال، إذا كان لدينا -10 الربح عند حد الشراء يساوي 0.3، و 1000 الربح عندما يساوي 0.35، ثم هناك ربما من قبيل الصدفة محظوظا، ونحن يجب أن لا تستخدم 0.35 لنظام التداول لدينا، كما في المستقبل فإنه لن يحدث على الأرجح مرة أخرى. إذا، بدلا من ذلك، لدينا -10 و 10 (بدلا من 1000)، قد يكون أكثر أمانا للاستخدام. عموما، يجب أن يتم بناؤها نظام التداول لدينا لورس ممكن السيناريو، كما لو كان خلال التداول الحقيقي أداء سيكون أفضل، ثم خلال الاختبار، ونحن سوف البقاء على قيد الحياة، ولكن ليس العكس. يمكننا أن نختلف قيمة الفاصل الزمني للمؤشر، شريطة أن يكون لدينا ما يكفي من الصفقات، حتى نتمكن من أن نكون واثقين، من حيث الإحصاءات، في أداء نظام. نحن بالتأكيد يمكن أن تختلف عدد الخلايا العصبية، وأنا لا أعتقد أنه يمكن أوفيروبتيميزد بسهولة. يمكننا أن نختلف عدد المدخلات والتخلف عن المدخلات. فمن الممكن أن يفرط في تحقيق ذلك، ولكن ليس من المرجح جدا أن يحدث. وبطبيعة الحال، يمكننا أن نحاول مؤشرات مختلفة. إشارات فوريكس دقيقة: كيفية تحسين كما سبق ذكره، إذا بدأنا في محاولة كل تركيبات ممكنة، وسوف يستغرق إلى الأبد. لذلك نحن ذاهبون للغش. سنقوم بإنشاء مجموعات محددة مسبقا من المعلمات، التي نعتقد أنها معقولة، وتمريرها إلى البرنامج. لجعل عدد قليل من الحسابات ممكن، لاحظ أن كلف-1 و كلف-2 هي، ربما، مهمة، ولكن ماذا عن كلف-128 و - إذا كان لدينا بالفعل كلف-128، هل نحن بحاجة كلف-129 ربما، لا. لذلك نحن ذاهبون لدينا شيء مثل كلف-1، كلف-2، كلف-4، كلف-8. كلف-128 مع عدد قليل من الاختلافات، الأمر الذي سيجعل لدينا حساب الوقت آلاف مرات أقصر. فوريكس نظام التداول المهني: هل يمكن أن يعمل على الإطلاق ما هو بالضبط نحن نريد أن نتوقع حتى هذه النقطة استخدمنا الرسم البياني 1 ساعة ل يوروس، وكنا نتوقع القضبان القادمة كلف. هل سيكون CLV2 أفضل ماذا عن CLV3 أيضا، وخاصة بالنظر إلى ضعف أداء نظام التداول الأول، سيكون من الجميل أن نعرف، أنه - على الأقل في العالم المثالي، والهدف (تجارة مربحة) يمكن أن يتحقق. للإجابة على هذه الأسئلة، يتيح إنشاء برنامج اختبار بسيط. ونحن نفترض، أن التنبؤ لدينا هو 100 دقيقة، وبناء على هذا الافتراض، وسوف نستخدم كلفن، وليس ن توقع واحد. هذا صحيح - نحن نذهب إلى أخذ البيانات من المستقبل، واستخدامها بدلا من التنبؤ ن. هذا النهج لن تعمل في الحياة الحقيقية، بطبيعة الحال، ولكن في الدرجات، وسوف تعطينا بعض الأفكار من ما يمكن توقعه. عند النظر إلى النتائج، يرجى أن نضع في اعتبارنا، أننا لا تستخدم أي إدارة الأموال المتقدمة، يتم تعيين حجم الكثير لدينا إلى الحد الأدنى 100. إذا كنت تستخدم أحجام متغيرة الكثير، وسوف تكون النتائج مختلفة بشكل كبير. ولكن حتى في حجم الكثير تعيين إلى 0.1 يمكننا أن نرى (أدناه) أن الحصول على المعلومات من المستقبل هو في نهاية المطاف التجار رهيبة هولي. forexnn02.tsc، الجزء 1 كنت بالفعل على دراية هذا الرمز، تم استخدامه في FOREXNN01.TSC. فإنه يتعامل مع تحميل البيانات. والفرق الوحيد هو في الجزء الذي يحصل على قائمة الملفات في دليل الصور وحذف كافة الملفات مع. PNG إكستنتيون. The reason for this code is simple: during our tests we are going to create many - may be, thousands - image files. We dont want them to hung around after we are done. So at the beginning of the script we are deleting images, created by other scripts. forexnn02.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 forexnn02, 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. forexnn02.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 ARRAYREMOVE 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. forexnn02.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. forexnn02.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 APPLYNN 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, MetaTraders 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 inse rt this code in the MetaTraders 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 APPLYNN 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 forexnn05a 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 doesnt 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 dont call it MetaTrader I have asked for clarification at the companys forum, and they have told me, that they dont 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. Warning 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. MetaTraders 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 dont 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 MetaTraders 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. Download Cortex Order Cortex View Price List Visibility is very important for this site. If you like it please link to this URL
Comments
Post a Comment