защита эксперта от потери электроэнергии.

 
Привет всем. Прошу вас поделется опытом. По поводу защиты переменных эксперта от временного отключения электропитания или перезагрузки компа.
Проблема состоит в том, что эксперт в своей работе делает определенные вычисления на основе которых ведутся дальнейшие его действия. При отключении мт4 данные советника обнуляются и потом эксперт начинает все с нуля. Что можно придумать?
 

Купить ИБП.
У меня sven smart 1000, справляется со своими задачами весьма неплохо.

 
mazepa >>:
Что можно придумать?

Можно придумать другого эксперта )))

 
lea писал(а) >>

Купить ИБП.


А также ноутбук (лучше даже нетбук) и VPS спраляются с задачей ничуть не хуже.
Важные данные можно сохранять в глобальных переменных, хранимых в файлах.

 

Есть специализированный сервис по размещению АТС …  комплексное профессиональное решение …

 
goldtrader >>:


А также ноутбук (лучше даже нетбук) и VPS спраляются с задачей ничуть не хуже.
Важные данные можно сохранять в глобальных переменных, хранимых в файлах.


по поводу сохранения глобальных переменных в файлах. Как это можно реализовать укажите направление в котором найти эту тему.
 
мини электро станция + доп. источники питания + акуммуляторные батареи, самый раз для ваших миллионов....
 
mazepa писал(а) >>

по поводу сохранения глобальных переменных в файлах. Как это можно реализовать укажите направление в котором найти эту тему.


Ничего реализовывать не надо, это сделали разработчики МТ4 терминала.
Значения глобальных переменных хранятся в файлах 4 недели с момента последнего к ним обращения.

 
не знал сейчас проверю
 
#property copyright ""
#property link ""

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int a;
bool b=true;
int init()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
Alert(a);
Sleep(5000);
if (b){a=2;
b=false;}
//----
return(0);
}


Вот такая фишка . Запускаю эксперт он пишет 0 затем 2, 2, 2 если его не выключать то пишет двойки .
а если выключить терминал  при повторном запуске  опять пишет ноль ,  а потом двойку . Почему не пишет двойку сразу?
 
mazepa писал(а) >>
Почему не пишет двойку сразу?


Сделайте явную инициализацию переменной "а"двойкой и получите сразу двойку.
int a=2;
По дефолту инициализируется нулём.

Причина обращения: