smartrader 發表於 13-5-5 18:08

Excel VBA 要如何自動下單呢??

excel 要如何串接自動下單呢?
這個問題我GOOGLE了好幾天
也買了一本EXCEL VBA的書
但就是不會
不論是接"下單大師" 或是"touchance"
我都找不到範例 (我有看老狗的網站和touchance網站上的範例)

我的問題如下
   A                  B
1   DDE報價      8000

VBA 程式碼

If cells (A1) > cells (B1) Then 下多單1口
End If
這個下多單1口
要怎麼寫??

若是先設定好OrderInfo
那麼是不是這樣就可以呢?
If cells (A1) > cells (B1) Then OrderInfo
End If
還是要加入哪一個指令呢?






confer 發表於 13-5-5 19:51

本帖最後由 confer 於 13-5-5 20:01 編輯

'EXCEL內寫法如下
'Bs = 倉位方向
'Sheets(1).Cells(2, 2) = 要下的價位
Dim TimePartAs Date
TimePart = Time
Open PathFileName & ".txt" For Output As #1
Print #1, Bs & "," & Sheets(1).Cells(2, 2)
Close #1
然後下單大師設定好就準備開始下單
用EXCEL VBA 算是入門中比較簡單的方法
我也用EXCEL下單一年多   正邁向用VB接API 直接下單中...

rockwell 發表於 13-5-6 02:46

直接去接券商的API就好了,券商的API通常都會附VBA的範例。


以券商的API來作舉例:

future_order為API中,期貨下單的指令。

首先要先宣告,這一點,教學書上都會有教啦~~ 不會,那就用抄的,
券商的範例不是拿來看假的。

Private Declare Function future_order Lib "C:\vba dll\t4.dll"
(ByVal buy_or_sell As String, ByVal branch As String, ByVal account As String, ByVal future_id As String, ByVal price As String, ByVal amount As String, ByVal price_type As String, ByVal ordtype As String, ByVal octtype As String) As String

接下來就看你要在甚麼時候用了,

If cells (A1) > cells (B1) Then

future_order(買, ,1口,8124, , ) '參數就別計較了

End If

就這樣,簡單吧~~~ 基本上把券商的API範例拿來抄就對了,
當然是擷取你要的,接下來就針對自己的程式作變化。

還不會的話,可以參考姜林杰祐教授的書,
印象中,前幾個月老師才出了一本有券商API連結實作的書。

lbt 發表於 13-5-6 07:38

跟你的券商要api,一定有,沒有就換一家~~

philipz 發表於 13-5-6 09:20

參考看看,恰好那JAVA版本是小弟提供的。
http://file.ordermaster.tw/OMDownLoad/OMAPI
頁: [1]
查看完整版本: Excel VBA 要如何自動下單呢??