![William Blau's Indicators and Trading Systems in MQL5. Part 1: Indicators](https://c.mql5.com/2/0/MQL5_Willam_Blau_1.png)
![William Blau's Indicators and Trading Systems in MQL5. Part 1: Indicators](https://c.mql5.com/i/articles/overlay.png)
William Blau's Indicators and Trading Systems in MQL5. Part 1: Indicators
The article presents the indicators, described in the book by William Blau "Momentum, Direction, and Divergence". William Blau's approach allows us to promptly and accurately approximate the fluctuations of the price curve, to determine the trend of the price movements and the turning points, and eliminate the price noise. Meanwhile, we are also able to detect the overbought/oversold states of the market, and signals, indicating the end of a trend and reversal of the price movement.
![A New Approach to Interpreting Classic and Hidden Divergence](https://c.mql5.com/2/29/8570j_8kab7o_e_vfnp1de2egckv_mgttlcii9430_e_qyj29n6x_vhy07f77qa9.png)
![A New Approach to Interpreting Classic and Hidden Divergence](https://c.mql5.com/i/articles/overlay.png)
A New Approach to Interpreting Classic and Hidden Divergence
The article considers the classic method for divergence construction and provides an additional divergence interpretation method. A trading strategy was developed based on this new interpretation method. This strategy is also described in the article.
![Neural Networks Made Easy](https://c.mql5.com/2/49/Neural_Networks_Easy_002_600x314.jpg)
Neural Networks Made Easy
Artificial intelligence is often associated with something fantastically complex and incomprehensible. At the same time, artificial intelligence is increasingly mentioned in everyday life. News about achievements related to the use of neural networks often appear in different media. The purpose of this article is to show that anyone can easily create a neural network and use the AI achievements in trading.
![How Secure Is It to Buy MQL5 Market Products?](https://c.mql5.com/2/0/avatar__18.png)
![How Secure Is It to Buy MQL5 Market Products?](https://c.mql5.com/i/articles/overlay.png)
How Secure Is It to Buy MQL5 Market Products?
We have launched the service for selling MetaTrader 5 trading applications paying much attention to security issues. We have minimized all associated risks to allow you to concentrate on more important matters - searching for the most suitable trading robot!
![How to Exchange Data: A DLL for MQL5 in 10 Minutes](https://c.mql5.com/2/0/mql5_dll_sample__1.png)
![How to Exchange Data: A DLL for MQL5 in 10 Minutes](https://c.mql5.com/i/articles/overlay.png)
How to Exchange Data: A DLL for MQL5 in 10 Minutes
Now not so many developers remember how to write a simple DLL, and what are special features of different system binding. Using several examples, I will try to show the entire process of the simple DLL's creation in 10 minutes, as well as to discuss some technical details of our binding implementation. I will show the step-by-step process of DLL creation in Visual Studio with examples of exchanging different types of variables (numbers, arrays, strings, etc.). Besides I will explain how to protect your client terminal from crashes in custom DLLs.
![MQL5 for Newbies: Guide to Using Technical Indicators in Expert Advisors](https://c.mql5.com/2/0/chainik__1.png)
![MQL5 for Newbies: Guide to Using Technical Indicators in Expert Advisors](https://c.mql5.com/i/articles/overlay.png)
MQL5 for Newbies: Guide to Using Technical Indicators in Expert Advisors
In order to obtain values of a built-in or custom indicator in an Expert Advisor, first its handle should be created using the corresponding function. Examples in the article show how to use this or that technical indicator while creating your own programs. The article describes indicators that are built n the MQL5 language. It is intended for those who don't have much experience in the development of trading strategies and offers simple and clear ways of working with indicators using the offered library of functions.
![Custom Indicators in MQL5 for Newbies](https://c.mql5.com/2/0/s_002__1.png)
![Custom Indicators in MQL5 for Newbies](https://c.mql5.com/i/articles/overlay.png)
Custom Indicators in MQL5 for Newbies
Any new subject seems complicated and hard-to-learn for a newbie. Subjects that we know seem very simple and clear to us. But we simply do not remember, that everyone has to study something from scratch, and even our native language. The same is with the MQL5 programming language that offers wide possibilities of developing one's own trading strategies - you can start learning it from basic notions and simplest examples. Interaction of a technical indicator with the MetaTrader 5 client terminal is consider in this article on the example of the simple custom indicator SMA.
![The All or Nothing Forex Strategy](https://c.mql5.com/2/0/allVSzero.png)
![The All or Nothing Forex Strategy](https://c.mql5.com/i/articles/overlay.png)
The All or Nothing Forex Strategy
The purpose of this article is to create the most simple trading strategy that implements the "All or Nothing" gaming principle. We don't want to create a profitable Expert Advisor - the goal is to increase the initial deposit several times with the highest possible probability. Is it possible to hit the jackpot on ForEx or lose everything without knowing anything about technical analysis and without using any indicators?
![50,000 completed orders in the MQL5.com Freelance service](https://c.mql5.com/2/34/freelance-icon.png)
![50,000 completed orders in the MQL5.com Freelance service](https://c.mql5.com/i/articles/overlay.png)
50,000 completed orders in the MQL5.com Freelance service
Members of the official MetaTrader Freelance service have completed more than 50,000 orders as at October 2018. This is the world's largest Freelance site for MQL programmers: more than a thousand developers, dozens of new orders daily and 7 languages localization.
![Johnpaul77 Signal Providers: "Our Strategy Remains Profitable for More Than Three Years Now. So Why Would We Change It?"](https://c.mql5.com/2/10/4-Photo-for-Interview-Avatar-Tito.png)
![Johnpaul77 Signal Providers: "Our Strategy Remains Profitable for More Than Three Years Now. So Why Would We Change It?"](https://c.mql5.com/i/articles/overlay.png)
Johnpaul77 Signal Providers: "Our Strategy Remains Profitable for More Than Three Years Now. So Why Would We Change It?"
Let us reveal a little secret: MQL5.com website visitors spend most of their time on Johnpaul77 signal's page. It is a leader of our signal rating having about 900 subscribers with the total funds of $5.7 million on real accounts. We have interviewed the signal's providers. As it turned out, there are four of them! How are duties distributed among the team members? What technical tools do they use? Why do they call themselves John Paul? And finally, how have common gamers from Indonesia become providers of the top signal on MQL5.com? Find out all that in the article.
![The ZigZag Indicator: Fresh Approach and New Solutions](https://c.mql5.com/2/0/avatar2.png)
![The ZigZag Indicator: Fresh Approach and New Solutions](https://c.mql5.com/i/articles/overlay.png)
The ZigZag Indicator: Fresh Approach and New Solutions
The article examines the possibility of creating an advanced ZigZag indicator. The idea of identifying nodes is based on the use of the Envelopes indicator. We assume that we can find a certain combination of input parameters for a series of Envelopes, whereby all ZigZag nodes lie within the confines of the Envelopes bands. Consequently, we can try to predict the coordinates of the new node.
![Trading Signals in MetaTrader 5: A Better Alternative to PAMM Accounts!](https://c.mql5.com/2/0/signal_avatar.png)
![Trading Signals in MetaTrader 5: A Better Alternative to PAMM Accounts!](https://c.mql5.com/i/articles/overlay.png)
Trading Signals in MetaTrader 5: A Better Alternative to PAMM Accounts!
We are pleased to announce that MetaTrader 5 now features Trading Signals, thus giving a powerful tool to investors and managers. While you are following the trades of a successful trader, the terminal will be automatically reproducing them in your account!
![An example of an indicator drawing Support and Resistance lines](https://c.mql5.com/2/28/MQL5-avatar-SupportLines-001.png)
![An example of an indicator drawing Support and Resistance lines](https://c.mql5.com/i/articles/overlay.png)
An example of an indicator drawing Support and Resistance lines
The article provides an example of how to implement an indicator for drawing support and resistance lines based on formalized conditions. In addition to having a ready-to-use indicator, you will see how simple the indicator creation process is. You will also learn how to formulate conditions for drawing any desired line by changing the indicator code.
![The Channel Breakout pattern](https://c.mql5.com/2/30/breakthow_channel.png)
![The Channel Breakout pattern](https://c.mql5.com/i/articles/overlay.png)
The Channel Breakout pattern
Price trends form price channels that can be observed on financial symbol charts. The breakout of the current channel is one of the strong trend reversal signals. In this article, I suggest a way to automate the process of finding such signals and see if the channel breakout pattern can be used for creating a trading strategy.
![The Algorithm of Ticks' Generation within the Strategy Tester of the MetaTrader 5 Terminal](https://c.mql5.com/2/0/Ticks_Modelling_Algorithm_Metatrader5.png)
![The Algorithm of Ticks' Generation within the Strategy Tester of the MetaTrader 5 Terminal](https://c.mql5.com/i/articles/overlay.png)
The Algorithm of Ticks' Generation within the Strategy Tester of the MetaTrader 5 Terminal
MetaTrader 5 allows us to simulate automatic trading, within an embedded strategy tester, by using Expert Advisors and the MQL5 language. This type of simulation is called testing of Expert Advisors, and can be implemented using multithreaded optimization, as well as simultaneously on a number of instruments. In order to provide a thorough testing, a generation of ticks based on the available minute history, needs to be performed. This article provides a detailed description of the algorithm, by which the ticks are generated for the historical testing in the MetaTrader 5 client terminal.
![An Introduction to Fuzzy Logic](https://c.mql5.com/2/19/avatar__4.png)
![An Introduction to Fuzzy Logic](https://c.mql5.com/i/articles/overlay.png)
An Introduction to Fuzzy Logic
Fuzzy logic expands our boundaries of mathematical logic and set theory. This article reveals the basic principles of fuzzy logic as well as describes two fuzzy inference systems using Mamdani-type and Sugeno-type models. The examples provided will describe implementation of fuzzy models based on these two systems using the FuzzyNet library for MQL5.
![Self-optimization of EA: Evolutionary and genetic algorithms](https://c.mql5.com/2/22/images__2.png)
![Self-optimization of EA: Evolutionary and genetic algorithms](https://c.mql5.com/i/articles/overlay.png)
Self-optimization of EA: Evolutionary and genetic algorithms
This article covers the main principles set fourth in evolutionary algorithms, their variety and features. We will conduct an experiment with a simple Expert Advisor used as an example to show how our trading system benefits from optimization. We will consider software programs that implement genetic, evolutionary and other types of optimization, and provide examples of application when optimizing a predictor set and parameters of the trading system.
![Comparing different types of moving averages in trading](https://c.mql5.com/2/29/zcacct00h_ape02uz5y_q4fbs_uexqftdan4_p48gwsf_v_v4e923xz_2.png)
![Comparing different types of moving averages in trading](https://c.mql5.com/i/articles/overlay.png)
Comparing different types of moving averages in trading
This article deals with seven types of moving averages (MA) and a trading strategy to work with them. We also test and compare various MAs at a single trading strategy and evaluate the efficiency of each moving average compared to others.
![Indicator for Renko charting](https://c.mql5.com/2/0/LOGO__2.png)
![Indicator for Renko charting](https://c.mql5.com/i/articles/overlay.png)
Indicator for Renko charting
The article describes an example of Renko charting and its implementation in MQL5 as an indicator. Modifications of this indicator distinguish it from a classic chart. It can be constructed both in the indicator window and on the main chart. Moreover, there is the ZigZag indicator. You can find a few examples of the chart implementation.
![100 best optimization passes (part 1). Developing optimization analyzer](https://c.mql5.com/2/34/TOP100passes.png)
![100 best optimization passes (part 1). Developing optimization analyzer](https://c.mql5.com/i/articles/overlay.png)
100 best optimization passes (part 1). Developing optimization analyzer
The article dwells on the development of an application for selecting the best optimization passes using several possible options. The application is able to sort out the optimization results by a variety of factors. Optimization passes are always written to a database, therefore you can always select new robot parameters without re-optimization. Besides, you are able to see all optimization passes on a single chart, calculate parametric VaR ratios and build the graph of the normal distribution of passes and trading results of a certain ratio set. Besides, the graphs of some calculated ratios are built dynamically beginning with the optimization start (or from a selected date to another selected date).
![Night trading during the Asian session: How to stay profitable](https://c.mql5.com/2/30/timezone.png)
![Night trading during the Asian session: How to stay profitable](https://c.mql5.com/i/articles/overlay.png)
Night trading during the Asian session: How to stay profitable
The article deals with the concept of night trading, as well as trading strategies and their implementation in MQL5. We perform tests and make appropriate conclusions.
![How to Install and Use OpenCL for Calculations](https://c.mql5.com/2/0/avatar__4.png)
![How to Install and Use OpenCL for Calculations](https://c.mql5.com/i/articles/overlay.png)
How to Install and Use OpenCL for Calculations
It has been over a year since MQL5 started providing native support for OpenCL. However not many users have seen the true value of using parallel computing in their Expert Advisors, indicators or scripts. This article serves to help you install and set up OpenCL on your computer so that you can try to use this technology in the MetaTrader 5 trading terminal.
![Comparative Analysis of 10 Trend Strategies](https://c.mql5.com/2/26/MQL5-avatar-sravn-analiz-001__1.png)
![Comparative Analysis of 10 Trend Strategies](https://c.mql5.com/i/articles/overlay.png)
Comparative Analysis of 10 Trend Strategies
The article provides a brief overview of ten trend following strategies, as well as their testing results and comparative analysis. Based on the obtained results, we draw a general conclusion about the appropriateness, advantages and disadvantages of trend following trading.
![14,000 trading robots in the MetaTrader Market](https://c.mql5.com/2/34/market-avatar.png)
![14,000 trading robots in the MetaTrader Market](https://c.mql5.com/i/articles/overlay.png)
14,000 trading robots in the MetaTrader Market
The largest store of ready-made applications for algo-trading now features 13,970 products. This includes 4,800 robots, 6,500 indicators, 2,400 utilities and other solutions. Almost half of the applications (6,000) are available for rent. Also, a quarter of the total number of products (3,800) can be downloaded for free.
![SQLite: Native handling of SQL databases in MQL5](https://c.mql5.com/2/49/SQLite_handling_databases_mql5_600x314.jpg)
SQLite: Native handling of SQL databases in MQL5
The development of trading strategies is associated with handling large amounts of data. Now, you are able to work with databases using SQL queries based on SQLite directly in MQL5. An important feature of this engine is that the entire database is placed in a single file located on a user's PC.
![Neural network: Self-optimizing Expert Advisor](https://c.mql5.com/2/24/Red_Neuronal.png)
![Neural network: Self-optimizing Expert Advisor](https://c.mql5.com/i/articles/overlay.png)
Neural network: Self-optimizing Expert Advisor
Is it possible to develop an Expert Advisor able to optimize position open and close conditions at regular intervals according to the code commands? What happens if we implement a neural network (multilayer perceptron) in the form of a module to analyze history and provide strategy? We can make the EA optimize a neural network monthly (weekly, daily or hourly) and continue its work afterwards. Thus, we can develop a self-optimizing EA.
![The Easy Way to Evaluate a Signal: Trading Activity, Drawdown/Load and MFE/MAE Distribution Charts](https://c.mql5.com/2/24/Signals.png)
![The Easy Way to Evaluate a Signal: Trading Activity, Drawdown/Load and MFE/MAE Distribution Charts](https://c.mql5.com/i/articles/overlay.png)
The Easy Way to Evaluate a Signal: Trading Activity, Drawdown/Load and MFE/MAE Distribution Charts
Subscribers often search for an appropriate signal by analyzing the total growth on the signal provider's account, which is not a bad idea. However, it is also important to analyze potential risks of a particular trading strategy. In this article we will show a simple and efficient way to evaluate a Trading Signal based on its performance values.
![Graphical Interfaces I: Preparation of the Library Structure (Chapter 1)](https://c.mql5.com/2/21/Graphic-interface.png)
![Graphical Interfaces I: Preparation of the Library Structure (Chapter 1)](https://c.mql5.com/i/articles/overlay.png)
Graphical Interfaces I: Preparation of the Library Structure (Chapter 1)
This article is the beginning of another series concerning development of graphical interfaces. Currently, there is not a single code library that would allow quick and easy creation of high quality graphical interfaces within MQL applications. By that, I mean the graphical interfaces that we are used to in familiar operating systems.
![Writing an Expert Advisor Using the MQL5 Object-Oriented Programming Approach](https://c.mql5.com/2/0/Expert_Advisor_classes_MQL5.png)
![Writing an Expert Advisor Using the MQL5 Object-Oriented Programming Approach](https://c.mql5.com/i/articles/overlay.png)
Writing an Expert Advisor Using the MQL5 Object-Oriented Programming Approach
This article focuses on the object oriented approach to doing what we did in the article "Step-By-Step Guide to writing an Expert Advisor in MQL5 for Beginners" - creating a simple Expert Advisor. Most people think this is difficult, but I want to assure you that by the time you finish reading this article, you will be able to write your own Expert Advisor which is object oriented based.
![Limitless Opportunities with MetaTrader 5 and MQL5](https://c.mql5.com/2/0/TW_logoMarket_60x60.png)
![Limitless Opportunities with MetaTrader 5 and MQL5](https://c.mql5.com/i/articles/overlay.png)
Limitless Opportunities with MetaTrader 5 and MQL5
In this article, I would like to give an example of what a trader's program can be like as well as what results can be achieved in 9 months, having started to learn MQL5 from scratch. This example will also show how multi-functional and informative such a program can be for a trader while taking minimum space on the price chart. And we will be able to see just how colorful, bright and intuitively clear to the user trade information panels can get. As well as many other features...
![Money Management by Vince. Implementation as a module for MQL5 Wizard](https://c.mql5.com/2/30/MQL5-avatar-capital-001.png)
![Money Management by Vince. Implementation as a module for MQL5 Wizard](https://c.mql5.com/i/articles/overlay.png)
Money Management by Vince. Implementation as a module for MQL5 Wizard
The article is based on 'The Mathematics of Money Management' by Ralph Vince. It provides the description of empirical and parametric methods used for finding the optimal size of a trading lot. Also the article features implementation of trading modules for the MQL5 Wizard based on these methods.
![Fast Dive into MQL5](https://c.mql5.com/2/68/dive_600x314.jpg)
Fast Dive into MQL5
You have decided to study MQL5 trading strategies' programming language, but you know nothing about it? We have tried to examine MQL5 and MetaTrader 5 terminal from the newcomers' point of view and have written this short introductory article. In this article, you can find a brief idea of the possibilities of the language, as well as some tips on working with MetaEditor 5 and the terminal.
![Merrill patterns](https://c.mql5.com/2/36/Article_Logo__3.png)
![Merrill patterns](https://c.mql5.com/i/articles/overlay.png)
Merrill patterns
In this article, we will have a look at Merrill patterns' model and try to evaluate their current relevance. To do this, we will develop a tool to test the patterns and apply the model to various data types such as Close, High and Low prices, as well as oscillators.
![Create Your Own Graphical Panels in MQL5](https://c.mql5.com/2/0/graph_pannels_MQL5.png)
![Create Your Own Graphical Panels in MQL5](https://c.mql5.com/i/articles/overlay.png)
Create Your Own Graphical Panels in MQL5
The MQL5 program usability is determined by both its rich functionality and an elaborate graphical user interface. Visual perception is sometimes more important than fast and stable operation. Here is a step-by-step guide to creating display panels on the basis of the Standard Library classes on your own.
![MQL5 for beginners: Anti-vandal protection of graphic objects](https://c.mql5.com/2/20/ava.png)
![MQL5 for beginners: Anti-vandal protection of graphic objects](https://c.mql5.com/i/articles/overlay.png)
MQL5 for beginners: Anti-vandal protection of graphic objects
What should your program do, if graphic control panels have been removed or modified by someone else? In this article we will show you how not to have "ownerless" objects on the chart, and how not to lose control over them in cases of renaming or deleting programmatically created objects after the application is deleted.
![MQL5 Wizard: How to Create a Module of Trading Signals](https://c.mql5.com/2/0/MQL5_CExpertSignal.png)
![MQL5 Wizard: How to Create a Module of Trading Signals](https://c.mql5.com/i/articles/overlay.png)
MQL5 Wizard: How to Create a Module of Trading Signals
The article discusses how to write your own class of trading signals with the implementation of signals on the crossing of the price and the moving average, and how to include it to the generator of trading strategies of the MQL5 Wizard, as well as describes the structure and format of the description of the generated class for the MQL5 Wizard.
![AutoElliottWaveMaker - MetaTrader 5 Tool for Semi-Automatic Analysis of Elliott Waves](https://c.mql5.com/2/0/ElliottWaveMaker2_0.png)
![AutoElliottWaveMaker - MetaTrader 5 Tool for Semi-Automatic Analysis of Elliott Waves](https://c.mql5.com/i/articles/overlay.png)
AutoElliottWaveMaker - MetaTrader 5 Tool for Semi-Automatic Analysis of Elliott Waves
The article provides a review of AutoElliottWaveMaker - the first development for Elliott Wave analysis in MetaTrader 5 that represents a combination of manual and automatic wave labeling. The wave analysis tool is written exclusively in MQL5 and does not include external dll libraries. This is another proof that sophisticated and interesting programs can (and should) be developed in MQL5.
![Studying candlestick analysis techniques (part III): Library for pattern operations](https://c.mql5.com/2/35/Pattern_I__4.png)
![Studying candlestick analysis techniques (part III): Library for pattern operations](https://c.mql5.com/i/articles/overlay.png)
Studying candlestick analysis techniques (part III): Library for pattern operations
The purpose of this article is to create a custom tool, which would enable users to receive and use the entire array of information about patterns discussed earlier. We will create a library of pattern related functions which you will be able to use in your own indicators, trading panels, Expert Advisors, etc.
![Learn how to design a trading system by RSI](https://c.mql5.com/2/45/why-and-how__4.png)
![Learn how to design a trading system by RSI](https://c.mql5.com/i/articles/overlay.png)
Learn how to design a trading system by RSI
In this article, I will share with you one of the most popular and commonly used indicators in the world of trading which is RSI. You will learn how to design a trading system using this indicator.
![Using the Kalman Filter for price direction prediction](https://c.mql5.com/2/30/1hud7w_rw12bho.png)
![Using the Kalman Filter for price direction prediction](https://c.mql5.com/i/articles/overlay.png)
Using the Kalman Filter for price direction prediction
For successful trading, we almost always need indicators that can separate the main price movement from noise fluctuations. In this article, we consider one of the most promising digital filters, the Kalman filter. The article provides the description of how to draw and use the filter.