COCO研究院

 找回密碼
 註冊
搜索
樓主: crunchor

[其他程式語言] Programmer想用Java寫backtest/live trade system, 如何學最好?

  [複製鏈接]
發表於 13-9-10 13:33 | 顯示全部樓層
crunchor 發表於 13-9-6 10:55
another example is I don't want to use just open,close,high,low, I want to use any possible price wi ...

這些amibroker都辦得到,所以pre-define的function都有afl原始碼可以拿來亂改,其實AB都辦得到...我也做過一些半套子的backtest,也是十幾年的programmer,但是不是專長不是在交易軟體,那時會這麼做,是因為不知道有這麼便宜的AB,連mc都沒聽過
發表於 13-9-10 13:58 | 顯示全部樓層
jinderwu 發表於 13-9-10 12:22
看到這個題目有眾多同好熱烈討論,對於System Trading的平台到底哪一種比較好有不同意見,但個人覺得其實每 ...

“小弟也有用Visual Studio來做些事情,但交易系統撰寫上比較喜歡用Java,是因為用C++也同樣有一些比較麻煩的部分(如Garbage Collection等等),用”

我之前也這麼覺得,C++實在是pain in the ass. 但是,看到現在所謂的retail platform 都開始支援C#, 本來是對MS 的東西都很反感,什麼都是 dotnet. 結果寫了幾個月,發現C# 是世界上’從切片麵包以來最好的發明‘。。
不用garbage collection就不說了, java 的好處全都有,最重要的是加了个 linq, 錦上添花!

至於樓主為何衷情java, 我在猜的確美國的financial 世界還是以java為主。各位如果有機會測試一下thinkorswim 的交易平台,覺得會驚奇,哇,java 可用寫出來這麼漂亮的東西。。 IB TWS  也是java.
但是,我覺得原因就是cross platform. 個人相信,hedge funds 用的HFT 恐怕還是用跑的比較快的寫的。。。


 樓主| 發表於 13-9-10 22:28 | 顯示全部樓層
balance 發表於 13-9-10 13:58
“小弟也有用Visual Studio來做些事情,但交易系統撰寫上比較喜歡用Java,是因為用C++也同樣有一些比較麻 ...

I mainly have two reasons to choose Java:
1. In Hong Kong, only Interactive Broker provides API for auto trade. I know this is very common in Taiwan to have api, but very uncommon in HK. Interactive Broker system mainly provide Java socket in API, its system doesn't even have socket for C#, VB.net, .net, it only provides activeX for C#, VB.net, .net and it is not updated and not their focus.

2. Java is 100% free, I feel better to use tools like Eclipse. If I use C#, I would download illegal copy...

I like C# way to make GUI much more, it is much easier. Java is cool except dealing with the gui part.

 樓主| 發表於 13-9-10 22:30 | 顯示全部樓層
morona 發表於 13-9-10 13:28
能否賺到錢和用現成的車或自己打造的車沒有一定關係的
會賺錢的通常就是一直會賺錢
就算他跑去改用自己打造 ...

I agree just depend on if you can use program like Amibroker to build what you want.

 樓主| 發表於 13-9-10 22:33 | 顯示全部樓層
jinderwu 發表於 13-9-10 12:22
看到這個題目有眾多同好熱烈討論,對於System Trading的平台到底哪一種比較好有不同意見,但個人覺得其實每 ...

I share little bit. Does Taiwan Exchange offer data like this in HK? This one:
http://www.hkex.com.hk/chi/stat/dmstat/sharedata_c.htm

 樓主| 發表於 13-9-12 11:44 | 顯示全部樓層
If you use Java to build trading system as well, how do you build your gui and reports?
發表於 13-9-12 22:02 | 顯示全部樓層
balance 發表於 13-9-10 00:58
“小弟也有用Visual Studio來做些事情,但交易系統撰寫上比較喜歡用Java,是因為用C++也同樣有一些比較麻 ...

C++真的是pain in the ass沒錯,但是國際上所有hard core的hedge fund大都還是用Unix/Linux搭配C++來開發交易系統. 我不是IT背景,無法道盡其中原因, 但這還是目前的主流無誤.
 樓主| 發表於 13-9-12 23:13 | 顯示全部樓層
ETHZ 發表於 13-9-12 22:02
C++真的是pain in the ass沒錯,但是國際上所有hard core的hedge fund大都還是用Unix/Linux搭配C++來開發 ...

要好快的情況下, 例如high frequency trading, 就會用C++. 寫得好好的C++ codes可以比Java/C#快, 因為可以control memory, hardware, etc.

 樓主| 發表於 13-9-12 23:25 | 顯示全部樓層
C++影響會以nano second來計, 真是要HFT才有分別. 以前一般都比Java快, 但現在Java/C#快了好多後一般情況下C++沒有優勢.
發表於 13-9-12 23:46 | 顯示全部樓層
各位同學,with avg latency cross the Pacific to any major brokerage > 100ms, let's first worry about writing a money-making strategy,無論是AFL, EL, java, C#, even assembly.
發表於 13-9-13 02:58 | 顯示全部樓層
平均延遲(avg latency)..是 networking devices(網路設備)..的問題..

但重點還是 money-making strategy (可以賺錢的策略)..

光是處理爆衝問題..就要搞很久吧..
發表於 13-9-13 09:30 | 顯示全部樓層
好的策略延遲1分鐘照樣賺錢~爛的策略就算不延遲也照樣讓你輸到脫褲!

用戶端單方面的加速能提高多少度速?能減少滑價嗎?能增進獲利嗎?你能驗證嗎?

拿小散戶的系統跟投資機構的系統相比有意義嗎?人家是一片海你是一滴水?人家把貨倒出來市場振幅1%,我們把貨倒出來還不夠市場塞牙縫,如果人家是雞腿,我們連懶...得趴下都不是

老是拿極端的,影響甚微的方向來討論個人交易系統的開發讓我覺得相當幼稚~是強到已經沒有大方向可以突破了嗎?

評分

參與人數 1金錢 +2 收起 理由
dragic + 2 按一個讚

查看全部評分

 樓主| 發表於 13-9-13 16:07 | 顯示全部樓層
balance 發表於 13-9-12 23:46
各位同學,with avg latency cross the Pacific to any major brokerage > 100ms, let's first worry about ...

IB has server in HK, my home to their server is within 10ms. How fast from IB server to HKEX is another story, but that should be also within 50ms.

 樓主| 發表於 13-9-13 16:11 | 顯示全部樓層
本帖最後由 crunchor 於 13-9-13 16:12 編輯
jinace 發表於 13-9-13 09:30
好的策略延遲1分鐘照樣賺錢~爛的策略就算不延遲也照樣讓你輸到脫褲!

用戶端單方面的加速能提高多少度速?能 ...

even you are the admin but I need to tell the truth. How fast can all of of these really matter:
1. How fast the computer can calculate to have output
2. How fast from home to brokerage
3. brokerage to exchange

In Hong Kong, 2 and 3 can be within 50 ms, while IB reports price around 250/ms once, then basically a person like me can develope a strategy that works with time frame like 1/3, 1/2 second.

strategy that with 1/3 second time frame would be totally different from like 1 minute time frame. If we can even see the orders situation, then it is even much better and that is a big part of HFT.

發表於 13-9-13 23:42 | 顯示全部樓層
crunchor 發表於 13-9-12 11:44
If you use Java to build trading system as well, how do you build your gui and reports?

說到GUI,Java為了跨平台,還真的是很不好處理,
不過既然是System Trading Platform, 又不需要把寫好的軟體拿出來賣,
所以狀況就簡單得多了,在交易條件設定的部分,小弟直接用ini檔來控制相關
模擬的進行(應該不需要替自己寫一套界面來操作ini設定吧!)
至於模擬交易成果的展現,可以分做兩個部分:
1. 交易相關圖表(進出市場點位, 資金曲線, 交易指標圖等等),是用我之前提到過的
    ChartDirector產生圖檔,至於圖檔展現方式,就隨意嘍!
2. 報告當然必須要用到統計相關函式,不想自己寫的話,也是有Apache commons
    Math statistics套件可以用的,不過一般的狀況,應該可以自己簡單寫一下就應該
    可以搞定了

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-11-24 20:43

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |