Okay, ich habe wohl eine Lösung gefunden:
Code:
//+------------------------------------------------------------------+
//| Test3.mq4 |
//| Copyright 2020, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
datetime LastActiontime;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
Print("Start Time is= ",TimeCurrent());
LastActiontime=Time[1];
Print("die Zahl ",1.23456789," gerundet auf die ",_Digits,"te Nachkommastelle ergibt ",roundD(1.23456789));
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
if(LastActiontime==Time[1]){
return;
}
else
{
LastActiontime=Time[1];
}
Print("Last Bar Time is= ",Time[1], "and last Close Price is= ",Close[1]);
//+------------------------------------------------------------------+
}
double roundD(double number){
double n=number*MathPow(10,_Digits);
int b=MathRound(n);
double c=b;
double result=c/MathPow(10,_Digits);
return result;
}
Letztlich habe ich eind datetime Variable, die trackt ob sich seit dem letzten Tick die Open Zeit des letzten balkens geändert hat.
Nur dann wird der Code ausgeführt.