MQL5 Algo Trading
387K 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
Developers working with MetaTrader 5 often encounter a challenge with symbol names mismatching broker-specific conventions. This issue affects the functionality of configurable Expert Advisors (EAs), especially those implementing multi-symbol strategies. The common problem arises when users fail to align the EA settings with their broker's symbol nomenclature. For example, if an EA is configured with "EURUSD" and the broker lists it as "EURUSD.i" or "EURUSD.m", the EA fails to identify and trade the symbol.

A Levenshtein distance algorithm can address this issue by identifying the most similar symbol name in the Market Watch window. This reference script can be integrated into EAs and scripts, allowing them to automatically adapt to various broker symbol names. It's especially useful during the development and testing phases for configuration validation, en...

👉 Read | Calendar | @mql5dev

#MQL5 #MT5 #EA
40👍6👨‍💻3👌21
Multiple indicators on a single trading screen can complicate analysis, often leading to errors. A solution is integrating charts with MetaTrader 5 templates for organized data. This approach involves saving specific configurations, allowing for quick switching between indicators or assets without manual setup each time.

MetaTrader 5 templates simplify management by storing configurations for indicators like RSI or MACD, and assets such as VALE3, PETROBRAS, and ITAU. Creating separate template files for different indicators or assets maintains clarity and efficiency.

Understanding how to apply and manage these template files can optimize visual space and minimize clutter, enhancing trading analysis even on smaller displays.

👉 Read | AlgoBook | @mql5dev

#MQL5 #MT5 #Indicators
75👍11👌5👏4👨‍💻4🏆31
The interface of the latest indicator version now automatically tracks "Market Watch," adjusting for added or removed symbols. Any active symbol changes prompt automatic rendering. Settings are temporarily saved when the terminal is closed or when switching off, featuring options to reset, change color themes, and more.

The objective is to apply volatility-flattening strategies in spread/equity trading for efficient entry/exit point identification. The underlying mechanism involves setting volume and direction for each active pair. The cumulative profit/loss results are displayed as an equity line in the subwindow, excluding spread, commission, and swaps.

Current prototype is experimental, focusing on understanding the mechanism of profit extraction from spread/equity trading. Future plans include integrating visual analysis of flat strategies and a...

👉 Read | AlgoBook | @mql5dev

#MQL5 #MT5 #Indicator
35👀32👍2🔥1👌1👨‍💻1
Mastering MetaTrader 5's template feature significantly enhances trading algorithm efficiency by enabling function overloads based on data types. While creating templates allows rapid implementation by reusing elements, it also requires precise handling of data types to avoid compiler errors. Explicit type conversions can resolve data mismatches, enabling seamless addition of different types. Moreover, utilizing multiple type identifiers in templates opens up extensive possibilities by allowing mixed data types, though careful implementation is essential to ensure correct results. This approach is particularly useful for MQL5 developers aiming to optimize their algorithmic trading solutions with greater flexibility and precision in code execution.

👉 Read | VPS | @mql5dev

#MQL5 #MT5 #Programming
21👨‍💻4
Explore a sophisticated MQL5 strategy focused on the automated identification and trading of Crab Harmonic Patterns. This system utilizes pivotal pivot points and Fibonacci ratios to detect both bullish and bearish patterns, ensuring precise trade execution with calculated entry, stop loss, and take-profit levels. Advanced visualization techniques, like drawing triangles and trendlines on charts, highlight key areas for clear pattern representation. This innovative approach supports backtesting, enabling traders and developers to refine and customize their strategies. Gain insights into leveraging these advanced technical tools for enhanced trading precision and pattern recognition, empowering traders with systematic, rule-based decision-making.

👉 Read | Forum | @mql5dev

#MQL5 #MT5 #Strategy
26👍4👌4👨‍💻32👀2
Programming templates can enhance code efficiency and flexibility, particularly in MQL5. While not always common in this language, templates simplify implementation and help avoid complex errors. Previous discussions have highlighted the utility of function and procedure templates for handling various data types. Even routine tasks, like calculating averages, can benefit from template usage by ensuring consistency and reducing redundancy.

Incorporating templates with unions presents additional opportunities, allowing dynamic configurations that adjust byte sizes based on data types. A properly implemented template accounts for data type variations, assisting both novice and experienced developers in creating scalable and maintainable code structures. Further exploration into union templates will provide more comprehensive insights.

Careful attenti...

👉 Read | AppStore | @mql5dev

#MQL5 #MT5 #programming
35👍72👌1👨‍💻1
Discover the power of Firebase for app development without the backend complexity. Firebase offers two robust NoSQL databases: Realtime Database and Cloud Firestore. Realtime Database excels in low-latency, real-time syncing for chat apps or live dashboards. Meanwhile, Cloud Firestore is optimized for extensive scalability and complex data querying, ideal for ambitious projects. Both databases support secure data operations through advanced security rules, and are perfect for algorithmic trading applications. By integrating MQL5, traders can seamlessly manage and visualize trading data on custom dashboards, enhancing clarity and decision-making capabilities. Embrace Firebase to build dynamic, data-driven applications effortlessly.

👉 Read | AlgoBook | @mql5dev

#MQL5 #MT5 #Firebase
56👍9👨‍💻21🎉1
A novel zigzag indicator, now available for MQL5, shifts focus from timeframe dependency to pure asset price percentage changes from extremums. Unlike its Autoscale predecessor, this version integrates seamlessly across all securities through its use of price percentage input. Developed to streamline the analysis process, it's an adaptation of Evgeniy Chumakov's original MQL4 structure.

This indicator is designed strictly around price movements, excluding time considerations. Its structure enhances trend monitoring similar to a Renko chart. It is crucial to note that this tool should not be used in isolation for trade decisions. Combining it with a momentum oscillator may provide better insights into optimal entry points in the market.

👉 Read | Quotes | @mql5dev

#MQL5 #MT5 #Indicator
37👍2👨‍💻21😁1
The BotCilento Expert Advisor for MetaTrader 5 is designed for strategy testers and simulation environments. It focuses on grid trading with trend-following signals and adaptive risk management. Implementing the Dual MA Strategy, it operates on crossover signals of fast and slow SMAs on the H1 timeframe, filtering activity through volume and volatility measures. The smart grid management system permits position additions using dynamic intervals, either fixed pips or ATR-based. It offers Martingale or Arithmetic lot sizing strategies and configurable profit or breakeven targets for closing entire grids.

Risk safeguards include auto-stop at daily loss limits and emergency drawdown-based closures. Position expiration and spread/slippage filters are integral. With features like "hold through reversals" mode and stagnation detection, the EA displays real-time pro...

👉 Read | AlgoBook | @mql5dev

#MQL5 #MT5 #EA
31👍6👾3💯2👨‍💻1
Part 37 in the Price Action Analysis Toolkit Development series introduces the Sentiment Tilt Meter (STM), designed to tackle cluttered data visualizations in trading. STM aggregates candle-level metrics across configurable timeframes, producing a scalar score from -100 to +100. Displayed on a compact dashboard, it maintains clarity through persistent annotations anchored to timestamps and price levels. It enables precise rule-based settings for tuning sensitivity, ensuring a balance between noise suppression and responsiveness.

In the MQL5 implementation, the STM incorporates a methodical process, starting with environment setup in MetaTrader 5 and MetaEditor. The EA template initializes with strict property declarations, constant settings, and essential libraries like Trade.mqh. User-configurable inputs determine timeframe signals, smoothing, and alert pa...

👉 Read | NeuroBook | @mql5dev

#MQL5 #MT5 #Sentiment
19👍7👨‍💻21
Explore the potential of supervised learning to enhance underperforming trading signal patterns using a Convolutional Neural Network (CNN) with kernel regression and dot product similarity. This innovative approach extracts hidden value from seemingly weak signals. The model utilizes kernel regression to measure similarity, refining CNN performance by capturing long-range dependencies. This enhances predictive capabilities in time series data, offering practical benefits for algorithmic trading. Considerations like local-attention-windows mitigate computational costs. The method is adjustable, capable of tuning kernel sizes and channel depths to match data-driven needs, leading to an architecture that is both comprehensive and responsive to trading indicators.

👉 Read | Forum | @mql5dev

#MQL5 #MT5 #Algorithm
17🎉9👍5👨‍💻1👀1
In the latest installment of the MetaTrader 5 Machine Learning Blueprint series, focus is placed on improving labeling techniques for trading algorithms. Common fixed-time horizon labeling methods are critiqued for their inadequacies in reflecting real-world trading behaviors. Instead, dynamic approaches like the triple-barrier method and meta-labeling are explored, which mirror actual trading conditions by incorporating profit targets, stop-losses, and time limits. These methods align labeling with risk management and adaptation to market volatility, crucial for building robust and reliable machine-learning models in finance. Understanding these methods is essential for effective model implementation and successful trading strategies.

👉 Read | Quotes | @mql5dev

#MQL5 #MT5 #MachineLearning
45👍6👌53🤣2🏆2👨‍💻1
SuperTrend identified as 0: Used for trend direction and reversals in trading strategies. Direnc marked as 1: Indicates areas where price action may face resistance. Support designated as 2: Highlights zones where price declines may halt. Trend listed as 3: Represents general direction of the market or asset price movement over time. Understanding these elements can enhance technical analysis and improve decision-making in trading environments. Properly utilizing such indicators can assist in developing robust trading strategies tailored to various market conditions. Ensuring consistency in analyzing these features may contribute to better forecasting and market insights.

👉 Read | Freelance | @mql5dev

#MQL5 #MT5 #Strategy
25👨‍💻6👍3👌32
Asynchronous execution of algorithms is crucial for enhancing performance in software systems. An interface similar to JavaScript Promises offers these capabilities, allowing asynchronous operations to be handled efficiently in various programming environments. The provided `timer.mqh` serves as an illustration of asynchronous execution, showcasing the potential of this approach. Developers can leverage this concept by utilizing npm package manager to manage dependencies and implement similar async functions in their projects.

Promise in JavaScript enables executing concurrent operations without blocking the main thread. Functions like `Promise.all`, `Promise.race`, and `Promise.any` provide robust mechanisms for handling multiple asynchronous tasks with ease, enhancing control and flexibility in software design. Deploying these techniques across var...

👉 Read | Freelance | @mql5dev

#MQL5 #MT5 #algorithm
234👾4👍2🤡2👨‍💻2👀1
Introducing Tarantella EA, an advanced adaptive grid trading system designed for strategy testing. This Expert Advisor integrates traditional grid methodologies with contemporary risk management strategies. Its foundation lies in executing buy/sell orders at Fibonacci-based intervals, adjusting position sizes dynamically in response to market conditions.

Key features include Market Profile Integration, confining trades to high-probability Value Areas while avoiding Point of Control zones. Multi-layer trend filtering utilizes ADX for trend strength alongside MA/MACD for directional approvals across timeframes. Adaptive Grid Management employs Fibonacci ratios for grid spacing adjustments.

Tarantella EA implements comprehensive risk management, with position limits and equity-based closure rules, incorporating advanced entry conditions requiring volume fil...

👉 Read | NeuroBook | @mql5dev

#MQL5 #MT5 #EA
24👍4👨‍💻3
Dive into the intricacies of logistic regression, a fundamental tool for binary classification, pivotal in algorithmic trading. Unlike its linear counterpart, logistic regression utilizes the sigmoid function to predict probabilities in binary outcomes, essential for decisions like Buy/Sell. Delve into practical steps such as data cleaning, handling NaN values, and feature encoding, crucial for effective model training. Explore the role of the confusion matrix in evaluating model accuracy, ensuring reliable predictions. This introduces a foundation for dynamic logistic regression models in trading, enhancing decision-making by accurately classifying outcomes, a key skill for MetaTrader 5 developers.

👉 Read | CodeBase | @mql5dev

#MQL5 #MT5 #Algorithm
5010👍7👨‍💻5😁4🤯1
An indicator is available that calculates target levels based on the average of price movements for specified timeframes such as annually, monthly, weekly, or every 4 hours. Calculation of the current levels involves defining several buffers: OpenBuffer[i] holds the opening price for the period. HighBuffer[i] is established at the period's opening price plus half the average daily range (adr/2). LowBuffer[i] is set at the period's opening price minus half the average daily range (adr/2). MaxHighBuffer[i] anchors at the opening price plus the full average daily range (adr). MinLowBuffer[i] fixes at the opening price minus the full average daily range (adr). This structure aids in identifying strategic price targets.

👉 Read | Freelance | @mql5dev

#MQL5 #MT5 #Indicator
36👨‍💻3👍2🔥1
The Multi-Divergence EA capitalizes on market divergence to automate trading strategies by identifying potential reversal points using three key oscillators: RSI, MACD, and Stochastic Oscillator. The strategy focuses on high-probability signals through a robust confirmation process, minimizing market noise interference.

Key detection methods include:
- Bullish Divergence: Signaled by a price making a lower low against an indicator's higher low.
- Bearish Divergence: Occurs with a higher high price but a lower high indicator reading.

The EA's strength lies in its reliance on indicator confluence rather than a single indicator. It requires multiple indicators to confirm divergence before executing trades, enhancing signal reliability. To further refine accuracy, optional filters such as a Trend Filter and Volume Filter are available. The Trend Filter utiliz...

👉 Read | Quotes | @mql5dev

#MQL5 #MT5 #EA
35👍3👨‍💻3🔥1🎉1
The MQL5 JSON Library is crafted to handle JSON data efficiently within the MQL5 ecosystem. It provides functionalities similar to modern languages, such as JavaScript and Python, through its intuitive Document Object Model (DOM) API. This library supports data parsing, manipulation, and serialization in various tasks, from simple configurations to complex data exchanges.

Key features include reliable JSON parsing from strings or files, and seamless creation of JSON objects and arrays with concise APIs. Its flexible parser supports JSON5 features like comments and trailing commas. Users can access and manipulate data effortlessly with syntax akin to Python dictionaries or JavaScript objects, allowing safe type conversions and dynamic modifications.

For advanced processing, the library includes a robust query engine utilizing JSON Pointer and JSONPath for prec...

👉 Read | VPS | @mql5dev

#MQL5 #MT5 #JSON
23👨‍💻3👍2😐1
Explore the potential of the Commodity Channel Index (CCI) with this comprehensive guide on designing effective trading systems using MetaTrader 5. Learn the CCI fundamentals, from its calculation to practical applications, enhancing your approach to spotting trends and making informed decisions. Dive into strategies that leverage CCI for both trending and sideways markets, and discover how to automate these strategies through precise MQL5 programming. Transform trading plans into disciplined execution, minimizing emotional interference. This article offers technical clarity, empowering traders and developers with actionable insights to optimize their algorithmic trading endeavors efficiently.

👉 Read | Calendar | @mql5dev

#MQL5 #MT5 #CCI
63👍14👌6👨‍💻32🔥2
A spread monitoring Expert Advisor (EA) provides critical insights for traders dealing with varied broker spread rules, including fixed, ECN, and standard accounts. This tool is instrumental for those wishing to gauge spread fluctuations and optimize EA performance accordingly. It continuously tracks and records the minimum and maximum spread values per day, resetting at midnight based on the broker's terminal time.

For flexibility, users can toggle between pips and points in the settings and choose to sort instruments by the highest spread. The EA is assigned to a chart that isn't involved in real trading, displaying data for all instruments visible in the Market Watch. By utilizing a unique labeling system, it minimizes traditional comment formatting issues, allowing clean presentation without the influence of chart backgrounds or grids.

👉 Read | VPS | @mql5dev

#MQL5 #MT5 #EA
34👍32👌2👨‍💻1