MQLplus/lib_addons/math_simple/lib_math_simple_functions.mqh

426 lines
39 KiB
MQL5
Raw Permalink Normal View History

2025-05-30 16:09:52 +02:00
#ifndef LIB_MATH_SIMPLE_IMPORT_FUNCTIONS_MQH_INCLUDED
#define LIB_MATH_SIMPLE_IMPORT_FUNCTIONS_MQH_INCLUDED
#property version "3.2";
/**********************************************************************************
* Copyright (C) 2010-2022 Dominik Egert <info@freie-netze.de>
*
* This file is the simple math function import include file.
*
* MQLplus, including this file may not be copied and/or distributed
* without explecit permit by the author.
* Author Dominik Egert / Freie Netze UG.
**********************************************************************************
*
* Version: 3.2
* State: production
*
* File information
* ================
*
*
*
*
*
*
*
*/
#ifdef DBG_MSG_TRACE_FILE_LOADER
DBG_MSG_TRACE_FILE_LOADER
#endif
//*********************************************************************************************************************************************************/
// Global error handler import declaration
//
#ifdef __MQL4_COMPATIBILITY_CODE__
#import "LibMQLplus/MQLplus.ex4"
#else
#import "LibMQLplus/MQLplus.ex5"
namespace numbers {
#endif
/////////////////////////////////////////////////////////////////////
//
// Math simple functions
//
const float LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMax)( const float value1,
const float value2,
const float value3,
const float value4 = M_CONST_FLT_MAX_NEG,
const float value5 = M_CONST_FLT_MAX_NEG,
const float value6 = M_CONST_FLT_MAX_NEG,
const float value7 = M_CONST_FLT_MAX_NEG,
const float value8 = M_CONST_FLT_MAX_NEG,
const float value9 = M_CONST_FLT_MAX_NEG,
const float value10 = M_CONST_FLT_MAX_NEG);
const double LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMax)( const double value1,
const double value2,
const double value3,
const double value4 = M_CONST_DBL_MAX_NEG,
const double value5 = M_CONST_DBL_MAX_NEG,
const double value6 = M_CONST_DBL_MAX_NEG,
const double value7 = M_CONST_DBL_MAX_NEG,
const double value8 = M_CONST_DBL_MAX_NEG,
const double value9 = M_CONST_DBL_MAX_NEG,
const double value10 = M_CONST_DBL_MAX_NEG);
const char LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMax)( const char value1,
const char value2,
const char value3,
const char value4 = CHAR_MIN,
const char value5 = CHAR_MIN,
const char value6 = CHAR_MIN,
const char value7 = CHAR_MIN,
const char value8 = CHAR_MIN,
const char value9 = CHAR_MIN,
const char value10 = CHAR_MIN);
const short LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMax)( const short value1,
const short value2,
const short value3,
const short value4 = SHORT_MIN,
const short value5 = SHORT_MIN,
const short value6 = SHORT_MIN,
const short value7 = SHORT_MIN,
const short value8 = SHORT_MIN,
const short value9 = SHORT_MIN,
const short value10 = SHORT_MIN);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMax)( const int value1,
const int value2,
const int value3,
const int value4 = INT_MIN,
const int value5 = INT_MIN,
const int value6 = INT_MIN,
const int value7 = INT_MIN,
const int value8 = INT_MIN,
const int value9 = INT_MIN,
const int value10 = INT_MIN);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMax)( const color value1,
const color value2,
const color value3,
const color value4 = INT_MIN,
const color value5 = INT_MIN,
const color value6 = INT_MIN,
const color value7 = INT_MIN,
const color value8 = INT_MIN,
const color value9 = INT_MIN,
const color value10 = INT_MIN);
const long LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMax)( const long value1,
const long value2,
const long value3,
const long value4 = LONG_MIN,
const long value5 = LONG_MIN,
const long value6 = LONG_MIN,
const long value7 = LONG_MIN,
const long value8 = LONG_MIN,
const long value9 = LONG_MIN,
const long value10 = LONG_MIN);
const long LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMax)( const datetime value1,
const datetime value2,
const datetime value3,
const datetime value4 = LONG_MIN,
const datetime value5 = LONG_MIN,
const datetime value6 = LONG_MIN,
const datetime value7 = LONG_MIN,
const datetime value8 = LONG_MIN,
const datetime value9 = LONG_MIN,
const datetime value10 = LONG_MIN);
const float LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMin)( const float value1,
const float value2,
const float value3,
const float value4 = FLT_MAX,
const float value5 = FLT_MAX,
const float value6 = FLT_MAX,
const float value7 = FLT_MAX,
const float value8 = FLT_MAX,
const float value9 = FLT_MAX,
const float value10 = FLT_MAX);
const double LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMin)( const double value1,
const double value2,
const double value3,
const double value4 = DBL_MAX,
const double value5 = DBL_MAX,
const double value6 = DBL_MAX,
const double value7 = DBL_MAX,
const double value8 = DBL_MAX,
const double value9 = DBL_MAX,
const double value10 = DBL_MAX);
const char LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMin)( const char value1,
const char value2,
const char value3,
const char value4 = CHAR_MAX,
const char value5 = CHAR_MAX,
const char value6 = CHAR_MAX,
const char value7 = CHAR_MAX,
const char value8 = CHAR_MAX,
const char value9 = CHAR_MAX,
const char value10 = CHAR_MAX);
const short LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMin)( const short value1,
const short value2,
const short value3,
const short value4 = SHORT_MAX,
const short value5 = SHORT_MAX,
const short value6 = SHORT_MAX,
const short value7 = SHORT_MAX,
const short value8 = SHORT_MAX,
const short value9 = SHORT_MAX,
const short value10 = SHORT_MAX);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMin)( const int value1,
const int value2,
const int value3,
const int value4 = INT_MAX,
const int value5 = INT_MAX,
const int value6 = INT_MAX,
const int value7 = INT_MAX,
const int value8 = INT_MAX,
const int value9 = INT_MAX,
const int value10 = INT_MAX);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMin)( const color value1,
const color value2,
const color value3,
const color value4 = INT_MAX,
const color value5 = INT_MAX,
const color value6 = INT_MAX,
const color value7 = INT_MAX,
const color value8 = INT_MAX,
const color value9 = INT_MAX,
const color value10 = INT_MAX);
const long LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMin)( const long value1,
const long value2,
const long value3,
const long value4 = LONG_MAX,
const long value5 = LONG_MAX,
const long value6 = LONG_MAX,
const long value7 = LONG_MAX,
const long value8 = LONG_MAX,
const long value9 = LONG_MAX,
const long value10 = LONG_MAX);
const long LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMin)( const datetime value1,
const datetime value2,
const datetime value3,
const datetime value4 = LONG_MAX,
const datetime value5 = LONG_MAX,
const datetime value6 = LONG_MAX,
const datetime value7 = LONG_MAX,
const datetime value8 = LONG_MAX,
const datetime value9 = LONG_MAX,
const datetime value10 = LONG_MAX);
const float LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMinNN)( const float value1,
const float value2,
const float value3 = FLT_MAX,
const float value4 = FLT_MAX,
const float value5 = FLT_MAX,
const float value6 = FLT_MAX,
const float value7 = FLT_MAX,
const float value8 = FLT_MAX,
const float value9 = FLT_MAX,
const float value10 = FLT_MAX);
const double LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMinNN)( const double value1,
const double value2,
const double value3 = DBL_MAX,
const double value4 = DBL_MAX,
const double value5 = DBL_MAX,
const double value6 = DBL_MAX,
const double value7 = DBL_MAX,
const double value8 = DBL_MAX,
const double value9 = DBL_MAX,
const double value10 = DBL_MAX);
const char LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMinNN)( const char value1,
const char value2,
const char value3 = CHAR_MAX,
const char value4 = CHAR_MAX,
const char value5 = CHAR_MAX,
const char value6 = CHAR_MAX,
const char value7 = CHAR_MAX,
const char value8 = CHAR_MAX,
const char value9 = CHAR_MAX,
const char value10 = CHAR_MAX);
const short LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMinNN)( const short value1,
const short value2,
const short value3 = SHORT_MAX,
const short value4 = SHORT_MAX,
const short value5 = SHORT_MAX,
const short value6 = SHORT_MAX,
const short value7 = SHORT_MAX,
const short value8 = SHORT_MAX,
const short value9 = SHORT_MAX,
const short value10 = SHORT_MAX);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMinNN)( const int value1,
const int value2,
const int value3 = INT_MAX,
const int value4 = INT_MAX,
const int value5 = INT_MAX,
const int value6 = INT_MAX,
const int value7 = INT_MAX,
const int value8 = INT_MAX,
const int value9 = INT_MAX,
const int value10 = INT_MAX);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMinNN)( const color value1,
const color value2,
const color value3 = INT_MAX,
const color value4 = INT_MAX,
const color value5 = INT_MAX,
const color value6 = INT_MAX,
const color value7 = INT_MAX,
const color value8 = INT_MAX,
const color value9 = INT_MAX,
const color value10 = INT_MAX);
const long LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMinNN)( const long value1,
const long value2,
const long value3 = LONG_MAX,
const long value4 = LONG_MAX,
const long value5 = LONG_MAX,
const long value6 = LONG_MAX,
const long value7 = LONG_MAX,
const long value8 = LONG_MAX,
const long value9 = LONG_MAX,
const long value10 = LONG_MAX);
const long LIB_NAMESPACE_DEF(numbers, _mqlplus_MathMinNN)( const datetime value1,
const datetime value2,
const datetime value3 = LONG_MAX,
const datetime value4 = LONG_MAX,
const datetime value5 = LONG_MAX,
const datetime value6 = LONG_MAX,
const datetime value7 = LONG_MAX,
const datetime value8 = LONG_MAX,
const datetime value9 = LONG_MAX,
const datetime value10 = LONG_MAX);
const double LIB_NAMESPACE_DEF(numbers, _mqlplus_MathGreaterThan)( const double reference,
const double value1,
const double value2,
const double value3 = M_CONST_DBL_MAX_NEG,
const double value4 = M_CONST_DBL_MAX_NEG,
const double value5 = M_CONST_DBL_MAX_NEG,
const double value6 = M_CONST_DBL_MAX_NEG,
const double value7 = M_CONST_DBL_MAX_NEG,
const double value8 = M_CONST_DBL_MAX_NEG,
const double value9 = M_CONST_DBL_MAX_NEG,
const double value10 = M_CONST_DBL_MAX_NEG);
const float LIB_NAMESPACE_DEF(numbers, _mqlplus_MathGreaterThan)( const float reference,
const float value1,
const float value2,
const float value3 = M_CONST_FLT_MAX_NEG,
const float value4 = M_CONST_FLT_MAX_NEG,
const float value5 = M_CONST_FLT_MAX_NEG,
const float value6 = M_CONST_FLT_MAX_NEG,
const float value7 = M_CONST_FLT_MAX_NEG,
const float value8 = M_CONST_FLT_MAX_NEG,
const float value9 = M_CONST_FLT_MAX_NEG,
const float value10 = M_CONST_FLT_MAX_NEG);
const double LIB_NAMESPACE_DEF(numbers, _mqlplus_MathLessThan)( const double reference,
const double value1,
const double value2,
const double value3 = DBL_MAX,
const double value4 = DBL_MAX,
const double value5 = DBL_MAX,
const double value6 = DBL_MAX,
const double value7 = DBL_MAX,
const double value8 = DBL_MAX,
const double value9 = DBL_MAX,
const double value10 = DBL_MAX);
const float LIB_NAMESPACE_DEF(numbers, _mqlplus_MathLessThan)( const float reference,
const float value1,
const float value2,
const float value3 = FLT_MAX,
const float value4 = FLT_MAX,
const float value5 = FLT_MAX,
const float value6 = FLT_MAX,
const float value7 = FLT_MAX,
const float value8 = FLT_MAX,
const float value9 = FLT_MAX,
const float value10 = FLT_MAX);
const char LIB_NAMESPACE_DEF(numbers, _mqlplus_MathLessThan)( const char reference,
const char value1,
const char value2,
const char value3 = CHAR_MAX,
const char value4 = CHAR_MAX,
const char value5 = CHAR_MAX,
const char value6 = CHAR_MAX,
const char value7 = CHAR_MAX,
const char value8 = CHAR_MAX,
const char value9 = CHAR_MAX,
const char value10 = CHAR_MAX);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathDigits)( const float value,
const int max_digits = 9);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathDigits)( const double value,
const int max_digits = 16);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathCompare)( const double value1,
const double value2,
const int digits);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathRoundPow2)( const int in);
const int LIB_NAMESPACE_DEF(numbers, _mqlplus_MathFiboLevel)( const double value,
const bool fx_lvl = true);
const double LIB_NAMESPACE_DEF(numbers, _mqlplus_MathFiboLevel)( const int level);
const double LIB_NAMESPACE_DEF(numbers, _mqlplus_MathFiboLevel)( const int level,
const double range_start,
const double range_end,
const bool ratio_levels = false,
const bool fx_levels = false);
const double LIB_NAMESPACE_DEF(numbers, _mqlplus_MathRandN)();
const uint LIB_NAMESPACE_DEF(numbers, _mqlplus_MathRand)();
void LIB_NAMESPACE_DEF(numbers, _mqlplus_MathRand)( uchar& out[],
const uint bytes,
const uint start = NULL);
const bool LIB_NAMESPACE_DEF(numbers, _mqlplus_MathZero)( const float value);
const bool LIB_NAMESPACE_DEF(numbers, _mqlplus_MathZero)( const double value);
const ulong LIB_NAMESPACE_DEF(numbers, _mqlplus_MathUID)();
const ulong LIB_NAMESPACE_DEF(numbers, _mqlplus_RTCdeltaMilliseconds)( const bool recalibrate = false);
const ulong LIB_NAMESPACE_DEF(numbers, _mqlplus_RTCdeltaMicroseconds)( const bool recalibrate = false);
//
/////////////////////////////////////////////////////////////////////
#ifndef __MQL4_COMPATIBILITY_CODE__
}; // END Namespace numbers
#endif
#import
//
// END Global error handler configuration
//*********************************************************************************************************************************************************/
#endif // LIB_MATH_SIMPLE_IMPORT_FUNCTIONS_MQH_INCLUDED