What language to be used for HFT / scalping trading?

Feb 08, 2017 at 07:58
596 視聴
3 Replies
Sep 11, 2016からメンバー   18 投稿
Feb 08, 2017 at 07:58
Dear Traders,

I am now devliping EAs using MQL4, and considering to shift to FIXAPI to decrease latency caused by using MT4.

However, I do not know anything about what I should start from. I think choosing a programming language is one of the things I should do.
It seems there are several languages, such as: C, C++, C##, Java, python, R, Matlab.
I would like to know which I should learn if I pick one.

For that, I think I need consider some aspects as below:

1) coding efficiency
2) speed
3) versatility (in trading use)
4) 3rd party community : forum, library etc.
5) back testing environment
6) cost (time) of learning

I need speed, and would like to compete with professional quants hedgefunds on the same play ground.
However, super speed strategies such as latency arbitrage is out of scope so far.

Would like to hear your opinion. Thank you.
Apr 18, 2017からメンバー   38 投稿
May 03, 2017 at 14:56
Yes, I am a scalper but I do my live trading manually; I have no knowledge on EA trading! So, I don’t know the language pattern that you want! I see, scalping is the most popular trading style; since here traders can use small trading SL point here, so retail traders mostly use scalping trading style!
May 03, 2017からメンバー   18 投稿
May 04, 2017 at 06:07
Even if you move to FIXAPI then the latency might still be too large for HFT.
Sep 18, 2013からメンバー   8 投稿
May 04, 2017 at 06:31
You cannot compete in that game hence do not try. If you still decide to give it a try I wish you best of luck!

The programming language is but one factor - to 'be on same play ground' you would need co-location, low latency network (RDMA, Infiniband, ...) switches and NICs, ASICS, FCPGA, GPGPUs depending on need for speed vs. ability to modify your algorithms in addition to latest gen hardware (X86, POWER, SPARC). Oh and a dozen of PhD's. Point being if you rely on that type of low-latency chances are you will loose.

That said if you are new to programming I would recommend starting with a memory managed language such as JAVA or C# to avoid pointer arithmetic and need to consider garbage collection.

If you have some experience or do not mind a slightly steeper learning curve go for C or C++ and take a look at CUDA.

In any case you may continue to use MT4 and define interfaces calling your primary classes and methods developed in a secondary language.
サインイン / 登録 to comment
You must be connected to Myfxbook in order to leave a comment
*商用利用やスパムは容認されていないので、アカウントが停止される可能性があります。
ヒント:画像/YouTubeのURLを投稿すると自動的に埋め込まれます!
ヒント:この討論に参加しているユーザー名をオートコンプリートするには、@記号を入力します。