Utilizing a Heikin Ashi chart typically improves the cleanliness and clarity of trends, providing a less noisy representation of data. However, a significant imperfection remains - obscuration of true bar/candle values, most notably, the exact closing prices.
The Heikin Ashi 'Closing Price' is essentially the application of a 'Total Price', while its 'Open Price' operates as a moving average of its closing prices. To counter this, consider representing data as dual lines instead, aiding in maintaining visibility of true bar/candle values. The implementation of this indicator will feature a dotted line for 'opening values' and a solid line to depict 'closing values'.
Be aware that the default line colour applied is gray, which some may find a tad uninspiring. It's recommended to choose a colour that correlates positively with the individual's preference and the appearance of their ...
Read more...
The Heikin Ashi 'Closing Price' is essentially the application of a 'Total Price', while its 'Open Price' operates as a moving average of its closing prices. To counter this, consider representing data as dual lines instead, aiding in maintaining visibility of true bar/candle values. The implementation of this indicator will feature a dotted line for 'opening values' and a solid line to depict 'closing values'.
Be aware that the default line colour applied is gray, which some may find a tad uninspiring. It's recommended to choose a colour that correlates positively with the individual's preference and the appearance of their ...
Read more...
π5π5β€1
Addressing an issue experienced by many developers, the use of Heikin Ashi charts, this post presents a solution. Despite their appeal for less noise and clearer trends, a critical flaw inherent in these charts is the obscuring of true bar/candle values, in particular, the closing prices.
The Heikin Ashi closing price is simply an alternate price known as the "total price", and its opening is a moving average of its own closing prices. Therefore, it is suggested to display it as two separate lines. This adjustment is made possible through the use of this particular indicator.
In this modification, the bars/candles' accurate values are still visible. The opening is highlighted by a dotted line whereas the closing is distinguished by a solid line. It is crucial to note, however, that by default Gray/Gey is the chosen line colour, which might appear dull. Users may personalize the co...
Read more...
The Heikin Ashi closing price is simply an alternate price known as the "total price", and its opening is a moving average of its own closing prices. Therefore, it is suggested to display it as two separate lines. This adjustment is made possible through the use of this particular indicator.
In this modification, the bars/candles' accurate values are still visible. The opening is highlighted by a dotted line whereas the closing is distinguished by a solid line. It is crucial to note, however, that by default Gray/Gey is the chosen line colour, which might appear dull. Users may personalize the co...
Read more...
π4
Presenting the book "MQL5 Programming for Traders". This is the most comprehensive guide authored by experienced algorithmic trader Stanislav Korotky with MetaQuotes' support.
The book is intended for programmers of all levels. Beginners can learn the basics, while users with experience in other programming languages can immediately advance to the applied part: creating trading robots and analytical applications in MQL5.
The book is freely available online, under the "Book" section of the www.mql5.com website.
Read more...
The book is intended for programmers of all levels. Beginners can learn the basics, while users with experience in other programming languages can immediately advance to the applied part: creating trading robots and analytical applications in MQL5.
The book is freely available online, under the "Book" section of the www.mql5.com website.
Read more...
β‘4π1π₯1π1
The usage of Category Theory, originally proposed by Samuel Eilenberg and Saunders Mac Lane, is very prominent in today's technologically advanced landscapes. Driven by transformational approach, the theory applies not only to areas like linguistic structure research or algebraic topology, but also intriguingly to coding through functional programming languages such as Haskell.
It's time to extend the horizon further and investigate the relationships different categories can share among themselves. Introducing - Functors, which formalize these inter-category relationships.
Let's apply this to a trader's data set. Envisage linking ocean-tide data from Californiaβs coast and the volatility of the NASDAQ Index. By mapping ocean tide data to NASDAQ volatility using functors, can ocean tides be an indicator for this index's volatility? Can seemingly unrelated data sets produce valuable ...
Read more...
It's time to extend the horizon further and investigate the relationships different categories can share among themselves. Introducing - Functors, which formalize these inter-category relationships.
Let's apply this to a trader's data set. Envisage linking ocean-tide data from Californiaβs coast and the volatility of the NASDAQ Index. By mapping ocean tide data to NASDAQ volatility using functors, can ocean tides be an indicator for this index's volatility? Can seemingly unrelated data sets produce valuable ...
Read more...
π3π1
Stay abreast of changing market trends with the Trend Dashboard Indicator for MetaTrader 5. This multi-timeframe indicator employs three standard indicators for comprehensive market mapping: Stochastic oscillator, RSI, and CCI. It provides an easily interpreted representation of trend directions across M1 to MN1 timeframes.
Attachment of this indicator can be to any timeframeβits flexibility is its advantage. For ease of access, downloads for MT4 and MT5 can be made.
Its functioning is defined by quite an array of input parameters. The CheckCandle parameter determines the candle to be checked for indicator values. For Stochastic indicators, PercentK and PercentD define the periods in bars, while Slowing parameter specifies slowing value. RSIP1 and RSIP2 lay out periods for the first, faster RSI and the second, slower RSI respectively.
Other features include various alerts and no...
Read more...
Attachment of this indicator can be to any timeframeβits flexibility is its advantage. For ease of access, downloads for MT4 and MT5 can be made.
Its functioning is defined by quite an array of input parameters. The CheckCandle parameter determines the candle to be checked for indicator values. For Stochastic indicators, PercentK and PercentD define the periods in bars, while Slowing parameter specifies slowing value. RSIP1 and RSIP2 lay out periods for the first, faster RSI and the second, slower RSI respectively.
Other features include various alerts and no...
Read more...
β€5π2
In the world of programming and IT, the exploration of data classification can be an expansive journey. Utilizing the MQL5 wizard, potential insights emerge from implementing and testing simple k-means clustering ideas. As an unsupervised method, k-means clustering presents distinct characteristics when compared to Agglomerative Hierarchical Clustering, offering increased utility through its unique methodology.
Initiating with a randomized selection of cluster centers, k-means clustering recalibrates iteratively until variance within each cluster is minimized. Despite its potency, the method has a key disadvantage, it's slow speed and inefficiency. Solutions for these limitations come in various forms, such as the Jenksβ Natural Breaks, which emphasizes cluster mean over chosen centroids, and the k-medoids method, which considers actual data points as potential centroids.
Further di...
Read more...
Initiating with a randomized selection of cluster centers, k-means clustering recalibrates iteratively until variance within each cluster is minimized. Despite its potency, the method has a key disadvantage, it's slow speed and inefficiency. Solutions for these limitations come in various forms, such as the Jenksβ Natural Breaks, which emphasizes cluster mean over chosen centroids, and the k-medoids method, which considers actual data points as potential centroids.
Further di...
Read more...
β€2π1
Consider the Technicalities:
Professional Trader Lab Expert Advisor (EA), developed by profnas100, is designed to facilitate trading during the London Session. The copyright for this EA remains protected until 2023.
Key parameters in the EA such as 'previousHigh', 'previousLow', and 'fairValueGap' are defined at the start. The 'targetPips' is pre-assigned 20. The London session timings are set based on the broker's server time.
On initialization, the Expert Advisor prints a confirmation message and carries out any specific initialization logic necessary.
During each trading tick, a check is made for the London Session time frame. If current time aligns with the London session, the EA calculates the previous M15 high and low to derive the 'fairValueGap'.
Further, it observes a potential market structure shift and defines buying or selling conditions accordingly. The trade entry...
Read more...
Professional Trader Lab Expert Advisor (EA), developed by profnas100, is designed to facilitate trading during the London Session. The copyright for this EA remains protected until 2023.
Key parameters in the EA such as 'previousHigh', 'previousLow', and 'fairValueGap' are defined at the start. The 'targetPips' is pre-assigned 20. The London session timings are set based on the broker's server time.
On initialization, the Expert Advisor prints a confirmation message and carries out any specific initialization logic necessary.
During each trading tick, a check is made for the London Session time frame. If current time aligns with the London session, the EA calculates the previous M15 high and low to derive the 'fairValueGap'.
Further, it observes a potential market structure shift and defines buying or selling conditions accordingly. The trade entry...
Read more...
π4π1
Glad to share some critical guidelines to follow for publishing technical materials focused on programming. Understanding the core concept behind the code forms an integral part. Therefore, an interpretation of the underlying ideas is recommended. Clear and concise explanation of external variables used can support better understanding.
If submission relates to an Expert Advisor, indicating the most compatible symbol and timeframe would yield maximum utility. In case of an include file submission, its distinct purposes, be it trailing or determining the size of an open position, should be specified to provide clear context to the readers.
Whilst attaching images, ensure they are in manageable sizes, preferably not exceeding 750Ρ 500 pixels. For better visual compatibility, particularly in print format, adhere to a black and white color scheme, especially for charts featuring indicato...
Read more...
If submission relates to an Expert Advisor, indicating the most compatible symbol and timeframe would yield maximum utility. In case of an include file submission, its distinct purposes, be it trailing or determining the size of an open position, should be specified to provide clear context to the readers.
Whilst attaching images, ensure they are in manageable sizes, preferably not exceeding 750Ρ 500 pixels. For better visual compatibility, particularly in print format, adhere to a black and white color scheme, especially for charts featuring indicato...
Read more...
π3β€2π₯2π1
Reflecting on previously addressed topics, this post reveals a deeper understanding of automated optimization and trading configurations within the algorithmic sphere. Emphasizing the automation of routine actions such as code creation and correction, experimentation, and EA maintenance, the critical goal is to eliminate the necessity of manual development. As a result, the potential for future enhancements is intensified, providing your operations have the necessary computational muscle. Threaded throughout the dialog, the ongoing pursuit to fine-tune the optimization mechanism and establish a smooth interaction pathway among components reveals the importance of continued innovation and development.
Turning the spotlight on the improvement of optimization shows a collection of factors crafted within the chosen system-building paradigm. This includes accelerating optimization by dism...
Read more...
Turning the spotlight on the improvement of optimization shows a collection of factors crafted within the chosen system-building paradigm. This includes accelerating optimization by dism...
Read more...
π₯2
Take charge of market trends with an innovative indicator designed to trigger signals when the market price intersects with the moving average. Users can customize this moving average period length, default set at 200. Key to this indicator's efficacy is a user-defined input determining the required number of price points above or below the moving average to trigger a signal.
When utilizing shorter timeframes such as 2 or 5 minutes, it's recommended to opt for a lower points number (approximately 15-20) to suit the smaller price movements characteristic of these timeframes. In contrast, for 1-hour timeframes or higher, a higher figure of points, about 80 or above, can smoothly calibrate the signals to match these timeframes.
Fueling the functionality of this indicator is the tendency of the price to move above or below the line. This innovative indicator is designed to spot such ev...
Read more...
When utilizing shorter timeframes such as 2 or 5 minutes, it's recommended to opt for a lower points number (approximately 15-20) to suit the smaller price movements characteristic of these timeframes. In contrast, for 1-hour timeframes or higher, a higher figure of points, about 80 or above, can smoothly calibrate the signals to match these timeframes.
Fueling the functionality of this indicator is the tendency of the price to move above or below the line. This innovative indicator is designed to spot such ev...
Read more...
π5β€3
Tackling continuous action space problems requires alternative methodologies to traditional agent skill training. One feasible approach is the use of the Contrastive Intrinsic Control (CIC) method. CIC is centered around contrastive density estimation which approximates the conditional entropy of the Discriminator, enabling transitions between states and skill vectors. This facilitates powerful representation learning, covering everything from visual processing to skill detection.
CIC begins with agent training and trajectories collection of states and actions with the aid of feedback from the environment. The feedback is subsequently used for representation training. Here, Contrastive Predictive Coding (CPC) plays a crucial role in motivating the agent to retrieve key features from states and actions. The representations formed take into account the dependencies between successive ...
Read more...
CIC begins with agent training and trajectories collection of states and actions with the aid of feedback from the environment. The feedback is subsequently used for representation training. Here, Contrastive Predictive Coding (CPC) plays a crucial role in motivating the agent to retrieve key features from states and actions. The representations formed take into account the dependencies between successive ...
Read more...
π₯2π1
In the realm of software development, guiding blueprints, also known as programming paradigms, determine how code is written and organized. Varying approaches exist for conducting tasks with MQL5, much like the choice of different routes to a destination. Three major programming paradigms are pivotal for every MQL5 developer or programmer: Procedural, Functional, and Object-Oriented Programming. Each comes with its own unique rules and properties, fashioned to solve specific issues and shape effective development of trading tools with MQL5.
Procedural programming is a systematic process, resembling following a recipe, breaking down a problem into instructions, one step at a time. It makes way for a straightforward and intuitive entry point into the world of coding. Its main properties include Functions, a Top-Down Design, Imperative Style, handling of Variables and Data, Sequential E...
Read more...
Procedural programming is a systematic process, resembling following a recipe, breaking down a problem into instructions, one step at a time. It makes way for a straightforward and intuitive entry point into the world of coding. Its main properties include Functions, a Top-Down Design, Imperative Style, handling of Variables and Data, Sequential E...
Read more...
β€2π1π1π1
New improvements have been made to the EA trading system, integrating the Rectangle, EMA, and SMA indicators to enhance trading accuracy. EA settings now include a variety of adjustable parameters such as 'magic', 'Commentary', 'EMA Small', 'SMA Big', and 'volumes'.
Additionally, risk management strategies have been further extended and optimized by incorporating features like 'Stop Loss of Day', 'SL Points', and 'TP Points'. Not only does the system accommodate the volatility of the market, but it also protects the capital by setting up effective stop-loss and take-profit points.
The 'Rectangle settings' provide further technological intelligence, allowing individual modification according to specific market conditions or trading strategies. Moreover, a 'Time filter' is a recent addition, catering to highly time-specific trades and accommodating various timing aspects of the market...
Read more...
Additionally, risk management strategies have been further extended and optimized by incorporating features like 'Stop Loss of Day', 'SL Points', and 'TP Points'. Not only does the system accommodate the volatility of the market, but it also protects the capital by setting up effective stop-loss and take-profit points.
The 'Rectangle settings' provide further technological intelligence, allowing individual modification according to specific market conditions or trading strategies. Moreover, a 'Time filter' is a recent addition, catering to highly time-specific trades and accommodating various timing aspects of the market...
Read more...
β€7π4
In a bid to broaden knowledge in programming, this particular coverage will bring closure to Behavioral Design Patterns - a crucial topic in software design. Previously evaluated creational and structural designs would find a nexus with behavioral design patterns addressed here. Attention will specifically be directed to Memento, Observer, State, Strategy, and Template Method patterns.
Memento restores an object to an initial state by capturing and externalizing the object's internal state. Observer pattern is utilized to define a one-to-many dependency between objects, such that if one object changes its state, all dependencies are notified and automatically updated.
State, on the other hand, is employed to make an object change its behavior when its internal state changes. Strategy identifies a family of algorithms, encapsulates them, and makes them interchangeable, allowing varia...
Read more...
Memento restores an object to an initial state by capturing and externalizing the object's internal state. Observer pattern is utilized to define a one-to-many dependency between objects, such that if one object changes its state, all dependencies are notified and automatically updated.
State, on the other hand, is employed to make an object change its behavior when its internal state changes. Strategy identifies a family of algorithms, encapsulates them, and makes them interchangeable, allowing varia...
Read more...
π5β€4π1
Understanding the technique behind Random Forest Algorithm and its utility in ensemble learning is crucial for every developer. This algorithm works by creating multiple decision trees during training and delivering outputs based on the classification or mean prediction of these individual elements. The focus, however, is not just on one set of data but different subsets. This sporadic introduction of randomness during training leads to enhanced model performance post-training.
This process finds its roots in ensemble learning, where predictions from multiple machine learning models combine to enhance overall learning. Random Forest is one method where predictions from several decision trees help improve the overall predictive capability of a single model. Its key features include ensemble learning, bootstrapping aggregating, feature randomness, and a voting (or averaging) mechanism...
Read more...
This process finds its roots in ensemble learning, where predictions from multiple machine learning models combine to enhance overall learning. Random Forest is one method where predictions from several decision trees help improve the overall predictive capability of a single model. Its key features include ensemble learning, bootstrapping aggregating, feature randomness, and a voting (or averaging) mechanism...
Read more...
β€2π1
Insights into advanced MQL5 tools from 'MQL5 Programming for Traders' await. Delve into capabilities critical for setting up programs for MetaTrader 5, including custom financial symbols, an integrated economic calendar, and general-purpose tech tools such as networking databases and cryptography.
Understand the purpose and function of libraries, which offer pre-connected APIs to other MQL programs, alongside the concept and benefits of developing software packages and logically interconnected projects. Discover how integration with software environments like Python enhances compatibility and functionality. Start with a focus on resources that are embeddable files containing multimedia elements, settings from external programs, and complied MQL5 programs.
Learn how the MQL5 development environment allows the integration of application data arrays, images, sounds, and fonts directl...
Read more...
Understand the purpose and function of libraries, which offer pre-connected APIs to other MQL programs, alongside the concept and benefits of developing software packages and logically interconnected projects. Discover how integration with software environments like Python enhances compatibility and functionality. Start with a focus on resources that are embeddable files containing multimedia elements, settings from external programs, and complied MQL5 programs.
Learn how the MQL5 development environment allows the integration of application data arrays, images, sounds, and fonts directl...
Read more...
β€2π2
Continuing with 'MQL5 Programming for Traders', Part 6 focuses on trading automation. A fundamental understanding of financial instruments and trading account settings is asserted as a necessity, providing the grounding for creating proficient Expert Advisors.
Part 6 delves into the utilization of built-in functions and data structures integral to robot workings, as well as key analyses of Expert Advisor operations whilst in strategy tester mode. Chief among the tools at your disposal as an Expert Advisor developer is the MetaTrader 5 Strategy Tester, which offers a vast array of debugging modes and boasts impressive financial performance evaluation and trading strategy optimization capabilities.
Discussion of visual testing using bars or ticks also forms an important subsection of Part 6 as does the quotation flow and easy testing stance without a visual window. Moreover, a compara...
Read more...
Part 6 delves into the utilization of built-in functions and data structures integral to robot workings, as well as key analyses of Expert Advisor operations whilst in strategy tester mode. Chief among the tools at your disposal as an Expert Advisor developer is the MetaTrader 5 Strategy Tester, which offers a vast array of debugging modes and boasts impressive financial performance evaluation and trading strategy optimization capabilities.
Discussion of visual testing using bars or ticks also forms an important subsection of Part 6 as does the quotation flow and easy testing stance without a visual window. Moreover, a compara...
Read more...
π3β€2π1
Part 5. Creating application programs" is the next section in the MQL5 Programming for Traders series. This section focuses on the profundities of APIs associated with algorithmic trading, like financial data evaluation, chart visualization, automation, and user interactions.
The discussion begins with the primary principles of crafting MQL programs, followed by an examination of event types, attributes, and models in the terminal. It navigates through access to timeseries, chart operations, and graphical object interactions. It also appreciates the principles of forming and applying separate MQL program types.
MetaTrader 5 terminal accommodates five program categories: technical indicators, Expert Advisors (EAs) for automatic or semi-automatic trading, scripts for executing single tasks, services for background operations, and libraries for unique functional modules.
A more detai...
Read more...
The discussion begins with the primary principles of crafting MQL programs, followed by an examination of event types, attributes, and models in the terminal. It navigates through access to timeseries, chart operations, and graphical object interactions. It also appreciates the principles of forming and applying separate MQL program types.
MetaTrader 5 terminal accommodates five program categories: technical indicators, Expert Advisors (EAs) for automatic or semi-automatic trading, scripts for executing single tasks, services for background operations, and libraries for unique functional modules.
A more detai...
Read more...
π4β€2π1π1
Following the groundwork laid in prior sections on the MQL5 programming language, it's time to intensify the application part of this series. In the fourth part, we emphasize the practical aspect of proper utilization of built-in functions (MQL5 API) that play a crucial role in actualizing real-world programming scenarios integrating automated trading and data processing.
Array operations, string processing, file interactions, data conversion, and user interaction functions are among the primary subjects to be examined, as they figure prominently in a working MQL5 program. In addition to that, mathematical functions and program environment management warrant serious attention.
MQL5 API stands apart in terms of accessibility. These built-in functions are readily available in the global context (namespace) devoid of conditional constraints along with the absence of necessities for ex...
Read more...
Array operations, string processing, file interactions, data conversion, and user interaction functions are among the primary subjects to be examined, as they figure prominently in a working MQL5 program. In addition to that, mathematical functions and program environment management warrant serious attention.
MQL5 API stands apart in terms of accessibility. These built-in functions are readily available in the global context (namespace) devoid of conditional constraints along with the absence of necessities for ex...
Read more...
π5
Magnify your knowledge in the object-oriented programming world with "Part 3. Object Oriented Programming in MQL5". The concept of objects that form the core of OOP technology, enhances the programming convenience, boosts productivity, and ensures superior software quality. MQL5 tools are utilized skillfully by programmers to define custom types which model these metadata objects and simplify the process of program writing and maintenance.
Take a closer look at the mechanisms to define these new types - classes, structures, and unions. These custom types are a blend of data and algorithms that outline the state and behavior of application objects. In the spotlight is the "divide and conquer" principle, hinting towards the concept of objects as mini-programs, each focused on resolving a small but logically entire task.
Combine these remarkable objects to create a single system, ultim...
Read more...
Take a closer look at the mechanisms to define these new types - classes, structures, and unions. These custom types are a blend of data and algorithms that outline the state and behavior of application objects. In the spotlight is the "divide and conquer" principle, hinting towards the concept of objects as mini-programs, each focused on resolving a small but logically entire task.
Combine these remarkable objects to create a single system, ultim...
Read more...
π4
Revealing a segment of MQL5 programming areas, the book uncovers insights into fundamental principles pivotal to the language's operation. MQL5, just like any other paradigm, plants its roots in key cornerstones that form a base for intricate programs. In the textual journey, data types, identifiers, variables, expressions, and operators receive a rich cover for learners.
The formative principles of procedural programming assume prominence, guiding learners to engineer programs following a data process sequence sequentially. The narrative further endeavours to lay sound groundwork before moving towards object-oriented programming (OOP), which receives a comprehensive overview in the upcoming segments of the book.
Highlighting an essential feature of MQL5, identifiers are presented as the linchpin of the programming field. Their role is to enable access to program elements via unique...
Read more...
The formative principles of procedural programming assume prominence, guiding learners to engineer programs following a data process sequence sequentially. The narrative further endeavours to lay sound groundwork before moving towards object-oriented programming (OOP), which receives a comprehensive overview in the upcoming segments of the book.
Highlighting an essential feature of MQL5, identifiers are presented as the linchpin of the programming field. Their role is to enable access to program elements via unique...
Read more...
β€3π2π€1