免責聲明:
任何投資行為均有其風險,作為一名投資者,應為自己任何投資決策行為承擔所有風險。
本網站當盡力提供正確之資訊,所載資料均來自或本諸我們相信可靠之來源,但對其完整性、即時性和正確性不做任何擔保,如有錯誤或疏漏,本網站所有人及關係人,並不負任何法律責任。
本文非任何形式之投資建議,不保證所提供之資訊可以創造獲利、減少投資損失,亦不會鼓吹任何具體之投資行動。本網站所有人及關係人,對於本網站資訊使用者直接或間接依賴並參考相關資訊後,採取任何投資行為所導致之直接或間接損失,或因此產生之一切責任,均不負任何損害賠償及其他法律上之責任。
任何投資行為均有其風險,作為一名投資者,應為自己任何投資決策行為承擔所有風險。
本網站當盡力提供正確之資訊,所載資料均來自或本諸我們相信可靠之來源,但對其完整性、即時性和正確性不做任何擔保,如有錯誤或疏漏,本網站所有人及關係人,並不負任何法律責任。
本文非任何形式之投資建議,不保證所提供之資訊可以創造獲利、減少投資損失,亦不會鼓吹任何具體之投資行動。本網站所有人及關係人,對於本網站資訊使用者直接或間接依賴並參考相關資訊後,採取任何投資行為所導致之直接或間接損失,或因此產生之一切責任,均不負任何損害賠償及其他法律上之責任。
前言
這裡不急著寫 R 程式。先對 R 做一些簡短的介紹。
誔生
R 語言是 S 語言的開放源碼版本,兩者皆是用於統計運算 (statistical computing) 的程式語言。現在前者遠比後者受歡迎,就不用再去學 S 語言了。
版本 (Version)
在多多撰寫這篇文章時,R 語言的版本是 4.2.1
。由於 R 語言是免費且開源的,隨時可從網路上取得,除非有特殊考量,不需要刻意守在舊版本。
發行版 (Distribution)
- 官方發行版
- pqR
- Microsoft R Open
沒有特殊考量的話,請用官方發行版。幾乎所有的 R 套件都會相容於官方發行版,但不一定會相容於其他發行版。
在財經程式設計的應用
R 語言在財經程式設計 (financial programming) 的用途如下:
- 數字運算 (numerical computation)
- 收集資料 (data collection)
- 處理資料 (data manipulation)
- 資料視覺化 (data visualization)
- 技術分析 (technological analysis)
- 交易策略 (trading strategy)
- 回測 (backtesting)
這個網站的重點仍然是投資,而非程式設計。在財經網站就可以輕易取得的圖表,我們不會花太多時間重造輪子。本系列文章的重點在於學會基本的 R 語言語法和相關套件的使用,做為決策的輔助。
這系列文章會學習 R 語言,但不是所有的任務都要用 R 語言來做。像是實作網路爬蟲 (web crawler) 常用的語言是 Python 和 JavaScript,而非 R 語言。
和 Python 比較
Python 是近年來最流行的資料科學 (data science) 語言。不過,比起 Python,R 語言仍然有一些優勢。向量、表格等資料型態在 R 語言是內建的,在 Python 要使用社群套件。R 內建的交互式環境就可以直接使用,Python 需要社群套件補足原生交互式環境的不足。R 在資料視覺化仍然比 Python 簡單。
做為通用型語言的話,Python 比 R 用途廣泛,在語法上也比較直觀。由於兩者在功能上有諸多重疊,這裡就不再繼續比較下去,請選擇自己喜歡的工具。