THSTrader
量化交易。通用版同花順用戶端的python API。(Python3)
為什麼有這個項目
本來看到了這個easytrader這個項目,不過這個用戶端已經過時了(被強制更新)。于是乎,自己看了一遍easytrader的源碼,寫了一個自己的版本。
未知的BUG
在某些電腦上面驗證碼截圖失效導緻無法使用(該問題出現在我蘋果電腦上面裝的windows虛拟機)
安裝說明
同花順用戶端安裝
下載下傳連結
tesseract-ocr安裝
python環境安裝
pip3 install -r requirements.txt
操作接口(API)
說明
首先登陸同花順用戶端,然後打開下單程式。
注意:使用過程中請保證下單程式處于可視狀态,不要最小化同花順用戶端。
示例代碼
from THS.THSTrader import THSTrader
if __name__ == "__main__":
trader = THSTrader(r"C:\同花順軟體\同花順\xiadan.exe") # 連接配接用戶端
print(trader.get_balance()) # 擷取目前可用資金
print(trader.get_position()) # 擷取目前持有的股票
print(trader.sell(stock_no="162411", amount=100, price=0.62)) # 賣出股票
result = trader.buy(stock_no="162411", amount=100, price=0.541) # 買入股票
print(result)
if result["success"] == True: # 如果買入下單成功,嘗試撤單
print("撤單測試--->", end="")
print(trader.cancel_entrust(entrust_no=result["entrust_no"]))
擷取目前可用資金
trader.get_balance()
傳回:
{
'資金餘額': 198577.0,
'可用金額': 197264.69,
'可取金額': 0.0,
'股票市值': 2869.4,
'總資産': 200134.09
}
擷取目前持有的股票
trader.get_position()
傳回:
[{
'證券代碼': 2024,
'證券名稱': '蘇甯易購',
'股票餘額': 100,
'可用餘額': 0,
'當機數量': 100,
'盈虧': -0.31,
'成本價': 13.123,
'盈虧比例(%)': -0.02,
'市價': 13.12,
'市值': 1312.0,
'交易市場': '深圳A股',
'股東帳戶': 101106569,
'實際數量': 100,
'可申贖數量': 100
}, {
'證券代碼': 162411,
'證券名稱': '華寶油氣',
'股票餘額': 2600,
'可用餘額': 2600,
'當機數量': 0,
'盈虧': 134.4,
'成本價': 0.547,
'盈虧比例(%)': 9.44,
'市價': 0.6,
'市值': 1557.4,
'交易市場': '深圳A股',
'股東帳戶': 101106569,
'實際數量': 2600,
'可申贖數量': 2600
}]
買入股票
trader.buy(stock_no="162411", amount=100, price=0.541)
傳回:
{
'success': True,
'msg': '您的買入委托已成功送出,合同編号:873674677。',
'entrust_no': '873674677'
}
賣出股票
trader.sell(stock_no="162411", amount=100, price=0.62)
傳回:
{
'success': True,
'msg': '您的賣出委托已成功送出,合同編号:873679996。',
'entrust_no': '873679996'
}
買賣撤單
trader.cancel_entrust(entrust_no="873674677")
傳回:
{
'success': True,
'msg': '您的撤單委托已成功送出,合同編号:873674677。',
'entrust_no': '873674677'
}
LICENSE
GPL-3.0