Programming Languages for Economics

Programming
Economics

I shortly touch upon the programming languages to use in economics and finance

Author
Affiliation

Goethe University Frankfurt

Published

October 1, 2021

Those who study economics and finance or any relevant discipline begin to be exposed to different software to benefit from the real-life data at hand. From my point of view, an important question emerges out of this process: Which one should I use? Is there any single software that can meet all my needs to perform my tasks? The answer to this question very much depends on the specific subject area you work on. Put differently, there is no ideal single software that performs very well for each one. This leads us to the subject area we work again. Depending on the tasks we work on, we may prefer different ones and dismiss others. For instance, those who concentrate on macroeconomics and economic modeling use Matlab or Octave because they allow macro people to run Dynare aimed at Dynamic Stochastic General Equilibrium (DSGE) models. In that sense, those who plan to get a Master’s or Ph.D. in the macro area are well-advised to learn Matlab. However, this is only a piece of the whole picture. If you deal with econometrics and statistics you can use Stata, Eviews, or R and each of them is well suited for a specific sub-area. More clearly, if you generally use micro/panel data, Stata is the best option. The loop and conditional statements are really handy. However, if you focus on time series econometrics, it is better to use Eviews. It has drop-down menus and is handy for a quick and short analysis of time series. From this perspective, Eviews outperforms Stata but it is really bad for micro/panel data analysis. I should point out that in each of them you can do what want but it comes at a higher cost! Therefore, the actual point is to minimize the cost that we put into using that software. On the other hand, we can do all this econometric staff on R as well but it does not have drop-down menus and it might be a little onerous to get used to. However, R is great for data analysis and data visualization. As we all observe, data science begins to get importance each day mainly due to the large and complex data becoming available. Therefore, R is a big and potential software to invest in. What is more, it is free and you can find almost anything in it with myriads of different packages. On the other hand, the preferences for using the software are also subject to change! As technology improves, the capabilities of new software also begin to outperform that of old ones. Also, this new software is free and its codes are available on different platforms. You can develop a package or contribute to it. This feature of new software makes them expand very quickly and have very active communities. One of the most popular and attractive ones in Python. It is really useful for data analysis and it has different scientific libraries. Because of the rise of Python, Matlab begins to lose its popularity even among macro guys. However, in all of this software, we have an important problem: Speed. Depending on your subject, speed may become an important factor for your analysis. For example, even though Python is useful for data analysis and it has different scientific libraries, perhaps it is not as fast as we want! At this point, we meet a new candidate: Julia. Julia language is developed by MIT. Its syntax is very similar to that of Matlab and Python and it does not bring a big-time cost if you want to learn. The beauty of Julia is that it is very fast, because of its property called Multiple Dispatch. It is almost as fast as C & Fortran with very clean syntax. That makes Julia fun to work with. For example, the Federal Reserve Bank of New York has switched to Julia for their DSGE models because of Julia’s speed (it is much faster than Matlab). These properties of new software are killing Matlab. Furthermore, Julia also has different packages for data analysis and the Julia community is expanding fast. All in all, the answer to the question that which software to use depends on what you do.

Citation

BibTeX citation:
@online{ciftci2021,
  author = {Muhsin Ciftci},
  editor = {},
  title = {Programming {Languages} for {Economics}},
  date = {2021-10-01},
  langid = {en}
}
For attribution, please cite this work as:
Muhsin Ciftci. 2021. “Programming Languages for Economics.” October 1, 2021.