❶ 怎樣用 python 寫一個股票自動交易的程序
股票自動交易助手提供了一個 Python 自動下單介面,參考代碼
#股票自動交易助手Python自動下單使用例子
#把此腳本和StockOrderApi.pyOrder.dll放到你自己編寫的腳本同一目錄
fromStockOrderApiimport*
#買入測試
#Buy(u"600000",100,0,1,0)
#賣出測試,是持倉股才會有動作
#Sell(u"000100",100,0,1,0)
#賬戶信息
print("股票自動交易介面測試")
print("賬戶信息")
print("--------------------------------")
arrAccountInfo=["總資產","可用資金","持倉總市值","總盈利金額","持倉數量"];
foriinrange(0,len(arrAccountInfo)):
value=GetAccountInfo(u"",i,0)
print("%s%f"%(arrAccountInfo[i],value))
print("--------------------------------")
print("")
print("股票持倉")
print("--------------------------------")
#取出所有的持倉股票代碼,結果以','隔開的
allStockCode=GetAllPositionCode(0)
allStockCodeArray=allStockCode.split(',')
foriinrange(0,len(allStockCodeArray)):
vol=GetPosInfo(allStockCodeArray[i],0,0)
changeP=GetPosInfo(allStockCodeArray[i],4,0)
print("%s%d%.2f%%"%(allStockCodeArray[i],vol,changeP))
print("--------------------------------")
❷ 怎麼學習python量化交易
下面教你八步寫個量化交易策略——單股票均線策略
1 確定策略內容與框架
若昨日收盤價高出過去20日平均價今天開盤買入股票
若昨日收盤價低於過去20日平均價今天開盤賣出股票
只操作一隻股票,很簡單對吧,但怎麼用代碼說給計算機聽呢?
想想人是怎麼操作的,應該包括這樣兩個部分
既然是單股票策略,事先決定好交易哪一個股票。
每天看看昨日收盤價是否高出過去20日平均價,是的話開盤就買入,不是開盤就賣出。每天都這么做,循環下去。
對應代碼也是這兩個部分
definitialize(context):
用來寫最開始要做什麼的地方
defhandle_data(context,data):
用來寫每天循環要做什麼的地方
2 初始化
我們要寫設置要交易的股票的代碼,比如 兔寶寶(002043)
definitialize(context):
g.security='002043.XSHE'#存入兔寶寶的股票代碼
3 獲取收盤價與均價
首先,獲取昨日股票的收盤價
#用法:變數=data[股票代碼].close
last_price=data[g.security].close#取得最近日收盤價,命名為last_price
然後,獲取近二十日股票收盤價的平均價
#用法:變數=data[股票代碼].mavg(天數,『close』)
#獲取近二十日股票收盤價的平均價,命名為average_price
average_price=data[g.security].mavg(20,'close')
4 判斷是否買賣
數據都獲取完,該做買賣判斷了
#如果昨日收盤價高出二十日平均價,則買入,否則賣出
iflast_price>average_price:
買入
eliflast_price<average_price:
賣出
問題來了,現在該寫買賣下單了,但是拿多少錢去買我們還沒有告訴計算機,所以每天還要獲取賬戶里現金量。
#用法:變數=context.portfolio.cash
cash=context.portfolio.cash#取得當前的現金量,命名為cash
5 買入賣出
#用法:order_value(要買入股票股票的股票代碼,要多少錢去買)
order_value(g.security,cash)#用當前所有資金買入股票
#用法:order_target(要買賣股票的股票代碼,目標持倉金額)
order_target(g.security,0)#將股票倉位調整到0,即全賣出
6 策略代碼寫完,進行回測
把買入賣出的代碼寫好,策略就寫完了,如下
definitialize(context):#初始化
g.security='002043.XSHE'#股票名:兔寶寶
defhandle_data(context,data):#每日循環
last_price=data[g.security].close#取得最近日收盤價
#取得過去二十天的平均價格
average_price=data[g.security].mavg(20,'close')
cash=context.portfolio.cash#取得當前的現金
#如果昨日收盤價高出二十日平均價,則買入,否則賣出。
iflast_price>average_price:
order_value(g.security,cash)#用當前所有資金買入股票
eliflast_price<average_price:
order_target(g.security,0)#將股票倉位調整到0,即全賣出
現在,在策略回測界面右上部,設置回測時間從20140101到20160601,設置初始資金100000,設置回測頻率,然後點擊運行回測。
7 建立模擬交易,使策略和行情實時連接自動運行
策略寫好,回測完成,點擊回測結果界面(如上圖)右上部紅色模擬交易按鈕,新建模擬交易如下圖。 寫好交易名稱,設置初始資金,數據頻率,此處是每天,設置好後點提交。
8 開啟微信通知,接收交易信號
點擊聚寬導航欄我的交易,可以看到創建的模擬交易,如下圖。 點擊右邊的微信通知開關,將OFF調到ON,按照指示掃描二維碼,綁定微信,就能微信接收交易信號了。
❸ 怎樣用python處理股票
用Python處理股票需要獲取股票數據,以國內股票數據為例,可以安裝Python的第三方庫:tushare;一個國內股票數據獲取包。可以在網路中搜索「Python tushare」來查詢相關資料,或者在tushare的官網上查詢說明文檔。
❹ 如何用Python炒股
如果想直接執行python程序的話可以寫一個.bat新建一個記事本,然後寫一段下面的代碼,最後存成.bat文件,以後直接執行這段代碼就可以了。其實也可以直接執行.py文件c:\program files\python file.py
❺ 怎樣用 Python 寫一個股票自動交易的程序
國外有自動交易軟體。只需要寫插件就可以。如果用python重新寫,有些麻煩。如果證券交易公司提供API,就容易。 我記得2004年左右是通過API實現的。 有個朋友做過一個貴金屬的自動交易。不過2年後,虧了不少。
❻ python賣掉兩只股票為什麼
python賣掉兩只股票是因為利潤。可以簡單理解為在既定網格中實行跌買漲賣。首先需要制定一個【網格系統】,主要包括網格格數、網格密度、最大壓力價格和最小支撐價格四大要素。當標的價格跌破一個網格密度時,就買入相應的倉數,每漲破一個網格密度時就賣出相應的倉數。因為每次向下跌才買入,向上漲才賣出,所以理論上每次賣出網格都是賺的,真正實現了跌買漲賣。
❼ 如何用python計算某支股票持有90天的收益率
首先你要先獲得這支股票90天的數據,可以存在一個arry中。
然後計算收益率 r = (arry[89]-arry[0])/arry[0],如果要計算任意連續90天的話只要循環就可以了。
許多人更喜歡去做短線,因為短線刺激,無法承受長線持股待漲的煎熬,可是假如不會做短線,則可能會導致虧得更快。做T的秘籍大家一定很想知道,今天就給大家講講。
我准備了好處給大家,機構精選的牛股大盤點!希望大家不要錯過--速領!今日機構牛股名單新鮮出爐!
一、股票做T是什麼意思
現在市場上,A股的交易市場模式是T+1,意思就是今天買的股票,只有明天才能賣出。
而股票做T,當天買入的股票在當天賣出,這就是股票進行T+0的交易操作,投資人在可交易的一天通過股票的漲幅和跌停有了股票差價,在股票大幅下跌時趕緊買入,漲得差不多之後再將買入的部分賣出,就是用這種方法賺錢的。
假如說,在昨天我手裡還有1000股的xx股票,市價10元/股。今天一大早發現該股居然跌到了9.5元/股,然後趁機買入了1000股。結果到了下午時,這只股票的價格就突然間大幅上漲到一股10.5元,我就急忙地以10.5/股的價格售出1000股,然後獲取(10.5-9.5)×1000=1000元的差價,這就是做T。
但是,不是每種股票做T都合適!正常來說,那些日內振幅空間較大的股票,它們是適合去做T的,比如說,每日能有5%的振幅空間。想知道某隻股票適不適合的,點開這里去看一下吧,專業的人員會為你估計挑選出最適合你的T股票!【免費】測一測你的股票到底好不好?
二、股票做T怎麼操作
怎麼才能夠把股票做到T?正常情況下分為兩種方式,分別為正T和倒T。
正T即先買後賣,投資手裡,手裡面賺有這款股票,在當天股票開盤的時候下跌到了最低點時,投資者買入1000股,等到股票變高的時候在高點,將這1000股徹底賣出,持有的總股票數還是跟以前一樣,T+0的效果這樣就能夠達到了,又能夠享有中間賺取的差價。
而倒T即先賣後買。投資者通過嚴密計算得出,股票存在下降風險,因此在高位點先賣出手中的一部分股票,接著等股價回落後再去買進,總量仍舊有辦法保持不變,然而,收益是會產生的。
比方投資者,他佔有該股2000股,而10元/股是當天早上的市場價,覺得持有的股票在短時間內就會有所調整,,於是賣出手中的1500股,等股票跌到一股只需要9.5元時,這只股票差不多就已經能讓他們感到滿意了,再買入1500股,這就賺取了(10-9.5)×1500=750元的差價。
這時有人就問了,那要如何知道買入的時候正好是低點,賣出的時候正好是高點?
其實有一款買賣點捕捉神器,它能夠判斷股票的變化趨勢,絕對能讓你每次都抓住重點,點開鏈接就能立刻領取到了:【智能AI助攻】一鍵獲取買賣機會
應答時間:2021-09-23,最新業務變化以文中鏈接內展示的數據為准,請點擊查看
❽ 怎樣用 Python 寫一個股票自動交易的程序
1,http://www.python.org/download/ 下載windows安裝包,
2,python環境變數配置
(1)設置環境變數:我的電腦-右鍵-屬性-高級-環境變數 在Path中加入
;c:\python26 (注意前面的分號和路徑)
(2)此時,還是只能通過"python *.py"運行python腳本,若希望直接運行*.py,只需再修改另一個環境變數PATHEXT:
;.PY;.PYM
3,測試是否安裝成功
cmd進入命令行 輸入python –v 若是輸出版本信息,則表示安裝完畢
4,建一個hello.py
print ("hello world")
5,cmd 進入命令行 找到文件路徑 hello.py
會輸出"hello world"
6,接受用戶輸入
x= input("x:")
y= input("y:")
print (x * y)
print("我開始學習python了,要加油啊!")
❾ 怎樣用 Python 寫一個股票自動買賣的程序
方法一
前期的數據抓取和分析可能python都寫好了,所以差這交易指令介面最後一步。對於股票的散戶,正規的法子是華寶,國信,興業這樣願意給介面的券商,但貌似開戶費很高才給這權利,而且只有lts,ctp這樣的c++介面,沒python版就需要你自己封裝。
方法二
是wind這樣的軟體也有直接的介面,支持部分券商,但也貴,幾萬一年是要的。
方法三
滑鼠鍵盤模擬法,很復雜的,就是模擬鍵盤滑鼠去操作一些軟體,比如券商版交易軟體和大智慧之類的。
方法四
就是找到這些軟體的關於交易指令的底層代碼並更改,不過T+1的規則下,預測准確率的重要性高於交易的及時性,花功夫做數據分析就好,交易就人工完成吧
❿ 問一個Python分析股票價格的問題......
你先把價格按日期排序之後變成一個list的話,比如:
price=[70,74, 73, 72, 71,75]
你可以這么辦:
operations=[]
isLong=False
for i in range(len(price)-1):
if(not isLong):
if(price[i]<price[i+1]):
print "Go long on day " + str(i)
operations.append(-1);
isLong=True;
else:
operations.append(0);
else:
if(price[i]>price[i+1]):
print "Go short on day " + str(i)
operations.append(1);
isLong=False;
else:
operations.append(0);
if(isLong):
print "Go short on day " + str(len(price)-1)
operations.append(1)
else:
operations.append(0)
ProfitPerShare=0
for i in range(len(price)):
ProfitPerShare+=price[i]*operations[i]
print "Summary profit per share: "+str(ProfitPerShare)
這裡面就是說,如果你是空倉,那麼如果明天比今天高就買,否則明天買就比今天買更劃算;如果你不空倉,那麼如果明天比今天價低你就要清倉,否則明天賣就會更劃算。然後用一個叫operations的list來記錄你每天的操作,-1表示買,0表示沒有,1表示賣,所以最後可以計算每股獲得的收入price[i]*operations[i]的總和。