Back to Blog

 

Anyone interested in financial market statistical analysis will need to process historical data. To backtest or train, you'll need historical data: 

 

- Quantitative trading is a term that refers to the practice of trading with 
- Trading based on statistics. 
- Replay and walkthrough of the price activity. 

 

Each requirement stems from a distinct set of objectives. 


There are three reasons why backtesting and statistical analysis are required. 

Backtesting and statistical analysis are used in trading for a variety of reasons, which can stem from a variety of trading styles and methodologies: 

- An intraday trader may be interested in obtaining statistical data on the likelihood of opening gaps closing during the trading session. 


- A price action discretionary trader may choose to replay historical data for training purposes or to simply browse through previous trading days. 


- Simulate and backtest your algorithms if you're a quantitative or algorithmic trader. 

While each method to markets is unique, they all require the same computations to be performed on the available data. 
There are three ways to go about it. 

 

When it comes to historical data analysis, there are three primary approaches: 

- It is possible to use a trading platform such as Metatrader or Pro Real-Time, to name two well-known software programs among retail traders. They offer programming and backtesting capabilities, as well as the convenience of being the same tool that is used to place orders. 


- To undertake all data analysis and backtesting, a specific backtesting software (such as Amibroker -to name one affordable option-) can be employed. They are usually more specialized in backtesting and profiling than standard stock chart software, and hence can be thought of as a more rigorous method. 


- R and Python are the two most often used languages for developing custom software. This is the most expensive option in terms of resources and time, but it is also the most flexible, as it does not limit what and how data can be analyzed. Using a programming language also gives you access to all of the math libraries you'll need, as well as the ability to tune the performance if necessary. 

 

There are many differing viewpoints on which approach is the best. However, trade-offs exist in technology and business, and the context will favor one option over the others. 

 

If you're conducting algorithmic trading and want to keep with price and standard indications, using a software chart trading tool like Metatrader might be the best solution, and it will make it easier to place the actual algorithmic approach in the market later. 

 

Using specialized backtesting software is a more extensive technique to backtesting. This has extra advantages because you can take advantage of the tool's advanced analyses and capabilities. The learning curve will most likely be comparable to that of trading/charting software, with the added step of determining how to put the information into something useful. It will also come with an additional expense, albeit there are some solutions that are reasonably priced. 

 

Existing tools and frameworks will require you to follow specific lines of research/strategy, therefore custom software could save you time and grief if you're undertaking unusual analysis. 

 

In this scenario, the programming language used is also important. This is undoubtedly the most serious and adaptable technique, but it is also the most resource and time-intensive. If you do not intend to invest the requisite dedication, skills, time, or resources, it must be considered a poor choice. 

 

You can also mix and match these options because they are not mutually exclusive. For more typical analysis and profiling, you could use a backtesting platform, and for extremely particular analysis that is difficult to execute inside existing frameworks, you could utilize custom software. 


There are certain reservations about utilizing Metatrader. 

We seriously considered using Metatrader because it is free and is the charting and trading program when you use it for CFDs. 

Because it is a commercial framework, it has the typical flaws that come with this type of product: 

 

- The learning curve is not as simple as vendors and product advocates claim. 


- Their initial setup is frequently complicated. Getting our first histogram can be difficult at times. 


- When you perform normal things, they save time, but when you do things outside of the box, they are much more difficult because you are confined. 


- Because they were built as modular and layered software to deal with a wide range of assets and scenarios, they frequently suffer performance concerns. 


- There are blind spots in the tool where it is either too complicated to use or impossible to do what you want. 


- You have to study a lot of things, but you only use a small portion of them. 

The key benefits are that you can usually acquire fruitful results quickly and that community support is usually easy to get by. 


Using Metatrader as a trading platform 

We got the opportunity to speak with a trader who does statistical analysis as part of his business when I became interested in it. He made some excellent points about why he uses Metatrader, but one of his remarks piqued my interest: 

Metatrader is probably the finest option because it allows you to see the data and includes all indicators. Regardless, it does not appeal to me in the least. 

When someone who has put in the time to grasp a software product isn't completely satisfied with it, that should raise an alarm. 

This coworker has already completed the Metatrader learning curve with flying colors. He was able to overcome all of the restrictions of a commercial framework by properly combining his previous efforts with Metatrader's actual benefits and capabilities (which are relevant once you cope with the initial learning curve). 

We also knew that this person might not be willing to create a custom tool and that the ultimate goal was to get a trading robot that worked. Metatrader was probably the best solution in this situation. 

Following this exchange, We looked through the Metatrader manual to see how We might acquire basic statistical outputs. We couldn't figure out how to do basic and simple analysis, and We discovered that the data didn't have any genuine data models in place. We simply did not like what We observed -and this, of course, is a personal view based on our prior experience with technology frameworks. Any backtesting tool, in our opinion, should be able to simply import data and provide basic statistics with less effort from a dedicated user. 

We chose to keep looking and evaluating the bespoke software option because We didn't think Metatrader was for me. Despite the fact that it is not the option we picked, Metatrader is arguably the fastest and safest technique to gain quick results. 


Amibroker is a program that allows you to trade stocks. 

Jane Fox of Quantitrader is a firm believer in the quantitative approach. She only uses statistically supported methods, and when listening to her in an interview, We saw she was using Amibroker, which piqued my curiosity in both the software package and the abstract concept of employing a specialized backtesting software program. 

 

As a pure quantitative trader, you'll probably find that a specific backtesting software technique is best for this activity. Her strategy is built on backtesting. It's also worth noting that Jane appears to trade equities in swings, so she won't need to comprehend minute candle bars or perform out-of-the-box research. 

 

Being able to quickly incorporate all necessary indicators and tools into backtesting saves time and money in this circumstance. 

 

We are sure that, like with Metatrader, learning to use them isn't as simple as manufacturers and fans claim. 


Making your own bespoke software is a great way to express yourself. 

We used opening gaps as an example at the start of this post. We brought it up on purpose because it was at a Jose Codina seminar that we became interested in the statistical analysis of financial markets. 

Jose Codina is a well-known Spanish trader who has been employing statistical analysis for the previous two decades. The session was about DAX opening gaps, and it was an excellent introduction to how to study a certain market element. He was utilising a proprietary platform (if I remember properly, he was using custom C# software) because the analysis was so specific. The speed with which the research was completed (which included evaluating 1-minute candles for multiple years of DAX futures), as well as the entire analytical process employed to handle the problem, astounded me. 


Last but not least, 

We are mostly interested in intraday trading, and in particular, the relationship between short-term price activity and the market's statistical makeup. Because my requirements were so particular, We ultimately determined that custom software would be the best option for me. 

 

It does not provide immediate results, but it does allow you to create a personalized and familiar framework that is tailored to your specific needs. If you are not finicky about usability (creating commercial software is a different story, but that is not my goal), and you use a UNIX/Linux environment, you can leverage on existing packages, certain factors such as graphics capabilities and user interface can be simply addressed. 

 

It's true that more time and resources are required, but it's also true that commercial products enforce a strict environment and come with their own learning curve. Because the commercial product is not clearly documented, using a standard programming language will not be difficult, as procedures are well known and understood, and faults can be resolved over time but without drama. 

 

Anyway, We believe that a dedicated backtesting tool, out of the three alternatives, would be an excellent decision, and we intend to test one extensively in the near future.


You can start building your own Portfolio Tools with Finage free Historical market data API key.

Build with us today!

Get Free API key