Options/SymbolMedianPrice.mq5

42 lines
3.3 KiB
MQL5
Raw Permalink Normal View History

2025-05-30 16:14:55 +02:00
<EFBFBD><EFBFBD>//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
//double TrueMedian(double first, double second,double third)
// {
// SORT(first,second,third);
// return((third<=0.0)?0.0:((second<=0.0)?third:((first<=0.0)?((third+second)/2.0):second)));
// };
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
datetime Day(const datetime DATETIME)
{
return((datetime)(DATETIME-DATETIME%86400));
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
datetime Today()
{
return(Day(TimeCurrent()));
}
//+------------------------------------------------------------------+
double SymbolPrice(const string SYMBOL, const CalcMode CALCMODE)
{
double result = 0.0;
switch(CALCMODE)
{
case Last:
return(SymbolInfoDouble(SYMBOL,SYMBOL_LAST));
break;
case VWAP:
return(SymbolInfoDouble(SYMBOL,SYMBOL_SESSION_AW));
break;
case Median:
return(TrueMedian(SymbolInfoDouble(SYMBOL,SYMBOL_BID),SymbolInfoDouble(SYMBOL,SYMBOL_ASK),SymbolInfoDouble(SYMBOL,SYMBOL_LAST)));
break;
}
return(result);
}
//+------------------------------------------------------------------+