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
An indicator has been developed to display the day's trend across any chart time. It offers customization options for both color and text positioning on the screen. This tool provides traders with the ability to quickly assess market direction and make timely decisions. The flexible configuration allows adaptation to various charting styles and preferences, ensuring compatibility with a wide range of trading strategies. The indicator enhances chart clarity by providing a straightforward visualization of day-specific trends without cluttering the interface, making it a practical addition to a trader's analytical toolkit.

👉 Read | NeuroBook | @mql5dev

#MQL5 #MT5 #Indicator
41👍5👨‍💻4🏆2
A script designed to manage buy orders effectively requires attention to its setup and functionality. Primarily, this script enables the partial closure of profitable buy orders while allowing other orders to reach their target profits. Essential parameters include `ClosePercentage`, which defines the portion of each buy position to be closed, and `Slippage`, which determines the maximum slippage in points. The `CommentText` parameter filters positions by specific comments if desired.

Key features include compatibility with multiple buy positions and the preservation of original stop loss and take profit levels for the remaining lots. It safeguards minimum volume requirements, handles errors, and provides operational feedback.

To implement, copy and compile the code in MetaEditor. The script will be accessible in the Navigator under "Scripts" and can be ex...

👉 Read | AlgoBook | @mql5dev

#MQL5 #MT5 #script
32👨‍💻9👌43🔥2🤝2🎉1
A new script targets efficient trade management by partially closing profitable sell orders while maintaining other open positions for target profits. Upon execution, details can be reviewed in the Experts tab. Key input parameters include:

- ClosePercentage: Determines the portion of each sell position to close, ranging from 0 to 100.
- Slippage: Sets the maximum permissible slippage in points.
- CommentText: Optionally close positions based on specific comments.

Key features of the script include handling multiple sell positions, preserving original stop loss and take profit levels, validating minimum volume requirements, and error management with feedback. For installation, transfer the code to MetaEditor and compile. The script will then be accessible under "Scripts" in the Navigator panel. To execute, drag it onto any chart. Caution: it closes a speci...

👉 Read | AppStore | @mql5dev

#MQL5 #MT5 #Script
37👍9👨‍💻32🏆2
The horizontal volume indicator is utilized by traders for tape reading and Price Action analysis, offering insights into trade volumes at specific price points. Constructing an efficient indicator for MetaTrader 5 requires careful design to maintain platform performance. A minor data update delay, typically around 1 second, is usually acceptable. Key to this is the Volume At Price class, integrated with the C_Wallpaper and C_C_Canvas classes for streamlined control and modification. The system features functions for initializing, updating, resizing, and redrawing, handling data with precision and optimized code execution, focusing on object-oriented programming best practices.

👉 Read | Forum | @mql5dev

#MQL5 #MT5 #Indicator
488👍7👨‍💻6🔥2🏆2
The process for closing or deleting single currency or manual orders is straightforward. For multi-currency EAs, the code utilizes the Comment field to identify which orders to close or delete. If the EAComment input is left empty, the closure is based on the specified close type. The system supports both prefix and suffix for EA Comments to increase flexibility. The current setup provides foundational functionality. There is potential for further development, particularly in extending options or refining processes. Suggestions for enhancements can be considered to meet specific requirements or to broaden applicability.

👉 Read | Forum | @mql5dev

#MQL4 #MT4 #EA
33👍7👨‍💻2
Algorithmic trading presents challenges that require innovative approaches. Traditional price prediction often underperforms in comparison to strategies that focus on technical indicator readings. Models that adapt to market conditions by evaluating multiple strategies tend to show better results. An adaptable application capable of switching between a Moving Average Crossover Continuation Strategy, a Relative Strength Index Momentum Strategy, and a Williams Percent Range Trend Breakout Strategy can improve trade outcomes.

Combining strategies effectively requires attention to detail, such as encasing strategies within classes and utilizing object-oriented programming principles. This facilitates robust testing and optimization.

Tools like MetaTrader 5, with its Walk Forward Testing and Genetic Optimizers, allow traders to refine strategies for perfo...

👉 Read | CodeBase | @mql5dev

#MQL5 #MT5 #Algorithm
70🎉6👨‍💻43👀2👌1
The Pending_tread Expert Advisor (EA) serves as a solution for automated trading, focusing on the placement and management of pending orders in a structured grid format. It accommodates scalping strategies and is adaptable across various timeframes and currency pairs, providing a broad utility for diverse trading approaches.

A key feature is its ability to create grids of pending buy and sell orders, spaced by user-defined intervals for optimal market capture. The EA provides flexibility in configuring the number of orders and their spacing, enhancing control over order execution.

It includes features such as custom order types, configurable take profit levels, and comprehensive order management, reducing manual intervention for efficiency. The system respects broker constraints, ensuring orders are placed within acceptable parameters without overloading tr...

👉 Read | CodeBase | @mql5dev

#MQL4 #MT4 #EA
40👍74👨‍💻21👏1
In the latest update of our MetaTrader 5 replay system, a novel approach to managing custom symbol timeframe changes is being implemented. This addresses the inconvenience faced when the chart timeframe alterations result in temporary indicator disruptions. The proposed solution bypasses the need for storing indicator state externally by detecting timeframe changes directly through the service. By effectively encoding timeframe change information into a data buffer using previously tested reduced-bit logic, the system ensures seamless synchronization between the service and indicators. This refinement not only eliminates redundant initialization paths but also enhances reliability and performance in replay/simulator scenarios.

👉 Read | CodeBase | @mql5dev

#MQL5 #MT5 #AlgoTrading
22👍5👨‍💻4
Dive into the depths of MetaTrader 5 with this exploration into memory management, array manipulation, and advanced programming techniques like enumerations and variable arguments. Discover how to efficiently handle memory using the sizeof operator, and simplify code readability with enums. Learn the ingenious method of mimicking C/C++-like variable arguments in MQL5, enabling dynamic data transfer through string manipulations. This article not only paves the way for sophisticated MT5 applications but also provides fundamental lessons every algorithmic trader and developer should master. Unlock the true potential of MQL5 with these structured, step-by-step insights into advanced programming concepts.

👉 Read | Freelance | @mql5dev

#MQL5 #MT5 #Arrays
4812👍7👨‍💻2
This custom MQL5 indicator is designed to enhance trading strategies by detecting and visualizing divergences between price action and the Awesome Oscillator (AO). Divergences, often signaling potential market reversals or continuations, occur when price movements diverge from oscillator movements. This indicator incorporates several features to aid traders.

Key features include the detection of bullish and bearish divergences, identified by discrepancies between price and AO trends, such as price forming lower lows versus AO forming higher lows, or price achieving higher highs with AO forming lower highs. It visualizes these divergences on the chart using buy/sell arrows and trendlines, alongside a histogram displaying AO values.

The indicator utilizes buffers to store key data, ensuring that buy/sell signals, AO values, and aligned points for diver...

👉 Read | AppStore | @mql5dev

#MQL5 #MT5 #Indicator
36👍7👨‍💻52🔥1🤯1
The TuyulGAP.mq5 Expert Advisor for MetaTrader 5 targets gap trading strategies at the start of the week. It uses dynamic price action from the previous Friday to automate Buy Stop and Sell Stop orders. These orders rely on a range defined from the highest and lowest prices of a set number of past candles, positioned on Friday evening.

Critical features include automatic pending order placement, scheduled Friday execution, Monday pending order deletion, and a weekly restriction to one setup. Key input parameters like lot size, stop loss, and profit targets provide user configurability. The EA supports automated trading setups devoid of technical indicators, focusing instead on strategic end-of-week execution. This solution may appeal to traders seeking automated, rule-based weekend gap trading setups. The system aims for simplicity in configuration, alignin...

👉 Read | Quotes | @mql5dev

#MQL5 #MT5 #EA
27👍7👨‍💻4🔥1
The recent exploration of the SAR and RVI indicators in a trading context gained attention due to unique challenges and opportunities. Following rigorous backward testing, patterns indexed 1, 2, and 6 failed to perform well, prompting consideration of machine learning to enhance their predictive power. Implementation of SAR involves tracking trend reversals with precision, while RVI seeks to measure trend strength through momentum. Both indicators were developed in Python, leveraging pandas for data management and NumPy for computational efficiency. This dual-indicator approach emphasizes quantifying market signals to refine trading strategies, with emphasis on maintaining computational accuracy and signal validation.

👉 Read | VPS | @mql5dev

#MQL5 #MT5 #Indicator
22👍43🔥1👨‍💻1
Today, we address limitations of accessing News and Economic Calendar in MetaTrader 5 during active chart analysis. The current interface requires users to manually view separate tabs within the Toolbox, which can obstruct chart view when expanded.

To enhance trading efficiency, the proposed solution integrates news headlines and calendar events directly onto the chart. This approach leverages the MQL5 Standard Library and the CCanvas class to overlay dynamic content, maintaining full chart visibility. This method preserves space and delivers real-time economic updates without clutter, aiming to improve situational awareness and chart functionality.

Stay tuned for detailed implementation and testing outcomes.

👉 Read | Quotes | @mql5dev

#MQL5 #MT5 #EA
20👍5👨‍💻31
Logify's latest enhancement takes error handling in MetaTrader 5 to a new level of precision and accessibility. This update allows developers to access error descriptions directly from MQL5 documentation, effortlessly enriching logs with contextual information. Now, logs can include multilingual error messages, offering support in eleven languages from English to Korean. This provides comprehensive clarity across diverse teams without manual adjustments. Practical custom formatting for error severity further refines logging precision. By integrating a dynamic formatter that adapts by log level, Logify ensures concise, informative, and clear error reporting, replacing superficial codes with meaningful context. This evolution exemplifies meticulous, scalable logging solutions.

👉 Read | Forum | @mql5dev

#MQL5 #MT5 #EA
30👍8👨‍💻3👌2🏆1
Explore the innovative approach to minimizing lag in moving average crossovers for algorithmic trading in MetaTrader 5. By setting common periods for moving averages and forecasting crossovers, traders can achieve more responsive signals. This article demonstrates the application of data science principles, projecting datasets into higher dimensions to improve trading strategy accuracy. Practical steps include creating handcrafted, feature-rich datasets and using ONNX models for enhanced market predictions. This method offers potential improvements over traditional strategies, emphasizing the importance of creativity and critical thinking in overcoming technical indicator limitations. Discover how to elevate your trading strategies with these advanced techniques.

👉 Read | AppStore | @mql5dev

#MQL5 #MT5 #Indicator
26👨‍💻8👍5👀2
Directional Diffusion Models (DDMs) offer an innovative approach to graph representation learning by addressing the limitations of traditional diffusion models that rely on isotropic noise. DDMs incorporate data-dependent, directional noise, which slows down the signal-to-noise ratio decay, preserving crucial anisotropic structures. This leads to better feature extraction for downstream tasks like graph classification. The technique is particularly promising for financial market analysis, where asymmetric and directional patterns are prevalent. Implementing DDMs involves adding directional noise, using a novel kernel in OpenCL, and integrating it with MQL5 for practical application. The framework enhances MetaTrader 5 by facilitating the analysis of market trends and dependencies effectively.

👉 Read | CodeBase | @mql5dev

#MQL5 #MT5 #ML
18👍3👨‍💻1
Recent studies reveal a notable impact of weather on financial decisions. Research from Professor Edward Saykin indicates that rainy days lead to 27% more restrained trading behavior. High temperatures influence NYSE trading volumes, often reducing them by 15%. In Asia, low atmospheric pressure increases market volatility. By analyzing historical data from major financial hubs, the connection between weather and market dynamics is established. The methodology involves gathering data via the Meteostat API and synchronizing it with financial instruments using MetaTrader 5. Machine learning, particularly CatBoost, analyzes correlations, forecasting with significant accuracy, especially in agricultural regions. Weather factors notably affect currencies related to agricultural outputs. Regular updates and methodological refinements are essential for maintaining f...

👉 Read | Quotes | @mql5dev

#MQL5 #MT5 #Algorithm
51👍15🔥6🎉6🏆2👨‍💻2👀1
A new utility is available for developers requiring an effective method for converting Pine Script to MQL5. This solution is aimed at simplifying the conversion process while maintaining the core functionality of the script. For those in pursuit of streamlined and efficient conversion techniques, access to the compiled version is provided for practical use. Developers are encouraged to review the provided Pine Script code to understand the application and functionality that can be translated into MQL5. This approach supports the need for a seamless transition between scripting languages in trading and financial analysis environments.

👉 Read | Quotes | @mql5dev

#MQL5 #MT5 #PineScript
35👍7👨‍💻3
The library in question is designed for efficient decompression of GZIP archives, useful for both *.gz files and HTTP responses compressed using GZIP. Robustly tested on files containing up to 0.5 GB of text. It can automatically determine compression type by examining the fourth-byte flag, distinguishing between a compressed file and data from a site without filename metadata. Decompression expects data input in a char array format.

The primary function for decompression is CryptDecode(CRYPT_ARCH_ZIP, tmp, key, tx). It integrates a GZIP class for initial checks to confirm if data is GZIP compressed through its first three characters. Upon verification, one might choose from various unGZIP method overloads aimed at optimizing speed and memory usage. The decompressed data fills the char array tx, facilitating immediate processing by parsers like CSV o...

👉 Read | AppStore | @mql5dev

#MQL5 #MT5 #Decrypt
27👍7👌2👨‍💻2
Latent Gaussian Mixture Model (LGMM) offers a structured approach to uncover hidden patterns in financial data through a probabilistic generative model. By clustering data based on latent variables, LGMM enables traders to identify underlying trends and integrate these features into machine learning models. A key highlight of LGMM is its ability to handle data generated from multiple Gaussian distributions while revealing insights that improve model accuracy.

In a financial context, LGMM can be applied to the indicators data, assisting in the discovery of market patterns not visible at first glance. Using the Expectation-Maximization algorithm, LGMM estimates latent variables to optimize clustering. When combined with a classifier model, such as Random Forest, LGMM provides a robust foundation for developing predictive models and trading robots.

However, LGMM's...

👉 Read | Forum | @mql5dev

#MQL5 #MT5 #LGMM
23👍16👨‍💻3