Циклы for и while в торговых алгоритмах
Циклы — это основа обработки данных в торговом роботе. Пока стратегия работает с одной позицией, можно обойтись простыми проверками, но как только сделок становится несколько, нужен перебор. В MQL5 для этого служат циклы for и while. Цикл for применяют, когда число повторений известно заранее, — например, чтобы пройти по всем открытым позициям терминала. Цикл while удобен, когда условие завершения определяется по ходу работы, — например, чтобы просмотреть историю баров до нужного момента.
Разберём пример подсчёта общей прибыли всех позиций:
// ==== Обход позиций через for ====
double totalProfit = 0;
for (int i = 0; i < PositionsTotal(); i++)
{
if (PositionGetTicket(i) > 0)
totalProfit += PositionGetDouble(POSITION_PROFIT);
}
Здесь for аккуратно перебирает позиции от первой до последней, а накопление суммы делает обработку группы сделок простой. Управлять перебором помогают операторы break и continue: первый прерывает цикл досрочно, второй пропускает ненужную итерацию.
Освоив циклы, вы научитесь писать роботов, которые уверенно работают с множеством ордеров и рыночных значений. Подписывайтесь на канал, чтобы не пропускать новые уроки по MQL5 — материалы выходят регулярно. Больше учебных материалов также на https://max.ru/channel_mqlmasters и в Телеграме: https://t.me/mqlmasters.
#MQL5 #циклы #for #while #MQLMaster