النتائج 1 إلى 2 من 2
  1. #1
    تاريخ التسجيل
    Apr 2010
    الإقامة
    الرياض - حماه
    المشاركات
    2,743

    افتراضي عدلت الاكسبيرت بنفسي أرجو التأكد Mr.Dollar

    أخي أسامة نظرا لانشغالك انت والاخوة المبرمجين قمت بقراءة بعض المواضيع في المنتديات الاجنبية وتعلمت بعض الأمور عن البرمجة وقمت بإضافة فلتر لاكسبيرت
    فلتر rsx

    أرجو التأكيد ان عملي صحيح ولا يوجد أي عبارة غير منطقية او تسلسل غير منطقي بعد التعديل
    خصوصا لا أستطيع عمل باك تست الآن لأن جهاز المخصص للباكتست مش موجود معي الآن

    وبالمرفقات الاكسبيرت بعد التعديل مع المؤشر rsx

    كود:
    /*
       Generated by EX4-TO-MQ4 decompiler V4.0.225.1g []
       Website: http://purebeam.biz
       E-mail : [email protected]
       
       Decompiled and educated 2011-07-23 by Capella
    */
    #property copyright "Copyright © GENIALBIT"
    #property link      "http://www.genialbit.com"
    
    /*                                                       NO NEED FOR ANY DLL
    #import "PIPSTIGER.dll"
       int OrderCode();
       int LicenseKey();
       string ActivationStatus();
       int LicenseManager();
       void SetVariable(int a0, int a1, int a2);
    #import
    */
    
    extern string C1 = "--- GENERAL SETTINGS ---";
    extern string ExpertName = "PipsTiger Fx 1.0";
    extern int MagicNumber = 48569;
    extern int PurchaseCode = 0;
    extern string S1=" Rsx Settings";
    extern int    RsxPeriod       = 14;
    extern int    RsxPrice        = 0;
    extern int    SignalPeriod    = 5;
    extern int    SignalMethod    = MODE_SMA;
    extern int    TmaHalfLength   = 12;
    extern int    TmaApplyTo      = 0; 
    extern double BandsDeviations = 3;
    extern int EntryCandle=0;
    extern int RSXTouchCandles=1;
    extern string C2 = "---    MM SETTING    ---";
    extern double Lots = 0.1;
    extern bool UseMM = TRUE;
    extern int UseEquityPercentage = 1;
    extern int SpreadLimit = 3;
    extern int TakeProfit = 31;
    extern int StopLoss = 115;
    extern int Slippage = 2;
    extern bool UseStartSLTP = TRUE;
    extern int LimitLP = -58;
    extern int SafeTarget = 1;
    extern int SafeStartTarget = 8;
    extern int CloseBuyFilter = 15;
    extern int CloseSellFilter = 13;
    extern string C3 = "---    MA SETTINGS    ---";
    extern int MAPeriod = 74;
    extern int MAShift1 = 0;
    extern int MAMethod = 2;
    extern int MAAppliedPrice = 0;
    extern int MAShift2 = 1;
    extern int BuyFilterMA1 = 15;
    extern int BuyFilterMA2 = 38;
    extern int BuyFilterMA3 = 38;
    extern int SellFilterMA1 = 15;
    extern int SellFilterMA2 = 38;
    extern string C4 = "---    CCI SETTINGS    ---";
    extern int CCIPeriod = 18;
    extern int CCIAppliedPrice = 5;
    extern int CCIShift = 1;
    extern double TradeCCIFilter = 152.0;
    extern string C5 = "---    ATR SETTINGS    ---";
    extern int ATRPeriod = 14;
    extern int ATRShift = 1;
    extern int TradeATRFilter = 7;
    extern string C6 = "---    RSI SETTINGS    ---";
    extern bool UseRSI = FALSE;
    extern int RSIPeriod = 14;
    extern int RSIAppliedPrice = 0;
    extern int RSIShift = 0;
    extern int TradeRSIFilter = 60;
    extern string C13 = "---  BOLLINGER BANDS SETTINGS  ---";
    extern bool UseBB = FALSE;
    extern int BBPeriod = 20;
    extern int BBDeviation = 2;
    extern int BBBandsShift = 0;
    extern int BBAppliedPrice = 0;
    extern int BBModeBuy = 2;
    extern int BBModeSell = 1;
    extern int BBShift = 0;
    extern string C7 = "---    WPR SETTINGS    ---";
    extern int WPRPeriod = 11;
    extern int WPRShift = 1;
    extern double BuyLimitWPR1 = -98.0;
    extern double BuyLimitWPR2 = -94.0;
    extern double SellLimitWPR1 = -4.0;
    extern double BuyLimitWPR3 = -18.0;
    extern double SellLimitWPR2 = -81.0;
    extern string C8 = "---    PREFERENCES    ---";
    extern bool OpenBuy = TRUE;
    extern bool OpenSell = TRUE;
    extern bool TradeOnFriday = TRUE;
    extern bool UseNews = FALSE;
    extern bool NewsHighImpact = TRUE;
    extern bool NewsMediumImpact = TRUE;
    extern bool NewsSpeaks = TRUE;
    extern bool NewsIncludeEURUSD = TRUE;
    extern int MinUntilNextNews = 120;
    extern int MinSincePrevNews = 120;
    extern string C9 = "---  SESSION SETTING  ---";
    extern bool UseSession = FALSE;
    extern bool Asian = TRUE;
    extern bool Europe = TRUE;
    extern bool NewYork = TRUE;
    extern int GMTOffset = 1;
    extern bool DaylightSavings = FALSE;
    extern string C10 = "---  ASIAN SETTINGS  ---";
    extern bool AsianDaily = TRUE;
    extern int AsianOpenSunday = 0;
    extern int AsianCloseSunday = 8;
    extern int AsianOpenMonday = 0;
    extern int AsianCloseMonday = 8;
    extern int AsianOpenTuesday = 0;
    extern int AsianCloseTuesday = 8;
    extern int AsianOpenWednesday = 0;
    extern int AsianCloseWednesday = 8;
    extern int AsianOpenThursday = 0;
    extern int AsianCloseThursday = 8;
    extern int AsianOpenFriday = 0;
    extern int AsianCloseFriday = 8;
    extern string C11 = "---  EUROPE SETTINGS  ---";
    extern bool EuropeDaily = TRUE;
    extern int EuropeOpenSunday = 6;
    extern int EuropeCloseSunday = 16;
    extern int EuropeOpenMonday = 6;
    extern int EuropeCloseMonday = 16;
    extern int EuropeOpenTuesday = 6;
    extern int EuropeCloseTuesday = 16;
    extern int EuropeOpenWednesday = 6;
    extern int EuropeCloseWednesday = 16;
    extern int EuropeOpenThursday = 6;
    extern int EuropeCloseThursday = 16;
    extern int EuropeOpenFriday = 6;
    extern int EuropeCloseFriday = 16;
    extern string C12 = "---  NEW YORK SETTINGS  ---";
    extern bool NeyYorkDaily = TRUE;
    extern int NYOpenSunday = 12;
    extern int NYCloseSunday = 21;
    extern int NYOpenMonday = 12;
    extern int NYCloseMonday = 21;
    extern int NYOpenTuesday = 12;
    extern int NYCloseTuesday = 21;
    extern int NYOpenWednesday = 12;
    extern int NYCloseWednesday = 21;
    extern int NYOpenThursday = 12;
    extern int NYCloseThursday = 21;
    extern int NYOpenFriday = 12;
    extern int NYCloseFriday = 21;
    bool gba_644[5];
    int g_datetime_648;
    double gd_652;
    int gi_660;
    string gs_664;
    int gi_672 = 3;
    int g_slippage_676;
    int g_slippage_680;
    int gi_684 = 1;
    double gd_688;
    int gi_unused_696;
    int gi_unused_700 = 0;
    int g_color_704 = Blue;
    int g_color_708 = Red;
    int g_color_712 = DodgerBlue;
    int g_color_716 = DeepPink;
    int gi_720 = 1;
    bool gi_724 = FALSE;
    
    /*
    
    init parameters 
    
    string ts_unused_0, int ti_8, int  ?i_unused_12, double td_16, double t_slippage_24, bool t_bool_0, int  ?i_unused_36, bool t_bool_8, int  ?i_unused_44, string ts_unused_48, bool t_bool_24, int  ?i_unused_60, bool t_bool_0, int  ?i_unused_68, int  ?i_unused_72, int  ?i_unused_76, bool t_bool_16, int  ?i_unused_84, int a_cmd_0, int  ?i_unused_92, double l_price_8, color l_color_16, int l_ticket_20, int l_error_24, string ls_unused_116, double l_price_36, double l_price_44, double l_price_52, double ld_148, double ld_156, double l_lots_76, int li_172, bool t_bool_88, int  ?i_unused_180, double td_184, bool t_bool_104, int  ?i_unused_196, bool l_bool_0, int li_204, int l_error_8, int l_ticket_12, string ls_unused_216, int l_pos_24, int t_cmd_28, int  ?i_unused_232, double t_bool_36, string ts_unused_244, double t_bool_52, double td_260, double td_268, int  ?i_unused_276, int li_280, int l_count_8, int l_count_12, int li_292, int l_error_20, int l_ticket_24, string ls_unused_304, int l_pos_36, int li_316, double t_cmd_44, double t_bool_52, int  ?i_unused_336, int  ?i_unused_340, double t_bool_68, double td_352, bool li_ret_360, bool li_364, bool li_368, bool li_372, double l_iclose_16, double l_ima_24, double l_iwpr_32, double l_iatr_40, double l_icci_48, double l_irsi_56, double l_ibands_64, int li_432, int li_436, double ld_440, double ld_448, double ld_456, double t_low_104, string ts_unused_472, double t_low_120, bool t_bool_128, int  ?i_unused_492, bool li_ret_496, bool li_500, bool li_504, double l_iclose_12, double l_ima_20, double l_iwpr_28, double l_iatr_36, double l_icci_44, double l_irsi_52, double l_ibands_60, int li_564, int li_568, double ld_572, double ld_580, double t_high_92, int  ?i_unused_596, int  ?i_unused_600, double t_high_108, bool t_bool_116, int /
     ?i_unused_616, double ad_620, int ai_628, bool li_ret_632, bool li_636, bool li_640, double l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_676, double ld_684, double ld_692, double ld_700, double t_bool_88, double t_bool_96, double t_bool_104, double ad_732, int ai_740, bool li_ret_744, bool li_748, bool li_752, double l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_788, double ld_796, double ld_804, double ld_812, double t_bool_88, double t_bool_96, double t_bool_104, double td_844, double td_852, int  ?i_unused_860, int  ?i_unused_864, int li_868, int l_pos_4, bool t_bool_8, int  ?i_unused_880, int  ?i_unused_884, int  ?i_unused_888, string ts_unused_892, int l_count_0, int li_904, int l_pos_8, bool t_bool_12, int  ?i_unused_916, bool t_bool_20, int  ?i_unused_924, int  ?i_unused_928, int  ?i_unused_932, bool t_bool_36, int  ?i_unused_940, string ls_944, string ts_952, string ts_960, string ts_968, int ti_976, int  ?i_unused_980, double ld_ret_984, double ld_992, double t_marginrequired_16, double t_bool_24, bool t_bool_32, int  ?i_unused_1020, string ts_unused_1024, double td_1032, string asa_1040[2], int l_icustom_4, int l_icustom_8, bool li_ret_1052, int l_error_16, int li_1060, int l_index_24, double t_bool_28, string ts_1076, string ts_1084, bool t_bool_52, int  ?i_unused_1096, bool li_ret_1100, int li_1104, int li_1108, int li_1112, int li_1116, int li_1120, int li_1124, int li_1128, bool li_1132, int t_bool_36, int  ?i_unused_1140, int t_bool_44, int  ?i_unused_1148, int ti_1152, int  ?i_unused_1156, int  ?i_unused_1160, int  ?i_unused_1164, int  ?i_unused_1168, int  ?i_unused_1172, int  ?i_unused_1176, int  ?i_unused_1180, int /*<u
     ?i_unused_1184, int  ?i_unused_1188, int  ?i_unused_1192, int  ?i_unused_1196, int  ?i_unused_1200, int  ?i_unused_1204, int  ?i_unused_1208, int  ?i_unused_1212, int  ?i_unused_1216, int  ?i_unused_1220, int  ?i_unused_1224, int  ?i_unused_1228, int  ?i_unused_1232, int  ?i_unused_1236, int  ?i_unused_1240, int  ?i_unused_1244, int  ?i_unused_1248, int  ?i_unused_1252, int  ?i_unused_1256, int  ?i_unused_1260, int  ?i_unused_1264, int  ?i_unused_1268, int  ?i_unused_1272, int  ?i_unused_1276, int  ?i_unused_1280, int  ?i_unused_1284, int  ?i_unused_1288, int  ?i_unused_1292, int  ?i_unused_1296, int  ?i_unused_1300, int  ?i_unused_1304, int  ?i_unused_1308, int  ?i_unused_1312, int  ?i_unused_1316, int  ?i_unused_1320, int  ?i_unused_1324, int  ?i_unused_1328, int  ?i_unused_1332, int  ?i_unused_1336, int  ?i_unused_1340, int  ?i_unused_1344, int  ?i_unused_1348, int  ?i_unused_1352, int  ?i_unused_1356, int  ?i_unused_1360, int  ?i_unused_1364, int  ?i_unused_1368) 
    
    */
    
    void init()
    {
       gs_664 = Symbol();
       if (Digits < 4) {
          gd_652 = 0.01;
          gi_660 = 2;
       } else {
          gd_652 = 0.0001;
          gi_660 = 4;
       }
       g_slippage_676 = Slippage * MathPow(10, Digits - gi_660);
       g_slippage_680 = gi_672 * MathPow(10, Digits - gi_660);
       gd_688 = NormalizeDouble(SpreadLimit * gd_652, gi_660 + 1);
    }
    
    /*
    
    deinit parameters
    
    bool t_bool_0, int  ?i_unused_4, bool t_bool_8, int  ?i_unused_12, string ts_unused_16, bool t_bool_24, int  ?i_unused_28, bool t_bool_0, int  ?i_unused_36, int  ?i_unused_40, int  ?i_unused_44, bool t_bool_16, int  ?i_unused_52, int a_cmd_0, int  ?i_unused_60, double l_price_8, color l_color_16, int l_ticket_20, int l_error_24, string ls_unused_84, double l_price_36, double l_price_44, double l_price_52, double ld_116, double ld_124, double l_lots_76, int li_140, bool t_bool_88, int  ?i_unused_148, double td_152, bool t_bool_104, int  ?i_unused_164, bool l_bool_0, int li_172, int l_error_8, int l_ticket_12, string ls_unused_184, int l_pos_24, int t_cmd_28, int  ?i_unused_200, double t_bool_36, string ts_unused_212, double t_bool_52, double td_228, double td_236, int  ?i_unused_244, int li_248, int l_count_8, int l_count_12, int li_260, int l_error_20, int l_ticket_24, string ls_unused_272, int l_pos_36, int li_284, double t_cmd_44, double t_bool_52, int  ?i_unused_304, int  ?i_unused_308, double t_bool_68, double td_320, bool li_ret_328, bool li_332, bool li_336, bool li_340, double l_iclose_16, double l_ima_24, double l_iwpr_32, double l_iatr_40, double l_icci_48, double l_irsi_56, double l_ibands_64, int li_400, int li_404, double ld_408, double ld_416, double ld_424, double t_low_104, string ts_unused_440, double t_low_120, bool t_bool_128, int  ?i_unused_460, bool li_ret_464, bool li_468, bool li_472, double l_iclose_12, double l_ima_20, double l_iwpr_28, double l_iatr_36, double l_icci_44, double l_irsi_52, double l_ibands_60, int li_532, int li_536, double ld_540, double ld_548, double t_high_92, int  ?i_unused_564, int  ?i_unused_568, double t_high_108, bool t_bool_116, int  ?i_unused_584, double ad_588, int ai_596, bool li_ret_600, bool li_604, bool li_608, do
    uble l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_644, double ld_652, double ld_660, double ld_668, double t_bool_88, double t_bool_96, double t_bool_104, double ad_700, int ai_708, bool li_ret_712, bool li_716, bool li_720, double l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_756, double ld_764, double ld_772, double ld_780, double t_bool_88, double t_bool_96, double t_bool_104, double td_812, double td_820, int  ?i_unused_828, int  ?i_unused_832, int li_836, int l_pos_4, bool t_bool_8, int  ?i_unused_848, int  ?i_unused_852, int  ?i_unused_856, string ts_unused_860, int l_count_0, int li_872, int l_pos_8, bool t_bool_12, int  ?i_unused_884, bool t_bool_20, int  ?i_unused_892, int  ?i_unused_896, int  ?i_unused_900, bool t_bool_36, int  ?i_unused_908, string ls_912, string ts_920, string ts_928, string ts_936, int ti_944, int  ?i_unused_948, double ld_ret_952, double ld_960, double t_marginrequired_16, double t_bool_24, bool t_bool_32, int  ?i_unused_988, string ts_unused_992, double td_1000, string asa_1008[2], int l_icustom_4, int l_icustom_8, bool li_ret_1020, int l_error_16, int li_1028, int l_index_24, double t_bool_28, string ts_1044, string ts_1052, bool t_bool_52, int  ?i_unused_1064, bool li_ret_1068, int li_1072, int li_1076, int li_1080, int li_1084, int li_1088, int li_1092, int li_1096, bool li_1100, int t_bool_36, int  ?i_unused_1108, int t_bool_44, int  ?i_unused_1116, int ti_1120, int  ?i_unused_1124, int  ?i_unused_1128, int  ?i_unused_1132, int  ?i_unused_1136, int  ?i_unused_1140, int  ?i_unused_1144, int  ?i_unused_1148, int  ?i_unused_1152, int  ?i_unused_1156, int  ?i_unused_1160, int /*<u
     ?i_unused_1164, int  ?i_unused_1168, int  ?i_unused_1172, int  ?i_unused_1176, int  ?i_unused_1180, int  ?i_unused_1184, int  ?i_unused_1188, int  ?i_unused_1192, int  ?i_unused_1196, int  ?i_unused_1200, int  ?i_unused_1204, int  ?i_unused_1208, int  ?i_unused_1212, int  ?i_unused_1216, int  ?i_unused_1220, int  ?i_unused_1224, int  ?i_unused_1228, int  ?i_unused_1232, int  ?i_unused_1236, int  ?i_unused_1240, int  ?i_unused_1244, int  ?i_unused_1248, int  ?i_unused_1252, int  ?i_unused_1256, int  ?i_unused_1260, int  ?i_unused_1264, int  ?i_unused_1268, int  ?i_unused_1272, int  ?i_unused_1276, int  ?i_unused_1280, int  ?i_unused_1284, int  ?i_unused_1288, int  ?i_unused_1292, int  ?i_unused_1296, int  ?i_unused_1300, int  ?i_unused_1304, int  ?i_unused_1308, int  ?i_unused_1312, int  ?i_unused_1316, int  ?i_unused_1320, int  ?i_unused_1324, int  ?i_unused_1328, int  ?i_unused_1332, int  ?i_unused_1336, int  ?i_unused_1340, int  ?i_unused_1344, int  ?i_unused_1348, int  ?i_unused_1352, int  ?i_unused_1356) 
    
    */
    
    int deinit()
    {
       return (0);
    }
    
    /* start parameters
    
    bool t_bool_0, int  ?i_unused_4, bool t_bool_8, int  ?i_unused_12, string ts_unused_16, bool t_bool_24, int  ?i_unused_28, bool t_bool_0, int  ?i_unused_36, int  ?i_unused_40, int  ?i_unused_44, bool t_bool_16, int  ?i_unused_52, int a_cmd_0, int  ?i_unused_60, double l_price_8, color l_color_16, int l_ticket_20, int l_error_24, string ls_unused_84, double l_price_36, double l_price_44, double l_price_52, double ld_116, double ld_124, double l_lots_76, int li_140, bool t_bool_88, int  ?i_unused_148, double td_152, bool t_bool_104, int  ?i_unused_164, bool l_bool_0, int li_172, int l_error_8, int l_ticket_12, string ls_unused_184, int l_pos_24, int t_cmd_28, int  ?i_unused_200, double t_bool_36, string ts_unused_212, double t_bool_52, double td_228, double td_236, int  ?i_unused_244, int li_248, int l_count_8, int l_count_12, int li_260, int l_error_20, int l_ticket_24, string ls_unused_272, int l_pos_36, int li_284, double t_cmd_44, double t_bool_52, int  ?i_unused_304, int  ?i_unused_308, double t_bool_68, double td_320, bool li_ret_328, bool li_332, bool li_336, bool li_340, double l_iclose_16, double l_ima_24, double l_iwpr_32, double l_iatr_40, double l_icci_48, double l_irsi_56, double l_ibands_64, int li_400, int li_404, double ld_408, double ld_416, double ld_424, double t_low_104, string ts_unused_440, double t_low_120, bool t_bool_128, int  ?i_unused_460, bool li_ret_464, bool li_468, bool li_472, double l_iclose_12, double l_ima_20, double l_iwpr_28, double l_iatr_36, double l_icci_44, double l_irsi_52, double l_ibands_60, int li_532, int li_536, double ld_540, double ld_548, double t_high_92, int  ?i_unused_564, int  ?i_unused_568, double t_high_108, bool t_bool_116, int  ?i_unused_584, double ad_588, int ai_596, bool li_ret_600, bool li_604, bool li_608, do
    uble l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_644, double ld_652, double ld_660, double ld_668, double t_bool_88, double t_bool_96, double t_bool_104, double ad_700, int ai_708, bool li_ret_712, bool li_716, bool li_720, double l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_756, double ld_764, double ld_772, double ld_780, double t_bool_88, double t_bool_96, double t_bool_104, double td_812, double td_820, int  ?i_unused_828, int  ?i_unused_832, int li_836, int l_pos_4, bool t_bool_8, int  ?i_unused_848, int  ?i_unused_852, int  ?i_unused_856, string ts_unused_860, int l_count_0, int li_872, int l_pos_8, bool t_bool_12, int  ?i_unused_884, bool t_bool_20, int  ?i_unused_892, int  ?i_unused_896, int  ?i_unused_900, bool t_bool_36, int  ?i_unused_908, string ls_912, string ts_920, string ts_928, string ts_936, int ti_944, int  ?i_unused_948, double ld_ret_952, double ld_960, double t_marginrequired_16, double t_bool_24, bool t_bool_32, int  ?i_unused_988, string ts_unused_992, double td_1000, string asa_1008[2], int l_icustom_4, int l_icustom_8, bool li_ret_1020, int l_error_16, int li_1028, int l_index_24, double t_bool_28, string ts_1044, string ts_1052, bool t_bool_52, int  ?i_unused_1064, bool li_ret_1068, int li_1072, int li_1076, int li_1080, int li_1084, int li_1088, int li_1092, int li_1096, bool li_1100, int t_bool_36, int  ?i_unused_1108, int t_bool_44, int  ?i_unused_1116, int ti_1120, int  ?i_unused_1124, int  ?i_unused_1128, int  ?i_unused_1132, int  ?i_unused_1136, int  ?i_unused_1140, int  ?i_unused_1144, int  ?i_unused_1148, int  ?i_unused_1152, int  ?i_unused_1156, int  ?i_unused_1160, int /*<u
     ?i_unused_1164, int  ?i_unused_1168, int  ?i_unused_1172, int  ?i_unused_1176, int  ?i_unused_1180, int  ?i_unused_1184, int  ?i_unused_1188, int  ?i_unused_1192, int  ?i_unused_1196, int  ?i_unused_1200, int  ?i_unused_1204, int  ?i_unused_1208, int  ?i_unused_1212, int  ?i_unused_1216, int  ?i_unused_1220, int  ?i_unused_1224, int  ?i_unused_1228, int  ?i_unused_1232, int  ?i_unused_1236, int  ?i_unused_1240, int  ?i_unused_1244, int  ?i_unused_1248, int  ?i_unused_1252, int  ?i_unused_1256, int  ?i_unused_1260, int  ?i_unused_1264, int  ?i_unused_1268, int  ?i_unused_1272, int  ?i_unused_1276, int  ?i_unused_1280, int  ?i_unused_1284, int  ?i_unused_1288, int  ?i_unused_1292, int  ?i_unused_1296, int  ?i_unused_1300, int  ?i_unused_1304, int  ?i_unused_1308, int  ?i_unused_1312, int  ?i_unused_1316, int  ?i_unused_1320, int  ?i_unused_1324, int  ?i_unused_1328, int  ?i_unused_1332, int  ?i_unused_1336, int  ?i_unused_1340, int  ?i_unused_1344, int  ?i_unused_1348, int  ?i_unused_1352, int  ?i_unused_1356) 
    
    */
    
    
    int start()
    {
    //   SetVariable(PurchaseCode, IsTesting(), IsDemo());
    //   if (LicenseManager() == 3) 
       {
          if (UseNews == false)
             if (NewsExist()) return (0);
          if (!CheckSession()) return (0);
          CloseOrders();
          ModifyOrders();
          if (iBars(Symbol(), PERIOD_M15) < MAPeriod || iBars(Symbol(), PERIOD_M15) < WPRPeriod || iBars(Symbol(), PERIOD_M15) < ATRPeriod || iBars(Symbol(), PERIOD_M15) < CCIPeriod) return;
          if (TradeOnFriday == FALSE && DayOfWeek() == 5) return (0);
          if (DayOfWeek() == 1 && iVolume(NULL, PERIOD_D1, 0) < 5.0) return (0);
          if (StringLen(gs_664) < 6) return (0);
          if ((!IsTesting()) && IsStopped()) return (0);
          if ((!IsTesting()) && !IsTradeAllowed()) return (0);
          if ((!IsTesting()) && IsTradeContextBusy()) return (0);
          HideTestIndicators(TRUE);
          Trader();
          ShowComments();
    
          if(RSXTouchCandles<1)RSXTouchCandles=1;
           //////////////////////////////////////////////////
       int buy_rsx=1,sell_rsx=1,i;
       for( i=EntryCandle;i<RSXTouchCandles+EntryCandle;i++){
        double rsi1 =iCustom(Symbol(),0,"rsx + ma + tma",RsxPeriod,RsxPrice,SignalPeriod,SignalMethod,TmaHalfLength,TmaApplyTo,BandsDeviations,0,i);
        double rsiU =iCustom(Symbol(),0,"rsx + ma + tma",RsxPeriod,RsxPrice,SignalPeriod,SignalMethod,TmaHalfLength,TmaApplyTo,BandsDeviations,5,i);
        double rsiL =iCustom(Symbol(),0,"rsx + ma + tma",RsxPeriod,RsxPrice,SignalPeriod,SignalMethod,TmaHalfLength,TmaApplyTo,BandsDeviations,6,i);
        if(rsi1<rsiU)buy_rsx=0;
        if(rsi1>rsiL)sell_rsx=0;  
        }
           }
       return (0);
       }
        
    void Trader()
      {
       if (MaxSpreadFilter()) 
       {
          gi_unused_696 = 1;
          return;
       }
       gi_unused_696 = 0;
       if (OpenLongSignal() && OpenTradeCount() && OpenBuy) OpenPosition(OP_BUY);
       if (OpenShortSignal() && OpenTradeCount() && OpenSell) OpenPosition(OP_SELL);
    }
    
    int OpenPosition(int a_cmd_0) {
       double l_price_8;
       color l_color_16;
       int l_ticket_20;
       int l_error_24;
       string ls_unused_28;
       double l_price_36;
       double l_price_44;
       double l_price_52;
       double l_lots_76;
       double ld_60 = NormalizeDouble(TakeProfit * gd_652, gi_660);
       double ld_68 = NormalizeDouble(StopLoss * gd_652, gi_660);
       if (UseMM) l_lots_76 = MM();
       else l_lots_76 = Lots;
       if (AccountFreeMarginCheck(gs_664, a_cmd_0, l_lots_76) <= 0.0 || GetLastError() == 134/* NOT_ENOUGH_MONEY */) return (-1);
       RefreshRates();
       if (a_cmd_0 == OP_BUY) {
          l_price_36 = Ask;
          l_color_16 = g_color_704;
          if (UseStartSLTP) {
             l_price_44 = l_price_36 + ld_60;
             l_price_52 = l_price_36 - ld_68;
          } else {
             l_price_44 = 0;
             l_price_52 = 0;
          }
       } else {
          l_price_36 = Bid;
          l_color_16 = g_color_708;
          if (UseStartSLTP) {
             l_price_44 = l_price_36 - ld_60;
             l_price_52 = l_price_36 + ld_68;
          } else {
             l_price_44 = 0;
             l_price_52 = 0;
          }
       }
       int li_84 = gi_684;
       while (li_84 > 0 && OpenTradeCount()) 
       {
          l_ticket_20 = OrderSend(gs_664, a_cmd_0, l_lots_76, l_price_36, g_slippage_676, l_price_52, l_price_44, ExpertName, MagicNumber, 0, l_color_16);
          if (l_ticket_20 < 0) {
             l_error_24 = GetLastError();
             if (l_error_24 != 136/* OFF_QUOTES */) break;
             if (!(gi_724)) break;
             Sleep(6000);
             RefreshRates();
             if (a_cmd_0 == OP_BUY) l_price_8 = Ask;
             else l_price_8 = Bid;
             if (NormalizeDouble(MathAbs((l_price_8 - l_price_36) / gd_652), 0) > gi_720) break;
             l_price_36 = l_price_8;
             li_84--;
          } else
             if (OrderSelect(l_ticket_20, SELECT_BY_TICKET)) l_price_36 = OrderOpenPrice();
       }
       return (l_ticket_20);
    }
    
    void ModifyOrders() 
    {
       bool l_bool_0;
       int li_4 = OrdersTotal() - 1;
       int l_error_8 = GetLastError();
       int l_ticket_12 = OrderTicket();
       string ls_unused_16 = OrderType();
       for (int l_pos_24 = li_4; l_pos_24 >= 0; l_pos_24--) {
          if (OrderSelect(l_pos_24, SELECT_BY_POS, MODE_TRADES)) {
             if (OrderType() == OP_BUY) {
                if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664)
                   if (Bid - OrderOpenPrice() > SafeStartTarget * gd_652 && MathAbs(OrderOpenPrice() + SafeTarget * gd_652 - OrderStopLoss()) >= Point) l_bool_0 = OrderModify(OrderTicket(), OrderOpenPrice(), NormalizeDouble(OrderOpenPrice() + SafeTarget * gd_652, Digits), OrderTakeProfit(), 0, Blue);
             }
             if (OrderType() == OP_SELL) {
                if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664)
                   if (OrderOpenPrice() - Ask > SafeStartTarget * gd_652 && MathAbs(OrderOpenPrice() - SafeTarget * gd_652 - OrderStopLoss()) >= Point) l_bool_0 = OrderModify(OrderTicket(), OrderOpenPrice(), NormalizeDouble(OrderOpenPrice() - SafeTarget * gd_652, Digits), OrderTakeProfit(), 0, Red);
             }
          }
       }
    }
    
    void CloseOrders() 
    {
       int li_4 = OrdersTotal() - 1;
       int l_count_8 = 0;
       int l_count_12 = 0;
       int li_16 = 3;
       int l_error_20 = GetLastError();
       int l_ticket_24 = OrderTicket();
       string ls_unused_28 = OrderType();
       for (int l_pos_36 = li_4; l_pos_36 >= 0; l_pos_36--) {
          if (OrderSelect(l_pos_36, SELECT_BY_POS, MODE_TRADES)) {
             if (OrderType() == OP_BUY) {
                l_count_8++;
                if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664) {
                   if (Bid >= OrderOpenPrice() + TakeProfit * gd_652 || Bid <= OrderOpenPrice() - StopLoss * gd_652 || CloseLongSignal(OrderOpenPrice(), ExistPosition())) {
                      for (int li_40 = 1; li_40 <= MathMax(1, li_16); li_40++) {
                         RefreshRates();
                         if (OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Bid, Digits), g_slippage_680, g_color_712)) {
                            l_count_8--;
                            break;
                         }
                      }
                   }
                }
             }
             if (OrderType() == OP_SELL) {
                l_count_12++;
                if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664) {
                   if (Ask <= OrderOpenPrice() - TakeProfit * gd_652 || Ask >= OrderOpenPrice() + StopLoss * gd_652 || CloseShortSignal(OrderOpenPrice(), ExistPosition())) {
                      for (li_40 = 1; li_40 <= MathMax(1, li_16); li_40++) {
                         RefreshRates();
                         if (OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Ask, Digits), g_slippage_680, g_color_716)) {
                            l_count_12--;
                            break;
                         }
                      }
                   }
                }
             }
          }
       }
    }
    
    int OpenLongSignal()
     {
       bool li_ret_0 = FALSE;
       bool li_4 = FALSE;
       bool li_8 = FALSE;
       bool li_12 = FALSE;
       double l_iclose_16 = iClose(NULL, PERIOD_M15, 1);
       double l_ima_24 = iMA(NULL, PERIOD_M15, MAPeriod, MAShift1, MAMethod, MAAppliedPrice, MAShift2);
       double l_iwpr_32 = iWPR(NULL, PERIOD_M15, WPRPeriod, WPRShift);
       double l_iatr_40 = iATR(NULL, PERIOD_M15, ATRPeriod, ATRShift);
       double l_icci_48 = iCCI(NULL, PERIOD_M15, CCIPeriod, CCIAppliedPrice, CCIShift);
       double l_irsi_56 = iRSI(NULL, PERIOD_M15, RSIPeriod, RSIAppliedPrice, RSIShift);
       double l_ibands_64 = iBands(Symbol(), 0, BBPeriod, BBDeviation, BBBandsShift, BBAppliedPrice, BBModeBuy, BBShift);
       int li_72 = l_iclose_16 / gd_652;
       int li_76 = Bid / gd_652;
       double ld_80 = NormalizeDouble(BuyFilterMA1 * gd_652, gi_660);
       double ld_88 = NormalizeDouble(BuyFilterMA2 * gd_652, gi_660);
       double ld_96 = NormalizeDouble(BuyFilterMA3 * gd_652, gi_660);
       if (UseBB)
          if (Low[BBShift] >= l_ibands_64) return (0);
       if (UseRSI)
          if (l_irsi_56 <= TradeRSIFilter) return (0);
       if (l_iatr_40 <= TradeATRFilter * gd_652) return (0);
       if (l_iclose_16 >= l_ima_24 + ld_80 && li_72 >= li_76 && BuyLimitWPR1 > l_iwpr_32) li_4 = TRUE;
       else li_4 = FALSE;
       if (l_iclose_16 >= l_ima_24 + ld_88 && li_72 >= li_76 && (-TradeCCIFilter) > l_icci_48) li_8 = TRUE;
       else li_8 = FALSE;
       if (l_iclose_16 >= l_ima_24 + ld_96 && li_72 >= li_76 && BuyLimitWPR2 > l_iwpr_32) li_12 = TRUE;
       else li_12 = FALSE;
       if (li_4 == TRUE || li_8 == TRUE || li_12 == TRUE) li_ret_0 = TRUE;
       else li_ret_0 = FALSE;
       return (li_ret_0);
    }
    
    int OpenShortSignal()
     {
       bool li_ret_0 = FALSE;
       bool li_4 = FALSE;
       bool li_8 = FALSE;
       double l_iclose_12 = iClose(NULL, PERIOD_M15, 1);
       double l_ima_20 = iMA(NULL, PERIOD_M15, MAPeriod, MAShift1, MAMethod, MAAppliedPrice, MAShift2);
       double l_iwpr_28 = iWPR(NULL, PERIOD_M15, WPRPeriod, WPRShift);
       double l_iatr_36 = iATR(NULL, PERIOD_M15, ATRPeriod, ATRShift);
       double l_icci_44 = iCCI(NULL, PERIOD_M15, CCIPeriod, CCIAppliedPrice, CCIShift);
       double l_irsi_52 = iRSI(NULL, PERIOD_M15, RSIPeriod, RSIAppliedPrice, RSIShift);
       double l_ibands_60 = iBands(Symbol(), 0, BBPeriod, BBDeviation, BBBandsShift, BBAppliedPrice, BBModeSell, BBShift);
       int li_68 = l_iclose_12 / gd_652;
       int li_72 = Bid / gd_652;
       double ld_76 = NormalizeDouble(SellFilterMA1 * gd_652, gi_660);
       double ld_84 = NormalizeDouble(SellFilterMA2 * gd_652, gi_660);
       if (UseBB)
          if (High[BBShift] <= l_ibands_60) return (0);
       if (UseRSI)
          if (l_irsi_52 <= TradeRSIFilter) return (0);
       if (l_iatr_36 <= TradeATRFilter * gd_652) return (0);
       if (l_iclose_12 <= l_ima_20 - ld_76 && li_68 <= li_72 && l_iwpr_28 > SellLimitWPR1) li_4 = TRUE;
       else li_4 = FALSE;
       if (l_iclose_12 <= l_ima_20 - ld_84 && li_68 <= li_72 && l_icci_44 > TradeCCIFilter) li_8 = TRUE;
       else li_8 = FALSE;
       if (li_4 == TRUE || li_8 == TRUE) li_ret_0 = TRUE;
       else li_ret_0 = FALSE;
       return (li_ret_0);
    }
    
    int CloseLongSignal(double ad_0, int ai_8) 
    {
       bool li_ret_12 = FALSE;
       bool li_16 = FALSE;
       bool li_20 = FALSE;
       double l_iwpr_24 = iWPR(NULL, PERIOD_M15, WPRPeriod, WPRShift);
       double l_iclose_32 = iClose(NULL, PERIOD_M15, 1);
       double l_iopen_40 = iOpen(NULL, PERIOD_M1, 1);
       double l_iclose_48 = iClose(NULL, PERIOD_M1, 1);
       double ld_56 = NormalizeDouble((-LimitLP) * gd_652, gi_660);
       double ld_64 = NormalizeDouble(l_iclose_32, gi_660);
       double ld_72 = NormalizeDouble(Bid, gi_660);
       double ld_80 = NormalizeDouble(CloseBuyFilter * gd_652, gi_660);
       if (ad_0 - Bid <= ld_56 && ld_64 <= ld_72 && l_iwpr_24 > BuyLimitWPR3 && ai_8 == 1) li_16 = TRUE;
       else li_16 = FALSE;
       if (l_iopen_40 > l_iclose_48 && Bid - ad_0 >= ld_80 && ai_8 == 1) li_20 = TRUE;
       else li_20 = FALSE;
       if (li_16 == TRUE || li_20 == TRUE) li_ret_12 = TRUE;
       else li_ret_12 = FALSE;
       return (li_ret_12);
    }
    
    int CloseShortSignal(double ad_0, int ai_8)
     {
       bool li_ret_12 = FALSE;
       bool li_16 = FALSE;
       bool li_20 = FALSE;
       double l_iwpr_24 = iWPR(NULL, PERIOD_M15, WPRPeriod, WPRShift);
       double l_iclose_32 = iClose(NULL, PERIOD_M15, 1);
       double l_iopen_40 = iOpen(NULL, PERIOD_M1, 1);
       double l_iclose_48 = iClose(NULL, PERIOD_M1, 1);
       double ld_56 = NormalizeDouble((-LimitLP) * gd_652, gi_660);
       double ld_64 = NormalizeDouble(l_iclose_32, gi_660);
       double ld_72 = NormalizeDouble(Bid, gi_660);
       double ld_80 = NormalizeDouble(CloseSellFilter * gd_652, gi_660);
       if (Ask - ad_0 <= ld_56 && ld_64 >= ld_72 && l_iwpr_24 < SellLimitWPR2 && ai_8 == 1) li_16 = TRUE;
       else li_16 = FALSE;
       if (l_iopen_40 < l_iclose_48 && ad_0 - Ask >= ld_80 && ai_8 == 1) li_20 = TRUE;
       else li_20 = FALSE;
       if (li_16 == TRUE || li_20 == TRUE) li_ret_12 = TRUE;
       else li_ret_12 = FALSE;
       return (li_ret_12);
    }
    
    bool MaxSpreadFilter() 
    {
       RefreshRates();
       if (10000.0 * (Ask - Bid) > SpreadLimit) return (TRUE);
       return (FALSE);
    }
    
    int ExistPosition() {
       int li_0 = OrdersTotal() - 1;
       for (int l_pos_4 = li_0; l_pos_4 >= 0; l_pos_4--) {
          if (OrderSelect(l_pos_4, SELECT_BY_POS, MODE_TRADES)) {
             if (OrderMagicNumber() == MagicNumber) {
                if (OrderSymbol() == gs_664)
                   if (OrderType() <= OP_SELL) return (1);
             }
          }
       }
       return (0);
    }
    
    int OpenTradeCount() 
    {
       int l_count_0 = 0;
       int li_4 = OrdersTotal() - 1;
       for (int l_pos_8 = li_4; l_pos_8 >= 0; l_pos_8--) {
          if (OrderSelect(l_pos_8, SELECT_BY_POS, MODE_TRADES))
             if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664) l_count_0++;
       }
       if (l_count_0 >= gi_684) return (0);
       return (1);
    }
    
    void ShowComments()
    {
     string ls_0 = "";
       ls_0 = ls_0 
          + "\n  " 
          + "\n Copyright © GENIALBIT.COM" 
          + "\n " + ExpertName; 
    //      + "\n Purchase code: " + OrderCode() 
    //      + "\n Activation Key: " + LicenseKey() 
    //   + "\n Ativation Status: " + ActivationStatus();
       Comment(ls_0);
    }
    
    double MM() 
    {
       double ld_ret_0 = 0.0;
       double ld_8 = AccountEquity() * (UseEquityPercentage / 100.0) / (MarketInfo(Symbol(), MODE_MARGINREQUIRED) * MarketInfo(Symbol(), MODE_MINLOT)) * MarketInfo(Symbol(), MODE_MINLOT) / 2.0;
       if (ld_8 < MarketInfo(Symbol(), MODE_MINLOT)) ld_8 = MarketInfo(Symbol(), MODE_MINLOT);
       if (UseEquityPercentage != 0) {
          if (MarketInfo(Symbol(), MODE_LOTSTEP) == 0.01) ld_ret_0 = NormalizeDouble(ld_8, 2);
          else
             if (MarketInfo(Symbol(), MODE_LOTSTEP) == 0.05 || MarketInfo(Symbol(), MODE_LOTSTEP) == 0.1) ld_ret_0 = NormalizeDouble(ld_8, 1);
       }
       return (ld_ret_0);
    }
    
    bool NewsExist()
     {
       string lsa_0[2];
       int l_icustom_4;
       int l_icustom_8;
       bool li_ret_12;
       if (!UseNews) return (FALSE);
       lsa_0[0] = Symbol();
       lsa_0[1] = "EURUSD";
       GetLastError();
       int li_20 = 1;
       if (NewsIncludeEURUSD) li_20 = 2;
       for (int l_index_24 = 0; l_index_24 < li_20; l_index_24++) {
          l_icustom_4 = iCustom(NULL, 0, "NewsFilter", lsa_0[l_index_24], NewsHighImpact, NewsMediumImpact, 0, NewsSpeaks, 1, 1, 0);
          l_icustom_8 = iCustom(NULL, 0, "NewsFilter", lsa_0[l_index_24], NewsHighImpact, NewsMediumImpact, 0, NewsSpeaks, 1, 1, 1);
          if (l_icustom_8 <= MinUntilNextNews || l_icustom_4 <= MinSincePrevNews) li_ret_12 = TRUE;
       }
       int l_error_16 = GetLastError();
       if (l_error_16 > 0/* NO_ERROR */) return (TRUE);
       return (li_ret_12);
    }
    
    bool CheckSession()
     {
       int li_4;
       int li_8;
       int li_12;
       int li_16;
       int li_20;
       int li_24;
       int li_28;
       bool li_32;
       bool li_ret_0 = TRUE;
       if (UseSession) {
          li_4 = GMTOffset;
          if (DaylightSavings) li_4 = GMTOffset + 1;
          li_8 = li_4 + 0;
          li_12 = li_4 + 8;
          li_16 = li_4 + 6;
          li_20 = li_4 + 16;
          li_24 = li_4 + 12;
          li_28 = li_4 + 21;
          if (DayOfWeek() == 0) {
             if (AsianDaily) {
                li_8 = AsianOpenSunday;
                li_12 = AsianCloseSunday;
             }
             if (EuropeDaily) {
                li_16 = EuropeOpenSunday;
                li_20 = EuropeCloseSunday;
             }
             if (NeyYorkDaily) {
                li_24 = NYOpenSunday;
                li_28 = NYCloseSunday;
             }
             if (!gba_644[0]) {
                gba_644[0] = 1;
                g_datetime_648 = TimeCurrent();
                gba_644[5] = 0;
             }
          }
          if (DayOfWeek() == 1) {
             if (AsianDaily) {
                li_8 = AsianOpenMonday;
                li_12 = AsianCloseMonday;
             }
             if (EuropeDaily) {
                li_16 = EuropeOpenMonday;
                li_20 = EuropeCloseMonday;
             }
             if (NeyYorkDaily) {
                li_24 = NYOpenMonday;
                li_28 = NYCloseMonday;
             }
             if (!gba_644[1]) {
                gba_644[1] = 1;
                g_datetime_648 = TimeCurrent();
                gba_644[0] = 0;
             }
          }
          if (DayOfWeek() == 2) {
             if (AsianDaily) {
                li_8 = AsianOpenTuesday;
                li_12 = AsianCloseTuesday;
             }
             if (EuropeDaily) {
                li_16 = EuropeOpenTuesday;
                li_20 = EuropeCloseTuesday;
             }
             if (NeyYorkDaily) {
                li_24 = NYOpenTuesday;
                li_28 = NYCloseTuesday;
             }
             if (!gba_644[2]) {
                gba_644[2] = 1;
                g_datetime_648 = TimeCurrent();
                gba_644[1] = 0;
             }
          }
          if (DayOfWeek() == 3) {
             if (AsianDaily) {
                li_8 = AsianOpenWednesday;
                li_12 = AsianCloseWednesday;
             }
             if (EuropeDaily) {
                li_16 = EuropeOpenWednesday;
                li_20 = EuropeCloseWednesday;
             }
             if (NeyYorkDaily) {
                li_24 = NYOpenWednesday;
                li_28 = NYCloseWednesday;
             }
             if (!gba_644[3]) {
                gba_644[3] = 1;
                g_datetime_648 = TimeCurrent();
                gba_644[2] = 0;
             }
          }
          if (DayOfWeek() == 4) {
             if (AsianDaily) {
                li_8 = AsianOpenThursday;
                li_12 = AsianCloseThursday;
             }
             if (EuropeDaily) {
                li_16 = EuropeOpenThursday;
                li_20 = EuropeCloseThursday;
             }
             if (NeyYorkDaily) {
                li_24 = NYOpenThursday;
                li_28 = NYCloseThursday;
             }
             if (!gba_644[4]) {
                gba_644[4] = 1;
                g_datetime_648 = TimeCurrent();
                gba_644[3] = 0;
             }
          }
          if (DayOfWeek() == 5) {
             if (AsianDaily) {
                li_8 = AsianOpenFriday;
                li_12 = AsianCloseFriday;
             }
             if (EuropeDaily) {
                li_16 = EuropeOpenFriday;
                li_20 = EuropeCloseFriday;
             }
             if (NeyYorkDaily) {
                li_24 = NYOpenFriday;
                li_28 = NYCloseFriday;
             }
             if (!gba_644[5]) {
                gba_644[5] = 1;
                g_datetime_648 = TimeCurrent();
                gba_644[4] = 0;
             }
          }
          li_32 = FALSE;
          if (Asian && Hour() >= li_8 && Hour() <= li_12) li_32 = TRUE;
          if (Europe && Hour() >= li_16 && Hour() <= li_20) li_32 = TRUE;
          if (NewYork && Hour() >= li_24 && Hour() <= li_28) li_32 = TRUE;
          li_ret_0 = li_32;
       }
       return (li_ret_0);
    }
    الملفات المرفقة الملفات المرفقة

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

    افتراضي

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


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