← К каталогу
Исходный код · ID 62

HiLLzX Conqueror

dreko.mq4
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

HiLLzX Conqueror — торговый советник для MetaTrader 4 (версия 2.5), предназначенный для автоматического открытия сделок на основе анализа предыдущей свечи. Советник определяет направление рынка по соотношению тела свечи и её теней, и при выполнении условий открывает позицию buy или sell.

Программа поддерживает управление денежными средствами с расчётом размера лота на основе баланса счёта и выбранного уровня риска, либо использует фиксированный размер лота. Доступны настройки стоп-лосса, проскальзывания и максимального спреда для контроля рисков.

Советник отображает на графике статистику по закрытым сделкам (количество покупок и продаж, прибыль и убыток, процент выигрышных сделок, баланс счёта) при включённой настройке ShowTotalWins. Встроенная система лицензирования позволяет использовать пробную или платную версию.

Настройки программы

НастройкаОписание
ShowTotalWins Отображение на графике статистики по закрытым сделкам: количество покупок и продаж, прибыль и убыток, процент выигрышных сделок и баланс счёта
License Тип лицензии: Platinum (платная) или One_Month_Trial (одномесячный пробный период)
WithdrawMode Режим вывода средств. При включённом режиме торговые операции не выполняются
OverrideRisk Переопределение стандартного уровня риска на пользовательское значение из параметра OverrideRiskDigit
OverrideRiskDigit Числовое значение уровня риска, используемое при включённом переопределении риска
RiskScale Шкала риска от Level8_185 (минимальный риск) до Level1_890 (максимальный риск), определяет размер лота при управлении денежными средствами
Money_Management Включает автоматический расчёт размера лота на основе баланса счёта и выбранного уровня риска
LotSize Фиксированный размер лота, используемый при отключённом управлении денежными средствами
Slippage Максимальное допустимое проскальзывание цены в пунктах (5-значный формат)
MaxSpread Максимальный допустимый спред в пунктах (5-значный формат). При превышении сделки не открываются
StopLoss Стоп-лосс в пунктах. При значении 0 стоп-лосс не устанавливается
Получить полный код

Поиск по коду файла

#property version "2.5";
#property strict

enum LicenseEnum
{
    Platinum = 1, // Platinum
    One_Month_Trial = 0 // One_Month_Trial
};

enum RiskEnum
{
    Level1_890 = 7, // Level1_890
    Level2_530 = 6, // Level2_530
    Level3_420 = 5, // Level3_420
    Level4_330 = 4, // Level4_330
    Level5_290 = 3, // Level5_290
    Level6_250 = 2, // Level6_250
    Level7_210 = 1, // Level7_210
    Level8_185 = 0 // Level8_185
};

extern bool ShowTotalWins;
extern LicenseEnum License = One_Month_Trial;
extern string Password; // Password
extern bool WithdrawMode;
extern bool OverrideRisk;
extern int OverrideRiskDigit = 150;
extern RiskEnum RiskScale = Level8_185;
extern bool Money_Management = true;
extern double LotSize = 0.01;
extern int Slippage = 5; // Maximum Slippage (in points / 5 Digit)
extern int MaxSpread = 10; // Maximum Spread (in points / 5 Digit)
extern int StopLoss;

string Is_0 = "2.5";
string Is_10 = "Total Buy";
string Is_20 = "Total Sell";
string Is_30 = "Profit";
string Is_40 = "Profit";
string Is_50 = "Loss";
string Is_60 = "Loss";
string Is_70 = "Money";
int Ii_7C = 10;
int Ii_80 = 130;
double Id_B8[10];
double Id_13C[10];
string Is_1C0[10];
int Ii_23C = 150;
int Ii_250 = 300;
int Ii_254 = 30;
int Ii_258 = 4;
int Ii_25C = 80;
int Ii_264 = 10;
int Ii_268 = 10;

int Gi_0;
int Gi_1;
datetime Ii_278;
long Gl_0;
double Id_280;
bool Ib_238;
int Ii_260;
int Ii_288;
int Gi_2;
int Gi_3;
int Ii_240;
int Ii_244;
int Ii_248;
int Ii_24C;
double Id_270;
long Gl_4;
int Gi_4;
int Gi_5;
long Gl_5;
int Gi_6;
long Gl_6;
bool Gb_0;
double Gd_4;
string Gs_6;
double Gd_5;
int Gi_A;
double Gd_A;
int Gi_B;
double Gd_B;
int Gi_7;
double Gd_7;
int Gi_8;
int Gi_9;
string Gs_9;
double Gd_8;
bool Gb_1;
double Gd_0;
string Gs_1;
double Gd_2;
double Gd_3;
bool Gb_6;
int Gi_D;
bool Gb_E;
double Gd_D;
double Gd_E;
int Gi_E;
string Gs_7;
double Gd_9;
bool Gb_C;
int Gi_C;
long Gl_1;
double Gd_6;
double Gd_C;
bool Gb_2;
bool Gb_3;

int OnInit()
{
      // код доступен только после оплаты
   }

void OnTick()
{
      // код доступен только после оплаты
   }

void OnDeinit(const int reason)
{
    string str_0;
    string str_1;

    Gi_0 = ObjectsTotal(-1) - 1;
    Gi_1 = Gi_0;
    if (Gi_0 <= -1) return;
    do
    {
        str_0 = ObjectName(Gi_1);
        if (StringFind(str_0, "TxtConqueror", 0) >= 0)
        {
            str_1 = ObjectName(Gi_1);
            ObjectDelete(str_1);
        }
        Gi_1 = Gi_1 - 1;
    } while (Gi_1 > -1);

}

bool func_1004()
{
    string str_0;
    string str_1;
    string str_2;
    int Li_8;
    string Ls_E8;
    int Li_E4;
    string Ls_D8;
    string Ls_C8;
    string Ls_B8;
    string Ls_A8;
    string Ls_98;
    int Li_94;
    int Li_90;
    string Ls_80;
    bool Lb_F;

    Li_8 = 0;
    if (License == 0)
    {
        str_0 = AccountName();
        Gi_0 = 0;
        Gi_1 = 0;
        Gi_1 = 0;
        Gi_2 = StringLen(str_0);
        if (Gi_2 > 0)
        {
            do
            {
                Gi_2 = StringGetCharacter(str_0, Gi_1);
                Gi_2 = Gi_0 + Gi_2;
                Gi_0 = Gi_2;
                Gi_1 = Gi_1 + 1;
                Gi_2 = StringLen(str_0);
            } while (Gi_1 < Gi_2);
        }
        Gi_2 = Gi_0 - 17;
        Gi_2 = Gi_2 * 373;
        Li_8 = Gi_2 - 1313;
    }
    else
    {
        if (License == 1)
        {
            str_1 = AccountName();
            Gi_2 = 0;
            Gi_3 = 0;
            Gi_3 = 0;
            Gi_4 = StringLen(str_1);
            if (Gi_4 > 0)
            {
                do
                {
                    Gi_4 = StringGetCharacter(str_1, Gi_3);
                    Gi_4 = Gi_2 + Gi_4;
                    Gi_2 = Gi_4;
                    Gi_3 = Gi_3 + 1;
                    Gi_4 = StringLen(str_1);
                } while (Gi_3 < Gi_4);
            }
            Gi_4 = Gi_2 - 17;
            Gi_4 = Gi_4 * 373;
            Li_8 = Gi_4 - 9393;
        }
    }
    Ls_E8 = IntegerToString(Li_8, 0, 32);
    Li_E4 = StringLen(Ls_E8);
    Gi_4 = StringLen(Ls_E8);
    Ls_D8 = StringSubstr(Ls_E8, (Gi_4 - 4), 1);
    Gi_4 = StringLen(Ls_E8);
    Ls_C8 = StringSubstr(Ls_E8, (Gi_4 - 3), 1);
    Gi_4 = StringLen(Ls_E8);
    Ls_B8 = StringSubstr(Ls_E8, (Gi_4 - 2), 1);
    Gi_4 = StringLen(Ls_E8);
    Ls_A8 = StringSubstr(Ls_E8, (Gi_4 - 1), 1);
    str_2 = Ls_D8 + Ls_C8;
    str_2 = str_2 + Ls_B8;
    str_2 = str_2 + Ls_A8;
    str_2 = str_2 + Ls_C8;
    str_2 = str_2 + Ls_A8;
    Ls_98 = str_2;
    Gl_4 = StringToInteger(Ls_98) * 2;
    Li_94 = Gl_4;
    Ls_98 = IntegerToString(Li_94, 0, 32);
    Gl_4 = StringToInteger(Ls_98);
    Gi_5 = Month() * 23;
    Gl_5 = Gi_5;
    Gl_5 = Gl_4 * Gl_5;
    Gi_6 = Year() * 13;
    Gl_6 = Gi_6;
    Gl_6 = Gl_5 + Gl_6;
    Li_90 = Gl_6;
    if (License == 0)
    {
        Ls_80 = IntegerToString(Li_90, 0, 32);
    }
    else
    {
        if (License == 1)
        {
            Ls_80 = IntegerToString((int)Ls_98, 0, 32);
        }
    }
    str_2 = "8267" + Ls_80;
    str_2 = str_2 + "4536";
    Ls_80 = str_2;
    if (Password == str_2) return true;
    Lb_F = false;
    return Lb_F;

    Lb_F = true;

    return Lb_F;
}

void func_1005()
{
    string str_0;
    string str_1;
    string str_2;
    string str_3;
    string str_4;
    int Li_C;
    int Li_8;
    int Li_4;
    int Li_0;
    int Li_EC;
    string Ls_E0;

    Ii_244 = 0;
    Ii_240 = 0;
    Ii_248 = 0;
    Ii_24C = 0;
    Li_C = HistoryTotal();
    Li_8 = Li_C - 1;
    if (Li_8 >= 0)
    {
        do
        {
            OrderSelect(Li_8, 0, 1);
            Li_4 = OrderType();
            if (Li_4 == 1)
            {
                Ii_240 = Ii_240 + 1;
                if ((OrderProfit() > 0))
                {
                    Ii_248 = Ii_248 + 1;
                }
            }
            else if (Li_4 == 0)
            {
                Ii_244 = Ii_244 + 1;
                if ((OrderProfit() > 0))
                {
                    Ii_24C = Ii_24C + 1;
                }
            }
            Li_8 = Li_8 - 1;
        } while (Li_8 >= 0);
    }
    Gi_0 = HistoryTotal();
    Gi_1 = Ii_7C - 1;
    Gi_2 = Gi_0 - 1;
    Gi_3 = Gi_2;
    Gi_4 = Gi_0 - 10;
    if (Gi_2 >= Gi_4)
    {
        do
        {
            if (Gi_1 < 0) break;
            OrderSelect(Gi_3, 0, 1);
            if (OrderType() == 1)
            {
                Id_B8[Gi_1] = OrderProfit();
                Gi_5 = OrderTicket();
                Is_1C0[Gi_1] = (string)Gi_5;
                Id_13C[Gi_1] = OrderLots();
            }
            else if (OrderType() == 0)
            {
                Id_B8[Gi_1] = OrderProfit();
                Gi_8 = OrderTicket();
                Is_1C0[Gi_1] = (string)Gi_8;
                Id_13C[Gi_1] = OrderLots();
            }
            str_0 = (string)Gi_1;
            str_0 = "Profit " + str_0;
            str_0 = str_0 + " : ";
            str_1 = (string)Id_B8[Gi_1];
            str_0 = str_0 + str_1;
            Print(str_0);
            Gi_1 = Gi_1 - 1;
            Gi_3 = Gi_3 - 1;
            Gi_B = Gi_0 - 10;
        } while (Gi_3 >= Gi_B);
    }
    ObjectCreate(0, "TxtConquerorLine1", OBJ_LABEL, 0, 0, 0, 0, 0, 0, 0);
    ObjectSet("TxtConquerorLine1", OBJPROP_CORNER, Ii_260);
    ObjectSet("TxtConquerorLine1", OBJPROP_XDISTANCE, Ii_264);
    Gi_B = Ii_268 + 20;
    ObjectSet("TxtConquerorLine1", OBJPROP_YDISTANCE, Gi_B);
    ObjectSetText("TxtConquerorLine1", "-----------------------------------------------------", 14, "Arial", 42495);
    ObjectCreate(0, "TxtConquerorTotalBuy", OBJ_LABEL, 0, 0, 0, 0, 0, 0, 0);
    ObjectSet("TxtConquerorTotalBuy", OBJPROP_CORNER, Ii_260);
    ObjectSet("TxtConquerorTotalBuy", OBJPROP_XDISTANCE, Ii_264);
    Gi_B = Ii_268 + 40;
    ObjectSet("TxtConquerorTotalBuy", OBJPROP_YDISTANCE, Gi_B);
    str_1 = Is_10 + ": ";
    str_2 = (string)Ii_244;
    str_1 = str_1 + str_2;
    str_1 = str_1 + "  |  ";
    str_1 = str_1 + Is_30;
    str_1 = str_1 + ": ";
    str_2 = (string)Ii_24C;
    str_1 = str_1 + str_2;
    str_1 = str_1 + "  |  ";
    str_1 = str_1 + Is_50;
    str_1 = str_1 + ": ";
    Gi_B = Ii_244 - Ii_24C;
    str_2 = (string)Gi_B;
    str_1 = str_1 + str_2;
    ObjectSetText("TxtConquerorTotalBuy", str_1, 12, "Arial", 65535);
    ObjectCreate(0, "TxtConquerorTotalSell", OBJ_LABEL, 0, 0, 0, 0, 0, 0, 0);
    ObjectSet("TxtConquerorTotalSell", OBJPROP_CORNER, Ii_260);
    ObjectSet("TxtConquerorTotalSell", OBJPROP_XDISTANCE, Ii_264);
    Gi_B = Ii_268 + 60;
    ObjectSet("TxtConquerorTotalSell", OBJPROP_YDISTANCE, Gi_B);
    str_2 = Is_20 + ": ";
    str_3 = (string)Ii_240;
    str_2 = str_2 + str_3;
    str_2 = str_2 + " |  ";
    str_2 = str_2 + Is_40;
    str_2 = str_2 + ": ";
    str_3 = (string)Ii_248;
    str_2 = str_2 + str_3;
    str_2 = str_2 + "  |  ";
    str_2 = str_2 + Is_60;
    str_2 = str_2 + ": ";
    Gi_B = Ii_240 - Ii_248;
    str_3 = (string)Gi_B;
    str_2 = str_2 + str_3;
    ObjectSetText("TxtConquerorTotalSell", str_2, 12, "Arial", 65535);
    ObjectCreate(0, "TxtConquerorTotalMoney", OBJ_LABEL, 0, 0, 0, 0, 0, 0, 0);
    ObjectSet("TxtConquerorTotalMoney", OBJPROP_CORNER, Ii_260);
    ObjectSet("TxtConquerorTotalMoney", OBJPROP_XDISTANCE, Ii_264);
    Gi_B = Ii_268 + 80;
    ObjectSet("TxtConquerorTotalMoney", O

Показано первые 50% кода (символов: 15005)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
1 500,50₽ ≈ $18.34