Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Давайте в сервисдеск.
Уточните пожалуйста, каким именно образом отключили? Удалили (застопили) сервисы? Приложите логи проблемных агентов.
Несколько странные настройки прокси в логах. Вы настройки прокси в конфигах агентов прописывали? Приложите, пожалуйста, в заявке common.ini вашего менеджера агентов.
За вчерашний день оказывается логи смотрел...
Все нормально.
Следующий код:
Выдает:
2011.12.05 22:01:28 RectLabel (EURUSD,H1) pos = {12, 176314750}
2011.12.05 22:01:28 RectLabel (EURUSD,H1) other = {123, 456}
То бишь список инициализации не отработал, в структуре мусор. Это бага или нельзя?
//| testDeinit.mq5 |
//| Copyright 2011, MetaQuotes Software Corp. |
//| http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2011, MetaQuotes Software Corp."
#property link "http://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
class CTest_Expert
{
public:
CTest_Expert();
~CTest_Expert() { Deinit(); }
void Processing();
void Deinit();
bool StartTimer(int nCounSeconds);
void StopTimer();
string Exp_Symbol;
};
CTest_Expert arSymbols[];
//+------------------------------------------------------------------+
//| Конструктор |
//+------------------------------------------------------------------+
CTest_Expert::CTest_Expert()
{
}
//+------------------------------------------------------------------+
//| Функция удаления динамических объектов |
//+------------------------------------------------------------------+
void CTest_Expert::Deinit()
{
Print("Эксперт выгружен с пары "+Exp_Symbol);
Comment("");
}
//+------------------------------------------------------------------+
//|Инициализация таймера |
//+------------------------------------------------------------------+
bool CTest_Expert::StartTimer(int nCountSeconds)
{
return(EventSetTimer(nCountSeconds));
}
//+------------------------------------------------------------------+
//|Уничтожение таймера |
//+------------------------------------------------------------------+
void CTest_Expert::StopTimer()
{
EventKillTimer();
}
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
ArrayResize(arSymbols, 5);
arSymbols[0].Exp_Symbol="0";
arSymbols[1].Exp_Symbol="1";
arSymbols[2].Exp_Symbol="2";
arSymbols[3].Exp_Symbol="3";
arSymbols[4].Exp_Symbol="4";
return(0);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
int nSize=ArraySize(arSymbols);
Print("nSize = " + IntegerToString(nSize));
for(int i=0;i<nSize;i++)
{
Print("-------"+IntegerToString(i)+"--------");
arSymbols[i].Deinit();
Print("---------------");
}
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
//---
}
//+------------------------------------------------------------------+
Результат
2011.12.06 16:59:52 testDeinit (EURUSD,M5) Эксперт выгружен с пары 4
2011.12.06 16:59:52 testDeinit (EURUSD,M5) Эксперт выгружен с пары 3
2011.12.06 16:59:52 testDeinit (EURUSD,M5) Эксперт выгружен с пары 2
2011.12.06 16:59:52 testDeinit (EURUSD,M5) Эксперт выгружен с пары 1
2011.12.06 16:59:52 testDeinit (EURUSD,M5) Эксперт выгружен с пары 0
2011.12.06 16:59:52 testDeinit (EURUSD,M5) ---------------
2011.12.06 16:59:52 testDeinit (EURUSD,M5) Эксперт выгружен с пары 4
2011.12.06 16:59:52 testDeinit (EURUSD,M5) -------4--------
2011.12.06 16:59:52 testDeinit (EURUSD,M5) ---------------
2011.12.06 16:59:51 testDeinit (EURUSD,M5) Эксперт выгружен с пары 3
2011.12.06 16:59:51 testDeinit (EURUSD,M5) -------3--------
2011.12.06 16:59:51 testDeinit (EURUSD,M5) ---------------
2011.12.06 16:59:51 testDeinit (EURUSD,M5) Эксперт выгружен с пары 2
2011.12.06 16:59:51 testDeinit (EURUSD,M5) -------2--------
2011.12.06 16:59:51 testDeinit (EURUSD,M5) ---------------
2011.12.06 16:59:51 testDeinit (EURUSD,M5) Эксперт выгружен с пары 1
2011.12.06 16:59:51 testDeinit (EURUSD,M5) -------1--------
2011.12.06 16:59:51 testDeinit (EURUSD,M5) ---------------
2011.12.06 16:59:51 testDeinit (EURUSD,M5) Эксперт выгружен с пары 0
2011.12.06 16:59:51 testDeinit (EURUSD,M5) -------0--------
2011.12.06 16:59:51 testDeinit (EURUSD,M5) nSize = 5
Не могу понять деинициализацию. Почему сообщение "Эксперт выгружен с пары ..." происходит два раза?
CTest_Expert arSymbols[];
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
int nSize=ArraySize(arSymbols);
Print("nSize = " + IntegerToString(nSize));
for(int i=0;i<nSize;i++)
{
Print("-------"+IntegerToString(i)+"--------");
arSymbols[i].Deinit();
Print("---------------");
}
}
Это бага компилятора - не выдал ошибку, что так(без конструктора копирования) инициализировать структуру нельзя. Исправлено. Спасибо за сообщение.
Э нет. Тут дополнительные подробности всплыли.
В справке написано, что простые структуры можно копировать как переменные простых типов, типа:
Тогда почему нельзя сделать этого в списке инициализации? Я не хочу явно определять конструкторы, чтобы не терять вышеиспользованного способа инициализации.
В принципе, не критично, просто хочется услышать окончательный комментарий.
Запускаю терминал с открытыми 12-тью окнами, съедает 325 Мб оперативной памяти.
Запускаю мультивалютного эксперта, терминал съедает 990 Мб оперативной памяти. Эксперт просматривает 5-ти минутные бары за последние 48 часов + индикатор "фрактал" использует. Если запустить только чтобы торговал по одному символу то 400 Мб занимает. Такое потребление памяти это нормально при работе на 12 символах?
Запускаю мультивалютного эксперта, терминал съедает 990 Мб оперативной памяти. Эксперт просматривает 5-ти минутные бары за последние 48 часов + индикатор "фрактал" использует. Если запустить только чтобы торговал по одному символу то 400 Мб занимает. Такое потребление памяти это нормально при работе на 12 символах?
Посмотрите статью Принципы экономного пересчета индикаторов
Забыл указать фрактал это стандартный индикатор + все расчеты проходят раз в пять минут
вы бы хоть какую-то цифирь документально подтвержденную показали. откуда разработчикам знать что и как вы у себя делаете.
постарайтесь грамотно сформулировать и выделить суть проблемы из вашего кода. при каких условиях начинает расти объем потребления, сделать и показать распринтовку журнала.
вобщем хоть как то технически описать проблему.
вы бы хоть какую-то цифирь документально подтвержденную показали. откуда разработчикам знать что и как вы у себя делаете.
постарайтесь грамотно сформулировать и выделить суть проблемы из вашего кода. при каких условиях начинает расти объем потребления, сделать и показать распринтовку журнала.
вобщем хоть как то технически описать проблему.