購買了「AmiBroker」交易軟件終極套件~

觀望了一個月,今天凌晨衝動之下,線上刷卡購買了一套『AmiBroker 終極套件專業版 (Ultimate Pack Pro)』的交易系統。 有訂購單資訊為證:
AmiBroker Order and Payment Information.

注意到這套交易軟體是從 「COCO研究院」這個小型討論期貨交易的社群。 站長 小娃小姐 本人就是購買了 AmiBroker 的標準版 (Standard Edition),並在該論壇上有一些相關的教學文件與使用教學討論等。 感覺上這套工具還蠻靈巧的,最重要的是,它很便宜! 這次我購買的是專業版的所有套件,也才 US$403,折合新台幣約 13,000 餘元。 作為個人使用的交易分析平台,可以很容易的撰寫指標與回測、績效分析等功用,這樣的價格夠實惠了,比起 MultiCharts,足足便宜了近新台幣五萬元勒。

AmiBroker Screeenshot

我購買的終極套件 (US$403),內含了有:

  • AmiBroker 5.20 Professional (US$279, 含一年免費更新與技術支援)。
  • AmiQuote (Lifetime, US$65)
    ─ 可以連接 Yahoo & Google Stock 日線 (含歷史)數據,並可以設定自動更新。
  • AFL Code Wizard (Lifetime, US$65)
    ─ 提供 Wizard 的方式,快速建置屬於自己的指標。

當然,也可以只選擇購買 AmiBroker 主體本身。


AmiBroker 很容易上手,主要的原因是線上的教學文件極為豐富。 包含網頁線上文件與 Video 指引教學等,在該網站的 Support zone & Tutorial 網頁,都很容易看其指引來操作上手。

相較於 TradeStation/MultiCharts 使用 EasyLanguage,AmiBroker 則是採用 Formula Language 來撰寫指標 (Indicator)與績效回測等程式。 這些程式語法,其實都相當簡單,要將自己對交易的想法轉成明確的規則,並訴諸為程式碼,可說是挺容易的事;或者 AFL Library (不明原因,目前暫時關閉),有一大堆的指標程式與交易系統可供匯入 (import)。

AmiBroker 只有一個我挺在乎的問題。 它採用自己內建資料庫 (Local Database)的設計來儲存資料源 (Data Source)的資料,但每一種不同的資料連結,則需要個別創建資料庫,而不同資料庫內的資料不能共用!

這會導致什麼問題? 因為考量到的是國內 DDE Server 的環境,也就是說,如果你要一次連結一個以上的報價源 (日盛, 元大, ...),那麼, for 每一個 DDE Server,一定是要設為不同的資料庫 (因為 DDE 的設定字串不同); 如果你想要同時啟動這些 DDE 報價源,那麼,就需要個別啟動 AmiBroker (兩個報價源就是兩個 AB Instances),且兩個報價源的資料無法共用。

不過,回頭想想,是否需要同時處理到的資料是來自不同的資料庫? 大概是一個可能,就是容錯 (fault-tolerance)的問題,如果 Broker-A Crash,就馬上轉至 Broker-B 接收資料,繼續維持資料在圖表上的正確性。 不過,這個容錯問題,應該還不至於太需要,除非你是使用自動化的程式交易。

另外一個解決方案就是,自行撰寫 DDE Server,並在其內自行實做連接多個 DDE 報價源。 這個有可能是我下次打算自行來撰寫一個所謂的 "Universal DDE Server" 來達成上述的標的。

目前來說,設定多個資料庫 by 每一個 DDE Server,除了感覺甚怪以外,其實應該也算還好,反正就是 "個別處理" 就是了 (然後個別啟動)。

不過,另外一個 AB 讓人激賞的地方在於,它的資料連接介面是採開放的方式公佈。 所以 AB 提供了完全免費的 The AmiBroker Developlent Kit (ADK) 套件 (其實就只是一組 C/C++ Library 而已),可以供開發者自行下載並撰寫連接至期貨商的報價系統。

所以諸如台證提供的 OfficeQuote,因為它有公開的 APIs,所以就可以自行以 C++ 撰寫連接。 甚至包括永豐金 eLeader,以後如有機會與之輔導合作,也可以協助其開發更具穩定的資料傳輸介面。 如此也不用再受限於老舊不穩定的 DDE 傳輸介面了。

這一陣子會來摸索與學習關於 AmiBroker 的操作介面與程式開發,當然也會逐漸地把我原來在 Tradestation 上撰寫的指標程式,給移轉到 AB 的環境下。 近期我應該會陸續地公佈與分享我的使用心得。

對啦,不知道國內是否有個人用戶會對該交易軟件感興趣? 我是在想,如果感興趣且想使用的人數夠多,我可能打算開班授課,來提供學員們可自行撰寫自己的指標、交易系統、與績效回測等。

文章導覽

   

共有 29 則迴響

  1. hello Kenming,
    小弟初踏入程式交易,
    目前使用Amibroker(unregistered)
    有提供ADK蠻方便的, 可接券商下單API.
    最重要是沒有使用期限 @@
    (Multicharts只有30天)

    您似乎改用Multicharts為主要交易軟體
    真可惜沒能繼續分享Amibroker使用心得
    方便請教您轉移陣地主因為何?

    謝謝您

  2. 請問站長,不同的Chart 之間如何讓畫線能夠同步呈現呢?

    ex. 我開了好幾個Chart 來看不同的分線,
    再Chart 1 裡面畫了一條水平線,
    會同步呈現在Chart 2, 3, 4

    之前偶然間發現到有這功能 , 不過也只是特定兩個Chart 會連動,
    在意外刪除後,
    這功能就消失了…

    請版主救救我

  3. DDE的問題,在於他是一個非同步的架構,所以只要行情快一點,接收端就會漏訊,雖然DDE能保證接收端收到的行情是『最新』的,但是從『最後』的行情到『最新』的行情之間的細節可能會漏掉。例如本來的成交價是8200,這時一瞬間來了兩個Tickers,8205然後是8202,假設之後短時間內沒有第三個Ticker進來,這時接收端程式可能只會處理到8202,而不會知道有8205有出現過的事實。

  4. 請問您買的專業版,看上面有real-time的報價
    請問如果拿來看台股的話,報價會delay嗎?
    謝謝!

  5. 請問大大,如果用ADK把下列API包到plugin , ab如何用afl下單自動交易?

    群益下單API_2.1.2 : SKOrderLib.lib, SKOrderLib.dll, FCliPKILIB.dll
    群益報價API_2.2.1 : SKQuoteLib.lib, SKQuoteLib.dll
    群益回報API_2.3.1: SKReplyLib.lib , SKReplyLib.dll

  6. 最近也開始研究Amibroker,報價系統似乎至少有三種:

    DDE:本文說它的缺點是不太穩定,能否講一下不穩定的程度,以及使用是否方便。

    整合API報價:需要自己寫程式整合券商的報價APIs,有無範例可參考;另外除了凱基(台證)的報價APIs以外,國內還有那些證券公司有提供報價API呢?

    YAHOO/GOOGLE網站報價:好像是最不受環境影響的方法(不需要到特定券商開戶),但有什麼缺點嗎?

    • 要玩 Amibroker 這些,要有心理準備,一切都要自己來,爬網找很多資料喔。

      建議你可以至國內的 CoCo 研究院 論壇 or 程式交易聚寶盆論壇,參與提問討論這類問題會比較好。

  7. 你好

    我是 TOUCHANCE 團隊的 Vincent

    無意中逛到這個網站,發現原來國內也是有人在玩 AmiBroker !

    若有興趣完成穩定的資訊源導入AmiBroker 或做自動下單到交易商的串接.

    希望有機會可以進一步交流.

    讓TOUCHANCE 支援 EXCEL/TS/MultiCharts 的行情與下單的功能之後.

    也可以考慮支援AmiBroker…..

    • 如果,國內真的有便宜又好用的產品,可以用來作為個人交易高度客製化的工具,那就太好不過,我也不用去煩惱耗時間花在資料與介面傳輸協定轉換上。

      可惜,貴單位的產品,對個人散戶而言,仍是貴上許多;另外一個重點,貴產品並沒有 “Open” 的擴充彈性。 此點,到是可以參考 Tradestaion 8 or Amibroker 所提供的 APIs ,尤以後者,只要會寫程式,要 “Plugin” 至另外的 DataSource,都是輕而易舉的事。

      如果,貴單位對產品的擴展性的結構設計有進一步的意願與興趣,我倒是建議可以與我們顧問團隊接洽。

      如何讓任一專業領域的軟體產品,更有擴展的彈性,則首重在元件化的介面結構設計。 而此點,可說是我們顧問團隊的專長。 (關於結構分析的一些概念,可以參考我個人其它的文章)

      歡迎回歸至軟體設計的基本面,作更一步的交流與討論。

      • 是啊 !把注意力與時間放在各自擅長的事情上 , 這是最好的方式.

        原來設計 TOUCHANCE 的時候,就是希望 trader 應該專注在交易策略的研發與交易執行. 而非在資料串接與交易整合上花這麼多的時間與精力.

        我們目前有規劃要提供 TOUCHANCE plug-ins 的api. 若大家有什麼樣的需求也歡迎給我們意見.

        這個plug-ins 預計提供的功能包括 :

        1.即時行情介面 (包括當日資料的回補)
        2.交易串接介面

        以上….

          • TOUCHANCE缺

            01.缺TS8支援(這最重要),TS2000I問題太多,你們反而支援。

            02.一個月1000元(三個月5000元),資訊費真的太貴了,一口大台每日當沖單,一年頂多不過最高只能賺個20萬就算很強了,一年12000元真的吃不消。
            (但TOUCHANCE真的比DDE好用太多,這邊要給你肯定)

  8. 當一個好的技師
    不如當一個好的賽車手

    建議先想辦法磨練賺錢的能力
    等方法都穩定了
    才是考慮工具的時候
    一開始都用人工處理配合停損單就是最好的下單工具
    如果需要看資料
    初期excel+DDE+VBA監控其實很夠用了
    等賺個一年
    再來考慮怎麼讓工具順暢會比較好

    • 您的第一句話,是我在學習踏入各個領域 (包括軟體設計與交易),隨時在警惕自己與提醒他人的。 先了解與用心體會該領域的本質,再去善用工具,本末不能倒置,這是學習的基本態度,我是不敢忘記的。 !^^

      另,或有些誤解,我從來不做自動化的程式交易的。 對我而言,我只利用這些分析工具,建立我所需要的交易模型。 學習使用 Excel or Tradestation or Amibroker 等,幾乎花不了我多少時間。

      anyway,還是相當感謝 allenguy 的提醒,我也會警惕自己,可不要用了這些工具,而導致走火入魔。 ^^

  9. 能不能在某個領域賺錢,應該是看你對某個領域的專業能力與其耕耘程度的!

    –> 找到適合自己或自己喜歡用的工具也很重要.
    就如同版大為什麼選擇 AB 而不用 HTS 或 TS2000i 或 TS8.x,
    一定有您考慮的原因.

  10. 您好呀:
    Amibroker用戶群是比TS少,國內現在一堆人都用TS,幾個月前評估了發展自動化交易平台環境,選擇了Amibroker,原因是我不想用DDE 當報價源,現在期指秒煞速度如此快,一秒搓好幾盤,考量報價源彈性度穩定度之下選擇了Amibroker,目前把群益報價API整進去data plugin,僅接著要做策略和自動化交易,這邊它的運作框架持續摸索中.

    大家一起交流持續精進唷!

    • 這個好!

      我覺得 AB 開放 Open API 的確是程式交易者的福音。
      由於我還不太會 C++,以及目前 eLeader 並沒有提供 API,這一段的 Data Adapter,應該是較後續的計畫了。 ^^

      • 好奇怪的回覆

        如果程式交易真的能賺到大錢,就不會有那麼多人在推廣了。

        如果自動下單及策略分析軟體真的能賺錢,那就不會有一堆第四台老師出來賣軟體了。

        • 你的回應挺奇怪的,用這類反諷的方式意義並不大。

          從以前到現在,個人從沒有做過自動化程式交易。我也與你後面的留言想法是一樣的,我比較相信投機交易的根本仍在人性的克服上,而非工具的自動化上。

          我在個人很多篇文章早已有提及這個觀點。

        • 「自動下單及策略分析軟體真的能賺錢,那就不會有一堆第四台老師出來賣軟體了。」
          這可真是天大的誤解,第四台老師賣的多半是”黑盒子”吧,他的軟體可能只會告訴你進出訊號,但是你完全不會了解這些訊號怎麼產生的。
          但是真正的策略分析軟體(ex: Tradestation、Multicharts、Amibroker…等)是使用者將自己的交易邏輯寫成明確的規則讓程式來幫你做執行。成敗全是看自己啊!!
          再說,會有人賣工具的並不代表是因為沒人能靠他賺的了錢,有些人就是比較在行於系統開發,甚至不想去冒交易的風險所以轉而來賣自動下單及策略分析軟體賺錢。與交易比起來,這是相對穩定的收入啊!!

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *