金融工程现在用python多吗?
现在上有关numeric analysis的课时,都用Python,实际工作时候呢?
回复内容:
对于不同的quant岗位,使用的软件大不相同。如果是做定价模型的,可能最经常用的是matlab,因为语言简单,扩展包优良。对于不需要对时间有要求的衍生品定价,最为适合。
如果是做高频交易,最常用的是C++,因为速度快。有很多的高频公司,都有自己写的底层包,并为此花了大量的人力和物力去维护。
如果是写盈利模型的,会更多的选择R。R里面有很多前沿的统计模型包。对于统计分析和时间序列处理非常强大。但是扩展包没有matlab的稳定。
对于Python 而言,更像是一种全能的编程需要。无论是网络抓包,统计分析,还是数值分析,都有还算不错的方案。但是,在专业领域方面,还是弱于上边提到的语言。
其实在不同的金融公司,有着不同的语言使用传统,有的喜欢C++,有的喜欢C#,有的喜欢Java。但是对于一个成熟的公司而言,需要对这些语言都提供良好的支持。毕竟一个好的trader是十分难得的,难道就因为使用语言的不同就拒绝能让他发财的人才么?
其实,软件只是一个载体,思想才是最核心的。我工作的地方,大家都用VBA。交易的时候,满屏的Excel。只要能完成工作,谁管你用什么语言。 先来结论:工具和语言不是重点。数学能力和市场理解才是。
本人去过几间国际大行,主流工具有
1. 公司自主平台上的C++
2. 公司自主平台的Python
3. Matlab
4. R
其中1和2之所以要强调自主平台 主要是因为其重要库和部分语法都是定制的,基本可以看作半个独立语言了。自己在外学习意义不大。公司内高级码农一大堆,一个quant的主要能力其实是数学能力,其他能写就可以了。
在大型基金也是一样。小型基金什么行什么上,vba都有。 先正面回答题主的问题,在金融工程领域,Python不但在用,用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测。
也有一些例外:
1、过去形成了其他语言为主的体系,比如平台以C++编写,API都是C++的,老人也熟练C++,那么他们以C++为主。
2、有些机构以研究为主,也许他们使用Matlab,R。
3、C++、JAVA、VB等各种语言的天才Coder,我只能远距离膜拜,你们用汇编也比我的效率高十倍,你们是我心目中的神。
再描述一下自己,按照知乎上的分类,我应该算一个Trader,一个会写程序的Trader。我的工作是分析数据、发现规律、制定和验证策略,然后交易,然后优化调整,往复循环。我们用自动交易,但高频交易不是我的范围。
我个人是从C/C++转向JAVA,然后又转向Python,原因无他,效率。人的精力有限,写程序的时间多,交易赚钱的时间就少,我的团队也非常认同我的想法。
我偏好Python的原因:
1、正确就是效率。越复杂、越低级的语言,出错率越高,BUG导致数据分析错误、交易策略程序崩溃,轻则错失交易机会,重则交易策略本身导致亏损,那种欲哭无泪的感觉...
2、Python重在开发效率,设想同一个交易策略,我已经完成回测,给老板打报告申请交易额度了,而你还在调试C++,老板不会认为你勤奋,老板会认为你是某种动物,再往远想想,比如年底咱俩的红包厚度...。
3、Python的性能不差,Python还是调用C库,再考虑PVM,其实和C的性能差别基本上可以忽略不计。确实在乎相差的微小性能,建议花2万块买个最新的MAC PRO,直接秒杀。你说什么?单位不给拨预算?为了快感,自费行不行?。
4、语言不是主要性能瓶颈,网络、设备等造成的影响更大,比如C++程序快了2us,而网络延迟就耗去了1ms。
我熟悉的同行,了解Python的,有能力的都在往Python转,也有一部分是程序员说了算,转不了的,你们懂的。
再扒一扒前面几个例外情况,这部分作为娱乐,不属于内容:
第一种,就是有历史积累的那种,说的好听是知识库,说的不好听那就是历史包袱。老平台上绝大多数策略都已经失效了,早都该推倒重来了。
第二种,那些卖分析报告的,那些用Matlab,R的,也许可能还是个实习生,甚至从来就没有交易过,他的报告可靠吗。再进一步,如果报告是可靠的,他为什么不自己交易,再造一个文艺复兴,为什么要告诉你呢,他是大傻?或者买报告的是大傻?
两天没来,关注的人多,澄清一下。发这贴的时候深夜刚加完班,在车上手机草草打的,言辞草率,对兄弟不敬,先道歉。
A股行情火爆,这几天都在加班,刚睡醒,说错了请包涵。今年执行策略有几个不错,如果大家有兴趣,我可以分享两个,当然还是讨论Python在金融工程的应用为主。
======================================================================
原来写的在这:
先说排名第一的,一看你就是个外行,人家问Python,你要是懂,就直接跟人说Python,不懂还要装逼,知乎上净是你这种货色。
还有那些说工具不重要的,你干脆别用计算机了,回去用纸笔行不行,只要半辈子就能跑一条策略了,你一辈子能跑两条呢,别着急,慢慢来。
作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测,早就是各大行的首选。
都什么年代了,一台PC的性能就远超过去的大型机,谁有功夫给你c和c++,就知道瞎bb。 看看5年前的文章
Python有望成为金融语言
http://www.infoq.com/cn/news/2010/04/Python-ABS
金融行业用Python,R做研究都比较常见。 Python 配合科学数据计算模块,能做很多事了。 如果从整个美国这边quant行业来看,quant们用python应用比例还是挺高的,三四种主流语言之一吧。引用一位数学博士姐姐的话,python is the second generation language 相对于C++。工程的孩子可能用matlab更多,而医学统计等则用SAS。事实上认真学,做项目,学起来很快 一个月熟悉,三个月熟练。Programming语言 其实就是用英文 +符号+ 数学发明的一种针对计算机的语言。如果这三个你都掌握的不错,就直接开始学吧,不要纠结啦。。。 quant的核心能力就是有什么迅速学什么,迅速掌握就好了。加油!以上~ 先说排名第一的,一看你就是个外行,或许你涉及过一两个行业,但是就金融来讲,你就不要不懂装懂了,知乎上净是你这种货色。
不同的业务类型,不同的功能部分,不同的公司文化,不同的团队技能熟练度,决定着业务用什么语言开发,用什么硬件架构,选择何种数据库,选择何种开发模式。
python上手快,开发速度快,生产效率高,依然有其力所不能及的地方,不懂就别瞎bb了。 软件和工具不是重点,训练得多就能初步上手,关键还是数理基础和应用能力

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











모바일 XML에서 PDF의 속도는 다음 요인에 따라 다릅니다. XML 구조의 복잡성. 모바일 하드웨어 구성 변환 방법 (라이브러리, 알고리즘) 코드 품질 최적화 방법 (효율적인 라이브러리 선택, 알고리즘 최적화, 캐시 데이터 및 다중 스레딩 사용). 전반적으로 절대적인 답변은 없으며 특정 상황에 따라 최적화해야합니다.

단일 애플리케이션으로 휴대 전화에서 직접 XML에서 PDF 변환을 완료하는 것은 불가능합니다. 두 단계를 통해 달성 할 수있는 클라우드 서비스를 사용해야합니다. 1. 클라우드에서 XML을 PDF로 변환하십시오. 2. 휴대 전화에서 변환 된 PDF 파일에 액세스하거나 다운로드하십시오.

C 언어에는 내장 합계 기능이 없으므로 직접 작성해야합니다. 합계는 배열 및 축적 요소를 가로 질러 달성 할 수 있습니다. 루프 버전 : 루프 및 배열 길이를 사용하여 계산됩니다. 포인터 버전 : 포인터를 사용하여 배열 요소를 가리키며 효율적인 합계는 자체 증가 포인터를 통해 달성됩니다. 동적으로 배열 버전을 할당 : 배열을 동적으로 할당하고 메모리를 직접 관리하여 메모리 누출을 방지하기 위해 할당 된 메모리가 해제되도록합니다.

XML 서식 도구는 규칙에 따라 코드를 입력하여 가독성과 이해를 향상시킬 수 있습니다. 도구를 선택할 때는 사용자 정의 기능, 특수 상황 처리, 성능 및 사용 편의성에주의하십시오. 일반적으로 사용되는 도구 유형에는 온라인 도구, IDE 플러그인 및 명령 줄 도구가 포함됩니다.

XML 구조가 유연하고 다양하기 때문에 모든 XML 파일을 PDF로 변환 할 수있는 앱은 없습니다. XML에서 PDF의 핵심은 데이터 구조를 페이지 레이아웃으로 변환하는 것입니다. XML을 구문 분석하고 PDF를 생성해야합니다. 일반적인 방법으로는 요소 트리와 같은 파이썬 라이브러리를 사용한 XML 및 ReportLab 라이브러리를 사용하여 PDF를 생성하는 XML을 구문 분석합니다. 복잡한 XML의 경우 XSLT 변환 구조를 사용해야 할 수도 있습니다. 성능을 최적화 할 때는 멀티 스레드 또는 멀티 프로세스 사용을 고려하고 적절한 라이브러리를 선택하십시오.

XSLT 변환기 또는 이미지 라이브러리를 사용하여 XML을 이미지로 변환 할 수 있습니다. XSLT 변환기 : XSLT 프로세서 및 스타일 시트를 사용하여 XML을 이미지로 변환합니다. 이미지 라이브러리 : Pil 또는 Imagemagick와 같은 라이브러리를 사용하여 XML 데이터에서 이미지를 그리기 및 텍스트 그리기와 같은 이미지를 만듭니다.

XML을 PDF로 직접 변환하는 응용 프로그램은 근본적으로 다른 두 형식이므로 찾을 수 없습니다. XML은 데이터를 저장하는 데 사용되는 반면 PDF는 문서를 표시하는 데 사용됩니다. 변환을 완료하려면 Python 및 ReportLab과 같은 프로그래밍 언어 및 라이브러리를 사용하여 XML 데이터를 구문 분석하고 PDF 문서를 생성 할 수 있습니다.

대부분의 텍스트 편집기를 사용하여 XML 파일을여십시오. 보다 직관적 인 트리 디스플레이가 필요한 경우 Oxygen XML 편집기 또는 XMLSPy와 같은 XML 편집기를 사용할 수 있습니다. 프로그램에서 XML 데이터를 처리하는 경우 프로그래밍 언어 (예 : Python) 및 XML 라이브러 (예 : XML.etree.elementtree)를 사용하여 구문 분석해야합니다.
