跳到主要內容

發表文章

目前顯示的是 12月, 2010的文章

goristock v0.3 簡介

近一個月以來,投入 goristock 開發時間突然的增加,我覺得 v0.3 這一版本還滿多可以和大家分享的東西,所以在這裡向大家介紹。 首先關於 XMPP 的部份,新增了兩個重要的功能:計算機與新聞搜尋。 計算機 有的時候在看股票會去計算股價買賣手續費的問題,怕自己的帳戶錢不夠,或者是簡單計算獲利狀況。在這之前都要拿台計算機在旁邊計算,所以就想,何不就加入計算機的功能在 XMPP 中。因此現在只要打上 cal <算式>  就會回傳計算結果。另外也可以計算買、賣股票時,實際應付、應收的金額,只要輸入 cal buy <公告股價> (買), cal sell <公告股價> (賣) 新聞搜尋 新聞搜尋部份則使用 Google News Search API ,調整成以台灣、財經為主的新聞搜尋。相關的查詢方式可以參考 使用說明 。 goristock.py 在 goristock 主程式部份,之前只有依據各股收盤價來計算相關的均價分析,但未來是要朝向看盤系統的目標開發,所以將各股基本的開盤、最高、最低資料也納入核心程式中,核心程式的資料也就較完整些。 memcache 快取 在 v0.2 中 加入 memcache ( memcached ) 快取的機制,可以將抓取的資料暫時放到快取中,當下次查詢時就不用再到證交所去抓資料,減少等待排隊取資料的時間。當初構想希望可以在空閒時間時,程式透過 GAE 幫忙建立快取資料。但是卻因為如此,會發生在當日收盤、盤後盤之後(14:30)抓不到當日最新的股價資訊。 這狀況我測試了很久,不管是用丟棄快取然後重新建立,或是在某一時間直接向證交所抓取資料,當還是沒有辦法解決這樣的問題。也試著嘗試詢問 GAE groups ,但似乎是伺服器端的問題,它不理你就沒有辦法。 不過最後我還是回去重新觀察證交所網站,發現一個很特別的網址,當我們送出查詢的時候,證交所會導向一個頁面後,推測應該是資料處理的頁面。處理完畢後才導向最後 呈現資料的頁面 。 換句話說,只要觸發那個處理資料的頁面,就可以抓取到最新的資料,而不會發生伺服器端的快取問題。也就這樣,資料抓取、快取的問題就解決了!過程真的很好玩,一步步找出關鍵的問題點。詳細的 code 可以 參考這裡 。 API