LIP/EN/LIP_v01.006/Include/LIP_Def_5_v1.006.mqh
super.admin 291e846eab convert
2025-05-30 15:03:51 +02:00

131 lines
No EOL
16 KiB
MQL5

//============================================================================================= MQL5 ===
// LibreInfoPDO Definition_5 v1.006 MQL5
// Определения переменных и структур
// LibreCoin (c)2014-2018
//======================================================================================================
#property strict
//============================================================================================= MQL5 ===
// INCLUDE - подключаемые модули
//------------------------------------------------------------------------------------------------------
//----- Обратные ссылки на основной файл проекта
#include "LIP_Ref_5_v1.006.mqh"
//============================================================================================= MQL5 ===
// ENUM
//------------------------------------------------------------------------------------------------------
enum enProfitCalcMode
{
ProfitCalc_currency = 0, //profit level in currency/по уровню прибыли в деньгах
ProfitCalc_pips = 1, //profit level in pips/по уровню прибыли в пипсах
};
enum enCloseAlgorithmMode
{
ProfitClose_sl = 0, //fixed level/по фиксированному уровню
ProfitClose_trail = 1, //trail/по тралу
};
enum enSelSymMode
{
SelSym_all = 0, //all symbol/без отбора по символу
SelSym_curr = 1, //current symbol/отбор по текущему символу графика
SelSym_user = 2, //user symbol select/отбор по указанному символу
SelSym_but = 3, //user symbol eliminat/отсев по указанному символу
SelSym_list = 4, //list select/по списку отбора
SelSym_butlist = 5, //list eliminat/по списку отсева
SelSym_listbutlist = 6, //list select and eliminat/по спискам отбора и отсева
};
enum enSelMagMode
{
SelMag_all = 0, //all magic/без отбора по магику
SelMag_user = 1, //user magic select/отбор по указанному магику
SelMag_but = 2, //user magic eliminat/отсев по указанному магику
SelMag_list = 3, //list select/по списку отбора
SelMag_butlist = 4, //list eliminat/по списку отсева
SelMag_listbutlist = 5, //list select and eliminat/по спискам отбора и отсева
};
enum enSelTickMode
{
SelTick_all = 0, //all ticket/без отбора по тикету
SelTick_user = 1, //user ticket select/отбор по указанному тикету
SelTick_but = 2, //user ticket eliminat/отсев по указанному тикету
SelTick_list = 3, //list select/по списку отбора
SelTick_butlist = 4, //list eliminat/по списку отсева
SelTick_listbutlist = 5, //list select and eliminat/по спискам отбора и отсева
};
//============================================================================================= MQL5 ===
// Global variable definition
//------------------------------------------------------------------------------------------------------
string _n = "\n";
//----- Для событий времени и таймера
ulong gnTimer = 0; //Глобальный счетчик событий Timer
ulong gnTick = 0; //Глобальный счетчик событий NewTick
datetime gTime[1] = {0}; //Массив (фактически просто переменная) для значений времени
int nFirstBar = 0; //Номер первого бара графика
bool gInTimer = false; //Флаг поступления тика из таймера
long IndHeigh = 1050; //Верт размер индикатора
string TheSymbol = "EURUSD"; //Инструмент текущего графика
int nSubWindow = 1; //Номер подокна индикатора
//----- Рабочие массивы селекторов
string inSelectSym[]; //Массив отбора инструментов
ulong inSelectMag[]; //Массив отбора магиков
long inSelectTick[]; //Массив отбора тикетов
string inEliminatSym[]; //Массив отсева инструментов
ulong inEliminatMag[]; //Массив отсева магиков
long inEliminatTick[]; //Массив отсева тикетов
//----- Информационные строки элементов
string DataStringPos = ""; //Строка вывода для позиции
string DataStringOrd = ""; //Строка вывода для ордера
string DataStringDeal = ""; //Строка вывода для сделки
string TypeStringPos = ""; //Строка для типа позиции
string TypeStringOrd = ""; //Строка для типа ордера
string DealTypeString = ""; //Строка для типа сделки
string PositionTypeString = ""; //Строка для типа позиции
//-----
string IndicatorShortName = vers;
string ChartID_Str = "";
string ProgramName = "";
string CommentLine[2]; //Служебные комментарии
double kScale = 1.0; //Масштаб графика
string sTXW = ""; //Имя для текcтового объекта
int nRow = 0; //Счетчик строк вывода
int nColo = 0; //Счетчик колонок вывода
//-----
int Positions_Total = 0; //Текущие позиции
int Positions_History_Total=0; //Закрытые позиции
int Positions_History_Total_Old=0; //Закрытые позиции
int Orders_Total = 0; //Текущие лимитные ордера
int Orders_History_Total = 0; //Закрытые рыночные ордера
int Deals_History_Total = 0; //Совершенные сделки (выполненные ордера)
int Positions_Total_Old = 0; //Текущие позиции
int Orders_Total_Old = 0; //Текущие лимитные ордера
int Orders_History_Total_Old=0; //Закрытые рыночные ордера
int Deals_History_Total_Old=0; //Совершенные сделки (выполненные ордера)
int Sel_Positions_Total = 0; //Текущие позиции
int Sel_Positions_History_Total=0; //Закрытые позиции
int Sel_Orders_Total = 0; //Текущие лимитные ордера
int Sel_Orders_History_Total=0; //Закрытые рыночные ордера
int Sel_Deals_History_Total=0; //Совершенные сделки (выполненные ордера)
int Sel_Positions_Total_Old=0; //Текущие позиции
int Sel_Positions_History_Total_Old=0; //Закрытые позиции
int Sel_Orders_Total_Old = 0; //Текущие лимитные ордера
int Sel_Orders_History_Total_Old=0; //Закрытые рыночные ордера
int Sel_Deals_History_Total_Old=0; //Совершенные сделки (выполненные ордера)
//----- Данные позиции
struct Position_Data //Данные позиции в истории
{
long ID; //Идентификатор
string Symbol; //Инструмент
double VolumeOpen; //Объём открытия
double VolumeClose; //Объём закрытия
long TimeOpenMSC; //Время открытия MSC
long TimeCloseMSC; //Время закрытия MSC
datetime TimeOpen; //Время открытия
datetime TimeClose; //Время закрытия
ENUM_DEAL_TYPE Type; //Тип
long Magic; //Магик
double PriceOpen; //Цена открытия
double PriceClose; //Цена закрытия
double Profit; //Профит
double Swap; //Cвоп
double Comission; //Комиссия
};
Position_Data Positions[]; //Массив данных позиций
//-----