forked from nique_372/MQLArticles
40 lines
1.6 KiB
MQL5
40 lines
1.6 KiB
MQL5
//+------------------------------------------------------------------+
| |
//| Base.mqh |
| |
//| Copyright 2026, Niquel Mendoza |
| |
//| https://www.mql5.com |
| |
//+------------------------------------------------------------------+
| |
#property copyright "Copyright 2026, Niquel Mendoza"
| |
#property link "https://www.mql5.com"
| |
#property strict
| |
| |
#ifndef MQLARITCLES_UTILS_TFI_BASE_MQH
| |
#define MQLARITCLES_UTILS_TFI_BASE_MQH
| |
| |
//+------------------------------------------------------------------+
| |
//| |
| |
//+------------------------------------------------------------------+
| |
#include "Main.mqh"
| |
| |
//+------------------------------------------------------------------+
| |
//| |
| |
//+------------------------------------------------------------------+
| |
namespace TSN
| |
{
| |
__forceinline char MqlArticlesTfiIdx(ENUM_TIMEFRAMES v)
| |
{
| |
if(v == PERIOD_CURRENT)
| |
v = _Period;
| |
ulong h = ((ulong)v ^ g_mqlarticles_tfi_out_seeds[int(v & MQLARTICLES_TFI_BUCKETS_SIZE_L)]) * 0x9E3779B97F4A7C15;
| |
h ^= h >> 32;
| |
return char(h & MQLARTICLES_TFI_FINAL_TSIZE_L);
| |
}
| |
| |
__forceinline char MqlArticlesTfiIdxNoR(const ENUM_TIMEFRAMES v)
| |
{
| |
ulong h = ((ulong)v ^ g_mqlarticles_tfi_out_seeds[int(v & MQLARTICLES_TFI_BUCKETS_SIZE_L)]) * 0x9E3779B97F4A7C15;
| |
h ^= h >> 32;
| |
return char(h & MQLARTICLES_TFI_FINAL_TSIZE_L);
| |
}
| |
}
| |
| |
#endif // MQLARITCLES_UTILS_TFI_BASE_MQH
|