Блог им. vldtar

Пример рабочей торговой системы на MQL5 с выходом по времени

#property copyright "Copyright 2019, Example Inc."
#property link      "https://www.example.com"

input int LotSize = 1;
input int Period = 30;
input double VolatilityThreshold = 0.1;
input int ExitAfterMinutes = 60;

int buyOrderId;
int sellOrderId;
datetime entryTime;

void OnTick()
{
    // Get the last Period candlesticks
    ArraySetAsSeries(candles, true);
    CopyRates(Symbol(), PERIOD_M1, TimeCurrent() - Period, Period, candles);

    // Calculate the maximum and minimum prices
    double maxPrice = High(candles);
    double minPrice = Low(candles);

    // Calculate the standard deviation of the closing prices
    double stdev = iStdDev(candles, MODE_CLOSE, 0);

    // Check if the volatility is above the threshold
    if (stdev > VolatilityThreshold)
    {
        // Check if the current ask price is higher than the maximum price
        if (Ask > maxPrice)
        {
            // Place a buy order
            if (OrderSend(Symbol(), OP_BUY, LotSize, Ask, 3, 0, 0, "My order", 16384, 0, Green))
            {
                Print("Buy order placed");
                buyOrderId = OrderTicket();
                entryTime = TimeCurrent();
            }
            else
            {
                Print("Error placing buy order : ", ErrorDescription(GetLastError()));
            }
        }

        // Check if the current bid price is lower than the minimum price
        if (Bid < minPrice)
        {
            // Place a sell order
            if (OrderSend(Symbol(), OP_SELL, LotSize, Bid, 3, 0, 0, "My order", 16384, 0, Red))
            {
                Print("Sell order placed");
                sellOrderId = OrderTicket();
                entryTime = TimeCurrent();
            }
            else
            {
                Print("Error placing sell order : ", ErrorDescription(GetLastError()));
            }
        }
    }

    if (buyOrderId > 0)
    {
        if (TimeCurrent() - entryTime >= ExitAfterMinutes * 60)
        {
            if (OrderClose(buyOrderId, LotSize, Bid, 3, clrNONE))
            {
                Print("Buy order closed");
                buyOrderId = 0;
            }
            else
            {
                Print("Error closing buy order : ", ErrorDescription(GetLastError()));
            }
        }
    }

    if (sellOrderId > 0)
    {
        if (TimeCurrent() - entryTime >= ExitAfterMinutes * 60)
        {
            if (OrderClose(sellOrderId, LotSize, Ask, 3, clrNONE))
            {
                Print("Sell order closed");
                sellOrderId = 0;
            }
            else
            {
                Print("Error closing sell order : ", ErrorDescription(GetLastError()));
            }
        }
    }
}
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
579 | ★2
8 комментариев
Приветствую! Сколько примерно стоит переписать советник MQL4 700 строк кода в MQL5?
Василий Федорович, здравствуйте. К сожалению, на текущий момент я не предоставляю данного рода услуги. Про стоимость также не знаю.
Василий Федорович, Могу за 20к рублей.
Оплата по факту или этапами.
если возможно разбить на этапы.
без предоплаты
avatar
выглядит сложно… нам бы кубики
avatar
ves2010, так это в кубик один упаковать можно. Язык тот же.
А по сути алгоритм входит в сделку, когда и среднеквадратичный размах свечей выше заданного числа, и вышли за границы локального экстремума в сторону сделки. Выход — через час.
Неужто кубиками нельзя набрать?
А сам алгоритм требует проверки и настройки параметров для конкретного инструмента, иначе — пролёт.
avatar
У тя ж робот будет как пулемет покупать(или продавать) на каждом тике!
Нахрена такой робот нужен?
avatar
Наконец-то халява, образец. Полгода не могу собраться и написать ещё более рабочую на MQL5 с выходом по времени. Причём на MT4 написана.
avatar

Читайте на SMART-LAB:
Фото
💼 Четыре года фиксированного купона с выплатами каждый месяц
Размещение третьего выпуска облигаций МГКЛ серии 001PS-03 продолжается. До сентября включительно инвесторы могут приобрести бумаги через...
Фото
Электроэнергетика: растущий спрос со стороны дата-центров поддерживает инвестиции в сектор
Динамика электроэнергетического сектора в ближайшие месяцы будет во многом зависеть от процентных ставок и растущего спроса на...
Фото
Облигации Фабрика ПО: доход до 21% за год на фоне снижения ставки и реализации стратегии M&A
Открываем идею на покупку 2-летних дебютных облигаций Фабрика ПО БО-001Р-01 с фиксированным купоном и потенциальным доходом за год 21%....
Фото
X5 МСФО 2 кв. 2026 г. - трафик вернули, маржу отдали
Компания X5 опубликовала финансовые результаты за 2 кв. 2026 г. Выручка выросла на 9,9% до 1,29 трлн руб. В первом полугодии 2,48 трлн (+10,5% к...

теги блога Чувак Хачинбек ✔️

....все тэги



UPDONW
Новый дизайн