صفحة 114 من 689 الأولىالأولى ... 1464104108109110111112113114115116117118119120124164214614 ... الأخيرةالأخيرة
النتائج 1,696 إلى 1,710 من 10335
  1. #1696
    الصورة الرمزية cher90
    cher90 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    العمر
    34
    المشاركات
    550

    افتراضي

    السلام عليكم ورحمة الله استاذ أسامة

    أرجو أن تساعدني في تصحيح هذا الإكسبريت الذي عملتوا الأسبوع الماضي https://forum.arabictrader.com/t139020.html
    كنت أضن أنه يشتغل بالشكل الصحيح لاكني كنت مخطيء

    يفترض أن يحذف الأمر المعلق الثاني بتفعيل الأول لاكنه لا يفعل ذلك

    رغم وجود هذا الكود

    كود PHP:
    if(MyOrdersTotal(MagicNumber)>&& (Bid>=xPrice3 || Bid<=yPrice3))              // Delete Pending Orders
          
    {
          
    DeletePendingOrders(MagicNumber);
          } 
    وهذا

    كود PHP:
    int DeletePendingOrders(int Magic)
    {
    int total OrdersTotal()-1;

    for (
    int cnt=total cnt>;cnt--)
    {
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
    if(
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL))
      {
       
    OrderDelete(OrderTicket());
      }
    }
      return(
    0);

    ويفترض أن يفتح صفقة معاكسة للصفقة الماضية إذا كانت خاسرة و يفتح نفس الصفقة إذا كانت رابحة

    لاكن لا يفعل ذالك

    أرجو التصحيح وبارك الله فيك
    الملفات المرفقة الملفات المرفقة

  2. #1697
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة dentist_hussein مشاهدة المشاركة


    شكرا جزيلا أخي اسامه
    معلشي أخي اسامه ... انا إطلعت على الإكسبيرتات لكني لم أستطع إستخراج الأكواد ....
    و عذرا أخي لوتكرمت كنت او معرفة كيف أقوم بعد رسم المستوى الأفقي على الميتاتريدر أو أكثر من مستوى .. أن أقوم بتعريفه ووضعه داخل إكسبيرت ووضع شروط بناءا عليه .
    وجزاك الله خيرا .
    يمكنك رسم مستوى أفقي من الميتاتريدر من خلال
    Insert --------->Lines------->Horizontal Line

    بالنسبه لكيفية إستدعاء الخط كمثال
    كود PHP:
    double line=ObjectGet("name",OBJPROP_PRICE1); 
    لتعود بقيمة سعر الخط الحالي و name هو إسم الخط المطلوب
    ثم بعد ذلك يمكنك التعامل مع المتغير line حسب ما تريد
    مثلا عند إغلاق الشمعه أعلى الخط الأفقي سوف يكون الشرط
    كود PHP:
    if(Close[1]>line
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  3. #1698
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة cher90 مشاهدة المشاركة
    السلام عليكم ورحمة الله استاذ أسامة

    أرجو أن تساعدني في تصحيح هذا الإكسبريت الذي عملتوا الأسبوع الماضي https://forum.arabictrader.com/t139020.html
    كنت أضن أنه يشتغل بالشكل الصحيح لاكني كنت مخطيء

    يفترض أن يحذف الأمر المعلق الثاني بتفعيل الأول لاكنه لا يفعل ذلك

    رغم وجود هذا الكود

    كود PHP:
    if(MyOrdersTotal(MagicNumber)>&& (Bid>=xPrice3 || Bid<=yPrice3))              // Delete Pending Orders
          
    {
          
    DeletePendingOrders(MagicNumber);
          } 
    وهذا

    كود PHP:
    int DeletePendingOrders(int Magic)
    {
    int total OrdersTotal()-1;

    for (
    int cnt=total cnt>;cnt--)
    {
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
    if(
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY || OrderType()!=OP_SELL))
      {
       
    OrderDelete(OrderTicket());
      }
    }
      return(
    0);

    ويفترض أن يفتح صفقة معاكسة للصفقة الماضية إذا كانت خاسرة و يفتح نفس الصفقة إذا كانت رابحة

    لاكن لا يفعل ذالك

    أرجو التصحيح وبارك الله فيك
    وعليكم السلام ورحمة الله وبركاته
    بالنسبه للخطأ الأول قم بعمل دالة لحساب عدد الأوامر المعلقه فقط
    ثم تضع الشرط
    كود PHP:
    if(MyPendingOrdersTotal(MagicNumber)<)              // Delete Pending Orders
          
    {
          
    DeletePendingOrders(MagicNumber);
          } 
    سيكون أدق بهذه الطريقه
    بالنسبه للصفقات العكسيه فأولا تعريف القيم
    كود PHP:
      string last,Blast,Slast
    إجعلها بداخل الداله start حتى تصفر قيم المتغيرات بعد فتح الصفقات فمثلا حسب ما قمت بتعريفها أنت خارج الداله start
    فإذا تم فتح صفقة شراء وأغلقت على خساره سوف تصبح قيمة
    كود PHP:
    Blast="Sloss"
    ثم فتحت صفقة بيع وأغلقت على خساره سوف تصبح قيمة
    كود PHP:
    Slast="Sloss"
    لكن هل قيمة Blast سوف تتغير لأ سوف تبقى ثابته بقيمة Sloss لذلك يجب أن تقوم بحذف قيمتها أو أن تقوم بتعريفها داخل الداله start حتى تحذف تلقائيها

    أخيرا قم بوضع كود المضاعفات قبل أوامر فتح الصفقه حتى يتم تنفيذه مره واحده عند حركة السعر تكة واحده لكن بهذه الطريقه عند أول تكه سوف يحسب شروط تحقق الخساره ثم في التكه الثانيه يتم فتح الصفقه
    الملفات المرفقة الملفات المرفقة
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  4. #1699
    الصورة الرمزية dentist_hussein
    dentist_hussein غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Aug 2011
    الإقامة
    مصر
    المشاركات
    1,827

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    يمكنك رسم مستوى أفقي من الميتاتريدر من خلال
    Insert --------->Lines------->Horizontal Line

    بالنسبه لكيفية إستدعاء الخط كمثال
    كود PHP:
    double line=ObjectGet("name",OBJPROP_PRICE1); 
    لتعود بقيمة سعر الخط الحالي و name هو إسم الخط المطلوب
    ثم بعد ذلك يمكنك التعامل مع المتغير line حسب ما تريد
    مثلا عند إغلاق الشمعه أعلى الخط الأفقي سوف يكون الشرط
    كود PHP:
    if(Close[1]>line

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

    كود:
    double line1=ObjectGet("name",OBJPROP_PRICE1);
    double line2=ObjectGet("name",OBJPROP_PRICE1);
    double line3=ObjectGet("name",OBJPROP_PRICE1);
    وبالنسبه ل كلمة PRICE1 هل هي ثابته ولا أقوم بتغيير الرقم الموجود بها .
    وإستدعاء الترند يكون بنفس الطريقه أيضا >>??
    كود:
    double trend=ObjectGet("name",OBJPROP_PRICE1);
    و رجاء لو تدلني على موضوع يشرح إستدعاء المستويات المرسومه على الميتاتريدر من فايبوناتشي وترندات وغيره داخل إكسبيرت .
    و جزاك الله كل خير .
    آخر تعديل بواسطة dentist_hussein ، 01-03-2012 الساعة 11:55 PM
    توقيع العضو
    MetaTrader Login: 652105
    Investor Password: Z3UR9DA0

  5. #1700
    الصورة الرمزية cher90
    cher90 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    العمر
    34
    المشاركات
    550

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    وعليكم السلام ورحمة الله وبركاته
    بالنسبه للخطأ الأول قم بعمل دالة لحساب عدد الأوامر المعلقه فقط
    ثم تضع الشرط
    كود PHP:
    if(MyPendingOrdersTotal(MagicNumber)<)              // Delete Pending Orders
          
    {
          
    DeletePendingOrders(MagicNumber);
          } 
    سيكون أدق بهذه الطريقه
    بالنسبه للصفقات العكسيه فأولا تعريف القيم
    كود PHP:
      string last,Blast,Slast
    إجعلها بداخل الداله start حتى تصفر قيم المتغيرات بعد فتح الصفقات فمثلا حسب ما قمت بتعريفها أنت خارج الداله start
    فإذا تم فتح صفقة شراء وأغلقت على خساره سوف تصبح قيمة
    كود PHP:
    Blast="Sloss"
    ثم فتحت صفقة بيع وأغلقت على خساره سوف تصبح قيمة
    كود PHP:
    Slast="Sloss"
    لكن هل قيمة Blast سوف تتغير لأ سوف تبقى ثابته بقيمة Sloss لذلك يجب أن تقوم بحذف قيمتها أو أن تقوم بتعريفها داخل الداله start حتى تحذف تلقائيها

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

    حاولت عمل دالة لحساب عدد الأوامر المعلقة فقط أريد رأيك فيها

    كود PHP:
    int MyPendingOrdersTotal(int Magic)
    {
    int c=0;
    int c1=0;
    int c2;
    int total OrdersTotal();

    for (
    int cnt=cnt total cnt++)
    {
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
    if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && OP_BUYSTOP)
     {
     
    c++;
     }
     if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && OP_SELLSTOP)
     {
     
    c1++;
     }
     
    c2=c+c1;
    }
    return(
    c2);

    و الإكسبريت لا يفتح صفقة معاكسة بعد خسارة الصفقة الأخيرة بعكس الإتجاه ... رغم أن المتغيرات معرفة داخل start

    أرجو من فضلك التوضيح و جزاك الله خيرا

  6. #1701
    الصورة الرمزية QtrrtQ
    QtrrtQ غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Jun 2011
    المشاركات
    23

    افتراضي

    السلام عليكم ورحمه الله وبركاته

    ممكن يا اخواني مثال على كود عندما يصل المؤشر الى مستوى 50 في rsi
    يعطيني تنبيه صوتي.
    ولكم جزيل الشكر
    تحياتي

  7. #1702
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة dentist_hussein مشاهدة المشاركة


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

    كود:
    double line1=ObjectGet("name",OBJPROP_PRICE1);
    double line2=ObjectGet("name",OBJPROP_PRICE1);
    double line3=ObjectGet("name",OBJPROP_PRICE1);
    وبالنسبه ل كلمة PRICE1 هل هي ثابته ولا أقوم بتغيير الرقم الموجود بها .
    وإستدعاء الترند يكون بنفس الطريقه أيضا >>??
    كود:
    double trend=ObjectGet("name",OBJPROP_PRICE1);
    و رجاء لو تدلني على موضوع يشرح إستدعاء المستويات المرسومه على الميتاتريدر من فايبوناتشي وترندات وغيره داخل إكسبيرت .
    و جزاك الله كل خير .
    نعم يمكنك رسم أكثر من خط لكن يجب تغيير إسم الخط في كل مره فلا يمكن وضع أكثر من خط على الشارت بنفس الإسم
    OBJPROP_PRICE1 تعود بقيمة سعر الخط بالتالي فهي لن تتغير
    بالنسبه لإستدعاء الترند يكون بنفس الطريقه لكن لاحظ أنه إذا كان الترند منحني فسوف يتغير السعر لذلك تستخدم
    كود PHP:
    ObjectGetValueByShift("name",shift); 
    حيث shift هي رقم الشمعه التي تريد معرفة السعر عندها

    أفضل طريقة للتعلم هي مراجعة أكواد الإكسبرتات والمؤشرات الأخرى حتى تعلم طريقة عملها مرفق إكسبرتين قم بمراجعتهم
    الملفات المرفقة الملفات المرفقة
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  8. #1703
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة cher90 مشاهدة المشاركة
    بارك الله فيك أستاذ أسامة

    حاولت عمل دالة لحساب عدد الأوامر المعلقة فقط أريد رأيك فيها

    كود PHP:
    int MyPendingOrdersTotal(int Magic)
    {
    int c=0;
    int c1=0;
    int c2;
    int total OrdersTotal();

    for (
    int cnt=cnt total cnt++)
    {
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
    if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && OP_BUYSTOP)
     {
     
    c++;
     }
     if (
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && OP_SELLSTOP)
     {
     
    c1++;
     }
     
    c2=c+c1;
    }
    return(
    c2);

    و الإكسبريت لا يفتح صفقة معاكسة بعد خسارة الصفقة الأخيرة بعكس الإتجاه ... رغم أن المتغيرات معرفة داخل start

    أرجو من فضلك التوضيح و جزاك الله خيرا
    دالة حساب الأوامر المعلقه صحيحه ويمكنك بدلا من وضع أكثر من شرط أن تجعلها مباشرة
    كود PHP:
    if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && OrderType()>OP_SELL
    لديك أخطاء أخرى أيضا في كود البحث عن الصفقات التي أغلقت لاحظ أنت جعلت الكود
    كود PHP:
     if(OrderType()==OP_BUY && OrderClosePrice()>=OrderOpenPrice()) 
           
    last="profit";
           
    Blast="Bprofit";
           
    X_lots=OrderLots(); 
    بما أنك وضعت أكثر من جواب للشرط فيجب أن تستخدم الأقواس { }
    ليصبح
    كود PHP:
      if(OrderType()==OP_BUY && OrderClosePrice()>=OrderOpenPrice()){ 
           
    last="profit";
           
    Blast="Bprofit";
           
    X_lots=OrderLots(); 
           }
           if(
    OrderType()==OP_BUY && OrderClosePrice()<=OrderOpenPrice()){
           
    last="loss"
           
    Blast="Bloss";   
           
    X_lots=OrderLots();
           }
           
    //for SELL order
           
    if(OrderType()==OP_SELL && OrderClosePrice()<=OrderOpenPrice()){ 
           
    last="profit";  
           
    Slast="Sprofit"
           
    X_lots=OrderLots();
           }
           if(
    OrderType()==OP_SELL && OrderClosePrice()>=OrderOpenPrice()) {
           
    last="loss";   
           
    Slast="Sloss";   
           
    X_lots=OrderLots();
           } 
    مرفق الإكسبرت بعد التعديل
    الملفات المرفقة الملفات المرفقة
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  9. #1704
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة QtrrtQ مشاهدة المشاركة
    السلام عليكم ورحمه الله وبركاته

    ممكن يا اخواني مثال على كود عندما يصل المؤشر الى مستوى 50 في rsi
    يعطيني تنبيه صوتي.
    ولكم جزيل الشكر
    تحياتي
    أولا سوف تحتاج إلى دالة مؤشر الآر إس آي
    كود PHP:
    double rsi=iRSI(Symbol(),0,14,PRICE_CLOSE,0); 
    ثم تضع الشرط
    كود PHP:
    if(rsi>=50){
    Alert("RSI Above 50");

    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  10. #1705
    الصورة الرمزية بهجت الريس
    بهجت الريس غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Dec 2011
    المشاركات
    314

    افتراضي

    السلام عليكم اخى اسامة
    لى سؤال برمجى اذا تكرمت فأنا احاول الا ازعجك و بسيبك للتقيل
    من المعروف اننا من الممكن ان نبنى الأستراتيجية على هاى او لو شمعة او اوبن او كلوز سواء كانت الشمعة ساعة او اربع ساعات او ما الى ذالك
    سؤالى هو هل يوجد كود برمجى أعتمد عليه فى عملياتى الحسابية يعتمد على اغلاق ساعة معينة
    فمثلا اريد ان ابنى الأوامر المعلقة بناءا على اغلاق الساعة الواحدة ليلا بحيث اثناء اليوم وفى اى ساعة حققت الأوامر المعلقة هدفها وأغلقت فيتم فتحها مرة اخرى بناءا على سعر اغلاق الساعة الواحدة ليل
    فهل من الممكن عمل ذالك فأنا ما أعرفة هو
    كود:
    Open[2]
    او
    كود:
    Close[0]
    وكما تعلم فأن 0 هى الشمعة الحالية و 2 هى الشمعه قبل قبل الحالية
    فكيف سنكتب شمعة الواحدة ليلا ؟

  11. #1706
    الصورة الرمزية dentist_hussein
    dentist_hussein غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Aug 2011
    الإقامة
    مصر
    المشاركات
    1,827

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    نعم يمكنك رسم أكثر من خط لكن يجب تغيير إسم الخط في كل مره فلا يمكن وضع أكثر من خط على الشارت بنفس الإسم
    OBJPROP_PRICE1 تعود بقيمة سعر الخط بالتالي فهي لن تتغير
    بالنسبه لإستدعاء الترند يكون بنفس الطريقه لكن لاحظ أنه إذا كان الترند منحني فسوف يتغير السعر لذلك تستخدم
    كود PHP:
    ObjectGetValueByShift("name",shift); 
    حيث shift هي رقم الشمعه التي تريد معرفة السعر عندها

    أفضل طريقة للتعلم هي مراجعة أكواد الإكسبرتات والمؤشرات الأخرى حتى تعلم طريقة عملها مرفق إكسبرتين قم بمراجعتهم
    الله يبارك فيك أخي اسامه و يزيدك من علمه و شكرا جزيلا .
    يعني مثلا هل هكذا صحيح :
    حيث line1هو إسم المستوى رقم1
    و trend1هو إسم الترند رقم1
    كود PHP:
    int start()
       {
         
    double line1=ObjectGet("line1",OBJPROP_PRICE1); 
         
    double trend1ObjectGetValueByShift("trend1",1);
          
        if(
    Close[1]>line1)
       
        
        if(
    Close[1]<trend1)
           
             
                 
                  return(
    0);
         } 
    توقيع العضو
    MetaTrader Login: 652105
    Investor Password: Z3UR9DA0

  12. #1707
    الصورة الرمزية cher90
    cher90 غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Mar 2009
    العمر
    34
    المشاركات
    550

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    دالة حساب الأوامر المعلقه صحيحه ويمكنك بدلا من وضع أكثر من شرط أن تجعلها مباشرة
    كود PHP:
    if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && OrderType()>OP_SELL
    لديك أخطاء أخرى أيضا في كود البحث عن الصفقات التي أغلقت لاحظ أنت جعلت الكود
    كود PHP:
     if(OrderType()==OP_BUY && OrderClosePrice()>=OrderOpenPrice()) 
           
    last="profit";
           
    Blast="Bprofit";
           
    X_lots=OrderLots(); 
    بما أنك وضعت أكثر من جواب للشرط فيجب أن تستخدم الأقواس { }
    ليصبح
    كود PHP:
      if(OrderType()==OP_BUY && OrderClosePrice()>=OrderOpenPrice()){ 
           
    last="profit";
           
    Blast="Bprofit";
           
    X_lots=OrderLots(); 
           }
           if(
    OrderType()==OP_BUY && OrderClosePrice()<=OrderOpenPrice()){
           
    last="loss"
           
    Blast="Bloss";   
           
    X_lots=OrderLots();
           }
           
    //for SELL order
           
    if(OrderType()==OP_SELL && OrderClosePrice()<=OrderOpenPrice()){ 
           
    last="profit";  
           
    Slast="Sprofit"
           
    X_lots=OrderLots();
           }
           if(
    OrderType()==OP_SELL && OrderClosePrice()>=OrderOpenPrice()) {
           
    last="loss";   
           
    Slast="Sloss";   
           
    X_lots=OrderLots();
           } 
    مرفق الإكسبرت بعد التعديل
    بارك الله فيك استاذ أسامة

    بقي خطأ بسيط أخير ..... الإكسبريت لا يحذف الأمر المعلق الأخر بعد تفعل الأول

    أرجو من فضلك التصحيح و جزاك الله خيرا

  13. #1708
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة بهجت الريس مشاهدة المشاركة
    السلام عليكم اخى اسامة
    لى سؤال برمجى اذا تكرمت فأنا احاول الا ازعجك و بسيبك للتقيل
    من المعروف اننا من الممكن ان نبنى الأستراتيجية على هاى او لو شمعة او اوبن او كلوز سواء كانت الشمعة ساعة او اربع ساعات او ما الى ذالك
    سؤالى هو هل يوجد كود برمجى أعتمد عليه فى عملياتى الحسابية يعتمد على اغلاق ساعة معينة
    فمثلا اريد ان ابنى الأوامر المعلقة بناءا على اغلاق الساعة الواحدة ليلا بحيث اثناء اليوم وفى اى ساعة حققت الأوامر المعلقة هدفها وأغلقت فيتم فتحها مرة اخرى بناءا على سعر اغلاق الساعة الواحدة ليل
    فهل من الممكن عمل ذالك فأنا ما أعرفة هو
    كود:
    Open[2]
    او
    كود:
    Close[0]
    وكما تعلم فأن 0 هى الشمعة الحالية و 2 هى الشمعه قبل قبل الحالية
    فكيف سنكتب شمعة الواحدة ليلا ؟
    وعليكم السلام ورحمة الله وبركاته
    أولا يجب أن تحدد رقم شمعة الساعه 1
    كود PHP:
    int barshift=iBarShift(Symbol(),0,StrToTime(TimeToStr(iTime(Symbol(),1440,0),TIME_DATE)+" "+"01:00"),false); 
    ثم بعد ذلك تكون القيم
    كود PHP:
    Open[barshift];
    Close[barshift];
    High[barshift];
    Low[barshift]; 
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  14. #1709
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة dentist_hussein مشاهدة المشاركة

    الله يبارك فيك أخي اسامه و يزيدك من علمه و شكرا جزيلا .
    يعني مثلا هل هكذا صحيح :
    حيث line1هو إسم المستوى رقم1
    و trend1هو إسم الترند رقم1
    كود PHP:
    int start()
       {
         
    double line1=ObjectGet("line1",OBJPROP_PRICE1); 
         
    double trend1ObjectGetValueByShift("trend1",1);
          
        if(
    Close[1]>line1)
       
        
        if(
    Close[1]<trend1)
           
             
                 
                  return(
    0);
         } 
    نعم بهذا الشكل صحيح وتقوم عند رسم الترند أو الخط الأفقي على الشارت بتسميتهم بنفس الأسماء التي وضعتها في الإكسبرت
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  15. #1710
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,864

    افتراضي

    اقتباس المشاركة الأصلية كتبت بواسطة cher90 مشاهدة المشاركة
    بارك الله فيك استاذ أسامة

    بقي خطأ بسيط أخير ..... الإكسبريت لا يحذف الأمر المعلق الأخر بعد تفعل الأول

    أرجو من فضلك التصحيح و جزاك الله خيرا
    الخطأ لديك في دالة حذف الأوامر المعلقه
    إجعلها
    كود PHP:
    int DeletePendingOrders(int Magic)
    {
    int total OrdersTotal();

    for (
    int cnt=total cnt>=;cnt--)
    {
    OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
    if(
    OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY && OrderType()!=OP_SELL))
      {
       
    OrderDelete(OrderTicket());
      }
    }
      return(
    0);

    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

المواضيع المتشابهه

  1. موضوع مخصص للاكسبيرتات اللتي يستخدمها الاعضاء على الحقيقي,,عندك اكسبيرت ممتاز ضعه هنا
    By محمد معمو in forum برمجة المؤشرات واكسبرتات التداول - Experts Advisor EA
    مشاركات: 11
    آخر مشاركة: 15-12-2023, 02:03 PM
  2. عااااااااااااجل ( موضوع مخصص للفرص الفورية)!!!
    By عاشق الذبذبـة in forum توقعات وتوصيات سوق العملات
    مشاركات: 280
    آخر مشاركة: 27-08-2009, 10:30 PM

الاوسمة لهذا الموضوع


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17