if (pr > max) { max = pr; ind = 1; } // — если обновляем максимум то в лонг
if (pr < min) { min = pr; ind = -1; } // — если обновляем минимум то в шорт
max -= k2; // максимум плавно опускаем каждую 5-минутку
min += k3; // минимум плавно поднимаем каждую 5-минутку
if ((ind == 1) && (pr < max- stop_long)) ind = 0; // если цена ниже максимума на размер стопа и мы лонге — выход кеш
if ((ind == -1) && (pr > min + stop_short)) ind = 0; // если цена выше минимума на размер стопа и мы в шорте — выход кеш
должно быть не
«if ((ind == 1) && (pr < min — stop_long)) ind = 0;»
а
«if ((ind == 1) && (pr < max — stop_long)) ind = 0;»
Перевернуть алго можно или на более низкую волу сделать, но стоит просто подождать хорошего лоу и втарить все на все до второго-третьего хая после, потом по идее снова этот алго должен заработать