MQL5 Algo Trading
389K subscribers
2.58K photos
2.58K 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
Understanding the application of Symbolic Regression (SR) within the MQL5 framework offers valuable insights, particularly for those interested in automated trading strategies. SR, unlike classical regression that begins with assumptions about data relationships, commences with a random configuration of expression trees. This aspect enhances its adaptability to new market data and flexibility in capturing complex relationships through genetic optimization.

SR's capability to use an expression tree format allows for a more controlled manipulation of the training data to develop comprehensive models that deeply resonate with underlying market dynamics. In stark contrast to linear models that presume direct relationships, SR facilitates a non-linear approach to understanding data correlations, thus broadening the scope of analysis beyond traditional methods.

This technique is particula...

Read more...
πŸ‘9❀3✍1πŸ‘1
Understanding the Binary Genetic Algorithm (BGA)

Recently, a deeper look into the binary genetic algorithm (BGA) and its foundational elements has enriched the understanding of how this optimization method functions. BGA operates under evolutionary algorithm principles characterized predominantly by selection, mutation, and crossover to optimize solutions.

Key Aspects:
- BGA is derived from evolutionary algorithms and utilizes binary data representation.
- All solutions translate into binary strings, ensuring straightforward operations on genetic components like crossover and mutation.
- The fitness of each solution is assessed, followed by selective breeding to generate new solution populations, continuously advancing toward optimal solutions.

The seminal work in BGA by John Holland in 1975 catalyzed its development, integrating concepts of natural evolution and genetics. Today, B...

Read more...
πŸ‘8πŸ‘2❀1
In instances where several trades consecutively result in losses, it may be prudent to temporarily halt trading activities. This pause allows for an assessment of whether the losses are due to market choppiness or extreme volatility, which are conditions that typically do not favor usual trading strategies. Recognizing these conditions early and adapting strategy accordingly is essential for maintaining trading efficacy and minimizing risk.

Read more...
πŸ‘7πŸ‘2
In automated Forex trading, bridging multiple EAs (Expert Advisors) to operate seamlessly on a single terminal poses notable challenges, primarily due to the complexity of ensuring their stable interaction. Instead of discarding efficient but incompatible strategies, a systematic approach using object-oriented programming, specifically in MQL5, can be employed for integration.

This method involves distilling each strategy into a set of clear, executable rules that govern trade timings, volume, and order types based on dynamic market data analysis, such as tick volumes, to detect peaks in trading activity. The introduction of parameters for order thresholds and management of drawdown limits ensures that each strategy adheres to predetermined risk levels, thereby optimizing the deployment of the starting capital across various strategies.

For practical implementation, the code is str...

Read more...
πŸ‘4❀2πŸ‘2πŸ†1πŸ‘¨β€πŸ’»1
In MT5, the function to obtain the commission for an active position provides users with an efficient approach to track their trading costs. This function outputs the commission values of all active orders, simplifying the process of financial analysis for traders. By implementing this functionality, traders can access real-time data on transaction fees, aiding in the management of their trading strategies. This is crucial for maintaining transparency and optimizing trading performance in the dynamic market environment.

Read more...
πŸ‘6πŸ‘2⚑1
Continuing the discussion on multi-symbol multi-period indicators, this article focuses on enhancing the multi-indicator class to effectively integrate arrow indicators. Arrow indicators, unlike standard ones, do not consistently provide data across all drawing buffers; they only display data (often as EMPTY_VALUE) where the arrow is visible, and empty otherwise.

This characteristic necessitates a refined approach when integrating these indicators into a higher timeframe chartβ€”to avoid overriding actual data points with empty values from a lower timeframe. For instance, when merging M5 chart indicators onto an M15 chart, it’s crucial to selectively transfer non-empty values, ensuring that previously plotted arrows remain intact and visible.

The article proceeds to discuss the technical adaptations required for multi-indicator classes to handle data gaps inherent in arrow indicators....

Read more...
✍5πŸ‘2πŸ‘2
Identifying trend changes in financial markets is integral for traders to adapt to evolving conditions and capitalize on emerging opportunities. This discussion investigates various technical analysis tools, like moving averages, candlestick patterns, trendlines, and support and resistance levels, to detect potential trend reversals.

Utilizing moving averages, traders can observe crossovers which may signal a significant trend shift. Candlestick patterns, with their historical reliability, offer insights into market sentiment changes. Moreover, trendlines drawn on charts help in visualizing trend continuity and potential reversals.

Additionally, support and resistance levels provide clear markers that, when breached, suggest changes in market trends. All these methods are further enhanced by programming capabilities of MQL5, which allows for integration into trading systems to autom...

Read more...
πŸ‘6❀1πŸ‘1
Understanding the validity of relationships in machine learning model inputs and the predicted variables is essential in the realm of algorithmic trading. To achieve meaningful predictions, the relationships within the data must be real and not just statistically coincidental. This discussion highlights the importance of employing unit root tests on model residuals to check for spurious regressions - models that falsely indicate meaningful relationships due to coincidental statistical errors rather than genuine interdependencies.

Such models can misleadingly show low error metrics, giving a false sense of accuracy and potentially leading to costly mistakes in trading strategies. The text discusses generating synthetic time series data to illustrate how spurious regressions can occur and provides insights into identifying and mitigating them using statistical tests like the Augmented ...

Read more...
✍4πŸ‘3πŸ‘Œ2πŸ”₯1
A new script has been developed that facilitates the conversion of historical data across multiple trading timeframes including M1, M5, M15, M30, H1, H4, D1, W1, and MN. The process begins by downloading or importing your historical data.

Once data is imported, it is essential to close all charts and restart the MT4 platform. From there, users must navigate through the menu to File -> Open Offline and open an offline chart of the target symbol in M1, which should be marked in grey.

The script, named "period_converter_all_kai," can then be executed from the script folder. Users will need to input a "Start Date" and press OK, then wait for a confirmation message indicating the successful conversion. Restarting the MT4 platform will allow users to access and verify the data across all desired timeframes.

For users seeking a more detailed walkthrough of this process, complete with visu...

Read more...
πŸ‘9πŸ‘4❀1
In our ongoing development of a manual EA, previously discussed, we have introduced considerations for moving towards a universal EA model. The creation of the C_Manager class marks a strategic updateβ€”it functions as an intermediary layer between the EA and the order system, enhancing security and controlling functions. This class acts as an administrative point, increasing reliability by managing essential operations independently, based on predefined parameters.

The transition introduces a structured approach where the EA accesses order functions through C_Manager, which performs operations under strict conditions to reduce error risks. This means actual trading decisions and operations, like opening market positions, become more streamlined and secure.

Additionally, different account typesβ€”NETTING and HEDGINGβ€”play critical roles in automatic EA functionality. Each account type ha...

Read more...
πŸ‘7❀1πŸ‘1πŸ‘Œ1
Understanding the DD_Relative function in trading software is crucial for monitoring the financial health of a trading account. This function calculates the relative drawdown of the account by determining the current net profit or loss of all open positions. This is achieved through the Current_LossOrProfit() function, which aggregates these values. The net figure is then divided by the account's current balance, sourced from AccountInfoDouble(ACCOUNT_BALANCE), to determine the drawdown as a percentage.

The percentage result is refined to two decimal places using NormalizeDouble(), and displayed on the trading chart via the Comment() function. Additionally, the Current_LossOrProfit() function plays a key role by sifting through each open position, checking its alignment with specific criteria such as matching magic numbers and symbols relative to the chart in focus. It then incorpora...

Read more...
πŸ‘6πŸ‘3❀1
Neural networks, while complex, offer a broad range of applications once mastered. The shift in focus from feature design to architecture, loss function, and optimization design represents a move towards higher abstraction in machine learning tasks. This transformation underscores the need for depth in understanding the intricacies involved in neural network implementation, particularly when applied to fields such as algorithmic trading.

Understanding the components and functioning of neural networks is crucial. Neural networks, inspired by biological neural networks, operate through a structured network of layers comprising interconnected nodes. This structure allows them to identify complex patterns in data, often requiring thorough analysis and careful management of the scaling and preprocessing of input data to ensure model accuracy.

Especially in trading applications, incorpora...

Read more...
πŸ‘10πŸ‘1
A professional Grid advisor that utilizes the Relative Strength Index (RSI) is now available for integration in trading systems. This advanced tool reduces drawdown on accounts by managing unprofitable orders through strategic overlapping. Users gain clear insights into profits via the chart display, enhancing utility for manual trading operations.

The advisor is optimized for use with ECN brokers that offer low spreads, improving execution and potential profitability. It is strongly recommended to initially test this tool on a demo account to familiarize with its functionalities. Additionally, pairing this advisor with Buy Sell Signals can facilitate trend following and allow for semi-automatic operation, where users can specify conditions such as "Buy Only" or "Sell Only".

Key customization options include adjustable RSI periods, bounds, and timeframes. Management features extend ...

Read more...
πŸ‘8πŸ‘2
Understanding Trailing Stops: A Guide for Traders

Trailing stops are critical tools for capitalizing on gains while minimizing risks. They dynamically adjust to price movements in favorable directions but remain static when the trend reverses. Trailing stop mechanisms vary, with platforms like MetaTrader offering integrated options which can also be incorporated into Expert Advisors.

Traders can customize trailing stops using market data, technical indicators, and varying methodologies that intertwine trading strategies with risk management practices. The setup of a trailing stop involves defining parameters that balance potential profit against the risk, accounting for factors like market volatility and transaction costs.

Effective use of trailing stops requires a strategic approach to setting stop loss levels. They should not only cover all incurred costs like swaps and commissio...

Read more...
✍4πŸ‘3πŸ‘1
In the latest analysis of the Modified Grid-Hedge EA, attention is focused on the mathematical dimension of optimizing Grid EA strategies. With an existing framework as the baseline, this detailed examination uncovers the core mathematical strategies that guide the EA's behavior, setting the stage for future code-based enhancements.

This segment does not cover the coding aspects; instead, it delves into the theoretical constructs, formulas, and calculations needed to optimize trading strategies effectively. From a comprehensive recap of Grid Strategy to evaluating parameters like Initial Position, Initial Lot Size, Distance, Lot Size Multiplier, and Number of Orders, the groundwork is laid for quantitatively assessing various trading strategies and outcomes.

Analyzing the profit function for a scenario with sequentially increasing lot sizes reveals intricate relationships between or...

Read more...
✍3πŸ‘3πŸ‘2
The Closed-Form Policy Improvement (CFPI) algorithm offers a new perspective for addressing the instability noted in offline reinforcement learning models which traditionally rely on stochastic gradient descent (SGD). The CFPI algorithm mitigates the need for hyperparameter tuning, often challenging due to limited interactions with the environment, providing a more stable avenue for policy training. By utilizing a first-order Taylor approximation, CFPI constrains the distributional shifts and models behavior policies closely resembling the training data distribution.

Highlighting a key feature, the CFPI method avoids the typical fluctuations in policy performance associated with SDS-based approaches by engaging a deterministic policy shift towards value improvement. The researchers outlined the benefits of modeling behavioral strategies using a mixture of Gaussian distributions. This...

Read more...
πŸ‘4πŸ‘2πŸ‘€1
Causal inference is fundamental in diverse fields such as econometrics, medicine, and marketing. However, the approach holds particular intrigue for those designing algorithmic trading systems in machine learning landscapes. While ancient philosophers like Aristotle attempted to embed causality into the crux of scientific understanding, modern developments in machinery and algorithms have observed a shift in comprehension. Today, causal inference zeroes in on separating correlation from causation to forge reliable decision-making frameworks.

Machine learning techniques, particularly in the realm of trading, must grapple with causal relationships to enhance prediction accuracy and reliability. The utilization of advanced causal inference methods indicates that although machine learning can interpret data to predict outcomes, discerning the true causal effects remains complicated. This...

Read more...
πŸ”₯4πŸ‘2πŸ‘2❀1
For traders utilizing MT5, a new script is available that automates order placement ahead of high-impact news events. To deploy, simply double-click the script approximately two minutes before news releases such as FOMC, NFP, bank rates, or CPI announcements. The script is designed to set both Buy Stop and Sell Stop orders swiftly to capitalize on rapid pip movements.

Key features include assignable hotkeys, with the recommendation to use CTRL + 1 for quick access. The script incorporates Stop Loss functions to secure trades if the market moves against the predicted direction, along with a preset Target for potential profits.

Users should note that this tool is advised for use with significant, market-moving ("RED") news only. If the set ordersβ€”Buy Stop and Sell Stopβ€”are not activated within three minutes post-announcement, it is recommended to cancel the orders and prepare for the ...

Read more...
πŸ‘6❀2πŸ‘2πŸ‘Œ2
The Bacterial Foraging Optimization (BFO) algorithm, inspired by the foraging behavior of Escherichia coli bacteria, serves as a robust technique for addressing complex numerical optimization problems. BFO mimics the natural tactics of E. coli, utilizing mechanisms like chemotaxisβ€”where movement is guided by chemical cues. This algorithm is especially noteworthy in distributed optimization and control tasks across various real-world applications. Utilizing a combination of bacterial behaviors such as swimming and tumbling, the BFO algorithm enhances the search for nutrient gradients, effectively navigating through solution spaces.

Key components of BFO include initialization of a bacterial colony, execution of chemotactic steps where bacteria either swim towards favorable conditions or tumble in adverse environments, and replication phases ensuring survival of the fittest, thus foste...

Read more...
πŸ€”9πŸ‘2❀1πŸ‘1
An optimized version of the Hurst exponent indicator has been recently updated for enhanced performance. It is built upon the initial version which has been thoroughly described, providing users with improved computational efficiency. While further optimizations are possible, such as implementing a faster approximation of logarithms, these would result in a trade-off between speed and accuracy. The current improvements focused on significant computational enhancements without drastic sacrifices in precision. This refined tool is crucial for those who rely on detailed quantitative analysis in their programming and technical work.

Read more...
πŸ‘10πŸ‘1