在這個日新月異的數(shù)字化時代,區(qū)塊鏈技術(shù)和量化交易已經(jīng)成為金融科技領(lǐng)域的兩大重要支柱。區(qū)塊鏈的交易所沒有漲停機制,724h全球交易,價格完全由市場決定,支持API自動交易,是量化交易者的樂園。目前,主流交易所的很大一部分交易是由量化交易程序自動執(zhí)行的。
本書旨在為讀者提供一份詳盡而深入的指南,幫助讀者理解并掌握如何使用Python進行區(qū)塊鏈量化交易編程。
本書將帶領(lǐng)讀者走進神秘的區(qū)塊鏈量化交易世界,詳細講解區(qū)塊鏈的基礎(chǔ)知識、基本概念和術(shù)語,探索幣安和歐易最基礎(chǔ)的交易API的使用方法,包括賬戶查詢、獲取實時行情、自動下單、設(shè)置止盈止損等基本功能,并加以綜合運用,實現(xiàn)自己的交易策略。所有的示例代碼都是在服務(wù)器上實際運行測試過的,保證可以順利地將理論知識轉(zhuǎn)換為實踐能力。
無論你是金融工程師、數(shù)據(jù)科學(xué)家,還是對區(qū)塊鏈和量化交易感興趣的初學(xué)者,相信本書都能為你提供寶貴的經(jīng)驗和啟示。讓我們一起探索這個充滿可能性的新世界吧!
本書主要內(nèi)容
第1章介紹區(qū)塊鏈的應(yīng)用現(xiàn)狀,包括區(qū)塊鏈的發(fā)展歷史、主流的區(qū)塊鏈公鏈及區(qū)塊鏈錢包的基本要素和區(qū)塊鏈瀏覽器。
第2章介紹加密貨幣交易所,包括交易所的簡介、交易所交易界面的介紹及交易所API設(shè)置。
第3章是本書的重點內(nèi)容,詳細介紹交易所API,包括幣安API和歐易API。
第4章引導(dǎo)讀者入門Python編程,介紹Python的安裝、基本使用及和編寫交易程序相關(guān)的基本語法知識。
第5章介紹云服務(wù)器的配置,包括服務(wù)器的申請、使用,以及最基本的Linux指令、Git指令簡介等內(nèi)容。
第6章通過實戰(zhàn)項目,包括三角套利項目實戰(zhàn)、MACD及RSI指標策略的實現(xiàn)、Telegram價格波動機器人的實現(xiàn)、捕捉行情波動策略的實現(xiàn),幫助讀者將理論知識轉(zhuǎn)換為實踐能力。
閱讀建議
本書是一本區(qū)塊鏈量化交易編程的基礎(chǔ)入門、項目實戰(zhàn)的技術(shù)教程,既包括詳細的基礎(chǔ)知識介紹,又提供了豐富的實際項目開發(fā)案例,包括詳細的項目開發(fā)步驟,每個代碼片段都有詳細的注釋標注和對應(yīng)的操作說明。本書的基礎(chǔ)知識、項目實戰(zhàn)及原理剖析部分均提供了完整可運行的代碼示例,可以幫助讀者更好地、全方位地學(xué)習(xí)相關(guān)技術(shù)。
建議沒有Python編程基礎(chǔ)的讀者認真學(xué)習(xí)第4章的知識; 有Python開發(fā)經(jīng)驗的讀者可以跳過第4章。掃描目錄上方二維碼可下載本書源碼。
投資有風(fēng)險。本書所有代碼與示例僅限于教育用途,并不代表任何投資建議。本書不代表將來的交易會產(chǎn)生與示例同樣的回報或虧損。
投資者在做出交易決策之前必須評估風(fēng)險,確認自身可以承受風(fēng)險方可投資。
由于時間倉促,書中難免存在疏漏之處,請讀者見諒,并提寶貴意見。
陳林仙2025年1月
區(qū)塊鏈基礎(chǔ)篇
第1章區(qū)塊鏈應(yīng)用現(xiàn)狀
1.1區(qū)塊鏈的發(fā)展歷史
1.1.1比特幣的誕生
1.1.2區(qū)塊鏈底層實現(xiàn)的算法
1.2主流的區(qū)塊鏈公鏈
1.2.1第1個公鏈: 比特幣
1.2.2以太坊: 數(shù)字經(jīng)濟的創(chuàng)新引擎
1.2.3高速單層區(qū)塊鏈Solana
1.2.4生態(tài)完善的BSC智能鏈
1.2.5波場鏈(Tron): 高速公鏈
1.2.6穩(wěn)定幣USDT和USDC
1.3區(qū)塊鏈錢包的基本要素
1.3.1比特幣錢包要素
1.3.2以太坊錢包要素
1.3.3波場錢包要素
1.4區(qū)塊鏈錢包和區(qū)塊鏈瀏覽器
1.4.1主流區(qū)塊鏈錢包和插件
1.4.2主流區(qū)塊鏈瀏覽器
第2章加密貨幣交易所介紹
2.1加密貨幣交易所簡述
2.1.1什么是中心化交易所
2.1.2什么是去中心化交易所
2.1.3主流中心化交易所有哪些
2.1.4現(xiàn)貨交易
2.1.5合約交易
2.1.6期權(quán)交易
2.2加密貨幣交易所交易界面介紹
2.2.1幣安現(xiàn)貨交易界面
2.2.2幣安現(xiàn)貨交易下單界面
2.2.3幣安合約交易界面
2.2.4幣安合約交易下單界面
2.2.5歐易幣幣交易界面
2.2.6歐易U本位合約交易界面
2.2.7歐易合約交易下單界面
2.3交易所API設(shè)置
2.3.1幣安API設(shè)置界面
2.3.2歐易API設(shè)置界面
第3章交易所API介紹
3.1API功能簡述
3.2幣安API
3.2.1幣安現(xiàn)貨API
3.2.2查詢現(xiàn)貨錢包余額API
3.2.3現(xiàn)貨深度信息API
3.2.4現(xiàn)貨有限深度信息WebSocket API
3.2.5現(xiàn)貨K線數(shù)據(jù) API
3.2.6現(xiàn)貨K線數(shù)據(jù)WebSocket API
3.2.7現(xiàn)貨下單API
3.2.8現(xiàn)貨查詢訂單信息API
3.2.9現(xiàn)貨取消訂單API
3.2.10應(yīng)用示例: 現(xiàn)貨API綜合應(yīng)用
3.2.11幣安合約API
3.2.12合約深度信息API
3.2.13合約有限深度信息WebSocket API
3.2.14合約K線API
3.2.15合約K線數(shù)據(jù)WebSocket API
3.2.16合約查詢余額API
3.2.17合約設(shè)置逐倉全倉API
3.2.18合約設(shè)置杠桿倍數(shù)API
3.2.19合約下單API
3.2.20合約查詢訂單API
3.2.21合約取消訂單API
3.2.22應(yīng)用示例: 合約API綜合應(yīng)用
3.3歐易API
3.3.1查詢錢包余額API
3.3.2設(shè)置逐倉模式API
3.3.3設(shè)置杠桿倍數(shù)API
3.3.4獲取深度信息API
3.3.5獲取K線數(shù)據(jù)API
3.3.6幣幣市價下單API
3.3.7幣幣限價下單API
3.3.8合約市價開倉和平倉API
3.3.9合約限價開倉API
3.3.10合約止盈止損單API
3.3.11查詢訂單信息API
3.3.12取消訂單API
3.3.13應(yīng)用示例
實戰(zhàn)操作篇
第4章Python編程基礎(chǔ)
4.1Python簡介
4.2Python安裝
4.3Python集成開發(fā)環(huán)境
4.4Python包管理工具pip用法
4.5Python基本語法
4.5.1Python的變量和數(shù)據(jù)類型
4.5.2Python數(shù)據(jù)類型轉(zhuǎn)換
4.5.3Python的注釋
4.5.4Python的運算符
4.5.5Python的列表
4.5.6Python的字典數(shù)據(jù)
4.5.7Python的條件控制
4.5.8Python的循環(huán)語句
4.5.9Python的函數(shù)
4.5.10Python的命令行參數(shù)
4.5.11捕捉異常
4.5.12Python的異步編程
第5章云服務(wù)器的配置和使用
5.1云服務(wù)器簡介
5.2亞馬遜AWS EC2主機申請
5.3Linux系統(tǒng)簡介
5.4Linux系統(tǒng)目錄結(jié)構(gòu)
5.5Linux常用操作指令
5.5.1創(chuàng)建目錄指令
5.5.2改變目錄指令
5.5.3顯示目錄中包含的文件和子目錄的指令
5.5.4創(chuàng)建Python程序文件指令
5.5.5運行Python程序文件指令
5.5.6程序運行結(jié)果保存到日志文件指令
5.5.7中止程序運行
5.5.8程序后臺運行指令
5.5.9查看后臺運行程序的指令
5.5.10關(guān)閉后臺運行程序的指令
5.5.11刪除文件或目錄的指令
5.5.12移動文件或目錄的指令
5.5.13查看文本文件內(nèi)容指令
5.5.14查看文本文件頭部內(nèi)容指令
5.5.15查看文本文件尾部內(nèi)容指令
5.6Git指令介紹
5.6.1計算機端安裝Git
5.6.2服務(wù)器端安裝Git
5.6.3注冊Gitee賬號并創(chuàng)建倉庫
5.6.4計算機端創(chuàng)建倉庫
5.6.5服務(wù)器端拉取倉庫代碼
第6章項目實戰(zhàn)
6.1幣安三角套利策略
6.1.1第1步實現(xiàn)BTCUSDT的交易
6.1.2第2步實現(xiàn)ETHBTC的交易
6.1.3第3步實現(xiàn)ETHUSDT的交易
6.1.4三角套利策略的準備工作
6.2歐易三角套利策略
6.2.1實現(xiàn)BTCUSDT的交易
6.2.2實現(xiàn)ETHBTC的交易
6.2.3實現(xiàn)ETHUSDT的交易
6.2.4三角套利策略的準備工作
6.3幣安MACD指標策略
6.3.1獲取命令行參數(shù)
6.3.2獲取K線數(shù)據(jù)
6.3.3計算MACD指標
6.4歐易MACD指標策略
6.4.1獲取K線數(shù)據(jù)
6.4.2使用Pandas計算MACD指標
6.4.3根據(jù)MACD指標中的金叉死叉信號來開倉平倉
6.4.4開倉平倉API
6.5幣安RSI指標策略
6.5.1獲取命令行參數(shù)
6.5.2獲取K線數(shù)據(jù)
6.5.3計算RSI指標
6.6歐易RSI指標策略
6.7幣安幣價波動監(jiān)視機器人
6.7.1注冊一個聊天機器人(Bot)
6.7.2獲取chat_id
6.7.3導(dǎo)入Telegram包
6.7.4用Python編寫聊天機器人程序
6.8歐易幣價波動監(jiān)視機器人
6.9幣安捕捉插針策略機器人
6.9.1獲取K線數(shù)據(jù)
6.9.2實現(xiàn)下單函數(shù)
6.9.3實現(xiàn)取消所有訂單函數(shù)
6.9.4實現(xiàn)取消訂單函數(shù)
6.9.5獲取下單數(shù)量精度函數(shù)
6.9.6獲取價格精度函數(shù)
6.9.7程序主要邏輯
6.10歐易捕捉插針策略機器人
6.10.1獲取K線數(shù)據(jù)
6.10.2實現(xiàn)下單函數(shù)
6.10.3實現(xiàn)取消訂單函數(shù)
6.10.4獲取下單數(shù)量精度函數(shù)
6.10.5獲取價格精度函數(shù)
6.10.6程序主要邏輯