النتائج 1 إلى 3 من 3
  1. #1
    الصورة الرمزية mohamad ali
    mohamad ali غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2005
    الإقامة
    سوريا
    المشاركات
    327

    افتراضي ممكن المساعدة في اصلاح كود

    ممكن المساعدة في اصلاح كود

    قمت ببرمجة فكرة اكسبريت بواسطة الذكاء الاصطناعي
    لكن هنالك اخطاء تظهر
    فارجو من لديه الخبرة يصحح كتابة الكود





    //+------------------------------------------------------------------+
    //| MyExpert.mq4 |
    //| Copyright 2023, Your Name |
    //| https://www.yourwebsite.com |
    //+------------------------------------------------------------------+
    input double InitialLotSize = 0.1; // حجم اللوت للصفقة الأولى
    input double InitialTakeProfit = 50; // الهدف بالنقاط للصفقة الأولى
    input double InitialStopLoss = 30; // وقف الخسارة بالنقاط للصفقة الأولى
    input int MagicNumber = 123456; // الرقم السحري


    // إعدادات الصفقة الثانية
    input double NewLotSize = 0.1; // حجم اللوت للصفقة الثانية
    input double NewTakeProfit = 50; // الهدف بالنقاط للصفقة الثانية
    input double NewStopLoss = 30; // وقف الخسارة بالنقاط للصفقة الثانية


    // تعريف نوع الصفقة
    enum TradeType { BUY, SELL };
    input TradeType OrderType = BUY; // نوع الصفقة (شراء أو بيع)


    // متغير لتتبع ما إذا تم فتح الصفقة الثانية
    bool secondOrderOpened = false;


    //+------------------------------------------------------------------+
    //| Expert initialization function |
    //+------------------------------------------------------------------+
    int OnInit()
    {
    // يمكنك إضافة أي إعدادات أولية هنا
    return(INIT_SUCCEEDED);
    }
    //+------------------------------------------------------------------+
    //| Expert deinitialization function |
    //+------------------------------------------------------------------+
    void OnDeinit(const int reason)
    {
    // يمكنك إضافة أي تنظيف هنا
    }
    //+------------------------------------------------------------------+
    //| Expert tick function |
    //+------------------------------------------------------------------+
    void OnTick()
    {
    // تحقق مما إذا كانت هناك صفقة مفتوحة بالفعل
    if (OrdersTotal() == 0)
    {
    double price;
    double sl;
    double tp;


    if (OrderType == BUY)
    {
    price = Ask; // سعر الشراء
    sl = price - InitialStopLoss * Point; // حساب وقف الخسارة
    tp = price + InitialTakeProfit * Point; // حساب الهدف
    // فتح صفقة شراء
    int buyTicket = OrderSend(Symbol(), OP_BUY, InitialLotSize, price, 3, sl, tp, "My Buy Order", MagicNumber, 0, clrGreen);
    if (buyTicket < 0)
    {
    Print("Error opening buy order: ", GetLastError());
    }
    else
    {
    Print("Buy order opened successfully: ", buyTicket);
    }
    }
    else if (OrderType == SELL)
    {
    price = Bid; // سعر البيع
    sl = price + InitialStopLoss * Point; // حساب وقف الخسارة
    tp = price - InitialTakeProfit * Point; // حساب الهدف
    // فتح صفقة بيع
    int sellTicket = OrderSend(Symbol(), OP_SELL, InitialLotSize, price, 3, sl, tp, "My Sell Order", MagicNumber, 0, clrRed);
    if (sellTicket < 0)
    {
    Print("Error opening sell order: ", GetLastError());
    }
    else
    {
    Print("Sell order opened successfully: ", sellTicket);
    }
    }
    }
    else
    {
    // تحقق من حالة الصفقة المفتوحة
    for (int i = OrdersTotal() - 1; i >= 0; i--)
    {
    if (OrderSelect(i, SELECT_BY_POS))
    {
    if (OrderMagicNumber() == MagicNumber && OrderSymbol() == Symbol())
    {
    // تحقق إذا كانت الصفقة مغلقة
    if (OrderCloseTime() > 0)
    {
    // إذا كانت الصفقة مغلقة، افتح صفقة جديدة مرة واحدة فقط
    if (!secondOrderOpened)
    {
    double newPrice;
    double newSl;
    double newTp;


    Mohamed Nassan, [02/01/2025 12:03 م]
    if (OrderType == BUY)
    {
    newPrice = Ask; // سعر الشراء للصفقة الجديدة
    newSl = newPrice - NewStopLoss * Point; // حساب وقف الخسارة للصفقة الجديدة
    newTp = newPrice + NewTakeProfit * Point; // حساب الهدف للصفقة الجديدة
    // فتح صفقة شراء جديدة
    int newBuyTicket = OrderSend(Symbol(), OP_BUY, NewLotSize, newPrice, 3, newSl, newTp, "My New Buy Order", MagicNumber, 0, clrGreen);
    if (newBuyTicket < 0)
    {
    Print("Error openinew buy order: ",


    الاخطاء التي تظهر هي
    ',' - unexpected end of program ZZZ.111.mq4 114 62


    '{' - unbalanced parentheses ZZZ.111.mq4 44 3

  2. #2
    الصورة الرمزية mohamad ali
    mohamad ali غير متواجد حالياً عضو المتداول العربي
    تاريخ التسجيل
    Feb 2005
    الإقامة
    سوريا
    المشاركات
    327

    افتراضي

    ملف الاكسبريت
    الملفات المرفقة الملفات المرفقة

  3. #3
    الصورة الرمزية Algo_Master
    Algo_Master غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Dec 2011
    الإقامة
    مصر
    المشاركات
    1,137

    افتراضي

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

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

    تمنياتنا لك بالتوفيق
    و جمعه مباركه للجميع
    توقيع العضو
    قسم البرمجه بمنتدى المتداول العربى
    يرحب بكم
    https://forum.arabictrader.com/f31.html


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