最新消息

[公告2014/05/30] 如有需要將部落格中,任何一篇文章的程式碼使用在商業用途,請與我聯繫。

[公告2015/04/26] Line版的 iInfo程式與投資應用 群組已上線想加入的朋友們,請先查看 "入群須知" 再與我聯繫 Line : aminwhite5168,加入請告知身分與回答 "入群須知" 的問題。

[公告2018/04/22] 台北 Python + Excel VBA 金融資訊爬蟲課程,課程如網頁內容 金融資訊爬蟲班:台北班 Python 金融資訊爬蟲、EXCEL VBA 金融資訊爬蟲

[公告2019/01/08] 請注意:我再次重申,部落格文章的程式碼,是要提供各位參考與學習,一旦網頁改版請自行修改,別要求東要求西要我主動修改,你們用我寫東西賺錢了、交差了,請問有分我一杯羹嗎?既然賺錢沒分我,請問有什麼理由要求我修改,如果沒能力改,就花錢來找我上課。

2017年12月27日 星期三

NetBeans + XAMPP + XDebug 佈署 PHP 開發與偵錯環境

近期因為工作需要需要使用 PHP 來進行偵錯,首要前提就是要建置一個 PHP 的開發環境,使用 NetBeans + XAMPP + XDebug 來建置 PHP 開發環境。

2017年12月25日 星期一

2017年12月23日 星期六

SQLite簡單安裝

SQLite是一個File Base的輕量級資料庫,今天就介紹幾個簡單SQLite安裝方式。

2017年12月19日 星期二

Jupyter notebook 操作(9) --- Matplotlib 繪圖中文字無法正常顯示問題

用 Python 中 Matplotlib 繪圖最頭痛的就是加入中文顯示,由於 Matplotlib 函式庫沒有支援中文字型,所以要在圖中呈現中文字說明或註解等,中文字就會變成了一個個小方框,造成無法處理中文的顯示。

2017年12月7日 星期四

解決Excel 顯示記憶體空間不足無法完成工作

這幾天機器上跑 Excel 檔案遇到「 Excel無法以可用的資源完成工作,請選擇較小的資料或關閉其他的應用程式」的錯誤顯示,這問題找了很久都未能有效處理,這幾天在找一下發現有文章提到可能的解法,試了一下看起來是可行,記錄一下以免哪天忘了。

2017年12月3日 星期日

Jupyter notebook 操作(8) --- Anaconda Python2 與 Python3 共存 安裝方法差異

遇到幾位網友反應他在 Anaconda2 上安裝 Python3後,Python2 與 Python3 共存,結果在 Python3 上無法使用 requests、BeautifulSoup、pandas、lxml 等套件無法被找到使用,筆者在這裡做說明。

2017年11月23日 星期四

Jupyter notebook 操作(7) --- Jupyter Lab

網路逛了一下發現有個新東西:JupyterLab,被稱為 Jupyter 的下一代,目前還在 Beta 版,有興趣的朋友去安裝玩玩看,不過有個限制是 JupyterLab 需安裝於 Jupyter v4.3 版以上。

2017年11月10日 星期五

Anaconda 安裝啟動 IPython notebook 的問題(4) --- Jupyter Notebook requires JavaScript. Please enable it to proceed.

昨天寫 Python code,重新開啟 Jupyter Notebook,遇到 Jupyter Notebook 無法正常開啟,畫面還出現 Jupyter Notebook requires JavaScript. Please enable it to proceed. 大紅字,一時半刻也不知道開如何。

2017年11月7日 星期二

Jupyter notebook 操作(6) --- 擴充功能表功能

今天找資料發現了可以擴充 Jupyter notebook 功能表選單,順道紀錄一下相關的設定與操作,讓大家可以玩玩 Jupyter notebook 擴充功能。

2017年11月2日 星期四

Anaconda 安裝啟動 IPython notebook 的問題(3) --- 啟動 Jupyter notebook 閃退

開啟  Jupyter notebook 最常遇見的問題就是, Jupyter notebook 閃退,這問題主因在於  Jupyter notebook 可能開啟一個不存在的路徑所造成。以 Anaconda 安裝啟動 IPython notebook 的問題(2) --- 修改Anaconda中的Jupyter Notebook 預設工作路徑 提到的方法來修改。

2017年11月1日 星期三

Jupyter notebook 操作(5) --- 在 ipynb 檔案 中 import 其他 ipynb 檔案

編寫 Python 程式常需要 import其他類別函式庫,那如果所編寫的程式存於 ipynb中該如何引用呢?

Jupyter notebook 操作(4) --- 雙擊開啟 ipynb 檔案

在 Jupyter notebook 上寫好的程式碼,如果沒有另外存成 .py,那 Jupyter notebook 會預設存成 .ipynb,要開啟 .ipynb 檔案就需啟動 Jupyter notebook ,有沒有方法可以快速讓 .ipynb 檔案開啟呢?

Jupyter notebook 操作(3) --- 程式碼存檔、查詢、重新載入

在 Jupyter notebook 上,如果想將打好的程式碼輸出成 .py 給別人使用、或要載入別人給 .py,應該怎麼做呢?

Anaconda 安裝啟動 IPython notebook 的問題(2) --- 修改Anaconda中的Jupyter Notebook 預設工作路徑

安裝 Anaconda 後,開啟 Jupyter notebook 其預設路徑都是在使用者帳號下,如果要變更開啟的預設路徑可以怎麼做呢?

2017年10月24日 星期二

Anaconda 安裝啟動 IPython notebook 的問題(1) --- Anaconda 環境變數設定

今天上課遇到許多同學有 Anaconda 安裝有問題,讓我不得不正視這些問題了,以下針對安裝 Anaconda 與啟動 IPython notebook 等問題,將陸續找出相關解決方法,歡迎各位朋友幫忙提出在操作上遇到的問題與解法。

2017年10月20日 星期五

Application.OnTime 設定開啟與停止

手邊處理一個跟 Application.OnTime 時間循環有關的問題,順道記錄一下。

2017年10月9日 星期一

Wireshark 抓取 三大法人買賣金額統計表 CSV 檔

Wireshark 是一個功能強的封包側錄工具,它可以幫助我們了解Server/Client間的溝通,筆者拿抓取 三大法人買賣金額統計表 CSV檔介紹。

2017年10月8日 星期日

建立DOM新節點

最近在處理一個JS例子,由於想不出方法,上網找了一下沒有比較正式解法,卻找到一個骯髒解法,不過也是完成了,方法就是透過新增新節點來達成,記錄一下程式內容以免忘記。

2017年10月4日 星期三

網路爬蟲(Crawler)相關的內容

花了半個鐘頭有系統的整理一下,關於長時間研究爬蟲所需了解的內容,希望對大家有所幫助,目前是第一版,後續內容有再增加會再放上來,如果圖的內容有誤或不足,還請各位大大指點一下小弟。

2017年9月17日 星期日

Excel 操控瀏覽器 抓元大台灣50ETF成分股

使用Excel 操控瀏覽器,抓元大台灣50ETF成分股,屬於進階爬蟲方法之一,也可使用Python、R、JAVA、C#、Ruby或其他語言做到,效率很差,完成難度高為其缺點。

2017年9月14日 星期四

Jupyter notebook 操作(2) --- Anaconda 上安裝 R,讓Python與R共存

在Anaconda上整合R執行環境已不是很新的技術了,但筆者卻在 Windows7 32bit 環境上花了很多時間還是無法完成,可能是筆者的電腦問題,不過後來換了 Windows 8.1 64bit 環境安裝後,即可正常安裝成功。

2017年8月31日 星期四

Excel VBA 與 Python 網路爬蟲寫法異同之處

許多讀者對於 Excel VBA 與 Python 之間的差異不清楚,今天筆者整理一下讓大家有概念,讓大家對於不同語言之間爬蟲的作法有基本的了解, Excel VBA 比起 Python 的程式碼撰寫確實很繁雜,真的有興趣研究這兩種語言的朋友,可參考筆者整理的本篇內容。

2017年8月27日 星期日

Excel VBA 與 Python 爬「公開資訊觀測站的重大訊息公告」

兩周8小時上完Excel VBA爬蟲入門班課程,在課程最後同學問到如何爬公開資訊觀測站的重大訊息公告,當時誤判用錯 Internet Explorer 方法,造成抓取中文變成亂碼,經過轉碼依舊無法有效(或許還有別的方法,後續再研究),後面改以XMLHttp處理即可順利完成。

2017年8月19日 星期六

Jupyter notebook 操作(1) --- Anaconda Python2 與 Python3 共存

這幾天準備Excel 與 MultiCharts結合的上課講義,就把之前想在 Anaconda中讓 Python2 與 Python3 共存的想法做一下整理與記錄。

2017年7月16日 星期日

MultiCharts 匯入外部資料(6) --- 不產生CSV檔,直接使用 Excel 外資期貨未平倉量在MultiCharts以指標方式呈現

介紹過 Power Language 執行 Excel 抓取網路資料產生CSV檔,在傳入 MultiCharts 畫圖,MultiCharts 匯入外部資料(1) --- Excel VBA 產生的外資未平倉量檔案,過程中產生的CSV檔不管是存放在桌面或資料夾,久了都覺得很煩很膩,筆者想了一下如果能夠讓資料匯入MultiCharts又不產生CSV檔,這樣就不會覺得很煩了。

2017年6月14日 星期三

Google Apps Script 入門到進階(13) --- Python、R、Excel 傳入數值到雲端 Google Sheet

今天來介紹如何用Python、R、Excel傳送數值到Google Sheet上,這幾僅提供Client端的傳送方法,Google Sheet端地接收程式,請讀者自行開發。

2017年6月2日 星期五

Google Apps Script 入門到進階(12) --- 程式碼優化2

前篇介紹過陣列來優化執行效率,接著再介紹用陣列優化程式碼,用以提高Google Apps Script執行效率。

2017年6月1日 星期四

Google Apps Script 入門到進階(11) --- 程式碼優化1

介紹了很多Google Apps Script,程式碼雖然是放在雲端上執行,還是需要一些優化的處理,讓程式整體執行的效率可以提升,如同在Excel VBA的優化,筆者這就介紹透過陣列的優化處理,讓儲存格的執行效率可以提升。

2017年5月14日 星期日

Google Apps Script 入門到進階(10) --- 盤後資料應用

前面文章介紹了使用 Google Visualization API  畫圖,現在筆者這些內容作一整合應用,以證交所、期交所的盤後資料來做一呈現。
內容功能兩個圖特點:
  1. 每日下午3:00 ~ 4:00自動到證交所、期交所抓盤後資料。
  2. 程式以 Google Apps Script、Google Visualization API 、JavaScript撰寫。
三大法人買賣金額統計資料從2014/12/01開始記錄。
資料來源:臺灣證券交所---三大法人買賣金額統計表。


期貨大額交易人未沖銷部位結構表從2014/01/01開始記錄。
資料來源:臺灣期貨交易所---期貨大額交易人未沖銷部位結構表。


臺指選擇權(TXO)Put/Call Ratios 統計表從2014/01/01開始記錄。
資料來源:臺灣期貨交易所---臺指選擇權Put/Call比 。


散戶比重資訊從2014/06/01開始記錄。
資料來源:臺灣期貨交易所--- 三大法人。


相關閱讀:
參考資料:

2017年5月4日 星期四

Google Apps Script 入門到進階(9) --- 仿 Excel Querytable

Google Sheet中匯入網頁表格資料可用importHTML,在Google Apps Script如果也要有像Excel Querytable功能那就要自己刻了,以下就以Google Apps Script仿Excel Querytable的做法。

2017年4月29日 星期六

Google Apps Script 入門到進階(8) --- Dashboard and Control

前面介紹了幾篇Google Visualization API 畫圖文章,整個畫面除了游標移動會跟著移動顯示數值外,其餘內容都是固定。Google Visualization API有提供另一種可讓使用者動態移動顯示的功能,就是儀表板(Dashboard),接著簡單介紹畫一個簡單動態圖。

2017年4月27日 星期四

Google Apps Script 入門到進階(7) --- 使用Google Visualization API (google.visualization.Query) 畫台指換倉成本

前面幾篇文章透過Google Visualization API (google.visualization.DataTable)與Google Apps Script 繪圖,資料讀取以Google Sheet ID 取得,這樣方式多用在可限制權限讀取的個人Google Sheet,如果想要取得他人分享的Google Sheet就需要使用Google Visualization API (google.visualization.Query)來完成。

2017年4月18日 星期二

判別Windows x86或x64

一些程式需求要判別Windows x86或x64,使用OS內建的Win API來做處理,其實這方法已經用很久了,為了方便,將該程式碼PO上來,大家可以參考。

2017年4月5日 星期三

Google Apps Script 入門到進階(3) --- 功能表

在Excel中可以在功能表中加入客製化的功能,如果想在 Google Sheet 加入自己的定義功能表是否也可以做到呢?答案是Yes,Google Apps Script有提供新增功能表的API,讓使用者做出屬於自己的功能表。

2017年4月4日 星期二

Google Apps Script 入門到進階(2) --- 寄出含有圖片的Mail到信箱

有時我們想將Google Sheet的圖表寄送給自己或別人,但又不像Excel這麼方便可以直接透過Outlook寄送,還好Google有提供MailApp可以幫助我們完成這樣的作業。

2017年3月31日 星期五

MultiCharts 與 Excel 畫冰火能量圖 (11) --- 更名「台股儀表板」

從前面教學的冰火能量圖教學開始到現在,筆者不斷的進行功能與程式碼優化至今,覺得換個名字會比較好聽一點,以區隔檯面上的軟體,筆者就稱為「台股儀表板」,這一路走來不斷地修改到現在的版本,未來還會進行修改。
免責申明:以下說明僅供教學使用,請勿做為投資之依據,投資盈虧一概不負責。

在Command中顯示像RW編排的內容

有時程式除錯需要列印一大塊的記憶體空間內容,在無法借助外部程式的情況下,就需要用程式來印,筆者花點時間分享一下自己除錯會用到的程式碼。

2017年3月23日 星期四

Unix Timestamp 使用 Excel VBA

傳送參數有些時候會使用到 Unix Timestamp 的數值,Unix Timestamp 就是從1970/1/1開始至今的時間,一般以秒為單位,有些網站會以 Unix Timestamp 作為數值顯示或參數傳送,有些遇到朋友這樣的數值就無法解析了,筆者用以下Excel VBA程式碼來說明。

2017年3月11日 星期六

MultiCharts 呼叫外部 DLL ,DLL覆寫資料問題

近期使用 VC++ 開發 MultiCharts 使用的DLL,遇到當2個策略或指標同時使用同一個DLL抓取資料,第一個先執行的策略或指標產生的資料,被第二個後執行的策略或指標產生的資料所覆蓋,這問題後來筆者用了一個簡單的方式克服了這個問題,順道分享一下。

2017年3月6日 星期一

Google Spreadsheet 操作 --- Google 視覺化API查詢語言,簡易版操作

Google 視覺化API查詢語言 (Google Visualization API Query Language) 是用簡單方式就可以查詢Google Spreadsheet,這裡用簡易的方式透過URL輕鬆取得指定 Google Spreadsheet 內的資料,該方法位於Google官方網站上提供,所以有的資源可能不多,如有其他方法歡迎各位朋友提供。

MultiCharts 寫Log 函數

開發 MultiCharts 策略,Debug是一個必經的過程,但如果想在PLE中輸出檔案或記錄某些內容,就需要再PLE中寫記錄Log的函數,筆者這裡分享一下有在使用的Log函數。

2017年3月4日 星期六

MultiCharts 匯入外部資料(5) --- MultiCharts以指標方式,動態匯入 VBScrip 產生三大法人期貨未平倉量 CSV

繼前面 MultiCharts 匯入外部資料(3) --- VBScript抓取三大法人期貨未平倉量,介紹手動產生三大法人期貨未平倉量CSV並匯入QM作法後,筆者將相同程式以動態匯入的方式做介紹,將盤後資料載入到 MultiCharts 的指標中。

MultiCharts 與 Excel 畫冰火能量圖 (10)

繼前面一系列的冰火能量圖後,筆者將近期研究的成交量動能一起分享出來,這部分可能只有MultiCharts 才能使用,至於Excel可能要再研究看看是否有相關的資料了。
以下說明僅供教學使用,請勿做為投資之依據,投資盈虧一概不負責。

MultiCharts 匯入外部資料(4) --- MultiCharts以指標方式,動態匯入Excel 產生的CSV檔

前面介紹使用QuoteManager中ASCII Mapping功能來匯入外資、自營商未平倉量的文章,MultiCharts 匯入外部資料(1) --- Excel VBA 產生的外資未平倉量檔案,今天介紹使用MultiCharts指標來呈現外資、自營商未平倉量。
這裡筆者非常感謝陳立偉老師指點幫助才能順利完成這一連串的串接,如果沒有老師的協助,筆者這樣的做法可能還會要花更多的時間。

2017年3月2日 星期四

2017年2月24日 星期五

Google Apps Script 入門到進階(1) --- Library建立與引用設定

Google Apps Script是Google推出的應用服務解決方案,基本上是以JavaScript為Base,熟悉JavaScript的朋友應該很快就可以上手了,今天就來介紹如何使用Google Apps Script建立一個Library。

2017年2月22日 星期三

2017部落格文章研究方向

對於未來文章的方向有些想法趕緊畫圖紀錄下來,如果對於圖中任何一個主題有興趣的朋友,歡迎一起研究。

2017年2月14日 星期二

Line Bot 入門與應用(2) --- Line Messaging API V2 + Google Apps Script 串接 雲端機器人

如 Line 機器人 入門與應用(1) --- Line Messaging API V2 + PHP 串接 文章介紹如何串接 Line機器人,接著就用Google Apps Script來串接,這樣筆者就可以直接整合 Google 雲端文件,就先來了解如何打通這部分。

2017年2月13日 星期一

.NET C# 建立 COM元件 (5) --- UnManaged Exports dll

如果要將C#函數輸出成可讓C++使用Loadlibrary方式呼叫的DLL,稱為Unmanaged Export dll,反之稱為Managed dll,至於什麼是Managed/Unmanaged呢?
感謝iInfo群Neil (承諺)大大的協助,才能順利完成。

2017年2月12日 星期日

Line Bot 入門與應用(1) --- Line Messaging API V2 + PHP 串接

這2天串接 Line bot V2版花了一些功夫,雖然官網有提供 PHP SDK可以使用,不過筆者還是喜歡跟人家用不同的方法完成,過程遇到幾個問題,將在文章中一一說明,這裡感謝 「Chatbot.tw 台灣聊天機器人開發者社團」中的小強、韋辰、Akito大大們的協助才有機會完成。

2017年2月5日 星期日

2017年2月4日 星期六

.NET C# 建立 COM元件 (3) --- 再談 Excel VBA 後期綁定元件

從 .NET C# 建立 COM元件 (2) --- 製作 Excel VBA 後期綁定元件 介紹製作 Excel VBA 後期綁定元件,操作過程中 DLL元件需要跟系統註冊後才能使用,這裡就來看看在登錄檔中到底註冊了什麼內容,以及當屬性修改後會造成什麼影響。

2017年2月3日 星期五

2017年1月31日 星期二

.NET C# 建立 COM元件 (1) --- 製作 Excel VBA 前期綁定元件

近期使用C#串接Google Sheet,遇到C# DLL無法直接被使用,查了一下才知道C#產生.net DLL無法使用COM環境上,上網找了一些資料,剛好搜尋到研就如何在C#建立COM DLL給VBA使用,花了一點時間研究了一下順道紀錄。

2017年1月29日 星期日

Firebase Cloud Messaging (FCM) 入門到進階應用(5) --- 發送訊息到手機

Firebase Cloud Messaging (FCM) 入門到進階應用(4) --- 網頁安裝SSL憑證 介紹完安裝SSL憑證後,接著就可以完成傳送訊息到手機上了。

Firebase Cloud Messaging (FCM) 入門到進階應用(4) --- 網頁安裝SSL憑證

Firebase Cloud Messaging 訊息傳送主要還是在行動裝置上,Firebase Cloud Messaging (FCM) 入門到進階應用(1) --- 開發環境建立 所述每個裝置都需要一個專屬的Token,才能將訊息送達,這樣的前提是每個裝置要在安全的網頁上取得Token。

2017年1月21日 星期六

Visual Studio 2010 C++ 使用 Jsoncpp

Google推播內容須使用JSON格式,套用在VC++筆者採用可以很方便使用的靜態程式庫Jsoncpp,它是跨平台開源程式碼,可直接在網路上下載取得,在引用編譯設定上會有點麻煩,但也不是很麻煩,網路上寫的內容多半不清楚,這裡就將操作方法完整說明。

2017年1月19日 星期四

Firebase Cloud Messaging (FCM) 入門到進階應用(3) --- 其他程式語言

Firebase Cloud Messaging 官方提供的語言原始碼不多,筆者也一樣分享其他相關的語言,讓各方的使用者可以參與,有意願分享的朋友請與筆者聯繫。

Firebase Cloud Messaging (FCM) 入門到進階應用(2) --- 與MultiCharts結合送出下單通知

前面Line Notify的文章裡,介紹過Line Notify 結合外部程式的應用:LINE Notify 入門到進階應用(5) --- Line Notify 結合外部程式的應用,在把Google推播 (Push Notification)也一起整理出來後,不免俗也將Google推播與外部程式一起做連結。

2017年1月18日 星期三

Firebase Cloud Messaging (FCM) 入門到進階應用(1) --- 開發環境建立

近期玩 Line Notify,在網路上找到Google有做一個Google Cloud Messaging(GCM)雲端訊息功能,另一種說法就是推播 (Push Notification),這項技術不是新的,它的應用常在生活上見到,如有人在你的FaceBook留言,手機就可以收到通知訊息,或是地震時會收到地震通知,看到這樣不錯的應用,想說這應該可以拿來做成下單或盤後資訊通知,這樣就不怕訊息漏接。內容屬於網路通訊的應用比較進階,有興趣的朋友可以好好研究。

2017年1月14日 星期六

LINE Notify 入門到進階應用(7) --- 透過Batch file + Excel VBA + Python + Line Notify 傳送每日盤後資料

前面介紹了很多 Line Notify 結合外部程式與軟體的應用,今天再補充一個使用Batch file + Excel VBA + Python與Line Notify的應用,透過 Batch file、Excel VBA、Python、Line Notify相互搭配做到在自家電腦就可完成的盤後資料通知。

2017年1月12日 星期四

關於python無法顯示中文的問題:SyntaxError: Non-ASCII character '\xe4'

從Anaconda上可執行的Python程式碼,轉移到透過Command模式執行發生因為中文字無法執行的問題。

2017年1月10日 星期二

Node.js 環境建置,執行xmlhttprequest

這陣子在使用Line Notify,需要用到Java Script版的程式碼,中間遇到Java Script在HTML上執行會遇到跨網域存取的問題,最後經由 Cass (C.K.) 大大的協助,將程式轉至Node.js環境上才成功,以下整個過程紀錄一下。

2017年1月8日 星期日

LINE Notify 入門到進階應用(6) --- 傳送本機圖片Line Notify

前面幾篇文章介紹Line Notify傳送文字與網路圖片方法都算是小兒科,藉由傳送本機圖片到 Line Notify 的機會來介紹POST傳送方法的食物操作 (是實務操作才對) 的進階方法,這對於網路工程師來說應該屬於小兒科了,這一篇原本筆者不打算公開,因為對一般使用者真的很進階,但幾經考量後,還是將它寫成文章。
如果寫的內容有誤,請不吝嗇的給於小弟一些指導,對於一般使用者,在看完以下內容後跟不上的朋友,請多花時間了解。

2017年1月6日 星期五

LINE Notify 入門到進階應用(5) --- Line Notify 結合外部程式的應用

前面介紹了使用其他程式語言與 Line Notify 傳送文字與網路圖片,今天筆者就以Line Notify 實現的應用以影片的方式介紹說明,讓各位讀者可以了解 Line Notify可以做到的程度,如還有其他方面的應用,也歡迎各位讀者提供。

2017年1月3日 星期二

LINE Notify 入門到進階應用(4) --- 傳送文字網路圖片到Line Notify 其他語言

由於Line Notify當推出不久,所以網路上的參考範例資源較少,筆者陸續轉成手邊會的程式語言分享於此,有意願分享的朋友請與筆者聯繫。

2017年1月2日 星期一

2017年1月1日 星期日

LINE Notify 入門到進階應用(2) --- Excel傳送文字到LINE Notify

LINE Notify 入門到進階應用(1) --- 訊息傳送環境設定 介紹了如何建立傳送環境,筆者免不了就想用Excel VBA與Google Apps Script去傳送文字到Line Notify,今天先介紹用Excel VBA方式做說明。