選自GitHub
作者:DavidSheehan
機器之心編譯
截至11月22日,比特幣的價格再創歷史新高,在驚訝于虛擬貨幣「不可戰勝」的同時,我們或許能可以從這一波熱潮中學到些什么。本文中,博士畢業于倫敦大學學院的DavidSheehan為我們介紹了使用Keras基于LSTM預測比特幣價格走勢的詳細方法。在測試中,這個機器學習預測法似乎有著不錯的準確度。
如果要列出2017年最為荒謬的三樣事物,則一定是指尖陀螺、人工智能,當然,還有加密虛擬貨幣。以上是玩笑話,實際上我對虛擬貨幣的原理印象深刻,而且非常看好這種顛覆性技術的長期前景。我試圖通過深度學習、機器學習或者說人工智能成功預測虛擬貨幣的價格。
我認為把深度學習和虛擬貨幣結合起來是非常獨特的想法,但是在寫本文時,我發現了一些類似的內容。這篇文章只關注比特幣,但是我還想討論一下以太幣。
我們打算使用LSTM模型,一種非常適合時序數據的深度學習模型。如果你希望真正了解理論或概念,那么推薦閱讀:
LSTM入門必讀:從基礎知識到工作方式詳解
比特幣期權未平倉合約本周創新高:金色財經報道,Skew數據顯示,比特幣期權未平倉合約在周二開盤時達到創紀錄的21.4億美元,比8月28日11.4億美元的數月低位增長了近53%。截至周三,比特幣期權未平倉合約達20.3億美元。此前的歷史最高記錄為7月30日的21.1億美元。由于將有名義價值達10億美元的比特幣期權在周五到期,可能會引發更大的波動性。[2020/9/25]
深度|LSTM和遞歸網絡基礎教程
教程|基于Keras的LSTM多變量時間序列預測
教程|如何判斷LSTM模型中的過擬合與欠擬合
深度|從任務到可視化,如何理解LSTM網絡中的神經元
干貨|圖解LSTM神經網絡架構及其11種變體
完整代碼地址:https://github.com/dashee87/blogScripts/blob/master/Jupyter/2017-11-20-predicting-cryptocurrency-prices-with-deep-learning.ipynb
數據
在構建模型之前,我們需要先獲取一些數據。Kaggle上的數據集非常詳細地記錄了近幾年的比特幣價格。在這個時間長度中,噪聲可能蓋住了信號,因此我們需要選擇單日價格數據。問題在于我們可能沒有充足的數據。在深度學習中,沒有模型可以克服數據嚴重缺乏的問題。我同樣不想使用靜態文件,因為未來使用新數據更新模型時,這種做法會復雜化更新流程。于是,我們計劃從網站和API中抓取數據。
比特幣開發人員Matt Corallo發現潛在閃電網絡漏洞:比特幣核心貢獻者、Blockstream聯合創始人Matt Corallo以及支付巨頭Square旗下加密團隊發現了一個潛在的比特幣閃電網絡漏洞。在回顧閃電網絡交易機制的一個新方面時,Corallo偶然發現了這一漏洞,該漏洞理論上允許用戶提取哈希時間鎖定合同(Hash Time-Locked Contract,簡稱HTLC)中持有的資金。HTLC本質上是一種智能合約,它要求付款接收者通過生成付款的加密證據來確認交易,或者放棄要求全部付款的能力。如果付款未被確認,寄件人可以要求退款。該漏洞使收件人可以拒絕發件人收到此退款。Corallo提交了幾個修復程序,但是沒有一個特別容易或“正常”的。但他指出,這并不是一個緊迫的問題,因為利用該漏洞是不切實際的。盡管如此,考慮到只有十分之一的閃電網絡節點持有其80%的比特幣,這種利用可能會造成比最初想象的更多的問題。(Decrypt)[2020/5/2]
我們將在一個模型中使用多種虛擬貨幣,因此從同一個數據源抓取數據或許是一個不錯的主意。我們將使用coinmarketcap.com。現在,我們只需要考慮比特幣和以太幣,但是使用這種方法添加最新火起來的山寨幣就很難了。在輸入數據之前,我們必須加載一些Python包,這樣會容易一些。
近30天比特幣搜索指數移動同比上升97%:金色財經報道,百度指數數據顯示,近30天區塊鏈搜索指數整體日均值為4543,整體同比上升24%,移動同比上升21%;比特幣搜索指數整體日均值為25934,整體同比上升77%,移動同比上升97%,以太坊搜索指數整體日均值為4451,整體同比上升15%,移動環比上升24%。[2020/3/2]
importpandasaspd
importtime
importseabornassns
importmatplotlib.pyplotasplt
importdatetime
importnumpyasnp
Billions項目組convertthedatestringtothecorrectdateformat
bitcoin_market_info=bitcoin_market_info.assign(Date=pd.to_datetime(bitcoin_market_info))
Billions項目組converttoint
動態 | 已被立案的點牛金融稱計劃開展比特幣采礦等業務:近日,已被立案偵查的納斯達克上市P2P平臺點牛金融(NASDAQ:DNJR)再度發布公告,稱公司計劃開展汽車租憑業務和比特幣采礦業務。
在近期發展中,點牛金融公告稱,2019年11月11日,《納斯達克規則》要求其提供有關公司證券暫停交易的信息。該請求和暫停是由于該公司于2019年10月31日提交了6-K表格,其中披露了點牛金融涉嫌非法收取公眾存款,上海浦東已對該案的17名嫌疑犯采取了刑事執法措施,拘留了6名嫌疑犯。”公司向納斯達克披露,其在中國的P2P借貸業務關閉的原因是由于政策變化,這一變化已經影響了近3000家公司。
在比特幣業務方面,點牛金融稱,公司計劃購買最高效的采礦計算機來開展比特幣采礦業務。公司已經建立了比特幣采礦業務部門,雇用該領域的員工。黃爾克先生加入公司,開始籌備業務和運營團隊。公司計劃在資金到位時于2019年12月購買比特幣采礦計算機。[2019/12/7]
bitcoin_market_info=bitcoin_market_info.astype('int64')
Billions項目組importtherelevantKerasmodules
聲音 | 肖磊:全球股市大跌 包括比特幣在內的各類資產都會遭到拋售:今日數字貨幣大跌,財經評論員肖磊對此表示:“在大的金融危機面前,比特幣不具備避險功能,一樣會遭到拋售。全球股市的大跌,意味著恐慌情緒加重,各類資產都會遭到拋售,也包括比特幣。”[2018/10/11]
fromkeras.modelsimportSequential
fromkeras.layersimportActivation,Dense
fromkeras.layersimportLSTM
fromkeras.layersimportDropout
defbuild_model(inputs,output_size,neurons,activ_func="linear",
dropout=0.25,loss="mae",optimizer="adam"):
model=Sequential()
model.add(LSTM(neurons,input_shape=(inputs.shape,inputs.shape)))
model.add(Dropout(dropout))
model.add(Dense(units=output_size))
model.add(Activation(activ_func))
model.compile(loss=loss,optimizer=optimizer)
returnmodel
那么,build_model函數構建了一個模型,名為model,該模型添加了一個LSTM層和全連接層。該層的形態已經調整以適合輸入。該函數還包括更通用的神經網絡特征,如dropout和激活函數。現在,我們只需指定LSTM層中神經元的數量和訓練數據。
Billions項目組initialisemodelarchitecture
eth_model=build_model(LSTM_training_inputs,output_size=1,neurons=20)
Billions項目組trainmodelondata
Billions項目組eth_preds=np.loadtxt('eth_preds.txt')
--------------------------------------------------------------------------
Epoch50/50
6s-loss:0.0625
我們剛才構建了一個LSTM模型來預測明天的以太幣收盤價。現在我們來看一下效果如何。首先檢查訓練集性能。代碼下面的數字代表50次訓練迭代后該模型在訓練集上的平均絕對誤差。我們可以看到模型輸出就是每日收盤價。
我們不應對它的準確率感到驚訝。該模型可以檢測誤差來源并進行調整。事實上,獲取趨近于零的訓練誤差并不難。我們只需要數百個神經元和數千個訓練epoch。我們應該對它在測試集上的性能更感興趣,因為測試集中是模型未見過的全新數據。
注意單點預測具備誤導性,而我們的LSTM模型似乎可以在未見過的測試集上實現良好的性能。最顯著的缺點是單點預測無法檢測出當以太幣突然上漲時必然會下跌。事實上,它一直都是失敗的,只不過在這些波動點更加明顯而已。預測價格一般更接近一天后的實際價格。我們還可以構建一個適用于比特幣的類似的LSTM模型,測試集預測結果見下圖。
如前所述,單點預測具有一定誤導性。我們現在構建一個LSTM模型來預測接下來5天的虛擬貨幣價格。
從視覺效果上來看,預測結果沒有其單點預測更加鮮明。但是,我很高興,該模型返回了一些細微的行為;它不僅僅預測價格在一個方向的移動軌跡。因此,該模型還有很多優化空間。
現在回到單點預測,我們的深度機器人工神經模型看起來還不錯,但是隨機游走模型看起來也還行。與隨機游走模型類似,LSTM模型對隨機種子的選擇很敏感。那么,如果我們想對比這兩種模型,就需要把每個模型運行多次來評估模型誤差。誤差可以作為測試集中真實和預測收盤價的絕對差。
或許AI完全值得這些炒作!這些圖顯示了在進行25次不同的初始化之后,每個模型在測試集上的誤差。LSTM模型對比特幣和以太幣價格的預測誤差分別是0.04和0.05,完勝相應的隨機游走模型。
只是為了打敗隨機游走模型的話也太low了。對比LSTM模型和更合適的時序模型豈不是更加有趣!另外,我確定很難再提升我們的LSTM模型了。可能虛擬貨幣價格變化沒有規律吧,可能沒有一個模型可以把信號和噪聲分離開。以后的文章中可能會討論這些話題。
幸運的是,你已經察覺到我對使用深度學習預測虛擬貨幣價格變化的懷疑態度。原因在于我們忽略了最優的框架:人類智能。很明顯,預測虛擬貨幣價格的完美模型是:
我確定他們最終最終會找到深度學習的使用案例的。同時,你可以下載完整的Python代碼構建自己的模型。
原文鏈接:https://dashee87.github.io/deep%20learning/python/predicting-cryptocurrency-prices-with-deep-learning/
本文為機器之心編譯,轉載請聯系本公眾號獲得授權。
------------------------------------------------
加入機器之心:hr@jiqizhixin.com
投稿或尋求報道:content@jiqizhixin.com
廣告&商務合作:bd@jiqizhixin.com
Tags:LSTSTM比特幣LST幣是什么幣STM幣是什么幣比特幣中國官網聯系方式40億比特幣能提現嗎比特幣最新價格行情走勢
當地時間2018年1月27日,日本虛擬貨幣交易所的運營巨頭Coincheck在東京召開新聞發布會稱,價值約580億日元(約合34億元人民幣.
1900/1/1 0:00:00Filecoin為什么在主網沒有上線前就成為區塊鏈、技術界關注的大熱點?就有幾十家加密數字貨幣平臺上了FIL期貨?第一.
1900/1/1 0:00:00陽春三月,春意盎然,油菜花開,金色的田野預示著豐收的希望。然而區塊鏈行業卻經歷了倒春寒,政策陰云密布,幣價跌跌不休。雖在意料之外,卻在情理之中.
1900/1/1 0:00:00編者按:現如今,區塊鏈已經成為全民關注的領域,不少企業也早已深入其中研究該技術的落地情況。但目前仍有很大一部分人對區塊鏈技術的相關概念并不熟悉.
1900/1/1 0:00:00幣圈的暴利神話,吸引了一撥兒又一撥兒95后入局。他們堅信幾萬元的成本投入能至少增加10倍,有人在暴利誘惑下每天堅持1-2小時深夜盯盤,但更多的人交了一筆不菲的學費.
1900/1/1 0:00:00從2016年開始,我們邀請了周鴻祎、江南春、孫陶然、韓坤、李豐、朱嘯虎等在內的30多位企業家和投資人導師入駐,開設了20多個主題創業實驗室,8500家企業報名.
1900/1/1 0:00:00