Does financial engineering currently use python?

Source: Internet
Author: User
Now I am using Python for numericanalysis. What happens in my actual work? Now I am using Python for numeric analysis. What about it in actual work? Reply: The software used varies with quant positions.
If the pricing model is used, matlab is probably the most frequently used, because the language is simple and the expansion package is excellent. It is most suitable for derivative pricing that does not require time.
For high-frequency transactions, C ++ is the most commonly used, because it is fast. Many high-frequency companies have their own underlying packages, and have spent a lot of manpower and material resources to maintain them.
If you write a profit model, you will choose R more. R contains many cutting-edge statistical model packages. It is very powerful for statistical analysis and time series processing. But the expansion package does not have the stability of matlab.
For Python, it is more like an all-powerful programming requirement. Whether it is packet capture, statistical analysis, or numerical analysis, there are still good solutions. However, in the professional field, it is still weaker than the language mentioned above.
In fact, different financial companies have different languages and traditions. Some prefer C ++, some prefer C #, and some prefer Java. However, a mature company needs to provide good support for these languages. After all, it is very rare to have a good trader. Is it because of the different languages that can make him fortune?
In fact, software is only a carrier, and thoughts are the core. Where I work, we all use VBA. Full Screen Excel during transaction. As long as you can complete the work, who cares what language you use. Conclusion: Tools and languages are not the focus. Mathematical Ability and market understanding.

I have been to several major international banks and the mainstream tools are

1. C ++ on the company's own platform
2. Python on the company's own platform
3. Matlab
4. R

Among them, 1 and 2 emphasize autonomous platforms mainly because their important Libraries and some syntaxes are customized and can basically be considered as semi-independent languages. Learning by yourself is of little significance. There are a lot of senior coders in the company. The main ability of a quant is actually a mathematical ability, and others can be written.

The same applies to large funds. Vba has everything about small funds. First, answer the question of the subject, In the financial engineering field, Python is not only in use, but also the most widely used, and its importance increases year by year.. Reason: As a Dynamic Language Python, the language structure is clear and simple, the database is rich, mature and stable, scientific computing and statistical analysis are awesome, production efficiency is far higher than c, c ++, java, especially good at policy retest.

There are also some exceptions:
1. In the past, it formed a system dominated by other languages. For example, if the platform was written in C ++, the APIS were all C ++, and the old people were also proficient in C ++, then they are dominated by C ++.
2. Some organizations focus on research. Maybe they use Matlab and R.
3. C ++, JAVA, VB, and other languages are talented Coder. I can only worship them remotely. You use assembly ten times more efficient than I do. You are my God.

Describe myself again. According to the classification on zhihu, I should calculate a Trader and a Trader that will write programs. My job is to analyze data, discover patterns, develop and validate strategies, then trade, then optimize and adjust, and repeat. We use automatic trading, but high-frequency trading is not my scope.
I personally switched from C/C ++ to JAVA and then to Python for no reason or efficiency. My team also agrees with my ideas because people have limited energy, too much time to write programs, and less time to make money in transactions.
Why I prefer Python:
1. correctness means efficiency. The more complex and lower the language, the higher the error rate. The BUG leads to data analysis errors and transaction policy program crashes. If it is light, the transaction opportunity is missed, and the transaction policy itself leads to losses, that kind of tearful feeling...
2. Python focuses on development efficiency. Imagine the same transaction strategy. I have completed the retest and submitted a report to the boss to apply for the transaction quota. You are still debugging C ++, the boss will not think that you are diligent, the boss will think that you are an animal, and then think about it, such as the red envelope thickness at the end of the year ....
3. The performance of Python is not bad. Python still calls the C library, and PVM is considered. In fact, the performance difference between Python and C is negligible. Really care about the tiny performance of the difference, it is recommended to spend 20 thousand dollars to buy the latest mac pro, direct second kill. What do you mean? The organization does not allocate a budget? For pleasure, is it okay at your own expense ?.
4. The language is not the main performance bottleneck, and the network and equipment have a greater impact. For example, the C ++ program is faster than 2 us, and the network delay is 1 ms.

I am familiar with my peers, who know Python and have the ability to switch to Python. Some programmers have the right to say that they cannot switch. You understand.

The following are some exceptions:
First, there is a kind of accumulation of history. It is a knowledge base, and it is a burden of history. The vast majority of policies on the old platform have expired and should have been retried.
Second, those who sell analysis reports, those who use Matlab, R, may still be interns, or even never trade. Is his report reliable. Further, if the report is reliable, why doesn't he trade on his own and create a Renaissance? Why is it silly to tell you? Or is it silly to buy a report?


I haven't been there for two days. I have a lot of followers. Please clarify. When I posted this post, I had just completed my work late at night. I was beaten by a cell phone on the car. I was so sloppy and disrespectful to my brother. I apologize first.
The A-share market is booming. I have been working overtime these days. I just woke up and said wrong. Please forgive me. There are several good strategies to be implemented this year. If you are interested, I can share them with you. Of course, I will mainly discuss Python's Application in financial engineering.
========================================================== ====================================
Originally written here:
First, you are ranking first. First, you are a layman. People ask Python. If you understand Python, you can directly talk to people about Python.
There are other things that don't matter about tools. You just don't need to use a computer. You can't use paper or pen. You only need to run one strategy for half your life. You can run two for the rest of your life. Don't worry, take it easy.
As a dynamic-Language Python, the language structure is clear and simple, the database is rich, mature and stable, scientific computing and statistical analysis are awesome, production efficiency is far higher than c, c ++, java, especially good at policy retest, early in the beginning is the first choice for all major banks.

In all ages, the performance of a PC is far better than that of a mainframe. Anyone who has the time to give you c and c ++ knows how to use it. Look at the Article 5 years ago
Python is expected to become a financial language

Http://www.infoq.com/cn/news/2010/04/Python-ABS

It is common for the financial industry to use Python and R for research. Python works with the scientific data computing module to do a lot of work. From the quant industry across the United States, quant's usage of python is still quite high. One of the three four mainstream languages is correct. By referencing a math's sister, python is the second generation language relative to C ++. Children in engineering may use more matlab, while children in Medical Statistics Use SAS. As a matter of fact, I learned how to work on projects and quickly got familiar with it for one month and became proficient for three months.

The Programming language is actually a computer-oriented language invented with English + symbols + mathematics. If you have a good grasp of these three items, you can start learning them directly. Don't worry about it... Quant's core capability is to learn quickly and quickly master it. Come on! Above ~ First of all, you are a layman. Maybe you have been involved in one or two industries. But in terms of finance, you should not be confused.
Different business types, different functional components, different corporate cultures, and different team skill proficiency determine the language used for business development, hardware architecture, and database, select the development mode.
Python is easy to use, with fast development speed and high production efficiency. It is still beyond the control of its power. If you don't know it, don't be blind. Software and tools are not the focus, so you can get started after much training. The key is mathematical basics and application capabilities.

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.