MQL5 Algo Trading
388K subscribers
2.56K photos
2.56K links
The best publications of the largest community of algotraders.

Subscribe to stay up-to-date with modern technologies and trading programs development.
Download Telegram
Explore a precise approach to enhancing MetaTrader 5 trading strategies using cross-market analysis and algorithmic innovations. By incorporating real-time data from XAGUSD, XAGEUR, and EURUSD, a nuanced strategy emerges, allowing traders to preemptively capture market trends. The solution leverages the inherent links between these markets, aided by technical indicators and statistical models, to refine decision-making and minimize noise. The algorithm uses historical data and machine learning models within MQL5 to streamline operations, offering a structured pathway to improve profitability and reduce volatility in trading performance, maintaining a focus on practical application for developers.

πŸ‘‰ Read | CodeBase | Share!

#MQL5 #MT5 #Strategy
πŸ‘44❀27⚑4πŸ‘€3✍2πŸ‘Œ1🀝1
This utility allows for seamless transaction copying from one MT5 or MT4 account to another MT5 account, supporting both Netting and Hedging account types in any configuration. The utility enables filtering by instrument name and magic numbers for positions to be copied. It currently transmits data solely on market positions; pending orders are addressed once they become market orders. In the Sender mode, one terminal dispatches data, while the other terminal operates in Receiver mode to obtain it. The terminals must reside on the same server to access a common shared data folder for information exchange.

In the Sender account's terminal, activate the utility in Sender mode and configure the necessary settings. For the Receiver account, activate the utility in Receiver mode and adjust the settings accordingly. For transferring between MT5 and MT4, a...

πŸ‘‰ Read | VPS | Share!

#MQL5 #MT5 #Strategy
πŸ‘25❀17πŸ†3πŸ‘¨β€πŸ’»3πŸ‘Œ1
Financial market analysis continually seeks new methods, exploring even unconventional ones like astrology. William Gann popularized this approach, aiming to correlate celestial positions with market trends. Despite ongoing skepticism, some traders still explore financial astrology. Using Python with libraries like Skyfield for astronomical data and MetaTrader 5 for financial data, researchers attempt to combine ancient knowledge with modern technology.

In the process, data collection and synchronization are essential. Despite rigorous statistical analysis, no significant correlations between planetary movements and market prices were found. Machine learning models like CatBoost also failed to produce reliable predictions, confirming astrology's limited value in modern financial markets.

πŸ‘‰ Read | VPS | Share!

#MQL5 #MT5 #Forex
❀21πŸ‘11✍2⚑2πŸ‘Œ2πŸ‘¨β€πŸ’»2😁1
The comprehensive History Management EX5 library for MetaTrader 5 simplifies interaction with trade histories by enabling easy scanning, retrieval, sorting, and categorization of data like closed positions and pending orders. Efficient integration of this library into MQL5 projects allows developers to implement a unified interface for accessing various trade activities seamlessly. Key benefits include intuitive data retrieval functions, time-saving automation, and error-free handling, which reduce manual coding and enhance workflow efficiency. The library supports practical applications such as custom filtering by symbol or time, detailed trade analysis, scalable project integration, and historical backtesting, aiding in informed decision-making for trading strategies.

πŸ‘‰ Read | CodeBase | Share!

#MQL5 #MT5 #MQL5
❀14πŸ‘14πŸ”₯3πŸ‘¨β€πŸ’»3πŸ‘Œ2✍1
The Intrusion Detector EA automates the monitoring of quarter levels based on Ilian Yotov's Quarters Theory, aiming to enhance market analysis by identifying potential price intrusions. By systematically dividing the market into 1000-pip ranges, with Major Whole Numbers, the EA marks Large (250-pip) and Small Quarters, along with overshoot and undershoot levels.

This expert advisor checks the proximity of current prices to these levels on every tick, providing real-time alerts and a commentary panel to facilitate trader decision-making. The EA reduces manual monitoring efforts, making quarter theory actionable and efficient for forex trading. It ensures traders are promptly informed about key market movements through its systematic approach and tailored alerts.

πŸ‘‰ Read | Freelance | Share!

#MQL5 #MT5 #EA
πŸ‘37❀23πŸ‘¨β€πŸ’»5πŸ‘€3πŸ‘Œ2
The Time To Close MT5 TimeToClose-v1.01 is an indicator providing real-time countdowns until candle close, integrating seamlessly with chart themes. Designed for simplicity, it features dynamic color adaptation, matching text color to the candle’s border or body based on its direction. This ensures visual coherence across themes.

Optimized for strategy testing, the indicator leverages MQL_VISUAL_MODE to disable rendering in non-visual back-tests, saving resources. It supports multiple time frames, adjusting automatically through PeriodSeconds() for precise measurement from 1-minute to monthly.

Customizable display options include text separators, font size, and anchor point for flexibility. Optional DateTime display is available via the ShowTimeDate parameter. With EventSetMillisecondTimer(1000), it delivers precise 1-second updates with minimal C...

πŸ‘‰ Read | NeuroBook | Share!

#MQL5 #MT5 #Indicator
πŸ‘34❀18πŸ‘€4πŸ‘Œ2πŸ‘¨β€πŸ’»2
The study of neural networks in trading emphasizes pattern recognition and data selection. For new traders, optimizing inputs like MA indicators significantly influences outcomes. Testing geometric shapes through neural networks provides a unique approach but has limitations. Using filtered data such as Moving Averages helps in model training, while geometric shape models can influence trading results.

Key findings include counter-trend strategies and considerations for indicators like TEMA. Optimization challenges involve computing resources and require efficient strategies for substantial passes. Focus on finding patterns that offer a high profit factor ratio. Building an optimized database with weight ratios stored in CSV files can streamline the development of sophisticated trading systems. Continued research and experimentation are essential in develo...

πŸ‘‰ Read | Forum | Share!

#MQL5 #MT5 #NeuralNets
πŸ‘43❀29✍5πŸ†3πŸ‘¨β€πŸ’»3πŸ‘€3πŸ‘Œ1
A zigzag indicator identifies swing points using a step size to determine price movement thresholds. The "scale" input adjusts swing detection sensitivity, dictating how price changes affect the indicator. Unlike traditional Zigzag with a "depth" parameter, this focuses on price movement for detecting swing reversals. It maintains leg continuation until confirmation of a new swing, making it effective for swing analysis. Originally developed by Evgeniy Chumakov as an MT4 indicator, it enhances price analysis by increasing the scale value, resulting in more zigzag points. Default settings vary by market; for example, use a scale of 3000 for XAUUSD and 25000 for BTCUSD. Adjust scale through trial and error for other markets.

πŸ‘‰ Read | CodeBase | Share!

#MQL5 #MT5 #Indicator
πŸ‘34❀14✍3πŸ‘3😈3πŸ‘¨β€πŸ’»2🀯1
When developing a zigzag indicator, the setup requires precise components: a zigzag plot, two data buffers for storing highs and lows, and input parameters. System variables reset upon recalculation. Arrays like upWaves and dwWaves handle highs and lows respectively, while other variables track wave type, start and end points, and bar distances.

The process begins with initializing the rolling ATR calculation. Before moving forward, bars collected must exceed the ATR period. Initial ATR calculation involves accumulating bar ranges, with subsequent updates clipping and adding new ranges based on ATR/period.

Retracements begin after a valid wave forms. Once ATR equals the period, determine the initial wave from high or low points that reach valid ATR sizes. This avoids starting with a retracement. With established waves, the system updates highs and lo...

πŸ‘‰ Read | VPS | Share!

#MQL5 #MT5 #Indicator
πŸ‘33❀13πŸ‘¨β€πŸ’»3πŸ‘Œ2🀣2🀯1
Creating specialized WinForms objects in a library requires structuring categories similar to MS Visual Studio. Standard controls, containers, and other elements should inherit from a shared base object, CWinFormBase, to ensure consistent attributes and methods. Developing a GroupBox within the containers category and a CheckBox in standard controls facilitates identifying shared properties necessitating a common class for each category to streamline code development for future objects.

Incorporating macro substitutions for default properties upon object creation and refining enum lists to reflect categories supports library enhancement. GroupBox, designed to visually group objects, incorporates a frame, while CheckBox, inheriting from the Label object, allows states like checked, unchecked, or undefined using a label. Future implementations will conside...

πŸ‘‰ Read | NeuroBook | Share!

#MQL5 #MT5 #WinForms
πŸ‘45❀26✍7⚑6πŸ‘Œ3πŸ‘¨β€πŸ’»3πŸ’”2
A new update now allows automatic export of trade history after running an Expert Advisor in the Strategy Tester. The exported file is stored in either the shared terminal folder (Common/Files) or the terminal folder (MQL4/Files). Users have the option to either let the file name be generated automatically or manually set it using the Export() method. This history file is useful for replicating the trade sequence on another trading server with the Simple History Receiver EA.

Basic usage involves instantiating the object in the global scope and adding the Export() method call to OnTester(). For extended usage, instantiate the object in the global scope, add parameter names and values in OnInit(), and include the Export() method call in OnTester(). The Export() method provides additional options for customization.

πŸ‘‰ Read | VPS | Share!

#MQL4 #MT4 #EA
πŸ‘38❀22πŸ‘¨β€πŸ’»3πŸ”₯2πŸ†2πŸ‘Œ1
The adaptation of large-scale models to new tasks has been significantly influenced by the use of transformers, particularly due to their Self-Attention mechanism. While this offers robust modeling within a specific context window, it faces limitations in scale and context length. Sequence modeling can benefit from State Space Models (SSMs), which efficiently handle long-range dependencies with linear scaling. The Mamba algorithm introduces a novel class of selective SSMs that selectively process input data, allowing for efficient sequence transformations. The key lies in its unique selection mechanism that adjusts state interactions based on the input, thus enhancing performance in handling large sequences.

πŸ‘‰ Read | Freelance | Share!

#MQL5 #MT5 #Algorithm
πŸ‘46❀30πŸ‘¨β€πŸ’»4⚑2😁1πŸŽ‰1πŸ‘Œ1
The EA utilizes a custom indicator called 'CHO Smoothed', which integrates the Chaikin Oscillator (CHO) line and a smoothed version using 'Moving Average'. It operates on a specified timeframe, known as the 'Working timeframe'. Key to its operation is the intersection of the two lines, which generates trading signals. When the 'Use ZeroLevel' parameter is set to 'true', only signals that meet specific conditions are permittedβ€”β€˜BUY’ signals below zero and β€˜SELL’ ones above zero.

The EA’s settings allow for optimization on the specified timeframe, limiting one market entry per bar. Different modes determine signal searching, with bar #0 considering each tick and bar #1 focusing on new bar births. Trade directions can be limited to BUY, SELL, or both, based on the β€˜Trade mode parameter’.

Time controls manage the intervals during which signals are searched. Th...

πŸ‘‰ Read | NeuroBook | Share!

#MQL5 #MT5 #EA
πŸ‘28❀23✍8πŸ‘¨β€πŸ’»3πŸ‘Œ2⚑1πŸ‘Ύ1
In recent developments, emphasis has been placed on enhancing encapsulation within the C_FilesTicks class to prevent data leakage. The class's prior exposure of critical information posed security risks, necessitating adjustments for improved encapsulation. A private variable was introduced, safeguarding against unwarranted modifications. A constructor was added for proper initialization, while the C_ConfigService class also underwent refinement to align with these changes.

Further adjustments were made to the control indicator module. Code modifications ensure its stability and resilience against runtime data inaccuracies. These updates are essential for maintaining system integrity and preventing service interruptions.

Overall, these strategic updates significantly elevate the system's security, stability, and performance, laying a robust fou...

πŸ‘‰ Read | Docs | Share!

#MQL5 #MT5 #Encapsulation
πŸ‘20❀10πŸ‘¨β€πŸ’»3πŸ‘Œ2
Dive into the world of Receiver Operating Characteristic (ROC) graphs and discover how they enhance classifier performance evaluation. Explore how ROC curves provide critical insights into the trade-offs between true positive rates and false positive rates, particularly in financial datasets with skewed distributions. Learn about the importance of confusion matrices in encapsulating classification outcomes and calculating metrics like sensitivity and specificity. Understand how ROC curves visualize model performance across different thresholds, and leverage the area under the ROC curve (AUC) for simplified performance comparisons. This knowledge is invaluable for MetaTrader 5 developers and algorithmic traders seeking to refine their predictive models.

πŸ‘‰ Read | Quotes | Share!

#MQL5 #MT5 #Algorithm
πŸ‘17❀11πŸ‘Œ2πŸ‘¨β€πŸ’»1
Part 11 focuses on implementing a multi-level grid trading system in MQL5. This system strategically places buy and sell orders at various price intervals, profiting from market volatility without predicting direction. The architecture separates signal detection, order execution, and risk management. Key parameters like moving averages guide trade signals, while a basket structure manages trade details like lot sizes and grid spacing.

The implementation involves setting up in MetaEditor, declaring metadata and global variables, using the "CTrade" object for trade execution, and defining functions for basket initialization and position management. The system dynamically adjusts to market conditions, with Moving Averages filtering trade opportunities. The structured plan ensures robust backtesting and trading deployment, leveraging market fluctuatio...

πŸ‘‰ Read | AppStore | Share!

#MQL5 #MT5 #AlgoTrading
πŸ‘18❀14πŸ‘Œ4⚑2πŸ‘¨β€πŸ’»2πŸŽ‰1🀝1
Seasonal decomposition is a powerful MQL5 tool to dissect time series data, revealing trend, seasonality, and residual components. By isolating these elements, traders gain insights into market behavior and remove seasonal noise for clearer trend analysis. Implementing this in MQL5 involves using moving averages for trend extraction and separating seasonal patterns through additive or multiplicative models. This technique is invaluable for identifying recurrent market patterns, applicable in trading strategy development. Practical applications include analyzing stocks like Apple's, unearthing seasonal trends in intraday, monthly, or long-term data. This method enhances algorithmic trading by informing machine learning-based forecasts and strategies.

πŸ‘‰ Read | CodeBase | Share!

#MQL5 #MT5 #Forecasting
πŸ‘Œ22❀19πŸ‘14πŸ”₯5✍3πŸŽ‰1πŸ‘¨β€πŸ’»1
An analysis of indicator line shapes using three distinct formulas reveals consistent patterns across variations in values. Applying the Fast-Slow, Fast/Slow, and (Fast-Slow)/Slow Rice formulas, each method deploys two moving averages within its structure. When reviewing data visually, three distinct indicators on a chart may appear similar in form, but they convey different value sets due to their underlying calculations. Each technique provides unique insights despite their visual congruence, contributing to a more comprehensive understanding of market dynamics for informed decision making in technical analysis.

πŸ‘‰ Read | NeuroBook | Share!

#MQL5 #MT5 #Indicator
πŸ‘26❀8πŸ‘¨β€πŸ’»3πŸ‘Œ2
Efficient coding practices demand an understanding of passing by value and by reference. The concept of passing by value involves a function receiving a variable copy, ensuring the original data remains unchanged. This is often safer and crucial in scenarios where data integrity is a priority.

In contrast, passing by reference involves providing a function direct access to a variable. While this method is powerful, it carries the risk of unintentional data modifications, often leading to complex debugging challenges.

For programmers, especially those using C or C++ inspired languages like MQL5, mastering these distinctions is key to writing clean, efficient, and error-free code. Prioritize value passing unless modification is absolutely necessary.

πŸ‘‰ Read | Forum | Share!

#MQL5 #MT5 #Education
πŸ‘24❀9πŸ†3⚑2πŸ”₯2πŸ‘Œ1πŸ‘¨β€πŸ’»1
The article explores the Traj-LLM algorithm, designed to enhance trajectory prediction using Large Language Models. Developed initially for autonomous vehicle applications, Traj-LLM harnesses Sparse Contextual Joint Encoding, high-level interaction modeling, and Lane-aware probabilistic learning, ensuring improved prediction accuracy. By utilizing pre-trained LLMs, the model overcomes traditional constraints of feature engineering, providing a robust approach to model temporal dependencies and interactions among traffic elements. The article also discusses implementing Traj-LLM in algorithmic trading using MQL5, highlighting modifications to existing neural network components for improved data processing efficiency and accuracy.

πŸ‘‰ Read | AppStore | Share!

#MQL5 #MT5 #AITrading
πŸ‘25❀16πŸ‘¨β€πŸ’»5πŸ‘Œ3⚑1