forked from rosh/MQL5Book
47 lines
2.1 KiB
MQL5
47 lines
2.1 KiB
MQL5
//+------------------------------------------------------------------+
| |||
//| GlobalsRunCheck.mq5 |
| |||
//| Copyright 2021, MetaQuotes Ltd. |
| |||
//| https://www.mql5.com |
| |||
//+------------------------------------------------------------------+
| |||
#include "..\..\Include\PRTF.mqh"
| |||
| |||
const string gv = __FILE__;
| |||
| |||
//+------------------------------------------------------------------+
| |||
//| Script program start function |
| |||
//+------------------------------------------------------------------+
| |||
void OnStart()
| |||
{
| |||
// check existence of persistent variable using 2 different function;
| |||
// on every run except for very first run these will show true (exist)
| |||
// and updated time from previous run
| |||
PRTF(GlobalVariableCheck(gv));
| |||
PRTF(GlobalVariableTime(gv));
| |||
// try to read the persistent counter if it exists,
| |||
// if it's not exist we got 0, and start from beginning
| |||
int count = (int)PRTF(GlobalVariableGet(gv));
| |||
count++;
| |||
// save incremented value in the persistent global variable
| |||
PRTF(GlobalVariableSet(gv, count));
| |||
Print("This script run count: ", count);
| |||
/*
| |||
example output after 3 runs:
| |||
| |||
GlobalVariableCheck(gv)=false / ok
| |||
GlobalVariableTime(gv)=1970.01.01 00:00:00 / GLOBALVARIABLE_NOT_FOUND(4501)
| |||
GlobalVariableGet(gv)=0.0 / GLOBALVARIABLE_NOT_FOUND(4501)
| |||
GlobalVariableSet(gv,count)=2021.08.29 16:59:35 / ok
| |||
This script run count: 1
| |||
GlobalVariableCheck(gv)=true / ok
| |||
GlobalVariableTime(gv)=2021.08.29 16:59:35 / ok
| |||
GlobalVariableGet(gv)=1.0 / ok
| |||
GlobalVariableSet(gv,count)=2021.08.29 16:59:45 / ok
| |||
This script run count: 2
| |||
GlobalVariableCheck(gv)=true / ok
| |||
GlobalVariableTime(gv)=2021.08.29 16:59:45 / ok
| |||
GlobalVariableGet(gv)=2.0 / ok
| |||
GlobalVariableSet(gv,count)=2021.08.29 16:59:56 / ok
| |||
This script run count: 3
| |||
*/
| |||
}
| |||
//+------------------------------------------------------------------+
|