FX-Arabia

جديد المواضيع















الملاحظات

منتدى المؤشرات و الاكسبيرتات تعليم برمجة الاكسبيرت ، اكسبيرت مجانى ، برمجة مؤشرات ، مؤشر ، تصميم اكسبيرت مجانا ، اكسبيرتات جديدة ، مؤشرات جديدة ، كل ما يتعلق بالتحليل و الخاص بالمؤشرات الفنية او الرقمية ، Expert advisor ، mql ، mql4 ، دورة برمجة ، برمجة اكسبيرت ، اكسبيرت رابح ، اكسبيرت جيد ، ادارة حسابات ، تداول الى ، ميتاتريدر ، تحميل منصة ، منصة تداول ، برمجة مؤشر ، مكتبة مؤشرات ، مؤشر جديد ، مؤشرات جديدة ، مؤشر حصرى ، احدث مؤشر .


رسم الاسهم بدالة setindexbuffer

منتدى المؤشرات و الاكسبيرتات


إضافة رد
 
أدوات الموضوع
قديم 31-12-2019, 02:16 PM   المشاركة رقم: 1
الكاتب
wizard_gsm
عضو جديد

البيانات
تاريخ التسجيل: Apr 2019
رقم العضوية: 38383
العمر: 40
المشاركات: 4
بمعدل : 0.00 يوميا

الإتصالات
الحالة:
wizard_gsm غير متواجد حالياً
وسائل الإتصال:

المنتدى : منتدى المؤشرات و الاكسبيرتات
افتراضي رسم الاسهم بدالة setindexbuffer

السلام عليكم يا شباب

بعاني مشكلة مع الكود ان الاسعم بتطهر مع كل الشموع....برحاء تقديم يد العون دا مؤشر يطهر سهم مع اول شمعه تفتح فوق الا ema المحدده

int init()
{
//---- indicators
SetIndexStyle(0, DRAW_ARROW, EMPTY);
SetIndexArrow(0, 225);
SetIndexBuffer(0, CrossUp);
SetIndexStyle(1, DRAW_ARROW, EMPTY);
SetIndexArrow(1, 226);
SetIndexBuffer(1, CrossDown);

return(0);
}
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start()
{
MA_ =0 ;
int counted_bars = IndicatorCounted();
int i;
int limit;
if(counted_bars < 0)
return(-1);
if(counted_bars > 0)
counted_bars--;
limit = Bars - counted_bars;
for(i=0; i<=limit; i++)
{
MA_ = iMA(Symbol(),0,MA_Period,0,MA_Type,App_Price,i);
if (Open[i] > MA_ )
{
CrossUp[i]=Low[i] - 0.0010;
}
if (Open[i] < MA_ )
{
CrossDown[i]=High[i] + 0.0010;
}
}
return(0);
}



عرض البوم صور wizard_gsm  
رد مع اقتباس


  #1  
قديم 31-12-2019, 02:16 PM
wizard_gsm wizard_gsm غير متواجد حالياً
عضو جديد
افتراضي رسم الاسهم بدالة setindexbuffer

السلام عليكم يا شباب

بعاني مشكلة مع الكود ان الاسعم بتطهر مع كل الشموع....برحاء تقديم يد العون دا مؤشر يطهر سهم مع اول شمعه تفتح فوق الا ema المحدده

int init()
{
//---- indicators
SetIndexStyle(0, DRAW_ARROW, EMPTY);
SetIndexArrow(0, 225);
SetIndexBuffer(0, CrossUp);
SetIndexStyle(1, DRAW_ARROW, EMPTY);
SetIndexArrow(1, 226);
SetIndexBuffer(1, CrossDown);

return(0);
}
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start()
{
MA_ =0 ;
int counted_bars = IndicatorCounted();
int i;
int limit;
if(counted_bars < 0)
return(-1);
if(counted_bars > 0)
counted_bars--;
limit = Bars - counted_bars;
for(i=0; i<=limit; i++)
{
MA_ = iMA(Symbol(),0,MA_Period,0,MA_Type,App_Price,i);
if (Open[i] > MA_ )
{
CrossUp[i]=Low[i] - 0.0010;
}
if (Open[i] < MA_ )
{
CrossDown[i]=High[i] + 0.0010;
}
}
return(0);
}




رد مع اقتباس

قديم 31-12-2019, 07:11 PM   المشاركة رقم: 2
الكاتب
salamandal
عضو جديد
الصورة الرمزية salamandal

البيانات
تاريخ التسجيل: Dec 2015
رقم العضوية: 28858
المشاركات: 77
بمعدل : 0.03 يوميا

الإتصالات
الحالة:
salamandal غير متواجد حالياً
وسائل الإتصال:

كاتب الموضوع : wizard_gsm المنتدى : منتدى المؤشرات و الاكسبيرتات
افتراضي رد: رسم الاسهم بدالة setindexbuffer

السلام عليكم
انا حاليا اتابع من الهاتف وليس لدي محرر الميتا لمراجعة الكود ولكن سأقترح عليك هذا التعديل
اذهب الى السطر (_if (Open[i] > MA وقم بتعديله الى
if(Open[i+1] < MA_&&Open[i]> MA_)

وان شاء الله ينجح الامر مع عمليات الشراء



التوقيع

نقره لعرض الصورة في صفحة مستقلة

عرض البوم صور salamandal  
رد مع اقتباس
  #2  
قديم 31-12-2019, 07:11 PM
salamandal salamandal غير متواجد حالياً
عضو جديد
افتراضي رد: رسم الاسهم بدالة setindexbuffer

السلام عليكم
انا حاليا اتابع من الهاتف وليس لدي محرر الميتا لمراجعة الكود ولكن سأقترح عليك هذا التعديل
اذهب الى السطر (_if (Open[i] > MA وقم بتعديله الى
if(Open[i+1] < MA_&&Open[i]> MA_)

وان شاء الله ينجح الامر مع عمليات الشراء




رد مع اقتباس
قديم 31-12-2019, 07:14 PM   المشاركة رقم: 3
الكاتب
salamandal
عضو جديد
الصورة الرمزية salamandal

البيانات
تاريخ التسجيل: Dec 2015
رقم العضوية: 28858
المشاركات: 77
بمعدل : 0.03 يوميا

الإتصالات
الحالة:
salamandal غير متواجد حالياً
وسائل الإتصال:

كاتب الموضوع : wizard_gsm المنتدى : منتدى المؤشرات و الاكسبيرتات
افتراضي رد: رسم الاسهم بدالة setindexbuffer

ثم اذهب الى السطر (_if (Open[i]< MA وقم بتعديله الى
if(Open[i+1]> MA_&&Open[i]< MA_)


وان شاء الله ينجح الامر مع عمليات البيع



التوقيع

نقره لعرض الصورة في صفحة مستقلة

عرض البوم صور salamandal  
رد مع اقتباس
  #3  
قديم 31-12-2019, 07:14 PM
salamandal salamandal غير متواجد حالياً
عضو جديد
افتراضي رد: رسم الاسهم بدالة setindexbuffer

ثم اذهب الى السطر (_if (Open[i]< MA وقم بتعديله الى
if(Open[i+1]> MA_&&Open[i]< MA_)


وان شاء الله ينجح الامر مع عمليات البيع




رد مع اقتباس
قديم 02-01-2020, 09:45 PM   المشاركة رقم: 4
الكاتب
wizard_gsm
عضو جديد

البيانات
تاريخ التسجيل: Apr 2019
رقم العضوية: 38383
العمر: 40
المشاركات: 4
بمعدل : 0.00 يوميا

الإتصالات
الحالة:
wizard_gsm غير متواجد حالياً
وسائل الإتصال:

كاتب الموضوع : wizard_gsm المنتدى : منتدى المؤشرات و الاكسبيرتات
افتراضي رد: رسم الاسهم بدالة setindexbuffer

تمام ان شاء الله اجرب و ابلغ حضرتك بالنتيجة نقره لعرض الصورة في صفحة مستقلة متشكر مرورك جدا



عرض البوم صور wizard_gsm  
رد مع اقتباس
  #4  
قديم 02-01-2020, 09:45 PM
wizard_gsm wizard_gsm غير متواجد حالياً
عضو جديد
افتراضي رد: رسم الاسهم بدالة setindexbuffer

تمام ان شاء الله اجرب و ابلغ حضرتك بالنتيجة نقره لعرض الصورة في صفحة مستقلة متشكر مرورك جدا




رد مع اقتباس
قديم 04-01-2020, 09:25 PM   المشاركة رقم: 5
الكاتب
wizard_gsm
عضو جديد

البيانات
تاريخ التسجيل: Apr 2019
رقم العضوية: 38383
العمر: 40
المشاركات: 4
بمعدل : 0.00 يوميا

الإتصالات
الحالة:
wizard_gsm غير متواجد حالياً
وسائل الإتصال:

كاتب الموضوع : wizard_gsm المنتدى : منتدى المؤشرات و الاكسبيرتات
افتراضي رد: رسم الاسهم بدالة setindexbuffer

للاسف مش كفاية لاني عدلت في الكود كتير جدا....ممكن تساعدني لو بعتلك الكود....؟



عرض البوم صور wizard_gsm  
رد مع اقتباس
  #5  
قديم 04-01-2020, 09:25 PM
wizard_gsm wizard_gsm غير متواجد حالياً
عضو جديد
افتراضي رد: رسم الاسهم بدالة setindexbuffer

للاسف مش كفاية لاني عدلت في الكود كتير جدا....ممكن تساعدني لو بعتلك الكود....؟




رد مع اقتباس
قديم 08-01-2020, 08:50 PM   المشاركة رقم: 6
الكاتب
salamandal
عضو جديد
الصورة الرمزية salamandal

البيانات
تاريخ التسجيل: Dec 2015
رقم العضوية: 28858
المشاركات: 77
بمعدل : 0.03 يوميا

الإتصالات
الحالة:
salamandal غير متواجد حالياً
وسائل الإتصال:

كاتب الموضوع : wizard_gsm المنتدى : منتدى المؤشرات و الاكسبيرتات
افتراضي رد: رسم الاسهم بدالة setindexbuffer

المشاركة الأصلية كتبت بواسطة wizard_gsm نقره لعرض الصورة في صفحة مستقلة
للاسف مش كفاية لاني عدلت في الكود كتير جدا....ممكن تساعدني لو بعتلك الكود....؟
ارجو ان تعذرني يا اخي على التاخر فانا لا استخدم الحاسوب الا عند الضرورة

تفضل المؤضر جاهز في المرفقات

وهذا هو الكود الكامل

كود:
 

//+------------------------------------------------------------------+
//|                           Wizard_gsm_indicator V1.mq4            |
//|                                 Copyright © 2020                 |
//|                                                                  |
//|                                                                  |
//+------------------------------------------------------------------+

#property copyright "Copyright © 2020, Wizard_gsm"

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red
#property indicator_width1  1
#property indicator_width2  1

extern int MA_Period=200;
extern int MA_Type = 1;
extern int App_Price = 0 ;
 bool SoundON=false;
 bool EmailON=false;
 
double CrossUp[];
double CrossDown[];
double pt;
int flagval1 = 0;
int flagval2 = 0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
  if(Digits==4 || Digits<=2) pt=Point;
   if(Digits==5 || Digits==3) pt=Point*10;
//---- indicators
   SetIndexStyle(0, DRAW_ARROW, EMPTY);
   SetIndexArrow(0, 225);
   SetIndexBuffer(0, CrossUp);
   SetIndexStyle(1, DRAW_ARROW, EMPTY);
   SetIndexArrow(1, 226);
   SetIndexBuffer(1, CrossDown);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//---- 

//----
   return(0);
  }


//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start() {
   int limit, i;
   double tmp=0;
   bool CrossedUp = false, CrossedDown = false;
   
   int counted_bars=IndicatorCounted();
//---- check for possible errors
   if(counted_bars<0) return(-1);
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;

   limit=Bars-counted_bars;
   
   for(i = 1; i <= limit; i++) {
   
 
       
      double MA_ = iMA(Symbol(),0,MA_Period,0,MA_Type,App_Price,i);
      
      CrossUp[i] = 0;
      CrossDown[i] = 0;
      CrossedUp = false;
      CrossedDown = false;
      

        if ( Close[i+1] < MA_ && Close[i] > MA_ ) CrossedUp = true; 
        if ( Close[i+1] > MA_ && Close[i] < MA_) CrossedDown = true; 

      
      if (CrossedUp)
      {
         if (i == 1 && flagval1==0)
         {
           flagval1=1;
           flagval2=0;
           if (SoundON) Alert("BUY signal at Ask=",Ask,"\n Bid=",Bid,"\n Time=",TimeToStr(CurTime(),TIME_DATE)," ",TimeHour(CurTime()),":",TimeMinute(CurTime()),"\n Symbol=",Symbol()," Period=",Period());
           if (EmailON) SendMail("BUY signal alert","BUY signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period());
         }
         CrossUp[i] = Low[i] - 0.0010;
      }
      else if (CrossedDown)
      {
         if (i == 1 && flagval2==0)
         {
          flagval2=1;
          flagval1=0;
         if (SoundON) Alert("SELL signal at Ask=",Ask,"\n Bid=",Bid,"\n Date=",TimeToStr(CurTime(),TIME_DATE)," ",TimeHour(CurTime()),":",TimeMinute(CurTime()),"\n Symbol=",Symbol()," Period=",Period());
         if (EmailON) SendMail("SELL signal alert","SELL signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period());
         }
         CrossDown[i] = High[i] + 0.0010;
      }
   }

   return(0);
}



الملفات المرفقة
نوع الملف: mq4 Wizard_gsm_indicator V1.mq4‏ (7.9 كيلوبايت, المشاهدات 3)
التوقيع

نقره لعرض الصورة في صفحة مستقلة

عرض البوم صور salamandal  
رد مع اقتباس
  #6  
قديم 08-01-2020, 08:50 PM
salamandal salamandal غير متواجد حالياً
عضو جديد
افتراضي رد: رسم الاسهم بدالة setindexbuffer

المشاركة الأصلية كتبت بواسطة wizard_gsm نقره لعرض الصورة في صفحة مستقلة
للاسف مش كفاية لاني عدلت في الكود كتير جدا....ممكن تساعدني لو بعتلك الكود....؟
ارجو ان تعذرني يا اخي على التاخر فانا لا استخدم الحاسوب الا عند الضرورة

تفضل المؤضر جاهز في المرفقات

وهذا هو الكود الكامل

كود:
 

//+------------------------------------------------------------------+
//|                           Wizard_gsm_indicator V1.mq4            |
//|                                 Copyright © 2020                 |
//|                                                                  |
//|                                                                  |
//+------------------------------------------------------------------+

#property copyright "Copyright © 2020, Wizard_gsm"

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red
#property indicator_width1  1
#property indicator_width2  1

extern int MA_Period=200;
extern int MA_Type = 1;
extern int App_Price = 0 ;
 bool SoundON=false;
 bool EmailON=false;
 
double CrossUp[];
double CrossDown[];
double pt;
int flagval1 = 0;
int flagval2 = 0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
  if(Digits==4 || Digits<=2) pt=Point;
   if(Digits==5 || Digits==3) pt=Point*10;
//---- indicators
   SetIndexStyle(0, DRAW_ARROW, EMPTY);
   SetIndexArrow(0, 225);
   SetIndexBuffer(0, CrossUp);
   SetIndexStyle(1, DRAW_ARROW, EMPTY);
   SetIndexArrow(1, 226);
   SetIndexBuffer(1, CrossDown);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//---- 

//----
   return(0);
  }


//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start() {
   int limit, i;
   double tmp=0;
   bool CrossedUp = false, CrossedDown = false;
   
   int counted_bars=IndicatorCounted();
//---- check for possible errors
   if(counted_bars<0) return(-1);
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;

   limit=Bars-counted_bars;
   
   for(i = 1; i <= limit; i++) {
   
 
       
      double MA_ = iMA(Symbol(),0,MA_Period,0,MA_Type,App_Price,i);
      
      CrossUp[i] = 0;
      CrossDown[i] = 0;
      CrossedUp = false;
      CrossedDown = false;
      

        if ( Close[i+1] < MA_ && Close[i] > MA_ ) CrossedUp = true; 
        if ( Close[i+1] > MA_ && Close[i] < MA_) CrossedDown = true; 

      
      if (CrossedUp)
      {
         if (i == 1 && flagval1==0)
         {
           flagval1=1;
           flagval2=0;
           if (SoundON) Alert("BUY signal at Ask=",Ask,"\n Bid=",Bid,"\n Time=",TimeToStr(CurTime(),TIME_DATE)," ",TimeHour(CurTime()),":",TimeMinute(CurTime()),"\n Symbol=",Symbol()," Period=",Period());
           if (EmailON) SendMail("BUY signal alert","BUY signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period());
         }
         CrossUp[i] = Low[i] - 0.0010;
      }
      else if (CrossedDown)
      {
         if (i == 1 && flagval2==0)
         {
          flagval2=1;
          flagval1=0;
         if (SoundON) Alert("SELL signal at Ask=",Ask,"\n Bid=",Bid,"\n Date=",TimeToStr(CurTime(),TIME_DATE)," ",TimeHour(CurTime()),":",TimeMinute(CurTime()),"\n Symbol=",Symbol()," Period=",Period());
         if (EmailON) SendMail("SELL signal alert","SELL signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period());
         }
         CrossDown[i] = High[i] + 0.0010;
      }
   }

   return(0);
}




الملفات المرفقة
نوع الملف: mq4 Wizard_gsm_indicator V1.mq4‏ (7.9 كيلوبايت, المشاهدات 3)
رد مع اقتباس
قديم 09-01-2020, 05:23 PM   المشاركة رقم: 7
الكاتب
مبتدء تحليل
عضو فعال

البيانات
تاريخ التسجيل: Jul 2013
رقم العضوية: 15796
المشاركات: 624
بمعدل : 0.16 يوميا

الإتصالات
الحالة:
مبتدء تحليل غير متواجد حالياً
وسائل الإتصال:

كاتب الموضوع : wizard_gsm المنتدى : منتدى المؤشرات و الاكسبيرتات
افتراضي رد: رسم الاسهم بدالة setindexbuffer

اخي انت واضع شرط لرسم السهم و كل ما يتحقق الشرط يرسم السهم

يعني كل ما كان الاغلاق فوق او تحت الموفينج يرسم سهم صاعد او نازل

لتحديد السهم باكثر دقة لازم توصف في شرطك الحالة الصحيحة فقط

وهي التقاطع يعني من قبل كان اقل ثم اصبح اعلي او العكس

مثلما وصف لك الاخ سلمندل




عرض البوم صور مبتدء تحليل  
رد مع اقتباس
  #7  
قديم 09-01-2020, 05:23 PM
مبتدء تحليل مبتدء تحليل غير متواجد حالياً
عضو فعال
افتراضي رد: رسم الاسهم بدالة setindexbuffer

اخي انت واضع شرط لرسم السهم و كل ما يتحقق الشرط يرسم السهم

يعني كل ما كان الاغلاق فوق او تحت الموفينج يرسم سهم صاعد او نازل

لتحديد السهم باكثر دقة لازم توصف في شرطك الحالة الصحيحة فقط

وهي التقاطع يعني من قبل كان اقل ثم اصبح اعلي او العكس

مثلما وصف لك الاخ سلمندل






رد مع اقتباس
إضافة رد

مواقع النشر (المفضلة)

الكلمات الدلالية (Tags)
الاسهم, بجانب, setindexbuffer

أدوات الموضوع

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة



الساعة الآن 09:15 PM



جميع الحقوق محفوظة الى اف اكس ارابيا www.fx-arabia.com

تحذير المخاطرة

التجارة بالعملات الأجنبية تتضمن علي قدر كبير من المخاطر ومن الممكن ألا تكون مناسبة لجميع المضاربين, إستعمال الرافعة المالية في التجاره يزيد من إحتمالات الخطورة و التعرض للخساره, عليك التأكد من قدرتك العلمية و الشخصية على التداول.

تنبيه هام

موقع اف اكس ارابيا هو موقع تعليمي خالص يهدف الي توعية المستثمر العربي مبادئ الاستثمار و التداول الناجح ولا يتحصل علي اي اموال مقابل ذلك ولا يقوم بادارة محافظ مالية وان ادارة الموقع غير مسؤولة عن اي استغلال من قبل اي شخص لاسمها وتحذر من ذلك.

اتصل بنا

البريد الإلكتروني للدعم الفنى : support@fx-arabia.com
جميع الحقوق محفوظة اف اكس ارابيا – احدى مواقع Inwestopedia Sp. Z O.O. للاستشارات و التدريب – جمهورية بولندا الإتحادية.
Powered by vBulletin® Copyright ©2000 - 2024 , Designed by Fx-Arabia Team