群益API行情串接(二)


像股票這樣的金融商品百百種,加上市場的變化性與多樣的市場規則,使得這類的分析總是相當困難。但相關數據取得與蒐集的管道也相當稀少,甚至難以整合與上手。國內幾家券商提供之API服務便顯得相當地重要。

前言

上一篇群益API行情串接(一)介紹了群益金鼎證券提供之API服務,包含先備知識,並且完成元件註冊與帳號連線。本篇將會繼續往下介紹如何實現相關報價功能。

因此,本篇將會真正進行報價功能的實作與使用,報價功能主要是一個事件,事件的相關方法我們可以透過Class去定義與實作出來,並且透過comtypes套件進行事件的註冊。

在開始實作之前,要提醒一下,相關的設定或變數、函式宣告與定義等部份,在這邊並不會重新提及,這是由於篇幅考量,所以這個系列基本上就是垂直往下連貫著進行。如果有在這個系列中發現有些變數或函式,甚至是名詞等等未定義,可以在先前的篇章中找到。


群益API行情串接(一)


像股票這樣的金融商品百百種,加上市場的變化性與多樣的市場規則,使得這類的分析總是相當困難。但相關數據取得與蒐集的管道也相當稀少,甚至難以整合與上手。國內幾家券商提供之API服務便顯得相當地重要。

前言

在金融分析這塊,先不論許多金融商品的歷史資料本身就很少,在網路上能查到的資料多數是未結構化資料,或格式相當複雜,致使難以進行整理。事實上,如果需要詳細資料的話,比方說比日資料時間更短的Tick Data,除了向交易所購買資料之外,使用API服務便是另一種更方便的選擇。

然而,使用API服務,你得有一個心理準備,由於各家券商提供之功能與API伺服器環境等因素不同,接收資料可能會有不穩定或格式不合個人常使用之格式,所以針對這些情況,個人得自己動態做調整。此外,一般API也會需要隨著時間進行更新,可能隨時都會發布新版本,並停用某些舊版本。有些券商通知更換新版本或淘汰舊版本的方式也不同,有很多時候,可能不會即時知道,得要偶爾去確認。並且,有些時候,新版本並不一定穩定,所以若當前使用穩定,或不急於使用新增功能,可以觀察或測試新版本的情況後,再正式換版。

一般而言,在各券商官方網站上會有許多豐富的資訊,若需使用API,需先向券商進行申請,之後在去進行下載元件、設定與註冊、直接使用官方範例程式或自行編寫程式等等。

而若是使用API下單,除了會需要帳號密碼登入之外,也會需要進行註冊憑證,一般憑證都會有使用期限,可以延長或重新申請。這兩者搭配才能正常使用下單功能。使用報價等未實際進行交易的功能一般則不需要憑證。

本篇主要提及群益金鼎證券提供之API服務,其提供的官方說明文件是目前我使用過最詳細(且複雜)的,有著許許多多的功能函式,但相對而言卻也造成在使用上難以快速上手。但其有提供當天Tick回補功能,因此如果不小心在取得即時資訊時遺漏或出現問題時,能夠輕鬆透過此功能進行補足。當然,也能夠用來一次性在盤後進行資料請求,將當天Tick資料進行儲存。

本篇主要介紹先備知識,並且完成元件註冊與帳號連線。下一篇將會繼續介紹獲取當日Tick回補的功能實現,我們將會使用到Class,並註冊與管理事件。

檔案系統的配置單位


平常在使用儲存裝置時,我們可能會主要關心該裝置的最大存放大小、使用何種傳輸介面以及對應的傳輸速度等等。如果可以,我們會希望儲存裝置能夠容量足夠大,速度 又快。想不到...這其實也有很大的學問。

前言

本篇提及的儲存裝置主要以硬碟為主。

最近,趁著雙11 打折各平台打折的期間,正好有想要一個可移動的儲存裝置,另外存放一些應用程式。如此一來,我 就能在各電腦端正常使用我慣用且熟悉的軟體,理論上會更方便。若容量也夠大,還能夠儲存其他重要資料,額外備份或是處理事情也會方便許多。

當然,傳輸速度也會是考量之一,先不談傳輸資料時的花費時間,畢竟主要目的是要用來裝應用程式,作為可攜式的應用,這個儲存裝置的運行速度也不能夠馬虎。

由於實際的運行速度也會受到系統、軟體、傳輸介面、傳輸協定、線材等等的影響,進行了一番考量之後,也為了避免太麻煩牽動其他太多的因素,我選擇了一顆PSSD(Portable Solid-state Disk,可攜式固態硬碟),其運行速度雖然並比不上現在SSD的發展,算中規中矩,但主要目的為可攜式,所以傳輸介面更通用,通常為支援Type-AType-C,這兩種介面都是USB(Universal Serial Bus)的一種物理介面。而且比起外接式硬碟,其大小也能夠做得更小,不需要額外買外接殼,正在使用時也不用像使用傳統硬碟一樣,怕不小心去動到。總而言之,基本上符合我的需求,也很方便。

元大API即時行情串接(四)


為了取得即時的報價,更詳細的raw data,除了可以方便我們做股票、期貨等金融商品的分析。最重要的是,可以用來做自動下單、高頻交易、隨到隨撮等的用途。

本篇雖然是接續著第三篇元大API即時行情串接(三),但我們要來介紹的是當元大API改版時,我們要如何去進行更新。本篇主要對2020/11/13所更新的2.1.2.7版作介紹,未來可能會有不同的牽動與更新步驟。

事情是這樣的,本週六我收到了一封手機簡訊,是元大寄過來的通知信:


大體上就是元大API版本有了重大的更新,需要客戶在自己的客戶端進行更新,否則可能無法運作或出錯。

那當然,事不宜遲,我們得趕緊來進行更新了。

順帶一提,如果先前並未建立相關的元大API串接的人,想了解的話也歡迎回過頭從本系列第一篇元大API即時行情串接(一)開始參考如何開始,並實現相關功能。

使用Python編寫解壓縮工具


不管是儲存或是傳輸用途,壓縮檔一直是非常常見的檔案格式。一般而言,許多系統與軟體都提供解壓縮功能,我們也可以嘗試著自己製作一個解壓縮工具

自己製作一個解壓縮工具?使用情境為何?

一般而言,許多系統與軟體都提供解壓縮功能,想要解壓縮可說是非常輕易達成。但試想一些情況,若今天有一堆壓縮檔案需要進行解壓縮呢?可能有一些工具一時之間就無法起到很好的作用了。

所以除了磨練自己寫程式的能力之外,我們也能藉此機會,自己客製化具有解壓縮功能的小工具,以解決某些特殊問題。

一堆壓縮檔案需要解壓縮?何種情況下會有這樣的需求?

基本上之所以會有一堆壓縮檔案,可能是為了儲存以及分享用途,所以對檔案進行分門別類後,個別進行壓縮。

哪天誰需要使用這些資料時,就會遇到這樣的解壓縮問題。

舉個例子,在台灣期貨交易所網站中,提供多種商品的詳細資料下載,可能以天、週或是年為單位,部分檔案格式是zip壓縮檔,像是期貨前30個交易日期貨每筆成交資料期貨前30個交易日期貨價差委託成交概況表期貨前30個交易日期貨價差每筆成交資料選擇權前30個交易日選擇權每筆成交資料等等,像這些以zip壓縮檔形式,並且以天為單位做區分的檔案,一次下載下來,若能夠一次解完壓縮,可說是幫個大忙了。

透過Python開啟外部指令進行爬蟲(以下載台灣期貨交易所的公開資料為例)


為了方便、大量與快速取得資料,爬蟲不可或缺,本次來介紹如何使用python進行爬蟲,並且使用外部指令進行主要功能實現。

前言

一般我們普遍認為開源節流是重要的金錢觀,為了維護我們的資產,錢要進得來,同時花出去的錢也要能夠獲得控制。事實上,開源與節流這兩件事誰更重要,當然是開源,開源意味著資產增加,但節流,再怎麼節省,錢包還是這麼大。但或許是因為人心,我們比起獲利,會更害怕損失,於是節流反而對我們來說卻是重點。

另一方面,存錢也是一個很重要的節流方式,但仔細想想,這些錢如果不去利用,其實就是一種浪費。怎麼說呢?如果這些錢能夠透過各種方式,比如投資,讓錢生財,自然也是一種開源的方式。那當然像是投資這種事會有風險,所以它才會有獲利,不是嗎?

開源節流、開源節流,為何要一起講,我認為最好的解釋就是在開源的同時,我們要想著如何節流;反過來說,在我們想著如何節流的時候,我們也要保持考慮如何開源。根據自己的情況、環境與條件,最大限度的提高獲利,並將損失降低至最小。這在程式人眼中看來,自然是一個最佳化問題。

本篇並不討論如何分析這樣子的最佳化問題,所以並不提供任何策略與方向(投資請衡量自身情況,風險與獲利自行承擔),只著重在如何取得用來分析的資料,畢竟沒有資料,也無法開始。無論是人或是機器,都需要感知外界的環境變化與資訊,經過深思熟慮後,才能做出一個好的應對方式。

MATLAB爬蟲(以下載台灣期交所的公開資料為例)


爬蟲這項技術說實在確實非常重要,也與我們的生活息息相關,現在的網路如此發達,無法想像的資料量也還是在成長著,為了更方便地取得與處理資料,在自動化的議題上,爬蟲便成為了不可或缺的其中一項技術。

台灣期貨交易所

台灣期貨交易所(Taiwan Futures exchange),顧名思義,是在台灣所成立的金融衍生性商品的交易設施,交易商品包含期貨以及選擇權等商品,這兩種都是一種契約。而台灣期貨交易所為了讓交易人能夠快速了解在台灣期貨市場(Futures Market)的動態消息,特別提供了一個官方網站平台(www.taifex.com.tw),上面有台灣期貨交易所相關的公司介紹,包含願景以及交易商品有哪些,還有當前期貨市場上的最新消息。當然,對於想要更進一步了解金融市場的人而言,想必也會特別關注統計資料以及交易資訊了。再來他們也提供了法規規定以及交易規則等等參考檔案,資訊非常完整。

台灣期貨交易所不僅提供交易資訊的查詢,也有提供近期的交易資料下載,其提供的資料也都已經結構化處理過,我們只需要視情況轉換為自己想要的處理格式便可。如果我們想要收集這些資料,以便進行相關的研究與分析(別把自己下載資料拿去交易或相關形式的轉讓等等,避免違法),使用爬蟲技術並讓其自動化是非常方便的。

MATLAB可視化圖形(搭配Google搜尋器Calculator渲染引擎)


可視化圖形對我們非常重要,透過視覺上的輔助可以幫助我們解決更多問題,比方說尋找一個函數的最高、最低點等等,而MATLAB也提供非常強大的繪圖功能,非常直得我們去使用。


最近發現了Google搜尋引擎支援3D繪圖操作,使用的是WebGL技術,覺得非常地新奇、有趣。相關官方文件參考如下:

Microsoft Teams相關設定


本篇將解決Microsoft Teams的相關議題,如取消自動登入、設定會議簡報分享功能、如何錄製視訊會議、錄製影片後要在哪裡找到等等

對於遠端工作,或是有遠端進行視訊、會議紀錄等等需求,各種軟體與服務五花八門,有的不需額外安裝,輕便性非常足夠、也有依附在自家產品上的,提供更完整的個人或團體服務。而當今這種線上即時通訊需求越發重要的情況下,能夠熟用幾款工具是現代人需要的技能之一了。
本篇主要是要解決Microsoft Teams相關的設定問題,比如取消自動登入卻找不到相關的設定選項、以及進行視訊會議或線上上課分享簡報時,避免被團隊中的某人中途插斷找不到錄製視訊會議選項等等的問題。

Windows遠端桌面連線


由於電腦在使用上的移動限制,遠端連線給予我們更方便地使用電腦。

遠端桌面連線-Windows

事實上,遠端桌面連線的方法有好幾種,多半能透過安裝一些軟體來達成,比如TeamViewer、Anydesk等等。但如果本身使用的作業系統為Windows的話,不妨直接使用看看內建的"遠端桌面連線"功能~~~接下來,會先從如何確定連線對象的位置開始講起,再來將會從兩個方面作介紹,包含如何連線至遠端裝置以及如何開放讓遠端裝置連線進來

元大API即時行情串接(三)


為了取得即時的報價,更詳細的raw data,除了可以方便我們做股票、期貨等金融商品的分析。最重要的是,可以用來做自動下單、高頻交易、隨到隨撮等的用途。


本篇接續著第二篇元大API即時行情串接(二),在介紹完如何建置環境、導入API元件並確認連線功能後,接下來將要介紹更多可用的功能。本篇主要注重在追蹤連線狀態,以及連線異常發生時的提示通知顯示

元大API即時行情串接(二)


為了取得即時的報價,更詳細的raw data,除了可以方便我們做股票、期貨等金融商品的分析。最重要的是,可以用來做自動下單、高頻交易、隨到隨撮等的用途。


本篇接續著第一篇元大API即時行情串接(一),在介紹完行情API相關觀念以及環境安裝之後,將緊接著介紹更進一步的串接觀念與步驟。所以在使用元大行情API之前,我們必須先知道它的流程以及相關的連線資訊。
首先,我們透過此API去請求資料的對象資料如下:

主機IP: 203.66.93.84
Domain: apiquote.yuantafutures.com.tw
T盤Port: 80 or 443
T+1盤Port: 82 or 442


有了伺服器端的IP位址以及對應的主機的Port number,我們就能鎖定位置,再來是一個簡化的流程:


線上課程平台 - Google Classroom


如果你是教師、教學助理等等,會有需要開班上課的需求的話,若有一個可以集中管理的平台應該會非常有幫助,而Google Classroom就是其中之一個好用的平台...

簡單介紹

Google Classroom專門對有開設課程需求的團體或個人提供服務,功能包括課程討論區、行事通知、進度提醒、派發作業或問券等等排程、成績表與相關總分或加權平均計算、繳交狀態紀錄、Email聯絡,並且結合Google日曆與Google雲端硬碟做搭配,顯現出Google系列套裝產品的方便性。