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