What is the main application of Python in the financial field? What types and types of financial companies will be applied?

Source: Internet
Author: User
0 reply: python is a dynamic programming language with simple syntax. To some extent, it is similar to matlab and SAS. Combined with several powerful scientific computing libraries of python: numPy (mainly basic mathematical aspects), SciPy (very powerful in numerical computation, including NumPy), SymPy (Symbol Library), matplotlib (Drawing Library) and Traits (program interface library), which can replace matlab, C ++, and SAS. The reason is:

First, python is a complete dynamic programming language. Although the execution efficiency is inferior to that of C ++, the development efficiency is much higher than that of C ++, and the learning cost is small, financial engineering is more suitable than C ++. After all, when we make our own models, we are more concerned about how to quickly implement the models, rather than how quickly the models run for several seconds, of course, it is more appropriate to use C ++ for large-scale financial products. This is what programmers do. we generally do not write tens of thousands of lines of code. In this respect, python can replace C ++.

Second, python can use NumPy, SciPy, SymPy, matplotlib, and other class libraries to complete functions above matlab 90%. What is lacking is very special functions. In addition, these are free of charge. Although piracy in China is very serious now, it is obviously moving towards positive version. Who will guarantee free matlab in the future? These class libraries are still developing. exceeding matlab is only a matter of time. Not only that, it is very convenient for python to use its interface library to create a program interface. The visual programming is refreshing, and python can also be implemented, and it can be implemented better, this is far from enough in matlab. With this function, we can use python to prepare a program and publish it to others. Just like using a word program, this degree of convenience is far from matlab. For example, if we want to capture some data on the Internet, it is troublesome to use matlab, and using python is extremely simple. Python can greatly accelerate the automation and simplicity of our research. All we need is to study python for a while.

Third, python replaces SAS. In fact, python has no obvious advantage in this aspect. The statistical function is inferior to SAS, but the advantage of using python is that we do not need to learn the SAS language again, especially for financial engineering majors, there is not much time and need to learn SAS. We are not engaged in professional data statistics. Most of the functions of SAS can be implemented in python, but it is more difficult to implement than SAS. For financial engineering professionals, it is better to select a combination of python + Eviews for SAS, eviews are very simple and almost no learning is required. Python is easy to learn and worth it.

The biggest benefit of choosing python is that it can save learning time and be flexible, and can adapt to changing needs in the future. The rest of the time is better than studying how to innovate in the financial engineering theory and application, and there is no need to waste time on learning tools.

In addition, if you need to write crawlers to capture financial data, python is also the first choice. We recommend the scrapy framework. First, language is just a tool. What is important for an employee is how long it takes to master a new language, if you go to Goldman on the street, you need to implement Slang (basically Python syntax) and JPMorgan. BoA uses Python for both core strategist (desk quant) and middle-end backend, of course, library quant is still writing C ++ in a down-to-earth Manner. At least one or two libraries in the International Investment Bank have used python to unify most production environments (such as Athena of JPM ). Although python may be slow, only a small number of python groups in banking and securities companies' businesses become bottlenecks. The advantage is that code can be generated quickly and put into use, it can also be easily linked to the existing system, so that you can gradually upgrade.
Of course, some banks agree with the previous answer using python in some projects, just to add to SAS: SAS is not a simple statistical function of other software, and its data is cleaned up, the data management capability is incomparable to that of other software. It is estimated that python and eviews cannot match each other. I can only show that Python is not suitable Based on the tag given by the subject.

For the mainstream HFT, I have never seen Python, but I should still use pure C.
For specific reasons, refer to the answer from THU's HFT @ Dong Keren:
Which level of latency does Python support for high-frequency transaction systems? -Dong Keren's answer

If I do not consider HFT, I agree with @ Qiu sagao's answer.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.