uni magic number
Info
The uni magic number is a Library for MetaTrader 5 that the library allows receiving a magic number bound to three elements:symbol (financial instrument) name;timeframe;prefix index; all these three elements are to be encoded in 64 bits, of which:symbol name = 48 bits (the first 8 characters are taken from the name);timeframe = 5 bits;prefix index = 11 bits (may be a number from 0 to 2047, inclusive). the prefix number is necessary for obtaining several unique magic numbers on a single chart.
Usage
This tool is typically used for enhancing chart analysis and decision making.
Platform
This Library works exclusively on MetaTrader 5 (both build 600+ and newer versions).
Setup
Place the downloaded file in MQL5/Libraries folder via File ? Open Data Folder in MetaTrader 5.
How to Install and Use uni magic number
1. Storage: Place library files in the MQL/Libraries directory to ensure they are accessible to your projects.
2. Implementation: Include the library in your code using the #import directive, ensuring you match the exact function names and parameters.
3. Compilation: Ensure the library is present in the directory before you compile your main EA or script, as the compiler links them during this phase.
4. Management: Keep libraries organized in sub-folders if you manage many custom functions to maintain a clean project structure.
Frequently Asked Questions
Q: What is a library file used for? A: Libraries store reusable code modules, allowing you to centralize common logic used by multiple EAs or indicators.
Q: Is a library executable? A: No, libraries are non-executable files containing functions; they must be imported into an EA, indicator, or script to function.
Q: Can I update a library while the platform is running? A: You should compile your EA or script after updating a library to ensure the latest code changes are integrated.
What this tool does
the library allows receiving a magic number bound to three elements:symbol (financial instrument) name;timeframe;prefix index; all these three elements are to be encoded in 64 bits, of which:symbol name = 48 bits (the first 8 characters are taken from the name);timeframe = 5 bits;prefix index = 11 bits (may be a number from 0 to 2047, inclusive).
Typical Use Case
This Library excels in automated trading and technical analysis on MetaTrader 5.
Compatible Platform & Setup
This Library works on MetaTrader 5. Place the file in the MQL5/Libraries folder and restart the terminal.
Description & Settings
Related: auto magic - another powerful library for MetaTrader 5 traders.
the library allows receiving a magic number bound to three elements:
symbol (financial instrument) name;
timeframe;
prefix index;
Also recommended: xoshiro256 random number generator - similar library with strong performance on MetaTrader 5.
all these three elements are to be encoded in 64 bits, of which:symbol name = 48 bits (the first 8 characters are taken from the name);
timeframe = 5 bits;
prefix index = 11 bits (may be a number from 0 to 2047, inclusive).
the prefix number is necessary for obtaining several unique magic numbers on a single chart. to do this, we need to call the appropriate function with different prefix indices. the number of prefix indices is limited and may vary from 0 to 2047, inclusive.
to obtain the magic number, just call the function:
example of use:
You may also like: class for working with databases in a simplified manner - excellent alternative for library users on MetaTrader 5.
Source Code
#property library
#property copyright "robotfx"
#property link "https://robotfx.org"
#property version "1.00"
#include <cunimagicnumber.mqh>
ulong getmagicnumber (ushort prefix,//prefix number [0,2047]
string symbol,//symbol name
enum_timeframes tf)//timeframe
export
{
.......
⚠ Limitations & Risk Warning
- This tool is provided for educational and testing purposes only.
- Past performance does not guarantee future results.
- Trading involves substantial risk of loss. Use on a demo account first.
- Results may vary depending on market conditions, broker, and settings.
- We recommend thorough backtesting and forward testing before using with real funds.