[TS懶人包] [保險服務]

2008年12月31日 星期三

Dark Knight Trader API 自動下單機 V1.0 (支援台證、日盛)

新年快樂。利用這隻程式來當 2008 的結束、2009 的新開始…本篇文章將會介紹 Dark Knight Trader API 自動下單機的各項功能和設定方式。

本下單機目前開放試用…轉倉、延遲下單、委託成交回報和選擇權等功能尚未完成,未來也許會走向收費模式…目前請自行由系統主畫面上方工具列說明內的註冊帳號自行註冊即可…未來即使走向收費…也會開免費帳號出來讓大家使用…

既然分為免費和付費帳號…那當然就會有所差別…免費帳號目前規畫為多策略、單帳戶、只能下小台指、只能用市價單、下單倍數只能為 1 等…詳細情況就讓我慢慢思考吧…

1.免責聲明:
本程式由 D.K. 一人獨自開發完成…由於下單機不比簡訊機…簡訊機發送錯誤也只是 1.2 元,而下單機發生錯誤則是對自己荷包的傷害。微軟上千人寫的作業系統都難免出現藍底白字…更何況是小弟一人埋頭苦幹的程式…使用者請在下載使用前需同意本聲明…如因下單機發生錯誤造成之虧損…使用者需自行負責。

2.功能介紹:
主要的功能當然是自動下單。本程式結合了下單機、簡訊機、TS訊號讀取等功能…下單之期貨商目前支援台證及日盛的 API 下單…並非網頁下單程式。支援多策略同時偵測、並下單至多帳戶。

3.畫面介紹:

3.1主畫面:
下圖為程式執行後之主畫面,右上方為系統資訊、左上方為策略資訊、下方則為帳戶資訊…



開始執行下單功能後…將會以顏色區分台證和日盛的帳號,如下圖:



主畫面最下方為下單機登入資料…請於此處輸入下單機之帳號、密碼…如勾選自動執行並儲存設定…程式將於執行後開始自動下單。

3.2簡訊設定畫面:


簡訊部份,依舊採用台灣簡訊作為發送平台…請自行申請台灣簡訊之帳號,並於左上方輸入台灣簡訊之帳號、密碼。

簡訊設定分為群組設定和群組內之使用者設定…方便管理。群組簡訊發送之格式如下:
[信號名稱] [群組自訂簡訊] [自訂簡訊] [倉位變化(註1)] [目前倉位] [目前價位]

註1:倉位變化之文字加下:
當策略倉位由 0 轉 1 時,倉位變化文字內容為:多單進場
當策略倉位由 1 轉 2 時,倉位變化文字內容為:多單加碼
當策略倉位由 2 轉 1 時,倉位變化文字內容為:多單減碼
當策略倉位由 1 轉 0 時,倉位變化文字內容為:多單平倉
當策略倉位由 1 轉 -1 時,倉位變化文字內容為:多單平倉、空單進場
其餘類推。

另外在簡訊設定內順便加上發送 E-mail 的功能,E-mail 的發送格式請參考DreamTrade。

3.3策略設定畫面:


策略設定請選擇訊號文字檔或是 TradeStation 2000i,訊號文字檔的格式加下:
0,1081225,134500,12,0,4478,1

需要用 HTS 作輸出請於 STS 程式碼內加上下列程式碼片斷:

if date = lastcalcdate and time = LastCalcTime then
FileDelete("C:\signal.txt")
FileAppend("C:\signal.txt", ("0,"+ NumToStr( Date, 0 ) +","+ NumToStr(Q_time,0)+","+ NumToStr(CurrentContracts,0)+",0,"+NumToStr(close,0)+",1"))
End if

如是直接讀取 TradeStation 2000i 之訊號…需再輸入 Symbol 名稱和 System 名稱,請參考下圖:


上圖為 TradeStation 之畫面…以上圖為例,Symbol 為最左方之文字 TFX.TXT ,後方的 -5min 為時間週期不需要輸入。
System 為最右方之文字 DK-fi(18,271) ,括號內為系統目前使用之參數…也需要輸入。

3.4帳戶設定畫面:



帳戶設定的部份請依需求填寫正確資料…帳戶名稱不可重覆…另外修改時帳戶名稱也不能做修改…
台證的部份請填寫所有基本資料;日盛的部份因為是透過 HTS API Trader manager 做下單的動作…所以有許多項設定可以不用填寫…自行切換下單期貨商即可明白。

台證的帳號分公司代號請詢問營業員、日盛的分公司代號請填入 HTS API Trader manager 畫面右上方顯示之前三碼。如需下單至日盛多帳戶…需先至日盛做帳號委託。

4.程式設定流程:
請依序設定簡訊(非必要)、策略、帳戶。

本自動下單機主要是針對台證所寫…所以在執行本程式之前請先註冊台證之 API 元件…註冊方式請執行本程式目錄下之 \ALL_OCX\regOCXall.bat 即可。

另外,本軟體需要安裝 .NET Framework 如程式無法執行,請至 .NET Framework 下載安裝

軟體下載位置:DarkKnightTraderV1.0

使用上如有任何問題…請至本篇留言。

最後…如果有需要至台證開戶的…可以聯絡

王治平
0932211125
02-25186980
MSN: cm250623@ebtnet.net

手續費絕對是市面上最為優惠的價格。

--
後記:
用這隻程式來當作 2008 年的結尾…回顧這一年來…從三月退伍後進入了 ST 做交易員…兩個月過後…因為經濟因素回到資訊業上班…也因為上班沒辦法看盤的關係…接觸到了程式交易。從一開始完全不懂語法玩到現在…也算是熟悉了。十一月起…我又回到了 ST 做交易員了…

這期間…寫了不少交易程式…也推出了簡訊機、TS訊號輸出機…下單機算是集大成吧!把該有的功能都包含了進來…

很高興在這個領域裡認識了不少高手…也預祝大家新的一年在操作上都能更順利。

22 則留言:

  1. API下單機開始如雨後春筍般出現囉!
    感謝DK大的辛勞!

    回覆刪除
  2. 下在之後,執行DarkKnightTrader.exe沒反應。

    回覆刪除
  3. 請先註冊台證的 api 元件..api 元件在資料夾內的 ALL_OCX 內..

    回覆刪除
  4. 這是加了一些新想法的下單機..參考交流交流

    http://www.wearn.com/bbs/topic.asp?topic_id=141059&forum_id=5295&cat_id=19

    回覆刪除
  5. DK大 記得沒多久前,知道你要寫DK下單機,沒想到轉眼已經完成第一版了,真是強.
    DK大, 這下單機運作前需要先開啟 HTSTradermanager.exe這隻程式嗎? 還是直接Run下單機就可以了?

    回覆刪除
  6. 實戰叢林:謝謝啊…我是有這樣的想法沒錯…
    異像:如果要下到日盛的話是要開 htstradermanager 才行…

    回覆刪除
  7. 在VISTA執行出現程式關閉無法使用
    是因為沒註冊台証api嗎
    請問要如何註冊

    回覆刪除
  8. "如果要下到日盛的話是要開 htstradermanager 才行…"
    如果下到日盛是兩個帳號,是不是開一個htstradermanager就可以啊?還是要另外設定?

    回覆刪除
  9. Vista 的註冊方式:請再參考文章內容..我會修改文章..

    dbird: 如果要下到日盛多帳號的話…因為透過 hts 下單..所以如果第二個帳號非本人帳號的話…需要到日盛做帳號委託喔…

    回覆刪除
  10. 請問DK大~
    你的下單機有"TS訊號讀取功能",是不是就是說可以直接讀取TS訊號下單,不需要外掛程式解決TS訊號延遲的問題

    回覆刪除
  11. 是這樣沒錯..可直接讀取 TS 訊號..

    回覆刪除
  12. API自動下單機真不錯!
    但....請問...
    能否也開發寶來百變孫悟空的套利程式。

    感謝大大的辛苦!

    回覆刪除
  13. Chao: 你說的這個東西我沒玩過耶..@_@

    回覆刪除
  14. DK大 請問在HTS程式寫出的signal.txt,0,1081225,134500,"1",0,4478,1; ""裡面的1或-1是代表buy/sell,那如果exitlong/exitshort應該是-1及1 對嗎?

    回覆刪除
  15. V1.01,在改變倉位後,下單機的月份就變成當時點位了,不知是否會影響下單否?
    下單機內有大台及倍數,是否都不能用(無效)?
    試用結果很容易當掉

    回覆刪除
  16. 異像:exitlong exitshort 的話是 0

    小劉:1.01 的 bug..已經被你發現了啊..謝謝你的提供..因為我加入了一個新的欄位..結果程式內忘了修改..所以才會更新的錯誤的欄位..對下單是沒影響的..
    另外大台及倍數是都可以使用的..

    容易當掉的原因是因為中文的關係..我會再說明內再加上去..謝謝你提供訊息給我。

    回覆刪除
  17. DK~我是在日盛下單請問
    限價單 的滑價是不是跟日上的用法相同
    委託條件下市價單的話, 選ROD就可以了嗎?
    下單月份自己會更新嗎?在何時更新?
    下單倍數設0的話,是不是模擬單?
    帳戶名稱 是填姓名或代號嗎?還是身分證字號?
    帳號是填券商的下單帳號嗎?還是身分證字號?
    api下單不用另外開啟api嗎?

    回覆刪除
  18. exitlong/exitshort是0
    DK大 也就是說下單機 會判斷...

    倉位是1,後來程式exitlong送出"0"的話,會發出空單至交易所.

    倉位是-1,後來程式exitshort送出"0"的話,會發出多單至交易所.

    倉位是0,後來程式exitlong/exitshort送出"0"的話,則下單機不會動作.

    DK大 我這樣說對嗎?

    回覆刪除
  19. DK~我是在日盛下單請問
    限價單 的滑價是不是跟日上的用法相同
    委託條件下市價單的話, 選ROD就可以了嗎?
    下單月份自己會更新嗎?在何時更新?
    下單倍數設0的話,是不是模擬單?
    帳戶名稱 是填姓名或代號嗎?還是身分證字號?
    帳號是填券商的下單帳號嗎?還是身分證字號?
    api下單不用另外開啟api嗎?

    回覆刪除
  20. 代回答蠟筆的問題
    限價單 的滑價是不是跟日上的用法相同
    A:是

    委託條件下市價單的話, 選ROD就可以了嗎?
    A:市價單只有FOK或IOC,ROD是限價單才有

    帳戶名稱 是填姓名或代號嗎?還是身分證字號?
    A:自己取的名稱

    帳號是填券商的下單帳號嗎?還是身分證字號?
    開啟HTS和APITradeMgr.exe 之後在畫面右上角就會顯示您的券商代號和期貨帳號了


    api下單不用另外開啟api嗎?
    要,到您HTS安裝的目錄底下找APITradeMgr.exe (預設在 C:\JihSun\HTS2),每天和HTS一起開啟後選擇正式下單,填入委託密碼和關閉確認視窗,縮小即可

    回覆刪除
  21. DK太忙啦!
    感謝dylon的詳細回答
    我已經懂啦

    回覆刪除

請留下您的大名…匿名者恕不回應…

Related Posts Plugin for WordPress, Blogger...