загибается компьютер на функции

 

Собственно запускаю на каждый тик функцию

запускаю массивы следующим образов

#include <Trade\Trade.mqh>
#include <Trade\PositionInfo.mqh>
#include <Arrays\Array.mqh>

input int BP_max_loss = -300;
input int BP_small_loss = -100;

CTrade				c_trade;
CPositionInfo			cp_info;

CArrayInt *order_arr = new CArrayInt;
CArrayInt *order_arr_temp = new CArrayInt;
CArrayInt *order_arr_final = new CArrayInt;
onInit()
{
        if(!order_arr.Reserve(512) || !order_arr_temp.Reserve(512) || !order_arr_final.Reserve(512)) {
                Print("Reserve error");
                delete order_arr;
        }
}
void Tray_Close_BP() {
   double _temp_prof = NormalizeDouble(0.0, __digits);
        for (int _fi = 0; _fi < order_arr_final.Total(); ++_fi)
        {
                order_arr.Add(order_arr_final.At(_fi));
        }
        
        order_arr_temp.Shutdown();
        
        order_arr_final.Shutdown();
        
        for (int _si = 0; _si < order_arr.Total(); ++_si)
        {
                if (order_arr.At(_si) != 0)
                {
                        cp_info.SelectByTicket(order_arr.At(_si));
                        _temp_prof = cp_info.Profit();
                }
                else 
                {
                        Print("**EMPTY**");
                }
                if (BP_small_loss - 10 < __count_point(_temp_prof) < BP_small_loss)
                {
                        c_trade.PositionClose(order_arr.At(_si), _slippage);
                }
                else
                {
                        order_arr_temp.Add(order_arr.At(_si));
                }
        }

        order_arr.Shutdown();

        for (int _li = 0; _li < order_arr_temp.Total(); ++_li)
        {
                order_arr_final.Add(order_arr_temp.At(_li));
        }
}

ну и на тесте минуты через полторы начинает зависать, так что пичалька(

помогите разобраться что с этими массивами не так

__count_point() - считает количество поинтов на цену
 
nezabor:

Собственно запускаю на каждый тик функцию

запускаю массивы следующим образов

ну и на тесте минуты через полторы начинает зависать, так что пичалька(

помогите разобраться что с этими массивами не так

в конце функции печатайте размеры массивов и восхищайтесь вместе с терминалом 

 
Maxim Kuznetsov:

в конце функции печатайте размеры массивов и восхищайтесь вместе с терминалом 

а подробнее(если можно)

с массивами как-то дружба у меня в принципе не складывается