㈠ r語言怎麼調整分類模型類的權重
打分法就是根據各個因子的大小對股票進行打分,然後按照一定的權重加權得到一個總分,根據總分再對股票進行篩眩回歸法就是用過去的股票的收益率對多因子進行回歸,得到一個回歸方程,然後再把最新的因子值代入回歸方程得到一個對未來股票收益的
㈡ 如何用r語言製作trade strategy
初始化: 初始化一個現金和一個股票工具
currency("RMB")
stock("ZSYH", currency = "RMB", multiplier = 1)
ls(envir = FinancialInstrument:::.instrument) #設置 .instrument環境
㈢ R語言里的一個語句不明白啥意思
在quantmod包裡面;
getSymbols(Symbols = NULL,
env = parent.frame(),
reload.Symbols = FALSE,
verbose = FALSE,
warnings = TRUE,
src = "yahoo",
symbol.lookup = TRUE,
auto.assign = getOption('getSymbols.auto.assign',TRUE),
...)
auto.assign=F表示不自動賦值;需要手動指定變數去存儲數據。否則就是自動賦值給Symbols變數。
㈣ 如何高效地使用RStudio
RStudio Server 是 RStudio 公司打造的一款基於 Web 的開源編輯器,如果你熟悉 RStudio的桌面版本,那麼使用RStudio Server對你來說基本上沒什麼難度。
在
實際的工程中,我們的伺服器大多是基於Linux的,比如常見的 ubuntu、centos
等。這些操作系統有時並不提供圖形化界面,這時候RStudio的伺服器版本就派上用場了。啟動RStudio
Server後,進入在瀏覽器中進入某一個頁面後就可以像桌面版一樣使用RStudio編輯器。當R的代碼在伺服器上出現bug了,線上的hotfix是
在所難免的,這時候必然會用到 RStudio Server 應個急。
這一次,我們將繼續利用Docker神器,快速初始化RStudio Server環境的配置,並結合Git實現代碼的版本控制。
准備
一個 Ubuntu 伺服器
第一步:安裝 RStudio Server
首先,我們通過docker 安裝一個標準的RStudio Server
docker pull quantumobject/docker-rstudio
docker run -d -p 8787:8787 quantumobject/docker-rstudio
這樣在你的電腦的8787埠就可以訪問到rstudio的登陸界面了。
第二步:初始化 RStudio 賬號
接著,我們需要初始化一個rstudio的賬號
docker exec -it container-id /bin/bash
adser harryzhu # 設置新用戶名
passwd harryzhu # 設置該用戶的密碼
mkdir /home/harryzhu # 初始化工作空間
chmod -R harryzhu /home/harryzhu # 給工作空間賦權
第三步:安裝 git
然後,我們進入rstudio的伺服器,我們打算引入git版本控制
sudo apt-get install git-core
第四步:解決 ssh 的認證問題
使用 git 的過程可能遇到SSL certificate problem。對於ssh的問題,我們可以選擇建立一個ssh認證的key,也可以在git中設置為忽略。
生成一個key:
$ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
連續按下回車,跳過密碼設置
顯示秘鑰信息:
sudo cat /root/.ssh/id_rsa.pub
如果沒有ssh認證的需求,也可以選擇忽略:
git config --global http.sslVerify false
第五步:在 RStudio Server 中配置Git
在最上方的菜單欄中可以選擇Project Options。
接著填寫配置。
第六步:克隆 Git 項目到本地
Git 功能已經集成在 RStudio-Server 中了,在新建項目時可以選擇新建一個Version Control 的 Git 項目。
大功告成!
參考資料
docker-rstudio 手冊
張丹老師的 RStudio-Server 配置實戰
Rstudio 官方 git 解決方案
劉坤老師的 Git 中文教程
---------------------------------------------------------------------------------------------------------------
概述
本文根據 Rstudio Webinars 的教程資源對Rstudio流的R語言教程做一個匯總,可以看到Rstudio對統計報告的Web化和工程化做了大量貢獻。感謝Rstudio的眾多工程師在開源的道路上的貢獻!
謝溢輝:LaTex/Word的統計報告大逃亡之Rmarkdown生態
教學視頻地址
在可交互、可復用的統計報告中,謝溢輝將介紹一眾R包,包括 knitr、rmarkdown、htmlwidgets、DT、leaflet以及shiny。
快速標準的論文書寫# $something$ 或者 $$something$$ 可以解決數學公式的問題
# 利用 bib 文件和[@something] 可以解決引用的問題
# 同樣的,你也可以根據一些機構要求引入標準的模板。
參考謝溢輝的Rmarkdown論文
參考謝溢輝的bib文件
屏蔽源碼# ```{r echo=F}屏蔽源代碼
# ```{r, fig.width=5, fig.height=4} 設置配圖大小
# 腳注
代碼段內存共享
利用cache選項復用代碼和數據
Sys.sleep(5)
rnorm(1)
輸出其他語言代碼
利用engine選項選擇代碼引擎,驅動python、R、scala、Rcpp、bash、perl、node等
x = 'hello, python
world!'
print(x)
print(x.split(' '))
互動式文檔
利用yaml配置中的runtime選項
---
author: Harry Zhu
output: html_document
runtime: shiny
---
同理,你也可以選擇輸出slide、pdf或者word,你甚至可以給html定製一個css皮膚。
在我看來,rmarkdown是一款超越Zeppelin和iPython notebook的產品。
最總要的意義在於,學術工作者和工程師們不僅僅可以擺脫格式對創作的束縛專注於代碼和文檔,更是隨意輸出pdf、slide、html、word、latex等多種格式,形成強有力的跨界沖擊。
謝溢輝本人有超過10年以上的LaTex使用經驗,他的rmarkdown和knitr造福了一代學術工作者,顯然LaTex和Word的體系在這種降維攻擊下已經搖搖欲墜。
Hadley Wickham:R與大數據共舞
教學視頻地址
R是一門為小數據探索和開發設計的語言,但在生產中R和大數據在一起還能發揮作用嗎? 我們定義數據量大於單機內存的數據為大數據。讓我們對比一下大數據與小數據的生命周期。
一個小數據分析項目的生命周期:
闡明:熟悉數據、模板解決方案
開發:創建有效模型
產品化:自動化與集成
發布:社會化
一個大數據分析項目的生命周期:
切片:抽取部分數據
闡明:熟悉數據、模板解決方案
開發:創建有效模型
擴展:使用到整個數據集
產品化:自動化與集成
發布:社會化
dplyr與數據讀取
教學視頻地址
PackageDBMSsrc_sqlite()SQLitesrc_mysqlMySQLsrc_postgresPostgreSQLlibrary(bigquery) src_bigquery()Google BigQuery
顯示SQLshow_query(clean)
中間緩存
collapse()返回正在處理的結果
# 抽取 1% 的訓練數據
random <- clean %>%
mutate(x = random()) %>%
collapse() %>%
filter(x <= 0.01) %>%
select(-x) %>%
collect()
數據存儲
_to() 根據本地的data frame 在資料庫創建一個表
# air為connection名稱,query5為data frame,"gains"為表名
_to(air, query5, name = "gains")
# 關閉連接
rm(air)
# 垃圾收集器
gc()
Hadley Wickham:ETL
教學視頻地址
本節將討論一個有效的數據分析/數據科學問題框架,包括:
數據讀取 readr/httr/DBI
數據清洗 tidyr/jsonlite
數據處理 dplyr/rlist
數據可視化 ggplot2/ggvis
數據建模 broom
broom:快速分析install.packages("broom")
# 查看相關例子
browseVignettes(package="broom")
Hadley Wickham是RStudio的首席科學家,並兼任統計萊斯大學的兼職教授。他將一一介紹他認為你應該知道的各種R包,並概述大數據和R,但主要是解釋為什麼他相信你不應該擔心大數據的問題。
garrettgman:packrat與虛擬化技術
教學視頻地址
你
是否有過這樣與人合作開發的經歷:在自己機器上運行完美的R代碼,復制到另外一台同事的機器上運行就有很多R包需要重新安裝,有的R包甚至依賴於不同的版
本?現在,在不使用Docker或Vagrant等全局虛擬化技術的條件下,只需要運用packrat包,就可以保證你的R項目的依賴問題被很好的解決,
一次運行,到處運行。
if(!require(packrat)){install.packages("packrat")}
getOption("repos") # 顯示代碼鏡像源
packrat:: bundle() # 打包當前環境並虛擬化
packrat:: unbundle(bundle="xxx.tar.gz",where=".") # 載入已經打包過的環境
packrat::opts$local.repos("~/R") # 設置本地repos為路徑
packrat::install_local("pryr") # 從本地安裝
Hadley Wickham:Git與團隊協作
教學視頻地址
團隊協作:利用Git 和 GitHub,你可以很輕松的與人協作,你不再需要用郵件附件來備份文檔,或者在Dropbox上為爭奪編輯許可權而爭吵。相反,你可以獨立工作,最後只需要合並你們的成果就可以。
版本控制: Git 在我們製造重大錯誤時都允許我們回滾到之前的任意時間點。我們也可以回顧我們之前所做的一起歷史記錄,跟蹤bug的形成過程。
㈤ R語言怎麼把股票日收盤價轉換成對數收益率
知道一系列收盤價向量X,length=1000,求對數收益率的R語言代碼
acf(int[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int monthly
acf(int.l[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int monthly
log return')
Box.test(int[,2], lag = 5, type = "Ljung-Box")
Box.test(int[,2], lag = 10, type = "Ljung-Box")
Box.test(int.l[,2], lag = 5, type = "Ljung-Box")
Box.test(int.l[,2], lag = 10, type = "Ljung-Box")
運行結錯誤辦
> int <- read.table("d-intc7208.txt", head=T)
錯誤於file(file, "rt") : 打鏈結
外: 警告信息:
In file(file, "rt") :
打文件'd-intc7208.txt': No such file or directory
+ acf(int.l[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int monthly
錯誤: 意外符號 in:
"
acf(int.l[,2], lag.max = 15,type = "correlation", plot = TRUE,main='int"
> log return')
錯誤: 意外符號 in "log return"
㈥ 正在學慣用R語言編寫股票自動交易軟體,但是對股票以及R語言都知之甚少。求高手指點。
我和你一樣,也在學,大智慧新一代,通達信,和飛狐這幾個你任選一個先學,以後慢慢的都會了。飛狐相對要復雜一些,要想編出功能更強大的公式,飛狐里還會用到VBS和JS腳本,還會用到C語言,別的公式不會用到這些。
㈦ 如何用R語言的quantmod包獲取一系列股票的歷史日線數據
我舉個例子供你參考:
> install.packages('quantmod') # 安裝安裝quantmod包
> require(quantmod)#引用quantmod包
> getSymbols("GOOG",src="yahoo",from="2013-01-01", to='2013-04-24') #從雅虎財經獲取google的股票數據
> chartSeries(GOOG,up.col='red',dn.col='green') #顯示K線圖
㈧ 如何用R語言提取股票行情數據
你好,關於股票價格有關的開盤價格,當日最高價格,當日最低價格,收盤價格,股票交易量;和調整後的價格;
DIA.Open 當日開盤價格
DIA.High 當日最高價格
DIA.Low 當日最低價格
DIA.Close 當日收盤價格
DIA.Volume 當日股票交易量
DIA.Adjusted 當日調整後的價格
㈨ rstudio找不到網路路徑
彈出出錯信息框,提示」找不到網路路徑「,就可以用這種方法解決問題。 一般情況下,遇到這種問題時,不要直接使用網上鄰居的計算機名,使用網上鄰居計算機的IP地址,比如在運行框中輸入: \192.168.1.3;就可以跟IP地址為192.168.1.3的網上鄰居建立連接。
RStudio是用於R編程的開源工具。如果您對使用R編程感興趣,則值得了解RStudio的功能。它是一種靈活的工具,可幫助您創建可讀的分析,並將您的代碼,圖像,注釋和圖解保持在一起。
在此大數據分析R語言RStudio使用教程文章中,我們將介紹RStudio免費版本的一些最佳功能:RStudio Desktop。我們收集了一些RStudio的重要技巧,竅門和快捷方式,可快速將您變成RStudio高級用戶!