kuolung 發表於 18-7-12 10:28

AmiBroker 介接各家 api 的想法

最近也在研究 KGI 的 api ,

還是會發生 C# call 不進 C++ 的問題 ,
後來才發現,原來 KGI 的 dll 不是 com , 所以之前的作法有誤,根本不會通,

後來想一想,各家的 API 都有各家的問題,其實要硬改用 C++ 是有很多問題的,尤其是某幾家都是提供 x86 的 C# 元件,還不知元件是不是有問題,

所以想想,不再想要改用 C++ 來 call 原始的 api 了,

全部改用 winsock or pipe 來介接 ,每一個 api 獨立一個程式,只從他們提供的範例修改加入 winsock or pipe 來介接,應該可以改善這些 x86 / x64 , Managed / UnManaged 的問題 ,有人可以一起加入討論

dannyer0309 發表於 18-7-12 11:50

版大,想請問,每家介接的api都要有該家的會員嗎?
有那一家不用
因為我是用c#
想寫介接捉取一些資料
但都要先申請
有不用的嗎?

kuolung 發表於 18-7-12 12:36

dannyer0309 發表於 18-7-12 11:50
版大,想請問,每家介接的api都要有該家的會員嗎?
有那一家不用
因為我是用c#


我想應該沒有吧,

不過,有一些期貨商比較寬鬆,只要您開戶,就可以用了,不用有交易,
像我用的 群益,元大,都是只有開戶,已經好幾年了,都沒有交易,也都沒有被取消使用資格
(其實我有交易帳戶,有交易,但是程式測試用的帳戶都沒有交易,不放保證金,以免誤下單 )


但是像 日盛的 hts 好像3個月沒有交易,就被取消使用資格了,

其他的期貨商 我就不確定了,您請您的營業員幫忙,他們都很願意的,這倒是不用耽心什麼,



distagon 發表於 18-7-12 21:52

可以請教版大要如何開發AB的plugin嗎? 這部分完全沒有頭緒, 不知道怎麼開始

dannyer0309 發表於 18-7-13 08:43

kuolung 發表於 18-7-12 12:36
我想應該沒有吧,

不過,有一些期貨商比較寬鬆,只要您開戶,就可以用了,不用有交易,


版大,請問api他可以針對個股進行資料查詢嗎?
還是只有期貨的部份
因為上網找一些資料
大多都在討論期貨

wujack 發表於 18-7-13 10:25

我可以一起學習,c#有開發經驗。

xianwu 發表於 18-7-13 10:57

dannyer0309 發表於 18-7-13 08:43
版大,請問api他可以針對個股進行資料查詢嗎?
還是只有期貨的部份
因為上網找一些資料


個股的資料是可以的, 基本上在各家的App或電腦版上查的到的報價或資料,
API都會有可以查
對他們API來說不同的只是商品代碼及報價Server(通常會分海內或海外)而已

ram 發表於 18-7-13 11:46

想法蠻類似的

現在都不在意效能,所以用C#人人都能上手的方式提供API了{:4_115:}

(我是闇奉提供API那邊的能力也就只有這樣啦,不是說coco這邊的各位大大捏)

但是目前是先用DDE的方式嘗試取代樓主說的winsock or pipe

因為先前看到nes大的DDE小工具就突發奇想了

既然來源都是C#只好配合用C#開發來作為接收比較容易些

不過每家的C#都蠻爛的,要寫到可以完整接收

程式碼就已經可能讓人看不太懂了

所以我找到一個很久以前的模擬環境

用C#去接這模擬環境資料(透過dll,C++/winapi)

這個API很厲害,除掉DllImport開始收資料只需要幾行程式碼就完成了{:4_162:}

然後DDE的部分則是用nes大那個工具把資料打到EXCEL上

這邊將資料輸出到EXCEL也是一行程式碼就可以完成{:4_113:}

當然也要x86和x64都能插進來才方便接客... ... 源

也就是把各方資料當客源全都都灌進自己的系統後,後面的處理就都相同了

由於自己的系統也是要當資訊源

那EXCEL上的資料也是能被目前的一些軟體指接設DDE接收

剛好又有簡單的工具能把收到的資料打進EXCEL

就這樣好像在堆基木的情形下居然很順利的完成一個不像玩具的玩具程式{:4_630:}

在例子中我是用x86版的程式接一份資料打到EXCEL

然後也用x64版的程式接一份資料打到EXCEL

把x86版看成 資訊源#1

然後x64版看成 資訊源 #2 ...

只要把其他來源依這種方式全都整合進EXCEL

那樓主說要用socket應該也就是把EXCEL換成自己的Sever

而DDE小工具也是換成自己Sever對應的Client這樣吧...{:4_196:}



kuolung 發表於 18-7-13 13:44

謝謝,大家這麼熱烈參與,不過,好像我沒有把目標寫清楚,
我 po 在這裡主要的目的是要寫 各家的 API 進 Amibroker ,

資訊源是一個

下單API 是一個

至於用 C# 和 C++ 的問題,

主因是 Amibroker 的 plugin 是 unmanaged C++ code ,

c# 是 managed code ,

而各家的 api 又多以 c# 為主,

ram 發表於 18-7-13 15:58

感謝樓主這篇引發我的胡思亂想{:4_113:}

果然資料進了EXCEL就等於進了AB

實況轉播

我這才發現AB比MC容易上手多了{:4_89:}

因為只是要確認資料可以通

AB的設定是用這樣


當然EXCEL上看到的OHLC等所有資料都是可以用的

只要程式不要無聊的打上 O: H: ... 這樣的標記就可以正確抓了

多逛多有進步,爽耶!{:4_140:}

好像越來越多花樣可以玩了


dannyer0309 發表於 18-7-13 16:24

xianwu 發表於 18-7-13 10:57
個股的資料是可以的, 基本上在各家的App或電腦版上查的到的報價或資料,
API都會有可以查
對他們API來說 ...

版大請問有範例嗎?
我最近在看他的api
但資訊感覺沒有很多
我由那方面下手比較快

謝謝

kuolung 發表於 18-7-13 16:27

謝謝,大家這麼熱烈參與,不過,好像我沒有把目標寫清楚,
我 po 在這裡主要的目的是要寫 各家的 API 進 Amibroker ,

資訊源是一個

下單API 是一個

至於用 C# 和 C++ 的問題,

主因是 Amibroker 的 plugin 是 unmanaged C++ code ,

c# 是 managed code ,

而各家的 api 又多以 c# 為主,

kuolung 發表於 18-7-13 16:30

dannyer0309 發表於 18-7-13 16:24
版大請問有範例嗎?
我最近在看他的api
但資訊感覺沒有很多


如果您是要用 C# , 那就很快,您只要拿他們的 範例,用 visaul studio 執行看看,就可以得到您想要的東西了


dannyer0309 發表於 18-7-13 18:20

kuolung 發表於 18-7-13 16:30
如果您是要用 C# , 那就很快,您只要拿他們的 範例,用 visaul studio 執行看看,就可以得到您想要的東西 ...

好的,我來找一下他們的範例
謝謝

kuolung 發表於 18-7-13 19:58

https://www.kgifutures.com.tw/content/order04.html

上面就有範例了,
頁: [1] 2
查看完整版本: AmiBroker 介接各家 api 的想法