//============================================================================================= MQL5 === // LibreCLOP Function2_5 v1.005 MQL5 // Основные технические расчеты // Librecoin (c)2014-2017 //====================================================================================================== #property strict //============================================================================================= MQL5 === // INCLUDE - подключаемые модули //------------------------------------------------------------------------------------------------------ //----- Обратные ссылки на основной файл проекта #include "LCL_Ref_5_v1.005.mqh" //============================================================================================= MQL5 === // FUNCTIONS //------------------------------------------------------------------------------------------------------ // //============================================================================================= MQL5 === // FillSymSelect() - Заполнение массива образцов отбора // Вход: // iSelectArray - массив отбора образцов //------------------------------------------------------------------------------------------------------ void FillSymSelect(string &iSelectArray[]){ //----- string iSymSelect_00=SymSelect_00; string iSymSelect_01=SymSelect_01; string iSymSelect_02=SymSelect_02; string iSymSelect_03=SymSelect_03; string iSymSelect_04=SymSelect_04; string iSymSelect_05=SymSelect_05; string iSymSelect_06=SymSelect_06; string iSymSelect_07=SymSelect_07; string iSymSelect_08=SymSelect_08; string iSymSelect_09=SymSelect_09; StringTrimLeft(iSymSelect_00);StringTrimRight(iSymSelect_00);iSelectArray[0]=iSymSelect_00; StringTrimLeft(iSymSelect_01);StringTrimRight(iSymSelect_01);iSelectArray[1]=iSymSelect_01; StringTrimLeft(iSymSelect_02);StringTrimRight(iSymSelect_02);iSelectArray[2]=iSymSelect_02; StringTrimLeft(iSymSelect_03);StringTrimRight(iSymSelect_03);iSelectArray[3]=iSymSelect_03; StringTrimLeft(iSymSelect_04);StringTrimRight(iSymSelect_04);iSelectArray[4]=iSymSelect_04; StringTrimLeft(iSymSelect_05);StringTrimRight(iSymSelect_05);iSelectArray[5]=iSymSelect_05; StringTrimLeft(iSymSelect_06);StringTrimRight(iSymSelect_06);iSelectArray[6]=iSymSelect_06; StringTrimLeft(iSymSelect_07);StringTrimRight(iSymSelect_07);iSelectArray[7]=iSymSelect_07; StringTrimLeft(iSymSelect_08);StringTrimRight(iSymSelect_08);iSelectArray[8]=iSymSelect_08; StringTrimLeft(iSymSelect_09);StringTrimRight(iSymSelect_09);iSelectArray[9]=iSymSelect_09; //----- return; }//FillSymSelect() // //============================================================================================= MQL5 === // FillSymEliminat() - Заполнение массива образцов отсева // Вход: // iSelectArray - массив отсева образцов //------------------------------------------------------------------------------------------------------ void FillSymEliminat(string &iSelectArray[]){ //----- string iSymSelect_00=SymEliminat_00; string iSymSelect_01=SymEliminat_01; string iSymSelect_02=SymEliminat_02; string iSymSelect_03=SymEliminat_03; string iSymSelect_04=SymEliminat_04; string iSymSelect_05=SymEliminat_05; string iSymSelect_06=SymEliminat_06; string iSymSelect_07=SymEliminat_07; string iSymSelect_08=SymEliminat_08; string iSymSelect_09=SymEliminat_09; StringTrimLeft(iSymSelect_00);StringTrimRight(iSymSelect_00);iSelectArray[0]=iSymSelect_00; StringTrimLeft(iSymSelect_01);StringTrimRight(iSymSelect_01);iSelectArray[1]=iSymSelect_01; StringTrimLeft(iSymSelect_02);StringTrimRight(iSymSelect_02);iSelectArray[2]=iSymSelect_02; StringTrimLeft(iSymSelect_03);StringTrimRight(iSymSelect_03);iSelectArray[3]=iSymSelect_03; StringTrimLeft(iSymSelect_04);StringTrimRight(iSymSelect_04);iSelectArray[4]=iSymSelect_04; StringTrimLeft(iSymSelect_05);StringTrimRight(iSymSelect_05);iSelectArray[5]=iSymSelect_05; StringTrimLeft(iSymSelect_06);StringTrimRight(iSymSelect_06);iSelectArray[6]=iSymSelect_06; StringTrimLeft(iSymSelect_07);StringTrimRight(iSymSelect_07);iSelectArray[7]=iSymSelect_07; StringTrimLeft(iSymSelect_08);StringTrimRight(iSymSelect_08);iSelectArray[8]=iSymSelect_08; StringTrimLeft(iSymSelect_09);StringTrimRight(iSymSelect_09);iSelectArray[9]=iSymSelect_09; //----- return; }//FillTickEliminat() // //============================================================================================= MQL5 === // FillMagSelect() - Заполнение массива образцов отбора // Вход: // iSelectArray - массив отбора образцов //------------------------------------------------------------------------------------------------------ void FillMagSelect(long &iSelectArray[]){ //----- iSelectArray[0]=StringToInteger(MagSelect_00); iSelectArray[1]=StringToInteger(MagSelect_01); iSelectArray[2]=StringToInteger(MagSelect_02); iSelectArray[3]=StringToInteger(MagSelect_03); iSelectArray[4]=StringToInteger(MagSelect_04); iSelectArray[5]=StringToInteger(MagSelect_05); iSelectArray[6]=StringToInteger(MagSelect_06); iSelectArray[7]=StringToInteger(MagSelect_07); iSelectArray[8]=StringToInteger(MagSelect_08); iSelectArray[9]=StringToInteger(MagSelect_09); //----- return; }//FillMagSelect() // //============================================================================================= MQL5 === // FillMagEliminat() - Заполнение массива образцов отсева // Вход: // iSelectArray - массив отсева образцов //------------------------------------------------------------------------------------------------------ void FillMagEliminat(long &iSelectArray[]){ //----- iSelectArray[0]=StringToInteger(MagEliminat_00); iSelectArray[1]=StringToInteger(MagEliminat_01); iSelectArray[2]=StringToInteger(MagEliminat_02); iSelectArray[3]=StringToInteger(MagEliminat_03); iSelectArray[4]=StringToInteger(MagEliminat_04); iSelectArray[5]=StringToInteger(MagEliminat_05); iSelectArray[6]=StringToInteger(MagEliminat_06); iSelectArray[7]=StringToInteger(MagEliminat_07); iSelectArray[8]=StringToInteger(MagEliminat_08); iSelectArray[9]=StringToInteger(MagEliminat_09); //----- return; }//FillMagEliminat() // //============================================================================================= MQL5 === // FillTickSelect() - Заполнение массива образцов отбора // Вход: // iSelectArray - массив отбора образцов //------------------------------------------------------------------------------------------------------ void FillTickSelect(long &iSelectArray[]){ //----- iSelectArray[0]=StringToInteger(TickSelect_00); iSelectArray[1]=StringToInteger(TickSelect_01); iSelectArray[2]=StringToInteger(TickSelect_02); iSelectArray[3]=StringToInteger(TickSelect_03); iSelectArray[4]=StringToInteger(TickSelect_04); iSelectArray[5]=StringToInteger(TickSelect_05); iSelectArray[6]=StringToInteger(TickSelect_06); iSelectArray[7]=StringToInteger(TickSelect_07); iSelectArray[8]=StringToInteger(TickSelect_08); iSelectArray[9]=StringToInteger(TickSelect_09); //----- return; }//FillTickSelect() // //============================================================================================= MQL5 === // FillTickEliminat() - Заполнение массива образцов отсева // Вход: // iSelectArray - массив отсева образцов //------------------------------------------------------------------------------------------------------ void FillTickEliminat(long &iSelectArray[]){ //----- iSelectArray[0]=StringToInteger(TickEliminat_00); iSelectArray[1]=StringToInteger(TickEliminat_01); iSelectArray[2]=StringToInteger(TickEliminat_02); iSelectArray[3]=StringToInteger(TickEliminat_03); iSelectArray[4]=StringToInteger(TickEliminat_04); iSelectArray[5]=StringToInteger(TickEliminat_05); iSelectArray[6]=StringToInteger(TickEliminat_06); iSelectArray[7]=StringToInteger(TickEliminat_07); iSelectArray[8]=StringToInteger(TickEliminat_08); iSelectArray[9]=StringToInteger(TickEliminat_09); //----- return; }//FillTickEliminat() // bool GlobalSetDouble(string iName,datetime &iTimeSet,double iDateSet=0.0){ //----- iTimeSet=GlobalVariableSet(iName,iDateSet); {if(iTimeSet!=0)//Значение удалось установить { return(true); }else{//Не удалось установить return(false); }}//if(iTimeSet!=0) //----- return(false); }//GlobalSetDouble() bool GlobalGetDouble(string iName,double &iDateGet){ //----- iDateGet=0.0; {if(GlobalVariableCheck(iName))//Переменная есть { {if(GlobalVariableGet(iName,iDateGet))//Значение удалось считать { return(true); }else{//Не удалось считать iDateGet=0.0; return(false); }}//if(GlobalVariableGet(iName,iDateGet)) }else{//Переменной нет iDateGet=0.0; return(false); }}//if(GlobalVariableCheck(iName)) //----- return(false); }//GlobalGetDouble() // bool GlobalSetString(string iName,datetime &iTimeSet,string iStringSet=""){ //----- union ulong_double { double iDateSet; ulong iLongSet; uchar iCharSet[8]; }; ulong_double ud; ud.iLongSet=0; //----- StringToCharArray(iStringSet,ud.iCharSet,0,8); //----- iTimeSet=GlobalVariableSet(iName,ud.iDateSet); {if(iTimeSet!=0)//Значение удалось установить { return(true); }else{//Не удалось установить return(false); }}//if(iTimeSet!=0) //----- return(false); }//GlobalSetString() bool GlobalGetString(string iName,string &iStringGet){ //----- iStringGet=""; //----- union ulong_double { double iDateGet; ulong iLongGet; uchar iCharGet[8]; }; ulong_double ud; ud.iLongGet=0; //----- {if(GlobalVariableCheck(iName))//Переменная есть { {if(GlobalVariableGet(iName,ud.iDateGet))//Значение удалось считать { iStringGet=CharArrayToString(ud.iCharGet,0,8); return(true); }else{//Не удалось считать iStringGet=""; return(false); }}//if(GlobalVariableGet(iName,ud.iDateGet)) }else{//Переменной нет iStringGet=""; return(false); }}//if(GlobalVariableCheck(iName)) //----- iStringGet=""; return(false); }//GlobalGetString() // bool GlobalSetUlong(string iName,datetime &iTimeSet,ulong iUlongSet=0){ //----- union ulong_double { double iDateSet; ulong iLongSet; }; ulong_double ud; ud.iLongSet=iUlongSet; //----- iTimeSet=GlobalVariableSet(iName,ud.iDateSet); {if(iTimeSet!=0)//Значение удалось установить { return(true); }else{//Не удалось установить return(false); }}//if(GlobalVariableGet(iName,iDate)) //----- return(false); }//GlobalSetDouble() bool GlobalGetUlong(string iName,ulong &iUlongGet){ //----- iUlongGet=0; //----- union ulong_double { double iDateGet; ulong iLongGet; }; ulong_double ud; ud.iLongGet=0; //----- {if(GlobalVariableCheck(iName))//Переменная есть { {if(GlobalVariableGet(iName,ud.iDateGet))//Значение удалось считать { iUlongGet=ud.iLongGet; return(true); }else{//Не удалось считать iUlongGet=0; return(false); }}//if(GlobalVariableGet(iName,iDate)) }else{//Переменной нет iUlongGet=0; return(false); }}//if(GlobalVariableCheck(iName)) //----- iUlongGet=0; return(false); }//GlobalGetDouble()