![]() |
ورشة برمجة مؤشر بافكار متجددة
في هذا الموضوع ان شاء الله سنحاول برمجة مؤشر وفي نفس الوقت التدريب علي البرمجة
لافكار عديدة ومتداخلة حيث سنضع عدة شروط لعدة مؤشرات نري ان الاشارة تكون قوية علي حسبها مرحبا بكل الافكار |
رد: ورشة برمجة مؤشر بافكار متجددة
نبدء علي بركة الله باول اشارت لمؤشر RSI
وهي اشارة قوية ويحترمها السعر سنستخدم اشرات RSI كالتالي فوق 50 اشارة Buy خضراء تحت 50 اشارة sell حمراء سنستخدم في هذا المؤشر نافذة مستقلة ونرسم عليها خطوط هستوغرام |
رد: ورشة برمجة مؤشر بافكار متجددة
سنستخدم القالب الجاهز الذي شرحناه من قبل
[PHP] //+------------------------------------------------------------------+ //| arabia.mq4 | //| Copyright 2013, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright 2013, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" #property indicator_separate_window //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int x,i; int counted_bars=IndicatorCounted(); if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; x=Bars-counted_bars; for(i =0 ; i<x ; i++) { } return(0); } //+------------------------------------------------------------------+ [/PHP] وكما نلاحظ غير هذه الكتابة ليضهر المؤشر في نافذة مستقلة [PHP] #property indicator_separate_window [/PHP] |
رد: ورشة برمجة مؤشر بافكار متجددة
الان اعداد بارات الهيستوغرام كالتالي
|
رد: ورشة برمجة مؤشر بافكار متجددة
بارك الله فيك أستاد موفينج , تسجيل متابعة , و أحلى لايك :1 (105):
|
رد: ورشة برمجة مؤشر بافكار متجددة
بارك الله فيك تسجيل متابعه
لانى من عشاق rsi ولكن استخدمه بشكل مختلف وبالتوفيق |
رد: ورشة برمجة مؤشر بافكار متجددة
في البداية سنستخدم بارين بلونين فقط
وعند ضهور اشرات اخري سنضيف برات اخري التصريح بالبارات [PHP] #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 Red #property indicator_color2 Green double ExtMapBuffer1[]; double ExtMapBuffer2[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_HISTOGRAM,0,3); SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(1,DRAW_HISTOGRAM,0,3); SetIndexBuffer(1,ExtMapBuffer2); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int x,i; int counted_bars=IndicatorCounted(); if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; x=Bars-counted_bars; for(i =0 ; i<x ; i++) { } return(0); } //+------------------------------------------------------------------+ [/PHP] |
رد: ورشة برمجة مؤشر بافكار متجددة
جعل المؤشر اكثر مرونة
باستخدام مستوي خاص ب buy ومستوي خاص ب sell |
رد: ورشة برمجة مؤشر بافكار متجددة
التصريح بالمستوي خارج الدالة start
[PHP] extern int RSI_buy_level=50; extern int RSI_sell_level=50; [/PHP] والكود لحد الان هو [PHP] #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 Red #property indicator_color2 Green double ExtMapBuffer1[]; double ExtMapBuffer2[]; extern int RSI_buy_level=50; extern int RSI_sell_level=50; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_HISTOGRAM,0,3); SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(1,DRAW_HISTOGRAM,0,3); SetIndexBuffer(1,ExtMapBuffer2); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int x,i; int counted_bars=IndicatorCounted(); if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; x=Bars-counted_bars; for(i =0 ; i<x ; i++) { } return(0); } //+------------------------------------------------------------------+ [/PHP] |
رد: ورشة برمجة مؤشر بافكار متجددة
جعل RSI اكثر مرونة وذلك بتمكين المستخدم من تغير اعددات RSI
|
رد: ورشة برمجة مؤشر بافكار متجددة
اقتباس:
وايضا عند مستوى 25 يعطينى اشارة بيع هل ممكن عمل rsi لعمله فقط مثل الين لقياس مستوى الار اس مقابل جميع العملات؟؟ وبالتوفيق استاذنا الحبيب |
رد: ورشة برمجة مؤشر بافكار متجددة
نضيف هذه الكتابة خارج الدالة start
لجعل rsi اكثر مرونة [PHP] extern string l="_______level-RSI_______"; extern int RSI_buy_level=50; extern int RSI_sell_level=50; extern string m="_______Parameters-RSI_______"; extern int period_RSI=14; extern int applied_price_RSI=0; [/PHP] |
رد: ورشة برمجة مؤشر بافكار متجددة
اقتباس:
لا تستعجل اخي |
رد: ورشة برمجة مؤشر بافكار متجددة
اقتباس:
ولك رساله على الخاص تحياتى |
رد: ورشة برمجة مؤشر بافكار متجددة
الان نكتب rsi داخل الدالة start
في الحلقة التكرارية ونضيف خيار استخدام RSI لعملة اخري رغم ان هذا الخيار لن استخدمه في المؤشر |
رد: ورشة برمجة مؤشر بافكار متجددة
سيتم التصريح با RSi كالتالي
[PHP] double rsi=iRSI(symbol,0,14,0,i); [/PHP] حيث [PHP] symbol [/PHP] سنجعله متغير خارجي نضع فيه اي شارت نريد اضهار RSI له |
رد: ورشة برمجة مؤشر بافكار متجددة
التصريح باسم الشارت
[PHP] extern string symbol=" "; [/PHP] وضعنا اسم الشارد تلقائيا فارغ ماذا سيعمل المؤشر في هذه الحالة سنضيف دالة مقارنة نقول للمؤشر اذا وجدت اسم الشارت فارغ استخدم اسم الشارت الذي يوضع عليه المؤشر [PHP] if(symbol==" ") { symbol=Symbol(); } [/PHP] |
رد: ورشة برمجة مؤشر بافكار متجددة
الي هنا قمنا باضافة كل الاعددات التي نحتاجها لاستعمال RSI
ملاحضة لكي نجعل RSI متعدد الوقت فيه اضفات كثيرة يطول شرحها لذا لن نتطرق الي هذه النقطة [PHP] #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 Red #property indicator_color2 Green double ExtMapBuffer1[]; double ExtMapBuffer2[]; extern string l="_______level-RSI_______"; extern int RSI_buy_level=50; extern int RSI_sell_level=50; extern string m="_______Parameters-RSI_______"; extern int period_RSI=14; extern int applied_price_RSI=0; extern string symbol=" "; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_HISTOGRAM,0,3); SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(1,DRAW_HISTOGRAM,0,3); SetIndexBuffer(1,ExtMapBuffer2); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int x,i; int counted_bars=IndicatorCounted(); if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; x=Bars-counted_bars; if(symbol==" ") { symbol=Symbol(); } for(i =x ; i>=0 ; i--) { double rsi=iRSI(symbol,0,14,0,i); } return(0); } //+------------------------------------------------------------------+ [/PHP] |
رد: ورشة برمجة مؤشر بافكار متجددة
الان نضيف الشروط
وبعد الشروط نضع الهيستوغرام كما شرحنا في دورة البرمجة [PHP] #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 Red #property indicator_color2 Green double ExtMapBuffer1[]; double ExtMapBuffer2[]; extern int Shift=0; extern string l="_______level-RSI_______"; extern int RSI_buy_level=50; extern int RSI_sell_level=50; extern string m="_______Parameters-RSI_______"; extern int period_RSI=14; extern int applied_price_RSI=0; extern string symbol=" "; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_HISTOGRAM,0,3); SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(1,DRAW_HISTOGRAM,0,3); SetIndexBuffer(1,ExtMapBuffer2); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int x,i; int counted_bars=IndicatorCounted(); if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; x=Bars-counted_bars; if(symbol==" ") { symbol=Symbol(); } for(i =x ; i>=0 ; i--) { int shift1=i+Shift; double rsi=iRSI(symbol,0,14,0,shift1); if(rsi>RSI_buy_level) { ExtMapBuffer1[i]=0; ExtMapBuffer2[i]=rsi; } if(rsi<RSI_buy_level) { ExtMapBuffer1[i]=rsi; ExtMapBuffer2[i]=0; } } return(0); } //+------------------------------------------------------------------+ [/PHP] وهكذا نكون انتهينا من اشرات RSI وان شاء الله سنضيف اشرات اخري لكي يصبح المؤشر اقوي |
رد: ورشة برمجة مؤشر بافكار متجددة
فيه شئ غير مدروس في المؤشر انا لم ارد الاشارت اليه
في انتضار من يجده لكي نصححه |
رد: ورشة برمجة مؤشر بافكار متجددة
ممكن توضيح هذة النقطه اخى موفنج
ملاحضة لكي نجعل RSI متعدد الوقت فيه اضفات كثيرة يطول شرحها لذا لن نتطرق الي هذه النقطة والله ينور عليك |
رد: ورشة برمجة مؤشر بافكار متجددة
اقتباس:
اقصد طريقة جعل المؤشر MTF |
رد: ورشة برمجة مؤشر بافكار متجددة
بارك الله فيك اخ موفينج مجهود رائع وياريت وضع المؤشرات بعد الانتهاء من برمجتها لتكون متاحه للتحميل
|
رد: ورشة برمجة مؤشر بافكار متجددة
مجهود رائع أخي موفنغ مازلت لم تقم بإعداد سيل لوفيل للمؤشر
|
الساعة الآن 05:04 AM |
Powered by vBulletin® Copyright ©2000 - 2025
جميع الحقوق محفوظة الى اف اكس ارابيا www.fx-arabia.com